From 3f2e0780d54511bee9ed51e8c5690f5d0d841d95 Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Fri, 19 Sep 2025 12:18:42 -0400 Subject: [PATCH 01/60] feat: availability checks (#22185) --- docs/docs/install/environment-variables.md | 2 - i18n/en.json | 7 + mobile/openapi/README.md | 1 + mobile/openapi/lib/api.dart | 1 + mobile/openapi/lib/api_client.dart | 2 + ...hine_learning_availability_checks_dto.dart | 115 +++++++++++++++ .../system_config_machine_learning_dto.dart | 28 ++-- open-api/immich-openapi-specs.json | 28 +++- open-api/typescript-sdk/src/fetch-client.ts | 8 +- server/src/bin/sync-sql.ts | 3 +- server/src/config.ts | 12 ++ server/src/constants.ts | 5 - server/src/dtos/system-config.dto.ts | 24 +++- server/src/repositories/logging.repository.ts | 4 + .../machine-learning.repository.ts | 136 ++++++++++-------- server/src/services/person.service.spec.ts | 1 - server/src/services/person.service.ts | 1 - server/src/services/search.service.spec.ts | 4 - server/src/services/search.service.ts | 2 +- .../src/services/smart-info.service.spec.ts | 2 - server/src/services/smart-info.service.ts | 6 +- .../services/system-config.service.spec.ts | 5 + server/src/services/system-config.service.ts | 18 ++- .../MachineLearningSettings.svelte | 82 ++++++++--- .../settings/setting-input-field.svelte | 2 +- 25 files changed, 361 insertions(+), 138 deletions(-) create mode 100644 mobile/openapi/lib/model/machine_learning_availability_checks_dto.dart diff --git a/docs/docs/install/environment-variables.md b/docs/docs/install/environment-variables.md index 928e0b26e5..4e081c8966 100644 --- a/docs/docs/install/environment-variables.md +++ b/docs/docs/install/environment-variables.md @@ -169,8 +169,6 @@ Redis (Sentinel) URL example JSON before encoding: | `MACHINE_LEARNING_ANN_TUNING_LEVEL` | ARM-NN GPU tuning level (1: rapid, 2: normal, 3: exhaustive) | `2` | machine learning | | `MACHINE_LEARNING_DEVICE_IDS`\*4 | Device IDs to use in multi-GPU environments | `0` | machine learning | | `MACHINE_LEARNING_MAX_BATCH_SIZE__FACIAL_RECOGNITION` | Set the maximum number of faces that will be processed at once by the facial recognition model | None (`1` if using OpenVINO) | machine learning | -| `MACHINE_LEARNING_PING_TIMEOUT` | How long (ms) to wait for a PING response when checking if an ML server is available | `2000` | server | -| `MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME` | How long to ignore ML servers that are offline before trying again | `30000` | server | | `MACHINE_LEARNING_RKNN` | Enable RKNN hardware acceleration if supported | `True` | machine learning | | `MACHINE_LEARNING_RKNN_THREADS` | How many threads of RKNN runtime should be spinned up while inferencing. | `1` | machine learning | diff --git a/i18n/en.json b/i18n/en.json index aa1999adcb..af52770c64 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -123,6 +123,13 @@ "logging_enable_description": "Enable logging", "logging_level_description": "When enabled, what log level to use.", "logging_settings": "Logging", + "machine_learning_availability_checks": "Availability checks", + "machine_learning_availability_checks_description": "Automatically detect and prefer available machine learning servers", + "machine_learning_availability_checks_enabled": "Enable availability checks", + "machine_learning_availability_checks_interval": "Check interval", + "machine_learning_availability_checks_interval_description": "Interval in milliseconds between availability checks", + "machine_learning_availability_checks_timeout": "Request timeout", + "machine_learning_availability_checks_timeout_description": "Timeout in milliseconds for availability checks", "machine_learning_clip_model": "CLIP model", "machine_learning_clip_model_description": "The name of a CLIP model listed here. Note that you must re-run the 'Smart Search' job for all images upon changing a model.", "machine_learning_duplicate_detection": "Duplicate Detection", diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index 239c62449f..7a426b74fc 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -393,6 +393,7 @@ Class | Method | HTTP request | Description - [LoginCredentialDto](doc//LoginCredentialDto.md) - [LoginResponseDto](doc//LoginResponseDto.md) - [LogoutResponseDto](doc//LogoutResponseDto.md) + - [MachineLearningAvailabilityChecksDto](doc//MachineLearningAvailabilityChecksDto.md) - [ManualJobName](doc//ManualJobName.md) - [MapMarkerResponseDto](doc//MapMarkerResponseDto.md) - [MapReverseGeocodeResponseDto](doc//MapReverseGeocodeResponseDto.md) diff --git a/mobile/openapi/lib/api.dart b/mobile/openapi/lib/api.dart index e87c160d96..df2c2226b1 100644 --- a/mobile/openapi/lib/api.dart +++ b/mobile/openapi/lib/api.dart @@ -164,6 +164,7 @@ part 'model/log_level.dart'; part 'model/login_credential_dto.dart'; part 'model/login_response_dto.dart'; part 'model/logout_response_dto.dart'; +part 'model/machine_learning_availability_checks_dto.dart'; part 'model/manual_job_name.dart'; part 'model/map_marker_response_dto.dart'; part 'model/map_reverse_geocode_response_dto.dart'; diff --git a/mobile/openapi/lib/api_client.dart b/mobile/openapi/lib/api_client.dart index ae5fd9227b..06d27593c9 100644 --- a/mobile/openapi/lib/api_client.dart +++ b/mobile/openapi/lib/api_client.dart @@ -382,6 +382,8 @@ class ApiClient { return LoginResponseDto.fromJson(value); case 'LogoutResponseDto': return LogoutResponseDto.fromJson(value); + case 'MachineLearningAvailabilityChecksDto': + return MachineLearningAvailabilityChecksDto.fromJson(value); case 'ManualJobName': return ManualJobNameTypeTransformer().decode(value); case 'MapMarkerResponseDto': diff --git a/mobile/openapi/lib/model/machine_learning_availability_checks_dto.dart b/mobile/openapi/lib/model/machine_learning_availability_checks_dto.dart new file mode 100644 index 0000000000..84b3181426 --- /dev/null +++ b/mobile/openapi/lib/model/machine_learning_availability_checks_dto.dart @@ -0,0 +1,115 @@ +// +// 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 MachineLearningAvailabilityChecksDto { + /// Returns a new [MachineLearningAvailabilityChecksDto] instance. + MachineLearningAvailabilityChecksDto({ + required this.enabled, + required this.interval, + required this.timeout, + }); + + bool enabled; + + num interval; + + num timeout; + + @override + bool operator ==(Object other) => identical(this, other) || other is MachineLearningAvailabilityChecksDto && + other.enabled == enabled && + other.interval == interval && + other.timeout == timeout; + + @override + int get hashCode => + // ignore: unnecessary_parenthesis + (enabled.hashCode) + + (interval.hashCode) + + (timeout.hashCode); + + @override + String toString() => 'MachineLearningAvailabilityChecksDto[enabled=$enabled, interval=$interval, timeout=$timeout]'; + + Map toJson() { + final json = {}; + json[r'enabled'] = this.enabled; + json[r'interval'] = this.interval; + json[r'timeout'] = this.timeout; + return json; + } + + /// Returns a new [MachineLearningAvailabilityChecksDto] instance and imports its values from + /// [value] if it's a [Map], null otherwise. + // ignore: prefer_constructors_over_static_methods + static MachineLearningAvailabilityChecksDto? fromJson(dynamic value) { + upgradeDto(value, "MachineLearningAvailabilityChecksDto"); + if (value is Map) { + final json = value.cast(); + + return MachineLearningAvailabilityChecksDto( + enabled: mapValueOfType(json, r'enabled')!, + interval: num.parse('${json[r'interval']}'), + timeout: num.parse('${json[r'timeout']}'), + ); + } + return null; + } + + static List listFromJson(dynamic json, {bool growable = false,}) { + final result = []; + if (json is List && json.isNotEmpty) { + for (final row in json) { + final value = MachineLearningAvailabilityChecksDto.fromJson(row); + if (value != null) { + result.add(value); + } + } + } + return result.toList(growable: growable); + } + + static Map mapFromJson(dynamic json) { + final map = {}; + if (json is Map && json.isNotEmpty) { + json = json.cast(); // ignore: parameter_assignments + for (final entry in json.entries) { + final value = MachineLearningAvailabilityChecksDto.fromJson(entry.value); + if (value != null) { + map[entry.key] = value; + } + } + } + return map; + } + + // maps a json object with a list of MachineLearningAvailabilityChecksDto-objects as value to a dart map + static Map> mapListFromJson(dynamic json, {bool growable = false,}) { + final map = >{}; + if (json is Map && json.isNotEmpty) { + // ignore: parameter_assignments + json = json.cast(); + for (final entry in json.entries) { + map[entry.key] = MachineLearningAvailabilityChecksDto.listFromJson(entry.value, growable: growable,); + } + } + return map; + } + + /// The list of required keys that must be present in a JSON. + static const requiredKeys = { + 'enabled', + 'interval', + 'timeout', + }; +} + diff --git a/mobile/openapi/lib/model/system_config_machine_learning_dto.dart b/mobile/openapi/lib/model/system_config_machine_learning_dto.dart index a4a9ca7d82..d7b2566d59 100644 --- a/mobile/openapi/lib/model/system_config_machine_learning_dto.dart +++ b/mobile/openapi/lib/model/system_config_machine_learning_dto.dart @@ -13,14 +13,16 @@ part of openapi.api; class SystemConfigMachineLearningDto { /// Returns a new [SystemConfigMachineLearningDto] instance. SystemConfigMachineLearningDto({ + required this.availabilityChecks, required this.clip, required this.duplicateDetection, required this.enabled, required this.facialRecognition, - this.url, this.urls = const [], }); + MachineLearningAvailabilityChecksDto availabilityChecks; + CLIPConfig clip; DuplicateDetectionConfig duplicateDetection; @@ -29,50 +31,37 @@ class SystemConfigMachineLearningDto { FacialRecognitionConfig facialRecognition; - /// This property was deprecated in v1.122.0 - /// - /// 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 - /// source code must fall back to having a nullable type. - /// Consider adding a "default:" property in the specification file to hide this note. - /// - String? url; - List urls; @override bool operator ==(Object other) => identical(this, other) || other is SystemConfigMachineLearningDto && + other.availabilityChecks == availabilityChecks && other.clip == clip && other.duplicateDetection == duplicateDetection && other.enabled == enabled && other.facialRecognition == facialRecognition && - other.url == url && _deepEquality.equals(other.urls, urls); @override int get hashCode => // ignore: unnecessary_parenthesis + (availabilityChecks.hashCode) + (clip.hashCode) + (duplicateDetection.hashCode) + (enabled.hashCode) + (facialRecognition.hashCode) + - (url == null ? 0 : url!.hashCode) + (urls.hashCode); @override - String toString() => 'SystemConfigMachineLearningDto[clip=$clip, duplicateDetection=$duplicateDetection, enabled=$enabled, facialRecognition=$facialRecognition, url=$url, urls=$urls]'; + String toString() => 'SystemConfigMachineLearningDto[availabilityChecks=$availabilityChecks, clip=$clip, duplicateDetection=$duplicateDetection, enabled=$enabled, facialRecognition=$facialRecognition, urls=$urls]'; Map toJson() { final json = {}; + json[r'availabilityChecks'] = this.availabilityChecks; json[r'clip'] = this.clip; json[r'duplicateDetection'] = this.duplicateDetection; json[r'enabled'] = this.enabled; json[r'facialRecognition'] = this.facialRecognition; - if (this.url != null) { - json[r'url'] = this.url; - } else { - // json[r'url'] = null; - } json[r'urls'] = this.urls; return json; } @@ -86,11 +75,11 @@ class SystemConfigMachineLearningDto { final json = value.cast(); return SystemConfigMachineLearningDto( + availabilityChecks: MachineLearningAvailabilityChecksDto.fromJson(json[r'availabilityChecks'])!, clip: CLIPConfig.fromJson(json[r'clip'])!, duplicateDetection: DuplicateDetectionConfig.fromJson(json[r'duplicateDetection'])!, enabled: mapValueOfType(json, r'enabled')!, facialRecognition: FacialRecognitionConfig.fromJson(json[r'facialRecognition'])!, - url: mapValueOfType(json, r'url'), urls: json[r'urls'] is Iterable ? (json[r'urls'] as Iterable).cast().toList(growable: false) : const [], @@ -141,6 +130,7 @@ class SystemConfigMachineLearningDto { /// The list of required keys that must be present in a JSON. static const requiredKeys = { + 'availabilityChecks', 'clip', 'duplicateDetection', 'enabled', diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index 0b0391326c..d3fe155a80 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -12259,6 +12259,25 @@ ], "type": "object" }, + "MachineLearningAvailabilityChecksDto": { + "properties": { + "enabled": { + "type": "boolean" + }, + "interval": { + "type": "number" + }, + "timeout": { + "type": "number" + } + }, + "required": [ + "enabled", + "interval", + "timeout" + ], + "type": "object" + }, "ManualJobName": { "enum": [ "person-cleanup", @@ -16395,6 +16414,9 @@ }, "SystemConfigMachineLearningDto": { "properties": { + "availabilityChecks": { + "$ref": "#/components/schemas/MachineLearningAvailabilityChecksDto" + }, "clip": { "$ref": "#/components/schemas/CLIPConfig" }, @@ -16407,11 +16429,6 @@ "facialRecognition": { "$ref": "#/components/schemas/FacialRecognitionConfig" }, - "url": { - "deprecated": true, - "description": "This property was deprecated in v1.122.0", - "type": "string" - }, "urls": { "format": "uri", "items": { @@ -16423,6 +16440,7 @@ } }, "required": [ + "availabilityChecks", "clip", "duplicateDetection", "enabled", diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index 079dbda63b..a8b1b0f596 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1383,6 +1383,11 @@ export type SystemConfigLoggingDto = { enabled: boolean; level: LogLevel; }; +export type MachineLearningAvailabilityChecksDto = { + enabled: boolean; + interval: number; + timeout: number; +}; export type ClipConfig = { enabled: boolean; modelName: string; @@ -1399,12 +1404,11 @@ export type FacialRecognitionConfig = { modelName: string; }; export type SystemConfigMachineLearningDto = { + availabilityChecks: MachineLearningAvailabilityChecksDto; clip: ClipConfig; duplicateDetection: DuplicateDetectionConfig; enabled: boolean; facialRecognition: FacialRecognitionConfig; - /** This property was deprecated in v1.122.0 */ - url?: string; urls: string[]; }; export type SystemConfigMapDto = { diff --git a/server/src/bin/sync-sql.ts b/server/src/bin/sync-sql.ts index 6d3cb42fae..b632332069 100644 --- a/server/src/bin/sync-sql.ts +++ b/server/src/bin/sync-sql.ts @@ -15,6 +15,7 @@ import { repositories } from 'src/repositories'; import { AccessRepository } from 'src/repositories/access.repository'; import { ConfigRepository } from 'src/repositories/config.repository'; import { LoggingRepository } from 'src/repositories/logging.repository'; +import { MachineLearningRepository } from 'src/repositories/machine-learning.repository'; import { SyncRepository } from 'src/repositories/sync.repository'; import { AuthService } from 'src/services/auth.service'; import { getKyselyConfig } from 'src/utils/database'; @@ -57,7 +58,7 @@ class SqlGenerator { try { await this.setup(); for (const Repository of repositories) { - if (Repository === LoggingRepository) { + if (Repository === LoggingRepository || Repository === MachineLearningRepository) { continue; } await this.process(Repository); diff --git a/server/src/config.ts b/server/src/config.ts index 0d1e293be8..66c03450fa 100644 --- a/server/src/config.ts +++ b/server/src/config.ts @@ -54,6 +54,11 @@ export interface SystemConfig { machineLearning: { enabled: boolean; urls: string[]; + availabilityChecks: { + enabled: boolean; + timeout: number; + interval: number; + }; clip: { enabled: boolean; modelName: string; @@ -176,6 +181,8 @@ export interface SystemConfig { }; } +export type MachineLearningConfig = SystemConfig['machineLearning']; + export const defaults = Object.freeze({ backup: { database: { @@ -227,6 +234,11 @@ export const defaults = Object.freeze({ machineLearning: { enabled: process.env.IMMICH_MACHINE_LEARNING_ENABLED !== 'false', urls: [process.env.IMMICH_MACHINE_LEARNING_URL || 'http://immich-machine-learning:3003'], + availabilityChecks: { + enabled: true, + timeout: Number(process.env.IMMICH_MACHINE_LEARNING_PING_TIMEOUT) || 2000, + interval: 30_000, + }, clip: { enabled: true, modelName: 'ViT-B-32__openai', diff --git a/server/src/constants.ts b/server/src/constants.ts index b47640c4ae..1bae521a9f 100644 --- a/server/src/constants.ts +++ b/server/src/constants.ts @@ -51,11 +51,6 @@ export const serverVersion = new SemVer(version); export const AUDIT_LOG_MAX_DURATION = Duration.fromObject({ days: 100 }); export const ONE_HOUR = Duration.fromObject({ hours: 1 }); -export const MACHINE_LEARNING_PING_TIMEOUT = Number(process.env.MACHINE_LEARNING_PING_TIMEOUT || 2000); -export const MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME = Number( - process.env.MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME || 30_000, -); - export const citiesFile = 'cities500.txt'; export const reverseGeocodeMaxDistance = 25_000; diff --git a/server/src/dtos/system-config.dto.ts b/server/src/dtos/system-config.dto.ts index 8a58995de7..1facc6c331 100644 --- a/server/src/dtos/system-config.dto.ts +++ b/server/src/dtos/system-config.dto.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { Exclude, Transform, Type } from 'class-transformer'; +import { Type } from 'class-transformer'; import { ArrayMinSize, IsInt, @@ -15,7 +15,6 @@ import { ValidateNested, } from 'class-validator'; import { SystemConfig } from 'src/config'; -import { PropertyLifecycle } from 'src/decorators'; import { CLIPConfig, DuplicateDetectionConfig, FacialRecognitionConfig } from 'src/dtos/model-config.dto'; import { AudioCodec, @@ -257,21 +256,32 @@ class SystemConfigLoggingDto { level!: LogLevel; } +class MachineLearningAvailabilityChecksDto { + @ValidateBoolean() + enabled!: boolean; + + @IsInt() + timeout!: number; + + @IsInt() + interval!: number; +} + class SystemConfigMachineLearningDto { @ValidateBoolean() enabled!: boolean; - @PropertyLifecycle({ deprecatedAt: 'v1.122.0' }) - @Exclude() - url?: string; - @IsUrl({ require_tld: false, allow_underscores: true }, { each: true }) @ArrayMinSize(1) - @Transform(({ obj, value }) => (obj.url ? [obj.url] : value)) @ValidateIf((dto) => dto.enabled) @ApiProperty({ type: 'array', items: { type: 'string', format: 'uri' }, minItems: 1 }) urls!: string[]; + @Type(() => MachineLearningAvailabilityChecksDto) + @ValidateNested() + @IsObject() + availabilityChecks!: MachineLearningAvailabilityChecksDto; + @Type(() => CLIPConfig) @ValidateNested() @IsObject() diff --git a/server/src/repositories/logging.repository.ts b/server/src/repositories/logging.repository.ts index 939ecb718f..576ee6c810 100644 --- a/server/src/repositories/logging.repository.ts +++ b/server/src/repositories/logging.repository.ts @@ -142,6 +142,10 @@ export class LoggingRepository { this.handleMessage(LogLevel.Fatal, message, details); } + deprecate(message: string) { + this.warn(`[Deprecated] ${message}`); + } + private handleFunction(level: LogLevel, message: LogFunction, details: LogDetails[]) { if (this.logger.isLevelEnabled(level)) { this.handleMessage(level, message(), details); diff --git a/server/src/repositories/machine-learning.repository.ts b/server/src/repositories/machine-learning.repository.ts index f880ed1298..d148dc782b 100644 --- a/server/src/repositories/machine-learning.repository.ts +++ b/server/src/repositories/machine-learning.repository.ts @@ -1,6 +1,7 @@ import { Injectable } from '@nestjs/common'; +import { Duration } from 'luxon'; import { readFile } from 'node:fs/promises'; -import { MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME, MACHINE_LEARNING_PING_TIMEOUT } from 'src/constants'; +import { MachineLearningConfig } from 'src/config'; import { CLIPConfig } from 'src/dtos/model-config.dto'; import { LoggingRepository } from 'src/repositories/logging.repository'; @@ -57,82 +58,100 @@ export type TextEncodingOptions = ModelOptions & { language?: string }; @Injectable() export class MachineLearningRepository { - // Note that deleted URL's are not removed from this map (ie: they're leaked) - // Cleaning them up is low priority since there should be very few over a - // typical server uptime cycle - private urlAvailability: { - [url: string]: - | { - active: boolean; - lastChecked: number; - } - | undefined; - }; + private healthyMap: Record = {}; + private interval?: ReturnType; + private _config?: MachineLearningConfig; + + private get config(): MachineLearningConfig { + if (!this._config) { + throw new Error('Machine learning repository not been setup'); + } + + return this._config; + } constructor(private logger: LoggingRepository) { this.logger.setContext(MachineLearningRepository.name); - this.urlAvailability = {}; } - private setUrlAvailability(url: string, active: boolean) { - const current = this.urlAvailability[url]; - if (current?.active !== active) { - this.logger.verbose(`Setting ${url} ML server to ${active ? 'active' : 'inactive'}.`); + setup(config: MachineLearningConfig) { + this._config = config; + this.teardown(); + + // delete old servers + for (const url of Object.keys(this.healthyMap)) { + if (!config.urls.includes(url)) { + delete this.healthyMap[url]; + } } - this.urlAvailability[url] = { - active, - lastChecked: Date.now(), - }; + + if (!config.availabilityChecks.enabled) { + return; + } + + this.tick(); + this.interval = setInterval( + () => this.tick(), + Duration.fromObject({ milliseconds: config.availabilityChecks.interval }).as('milliseconds'), + ); } - private async checkAvailability(url: string) { - let active = false; + teardown() { + if (this.interval) { + clearInterval(this.interval); + } + } + + private tick() { + for (const url of this.config.urls) { + void this.check(url); + } + } + + private async check(url: string) { + let healthy = false; try { const response = await fetch(new URL('/ping', url), { - signal: AbortSignal.timeout(MACHINE_LEARNING_PING_TIMEOUT), + signal: AbortSignal.timeout(this.config.availabilityChecks.timeout), }); - active = response.ok; + if (response.ok) { + healthy = true; + } } catch { // nothing to do here } - this.setUrlAvailability(url, active); - return active; + + this.setHealthy(url, healthy); } - private async shouldSkipUrl(url: string) { - const availability = this.urlAvailability[url]; - if (availability === undefined) { - // If this is a new endpoint, then check inline and skip if it fails - if (!(await this.checkAvailability(url))) { - return true; - } - return false; + private setHealthy(url: string, healthy: boolean) { + if (this.healthyMap[url] !== healthy) { + this.logger.log(`Machine learning server became ${healthy ? 'healthy' : 'unhealthy'} (${url}).`); } - if (!availability.active && Date.now() - availability.lastChecked < MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME) { - // If this is an old inactive endpoint that hasn't been checked in a - // while then check but don't wait for the result, just skip it - // This avoids delays on every search whilst allowing higher priority - // ML servers to recover over time. - void this.checkAvailability(url); + + this.healthyMap[url] = healthy; + } + + private isHealthy(url: string) { + if (!this.config.availabilityChecks.enabled) { return true; } - return false; + + return this.healthyMap[url]; } - private async predict(urls: string[], payload: ModelPayload, config: MachineLearningRequest): Promise { + private async predict(payload: ModelPayload, config: MachineLearningRequest): Promise { const formData = await this.getFormData(payload, config); - let urlCounter = 0; - for (const url of urls) { - urlCounter++; - const isLast = urlCounter >= urls.length; - if (!isLast && (await this.shouldSkipUrl(url))) { - continue; - } + for (const url of [ + // try healthy servers first + ...this.config.urls.filter((url) => this.isHealthy(url)), + ...this.config.urls.filter((url) => !this.isHealthy(url)), + ]) { try { const response = await fetch(new URL('/predict', url), { method: 'POST', body: formData }); if (response.ok) { - this.setUrlAvailability(url, true); + this.setHealthy(url, true); return response.json(); } @@ -144,20 +163,21 @@ export class MachineLearningRepository { `Machine learning request to "${url}" failed: ${error instanceof Error ? error.message : error}`, ); } - this.setUrlAvailability(url, false); + + this.setHealthy(url, false); } throw new Error(`Machine learning request '${JSON.stringify(config)}' failed for all URLs`); } - async detectFaces(urls: string[], imagePath: string, { modelName, minScore }: FaceDetectionOptions) { + async detectFaces(imagePath: string, { modelName, minScore }: FaceDetectionOptions) { const request = { [ModelTask.FACIAL_RECOGNITION]: { [ModelType.DETECTION]: { modelName, options: { minScore } }, [ModelType.RECOGNITION]: { modelName }, }, }; - const response = await this.predict(urls, { imagePath }, request); + const response = await this.predict({ imagePath }, request); return { imageHeight: response.imageHeight, imageWidth: response.imageWidth, @@ -165,15 +185,15 @@ export class MachineLearningRepository { }; } - async encodeImage(urls: string[], imagePath: string, { modelName }: CLIPConfig) { + async encodeImage(imagePath: string, { modelName }: CLIPConfig) { const request = { [ModelTask.SEARCH]: { [ModelType.VISUAL]: { modelName } } }; - const response = await this.predict(urls, { imagePath }, request); + const response = await this.predict({ imagePath }, request); return response[ModelTask.SEARCH]; } - async encodeText(urls: string[], text: string, { language, modelName }: TextEncodingOptions) { + async encodeText(text: string, { language, modelName }: TextEncodingOptions) { const request = { [ModelTask.SEARCH]: { [ModelType.TEXTUAL]: { modelName, options: { language } } } }; - const response = await this.predict(urls, { text }, request); + const response = await this.predict({ text }, request); return response[ModelTask.SEARCH]; } diff --git a/server/src/services/person.service.spec.ts b/server/src/services/person.service.spec.ts index 13c3128317..41c44ea476 100644 --- a/server/src/services/person.service.spec.ts +++ b/server/src/services/person.service.spec.ts @@ -729,7 +729,6 @@ describe(PersonService.name, () => { mocks.assetJob.getForDetectFacesJob.mockResolvedValue({ ...assetStub.image, files: [assetStub.image.files[1]] }); await sut.handleDetectFaces({ id: assetStub.image.id }); expect(mocks.machineLearning.detectFaces).toHaveBeenCalledWith( - ['http://immich-machine-learning:3003'], '/uploads/user-id/thumbs/path.jpg', expect.objectContaining({ minScore: 0.7, modelName: 'buffalo_l' }), ); diff --git a/server/src/services/person.service.ts b/server/src/services/person.service.ts index 344b69efde..6fa9b3fdd2 100644 --- a/server/src/services/person.service.ts +++ b/server/src/services/person.service.ts @@ -316,7 +316,6 @@ export class PersonService extends BaseService { } const { imageHeight, imageWidth, faces } = await this.machineLearningRepository.detectFaces( - machineLearning.urls, previewFile.path, machineLearning.facialRecognition, ); diff --git a/server/src/services/search.service.spec.ts b/server/src/services/search.service.spec.ts index d87ccbde1d..b6e09add19 100644 --- a/server/src/services/search.service.spec.ts +++ b/server/src/services/search.service.spec.ts @@ -211,7 +211,6 @@ describe(SearchService.name, () => { await sut.searchSmart(authStub.user1, { query: 'test' }); expect(mocks.machineLearning.encodeText).toHaveBeenCalledWith( - [expect.any(String)], 'test', expect.objectContaining({ modelName: expect.any(String) }), ); @@ -225,7 +224,6 @@ describe(SearchService.name, () => { await sut.searchSmart(authStub.user1, { query: 'test', page: 2, size: 50 }); expect(mocks.machineLearning.encodeText).toHaveBeenCalledWith( - [expect.any(String)], 'test', expect.objectContaining({ modelName: expect.any(String) }), ); @@ -243,7 +241,6 @@ describe(SearchService.name, () => { await sut.searchSmart(authStub.user1, { query: 'test' }); expect(mocks.machineLearning.encodeText).toHaveBeenCalledWith( - [expect.any(String)], 'test', expect.objectContaining({ modelName: 'ViT-B-16-SigLIP__webli' }), ); @@ -253,7 +250,6 @@ describe(SearchService.name, () => { await sut.searchSmart(authStub.user1, { query: 'test', language: 'de' }); expect(mocks.machineLearning.encodeText).toHaveBeenCalledWith( - [expect.any(String)], 'test', expect.objectContaining({ language: 'de' }), ); diff --git a/server/src/services/search.service.ts b/server/src/services/search.service.ts index 51a2c94338..fea1670e27 100644 --- a/server/src/services/search.service.ts +++ b/server/src/services/search.service.ts @@ -118,7 +118,7 @@ export class SearchService extends BaseService { const key = machineLearning.clip.modelName + dto.query + dto.language; embedding = this.embeddingCache.get(key); if (!embedding) { - embedding = await this.machineLearningRepository.encodeText(machineLearning.urls, dto.query, { + embedding = await this.machineLearningRepository.encodeText(dto.query, { modelName: machineLearning.clip.modelName, language: dto.language, }); diff --git a/server/src/services/smart-info.service.spec.ts b/server/src/services/smart-info.service.spec.ts index edd9f4663a..b3af5cd15f 100644 --- a/server/src/services/smart-info.service.spec.ts +++ b/server/src/services/smart-info.service.spec.ts @@ -205,7 +205,6 @@ describe(SmartInfoService.name, () => { expect(await sut.handleEncodeClip({ id: assetStub.image.id })).toEqual(JobStatus.Success); expect(mocks.machineLearning.encodeImage).toHaveBeenCalledWith( - ['http://immich-machine-learning:3003'], '/uploads/user-id/thumbs/path.jpg', expect.objectContaining({ modelName: 'ViT-B-32__openai' }), ); @@ -242,7 +241,6 @@ describe(SmartInfoService.name, () => { expect(mocks.database.wait).toHaveBeenCalledWith(512); expect(mocks.machineLearning.encodeImage).toHaveBeenCalledWith( - ['http://immich-machine-learning:3003'], '/uploads/user-id/thumbs/path.jpg', expect.objectContaining({ modelName: 'ViT-B-32__openai' }), ); diff --git a/server/src/services/smart-info.service.ts b/server/src/services/smart-info.service.ts index 3b8e2d1fc3..eff16fea45 100644 --- a/server/src/services/smart-info.service.ts +++ b/server/src/services/smart-info.service.ts @@ -108,11 +108,7 @@ export class SmartInfoService extends BaseService { return JobStatus.Skipped; } - const embedding = await this.machineLearningRepository.encodeImage( - machineLearning.urls, - asset.files[0].path, - machineLearning.clip, - ); + const embedding = await this.machineLearningRepository.encodeImage(asset.files[0].path, machineLearning.clip); if (this.databaseRepository.isBusy(DatabaseLock.CLIPDimSize)) { this.logger.verbose(`Waiting for CLIP dimension size to be updated`); diff --git a/server/src/services/system-config.service.spec.ts b/server/src/services/system-config.service.spec.ts index 486945546f..5a9c7f4df3 100644 --- a/server/src/services/system-config.service.spec.ts +++ b/server/src/services/system-config.service.spec.ts @@ -82,6 +82,11 @@ const updatedConfig = Object.freeze({ machineLearning: { enabled: true, urls: ['http://immich-machine-learning:3003'], + availabilityChecks: { + enabled: true, + interval: 30_000, + timeout: 2000, + }, clip: { enabled: true, modelName: 'ViT-B-32__openai', diff --git a/server/src/services/system-config.service.ts b/server/src/services/system-config.service.ts index d046b0317a..ea95b4df24 100644 --- a/server/src/services/system-config.service.ts +++ b/server/src/services/system-config.service.ts @@ -16,6 +16,20 @@ export class SystemConfigService extends BaseService { async onBootstrap() { const config = await this.getConfig({ withCache: false }); await this.eventRepository.emit('ConfigInit', { newConfig: config }); + + if ( + process.env.IMMICH_MACHINE_LEARNING_PING_TIMEOUT || + process.env.IMMICH_MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME + ) { + this.logger.deprecate( + 'IMMICH_MACHINE_LEARNING_PING_TIMEOUT and MACHINE_LEARNING_AVAILABILITY_BACKOFF_TIME have been moved to system config(`machineLearning.availabilityChecks`) and will be removed in a future release.', + ); + } + } + + @OnEvent({ name: 'AppShutdown' }) + onShutdown() { + this.machineLearningRepository.teardown(); } async getSystemConfig(): Promise { @@ -28,12 +42,14 @@ export class SystemConfigService extends BaseService { } @OnEvent({ name: 'ConfigInit', priority: -100 }) - onConfigInit({ newConfig: { logging } }: ArgOf<'ConfigInit'>) { + onConfigInit({ newConfig: { logging, machineLearning } }: ArgOf<'ConfigInit'>) { const { logLevel: envLevel } = this.configRepository.getEnv(); const configLevel = logging.enabled ? logging.level : false; const level = envLevel ?? configLevel; this.logger.setLogLevel(level); this.logger.log(`LogLevel=${level} ${envLevel ? '(set via IMMICH_LOG_LEVEL)' : '(set via system config)'}`); + + this.machineLearningRepository.setup(machineLearning); } @OnEvent({ name: 'ConfigUpdate', server: true }) diff --git a/web/src/lib/components/admin-settings/MachineLearningSettings.svelte b/web/src/lib/components/admin-settings/MachineLearningSettings.svelte index 59bd058606..bb1aa04ecd 100644 --- a/web/src/lib/components/admin-settings/MachineLearningSettings.svelte +++ b/web/src/lib/components/admin-settings/MachineLearningSettings.svelte @@ -9,7 +9,7 @@ import { featureFlags } from '$lib/stores/server-config.store'; import type { SystemConfigDto } from '@immich/sdk'; import { Button, IconButton } from '@immich/ui'; - import { mdiMinusCircle } from '@mdi/js'; + import { mdiPlus, mdiTrashCanOutline } from '@mdi/js'; import { isEqual } from 'lodash-es'; import { t } from 'svelte-i18n'; import { fade } from 'svelte/transition'; @@ -46,19 +46,6 @@
{#each config.machineLearning.urls as _, i (i)} - {#snippet removeButton()} - {#if config.machineLearning.urls.length > 1} - config.machineLearning.urls.splice(i, 1)} - icon={mdiMinusCircle} - /> - {/if} - {/snippet} - + > + {#snippet trailingSnippet()} + {#if config.machineLearning.urls.length > 1} + config.machineLearning.urls.splice(i, 1)} + icon={mdiTrashCanOutline} + color="danger" + /> + {/if} + {/snippet} + {/each}
- +
+ +
+ +
+ + +
+ + + + +
+
+ +
{#if inputType === SettingInputFieldType.COLOR} Date: Fri, 19 Sep 2025 12:19:26 -0400 Subject: [PATCH 02/60] =?UTF-8?q?fix:=20automatically=20remove=20leading/t?= =?UTF-8?q?railing=20whitespace=20from=20search=20que=E2=80=A6=20(#22214)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix: automatically remove leading/trailing whitespace from search queries --- server/src/dtos/search.dto.ts | 18 +++++------------- server/src/validation.ts | 12 ++++++++++++ 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/server/src/dtos/search.dto.ts b/server/src/dtos/search.dto.ts index ac7bf4feb2..5f8b018afe 100644 --- a/server/src/dtos/search.dto.ts +++ b/server/src/dtos/search.dto.ts @@ -6,7 +6,7 @@ import { PropertyLifecycle } from 'src/decorators'; import { AlbumResponseDto } from 'src/dtos/album.dto'; import { AssetResponseDto } from 'src/dtos/asset-response.dto'; import { AssetOrder, AssetType, AssetVisibility } from 'src/enum'; -import { Optional, ValidateBoolean, ValidateDate, ValidateEnum, ValidateUUID } from 'src/validation'; +import { Optional, ValidateBoolean, ValidateDate, ValidateEnum, ValidateString, ValidateUUID } from 'src/validation'; class BaseSearchDto { @ValidateUUID({ optional: true, nullable: true }) @@ -144,9 +144,7 @@ export class MetadataSearchDto extends RandomSearchDto { @Optional() deviceAssetId?: string; - @IsString() - @IsNotEmpty() - @Optional() + @ValidateString({ optional: true, trim: true }) description?: string; @IsString() @@ -154,9 +152,7 @@ export class MetadataSearchDto extends RandomSearchDto { @Optional() checksum?: string; - @IsString() - @IsNotEmpty() - @Optional() + @ValidateString({ optional: true, trim: true }) originalFileName?: string; @IsString() @@ -190,16 +186,12 @@ export class MetadataSearchDto extends RandomSearchDto { } export class StatisticsSearchDto extends BaseSearchDto { - @IsString() - @IsNotEmpty() - @Optional() + @ValidateString({ optional: true, trim: true }) description?: string; } export class SmartSearchDto extends BaseSearchWithResultsDto { - @IsString() - @IsNotEmpty() - @Optional() + @ValidateString({ optional: true, trim: true }) query?: string; @ValidateUUID({ optional: true }) diff --git a/server/src/validation.ts b/server/src/validation.ts index e583f6a44e..6d4bbfbe36 100644 --- a/server/src/validation.ts +++ b/server/src/validation.ts @@ -211,6 +211,18 @@ export const ValidateDate = (options?: DateOptions & ApiPropertyOptions) => { return applyDecorators(...decorators); }; +type StringOptions = { optional?: boolean; nullable?: boolean; trim?: boolean }; +export const ValidateString = (options?: StringOptions & ApiPropertyOptions) => { + const { optional, nullable, trim, ...apiPropertyOptions } = options || {}; + const decorators = [ApiProperty(apiPropertyOptions), IsString(), optional ? Optional({ nullable }) : IsNotEmpty()]; + + if (trim) { + decorators.push(Transform(({ value }: { value: string }) => value?.trim())); + } + + return applyDecorators(...decorators); +}; + type BooleanOptions = { optional?: boolean; nullable?: boolean }; export const ValidateBoolean = (options?: BooleanOptions & ApiPropertyOptions) => { const { optional, nullable, ...apiPropertyOptions } = options || {}; From 34339ea69ff7919d0976bf7f5fc775f2cf7196e5 Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Fri, 19 Sep 2025 12:20:09 -0400 Subject: [PATCH 03/60] fix(web): show danger/warning when taken dates overlap (#22213) --- i18n/en.json | 1 + .../search-bar/search-date-section.svelte | 45 +++++++++---------- 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/i18n/en.json b/i18n/en.json index af52770c64..b817ab375f 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -1923,6 +1923,7 @@ "stacktrace": "Stacktrace", "start": "Start", "start_date": "Start date", + "start_date_before_end_date": "Start date must be before end date", "state": "State", "status": "Status", "stop_casting": "Stop casting", diff --git a/web/src/lib/components/shared-components/search-bar/search-date-section.svelte b/web/src/lib/components/shared-components/search-bar/search-date-section.svelte index 62867805b6..ffb7816e8d 100644 --- a/web/src/lib/components/shared-components/search-bar/search-date-section.svelte +++ b/web/src/lib/components/shared-components/search-bar/search-date-section.svelte @@ -7,6 +7,7 @@ -
- +
+
+ - + +
+ {#if invalid} + {$t('start_date_before_end_date')} + {/if}
From 1e0b4fac040089f9462b3cb0014e4b3116b7f313 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 19 Sep 2025 12:29:01 -0400 Subject: [PATCH 04/60] fix(deps): update typescript-projects (#21510) * fix(deps): update typescript-projects * chore: downgrade dependencies * chore: downgrade svelte-gestures * fix: svelte/no-navigation-without-resolve * fix: dumb test --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Zack Pollard Co-authored-by: Daniel Dietzler Co-authored-by: Jason Rasmussen --- mise.toml | 2 +- package.json | 2 +- pnpm-lock.yaml | 2602 ++++++++--------- server/package.json | 12 +- web/eslint.config.js | 1 + web/package.json | 8 +- .../StorageTemplateSettings.svelte | 3 +- .../album-page/album-card-group.svelte | 3 +- .../components/album-page/albums-list.svelte | 3 +- .../album-page/albums-table-row.svelte | 3 +- .../asset-viewer/activity-viewer.svelte | 8 +- .../asset-viewer/asset-viewer-nav-bar.svelte | 6 +- .../asset-viewer/detail-panel-tags.svelte | 3 +- .../asset-viewer/detail-panel.svelte | 28 +- .../side-bar/recent-albums.spec.ts | 3 + 15 files changed, 1293 insertions(+), 1394 deletions(-) diff --git a/mise.toml b/mise.toml index 7d4824de57..c741b0c71a 100644 --- a/mise.toml +++ b/mise.toml @@ -1,7 +1,7 @@ [tools] node = "22.19.0" flutter = "3.35.4" -pnpm = "10.14.0" +pnpm = "10.15.1" dart = "3.8.2" [tools."github:CQLabs/homebrew-dcm"] diff --git a/package.json b/package.json index a718d7ccd0..18610fe4bc 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "description": "Monorepo for Immich", "private": true, - "packageManager": "pnpm@10.14.0+sha512.ad27a79641b49c3e481a16a805baa71817a04bbe06a38d17e60e2eaee83f6a146c6a688125f5792e48dd5ba30e7da52a5cda4c3992b9ccf333f9ce223af84748", + "packageManager": "pnpm@10.15.1+sha512.34e538c329b5553014ca8e8f4535997f96180a1d0f614339357449935350d924e22f8614682191264ec33d1462ac21561aff97f6bb18065351c162c7e8f6de67", "engines": { "pnpm": ">=10.0.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c0f7b987ed..4e2361bfd0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -43,7 +43,7 @@ importers: devDependencies: '@eslint/js': specifier: ^9.8.0 - version: 9.33.0 + version: 9.35.0 '@immich/sdk': specifier: file:../open-api/typescript-sdk version: link:../open-api/typescript-sdk @@ -64,10 +64,10 @@ importers: version: 4.13.4 '@types/node': specifier: ^22.18.1 - version: 22.18.4 + version: 22.18.5 '@vitest/coverage-v8': specifier: ^3.0.0 - version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) byte-size: specifier: ^9.0.0 version: 9.0.1 @@ -79,19 +79,19 @@ importers: version: 12.1.0 eslint: specifier: ^9.14.0 - version: 9.33.0(jiti@2.5.1) + version: 9.35.0(jiti@2.5.1) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.33.0(jiti@2.5.1)) + version: 10.1.8(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-prettier: specifier: ^5.1.3 - version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2) + version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1))(prettier@3.6.2) eslint-plugin-unicorn: specifier: ^60.0.0 - version: 60.0.0(eslint@9.33.0(jiti@2.5.1)) + version: 60.0.0(eslint@9.35.0(jiti@2.5.1)) globals: specifier: ^16.0.0 - version: 16.3.0 + version: 16.4.0 mock-fs: specifier: ^5.2.0 version: 5.5.0 @@ -106,19 +106,19 @@ importers: version: 5.9.2 typescript-eslint: specifier: ^8.28.0 - version: 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + version: 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) vite: specifier: ^7.0.0 - version: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) vite-tsconfig-paths: specifier: ^5.0.0 - version: 5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) vitest: specifier: ^3.0.0 - version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) vitest-fetch-mock: specifier: ^0.4.0 - version: 0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) yaml: specifier: ^2.3.1 version: 2.8.1 @@ -127,13 +127,13 @@ importers: dependencies: '@docusaurus/core': specifier: ~3.8.0 - version: 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + version: 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/preset-classic': specifier: ~3.8.0 - version: 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) + version: 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) '@docusaurus/theme-common': specifier: ~3.8.0 - version: 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mdi/js': specifier: ^7.3.67 version: 7.4.47 @@ -142,16 +142,16 @@ importers: version: 1.6.1 '@mdx-js/react': specifier: ^3.0.0 - version: 3.1.0(@types/react@19.1.13)(react@18.3.1) + version: 3.1.1(@types/react@19.1.13)(react@18.3.1) autoprefixer: specifier: ^10.4.17 version: 10.4.21(postcss@8.5.6) docusaurus-lunr-search: specifier: ^3.3.2 - version: 3.6.0(@docusaurus/core@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 3.6.0(@docusaurus/core@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) docusaurus-preset-openapi: specifier: ^0.7.5 - version: 0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2) + version: 0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2) lunr: specifier: ^2.3.9 version: 2.3.9 @@ -197,7 +197,7 @@ importers: devDependencies: '@eslint/js': specifier: ^9.8.0 - version: 9.33.0 + version: 9.35.0 '@immich/cli': specifier: file:../cli version: link:../cli @@ -206,7 +206,7 @@ importers: version: link:../open-api/typescript-sdk '@playwright/test': specifier: ^1.44.1 - version: 1.54.2 + version: 1.55.0 '@socket.io/component-emitter': specifier: ^3.1.2 version: 3.1.2 @@ -215,10 +215,10 @@ importers: version: 3.7.1 '@types/node': specifier: ^22.18.1 - version: 22.18.4 + version: 22.18.5 '@types/oidc-provider': specifier: ^9.0.0 - version: 9.1.2 + version: 9.5.0 '@types/pg': specifier: ^8.15.1 version: 8.15.5 @@ -230,31 +230,31 @@ importers: version: 6.0.3 eslint: specifier: ^9.14.0 - version: 9.33.0(jiti@2.5.1) + version: 9.35.0(jiti@2.5.1) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.33.0(jiti@2.5.1)) + version: 10.1.8(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-prettier: specifier: ^5.1.3 - version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2) + version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1))(prettier@3.6.2) eslint-plugin-unicorn: specifier: ^60.0.0 - version: 60.0.0(eslint@9.33.0(jiti@2.5.1)) + version: 60.0.0(eslint@9.35.0(jiti@2.5.1)) exiftool-vendored: specifier: ^28.3.1 version: 28.8.0 globals: specifier: ^16.0.0 - version: 16.3.0 + version: 16.4.0 jose: specifier: ^5.6.3 version: 5.10.0 luxon: specifier: ^3.4.4 - version: 3.7.1 + version: 3.7.2 oidc-provider: specifier: ^9.0.0 - version: 9.4.1 + version: 9.5.1 pg: specifier: ^8.11.3 version: 8.16.3 @@ -281,13 +281,13 @@ importers: version: 5.9.2 typescript-eslint: specifier: ^8.28.0 - version: 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + version: 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) utimes: specifier: ^5.2.1 version: 5.2.1(encoding@0.1.13) vitest: specifier: ^3.0.0 - version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) open-api/typescript-sdk: dependencies: @@ -297,7 +297,7 @@ importers: devDependencies: '@types/node': specifier: ^22.18.1 - version: 22.18.4 + version: 22.18.5 typescript: specifier: ^5.3.3 version: 5.9.2 @@ -306,7 +306,7 @@ importers: dependencies: '@nestjs/bullmq': specifier: ^11.0.1 - version: 11.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(bullmq@5.57.0) + version: 11.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(bullmq@5.58.5) '@nestjs/common': specifier: ^11.0.4 version: 11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2) @@ -333,40 +333,40 @@ importers: version: 1.9.0 '@opentelemetry/context-async-hooks': specifier: ^2.0.0 - version: 2.0.1(@opentelemetry/api@1.9.0) + version: 2.1.0(@opentelemetry/api@1.9.0) '@opentelemetry/exporter-prometheus': - specifier: ^0.203.0 - version: 0.203.0(@opentelemetry/api@1.9.0) + specifier: ^0.205.0 + version: 0.205.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-http': - specifier: ^0.203.0 - version: 0.203.0(@opentelemetry/api@1.9.0) + specifier: ^0.205.0 + version: 0.205.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-ioredis': + specifier: ^0.53.0 + version: 0.53.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-nestjs-core': specifier: ^0.51.0 version: 0.51.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-nestjs-core': - specifier: ^0.49.0 - version: 0.49.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-pg': - specifier: ^0.56.0 - version: 0.56.0(@opentelemetry/api@1.9.0) + specifier: ^0.58.0 + version: 0.58.0(@opentelemetry/api@1.9.0) '@opentelemetry/resources': specifier: ^2.0.1 - version: 2.0.1(@opentelemetry/api@1.9.0) + version: 2.1.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-metrics': specifier: ^2.0.1 - version: 2.0.1(@opentelemetry/api@1.9.0) + version: 2.1.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-node': - specifier: ^0.203.0 - version: 0.203.0(@opentelemetry/api@1.9.0) + specifier: ^0.205.0 + version: 0.205.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': specifier: ^1.34.0 - version: 1.36.0 + version: 1.37.0 '@react-email/components': specifier: ^0.5.0 - version: 0.5.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1) + version: 0.5.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@react-email/render': specifier: ^1.1.2 - version: 1.2.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1) + version: 1.2.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@socket.io/redis-adapter': specifier: ^8.3.0 version: 8.3.0(socket.io-adapter@2.5.5) @@ -384,7 +384,7 @@ importers: version: 2.2.0 bullmq: specifier: ^5.51.0 - version: 5.57.0 + version: 5.58.5 chokidar: specifier: ^4.0.3 version: 4.0.3 @@ -444,7 +444,7 @@ importers: version: 4.17.21 luxon: specifier: ^3.4.2 - version: 3.7.1 + version: 3.7.2 mnemonist: specifier: ^0.40.3 version: 0.40.3 @@ -453,7 +453,7 @@ importers: version: 2.0.2 nest-commander: specifier: ^3.16.0 - version: 3.18.0(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@types/inquirer@8.2.11)(typescript@5.9.2) + version: 3.19.1(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@types/inquirer@8.2.11)(@types/node@22.18.5)(typescript@5.9.2) nestjs-cls: specifier: ^5.0.0 version: 5.4.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(reflect-metadata@0.2.2)(rxjs@7.8.2) @@ -465,10 +465,10 @@ importers: version: 7.0.1(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6) nodemailer: specifier: ^7.0.0 - version: 7.0.5 + version: 7.0.6 openid-client: specifier: ^6.3.3 - version: 6.6.4 + version: 6.8.0 pg: specifier: ^8.11.3 version: 8.16.3 @@ -489,7 +489,7 @@ importers: version: 19.1.1(react@19.1.1) react-email: specifier: ^4.0.0 - version: 4.2.8 + version: 4.2.11 reflect-metadata: specifier: ^0.2.0 version: 0.2.2 @@ -510,7 +510,7 @@ importers: version: 0.34.3 sirv: specifier: ^3.0.0 - version: 3.0.1 + version: 3.0.2 socket.io: specifier: ^4.8.1 version: 4.8.1 @@ -522,7 +522,7 @@ importers: version: 0.1.1 ua-parser-js: specifier: ^2.0.0 - version: 2.0.4(encoding@0.1.13) + version: 2.0.5 uuid: specifier: ^11.1.0 version: 11.1.0 @@ -532,10 +532,10 @@ importers: devDependencies: '@eslint/js': specifier: ^9.8.0 - version: 9.33.0 + version: 9.35.0 '@nestjs/cli': specifier: ^11.0.2 - version: 11.0.10(@swc/core@1.13.3(@swc/helpers@0.5.17))(@types/node@22.18.4) + version: 11.0.10(@swc/core@1.13.5(@swc/helpers@0.5.17))(@types/node@22.18.5) '@nestjs/schematics': specifier: ^11.0.0 version: 11.0.7(chokidar@4.0.3)(typescript@5.9.2) @@ -544,7 +544,7 @@ importers: version: 11.1.6(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@nestjs/platform-express@11.1.6) '@swc/core': specifier: ^1.4.14 - version: 1.13.3(@swc/helpers@0.5.17) + version: 1.13.5(@swc/helpers@0.5.17) '@types/archiver': specifier: ^6.0.0 version: 6.0.3 @@ -586,7 +586,7 @@ importers: version: 2.0.0 '@types/node': specifier: ^22.18.1 - version: 22.18.4 + version: 22.18.5 '@types/nodemailer': specifier: ^7.0.0 version: 7.0.1 @@ -604,7 +604,7 @@ importers: version: 2.16.0 '@types/semver': specifier: ^7.5.8 - version: 7.7.0 + version: 7.7.1 '@types/supertest': specifier: ^6.0.0 version: 6.0.3 @@ -613,31 +613,31 @@ importers: version: 0.7.39 '@types/validator': specifier: ^13.15.2 - version: 13.15.2 + version: 13.15.3 '@vitest/coverage-v8': specifier: ^3.0.0 - version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) eslint: specifier: ^9.14.0 - version: 9.33.0(jiti@2.5.1) + version: 9.35.0(jiti@2.5.1) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.33.0(jiti@2.5.1)) + version: 10.1.8(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-prettier: specifier: ^5.1.3 - version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2) + version: 5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1))(prettier@3.6.2) eslint-plugin-unicorn: specifier: ^60.0.0 - version: 60.0.0(eslint@9.33.0(jiti@2.5.1)) + version: 60.0.0(eslint@9.35.0(jiti@2.5.1)) globals: specifier: ^16.0.0 - version: 16.3.0 + version: 16.4.0 mock-fs: specifier: ^5.2.0 version: 5.5.0 node-gyp: specifier: ^11.2.0 - version: 11.3.0 + version: 11.4.2 pngjs: specifier: ^7.0.0 version: 7.0.0 @@ -649,7 +649,7 @@ importers: version: 4.2.0(prettier@3.6.2)(typescript@5.9.2) sql-formatter: specifier: ^15.0.0 - version: 15.6.6 + version: 15.6.9 supertest: specifier: ^7.1.0 version: 7.1.4 @@ -664,16 +664,16 @@ importers: version: 5.9.2 typescript-eslint: specifier: ^8.28.0 - version: 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + version: 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) unplugin-swc: specifier: ^1.4.5 - version: 1.5.5(@swc/core@1.13.3(@swc/helpers@0.5.17))(rollup@4.50.1) + version: 1.5.7(@swc/core@1.13.5(@swc/helpers@0.5.17))(rollup@4.50.1) vite-tsconfig-paths: specifier: ^5.0.0 - version: 5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) vitest: specifier: ^3.0.0 - version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) web: dependencies: @@ -685,7 +685,7 @@ importers: version: link:../open-api/typescript-sdk '@immich/ui': specifier: ^0.29.0 - version: 0.29.0(@internationalized/date@3.8.2)(svelte@5.35.5) + version: 0.29.0(@internationalized/date@3.8.2)(svelte@5.38.10) '@mapbox/mapbox-gl-rtl-text': specifier: 0.2.3 version: 0.2.3(mapbox-gl@1.13.3) @@ -694,19 +694,19 @@ importers: version: 7.4.47 '@photo-sphere-viewer/core': specifier: ^5.11.5 - version: 5.13.4 + version: 5.14.0 '@photo-sphere-viewer/equirectangular-video-adapter': specifier: ^5.11.5 - version: 5.13.4(@photo-sphere-viewer/core@5.13.4)(@photo-sphere-viewer/video-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4)) + version: 5.14.0(@photo-sphere-viewer/core@5.14.0)(@photo-sphere-viewer/video-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0)) '@photo-sphere-viewer/resolution-plugin': specifier: ^5.11.5 - version: 5.13.4(@photo-sphere-viewer/core@5.13.4)(@photo-sphere-viewer/settings-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4)) + version: 5.14.0(@photo-sphere-viewer/core@5.14.0)(@photo-sphere-viewer/settings-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0)) '@photo-sphere-viewer/settings-plugin': specifier: ^5.11.5 - version: 5.13.4(@photo-sphere-viewer/core@5.13.4) + version: 5.14.0(@photo-sphere-viewer/core@5.14.0) '@photo-sphere-viewer/video-plugin': specifier: ^5.11.5 - version: 5.13.4(@photo-sphere-viewer/core@5.13.4) + version: 5.14.0(@photo-sphere-viewer/core@5.14.0) '@types/geojson': specifier: ^7946.0.16 version: 7946.0.16 @@ -715,7 +715,7 @@ importers: version: 0.41.0 '@zoom-image/svelte': specifier: ^0.3.0 - version: 0.3.4(svelte@5.35.5) + version: 0.3.4(svelte@5.38.10) async-mutex: specifier: ^0.5.0 version: 0.5.0 @@ -748,10 +748,10 @@ importers: version: 4.17.21 luxon: specifier: ^3.4.4 - version: 3.7.1 + version: 3.7.2 maplibre-gl: specifier: ^5.6.2 - version: 5.6.2 + version: 5.7.1 pmtiles: specifier: ^4.3.0 version: 4.3.0 @@ -765,17 +765,17 @@ importers: specifier: ~4.8.0 version: 4.8.1 svelte-gestures: - specifier: ^5.1.3 + specifier: 5.1.4 version: 5.1.4 svelte-i18n: specifier: ^4.0.1 - version: 4.0.1(svelte@5.35.5) + version: 4.0.1(svelte@5.38.10) svelte-maplibre: specifier: ^1.2.0 - version: 1.2.0(svelte@5.35.5) + version: 1.2.1(svelte@5.38.10) svelte-persisted-store: specifier: ^0.12.0 - version: 0.12.0(svelte@5.35.5) + version: 0.12.0(svelte@5.38.10) tabbable: specifier: ^6.2.0 version: 6.2.0 @@ -785,37 +785,37 @@ importers: devDependencies: '@eslint/js': specifier: ^9.18.0 - version: 9.33.0 + version: 9.35.0 '@faker-js/faker': specifier: ^10.0.0 version: 10.0.0 '@koddsson/eslint-plugin-tscompat': specifier: ^0.2.0 - version: 0.2.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + version: 0.2.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) '@socket.io/component-emitter': specifier: ^3.1.0 version: 3.1.2 '@sveltejs/adapter-static': specifier: ^3.0.8 - version: 3.0.9(@sveltejs/kit@2.27.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))) + version: 3.0.9(@sveltejs/kit@2.38.1(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))) '@sveltejs/enhanced-img': specifier: ^0.8.0 - version: 0.8.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.50.1)(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 0.8.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.50.1)(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@sveltejs/kit': specifier: ^2.27.1 - version: 2.27.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 2.38.1(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@sveltejs/vite-plugin-svelte': - specifier: 6.1.2 - version: 6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + specifier: 6.2.0 + version: 6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@tailwindcss/vite': specifier: ^4.1.7 - version: 4.1.12(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 4.1.13(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@testing-library/jest-dom': specifier: ^6.4.2 - version: 6.7.0 + version: 6.8.0 '@testing-library/svelte': specifier: ^5.2.8 - version: 5.2.8(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 5.2.8(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@testing-library/user-event': specifier: ^14.5.2 version: 14.6.1(@testing-library/dom@10.4.0) @@ -839,34 +839,34 @@ importers: version: 1.5.5 '@vitest/coverage-v8': specifier: ^3.0.0 - version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) dotenv: specifier: ^17.0.0 - version: 17.2.1 + version: 17.2.2 eslint: specifier: ^9.18.0 - version: 9.33.0(jiti@2.5.1) + version: 9.35.0(jiti@2.5.1) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.33.0(jiti@2.5.1)) + version: 10.1.8(eslint@9.35.0(jiti@2.5.1)) eslint-p: - specifier: ^0.25.0 - version: 0.25.0(jiti@2.5.1) + specifier: ^0.26.0 + version: 0.26.0(jiti@2.5.1) eslint-plugin-compat: specifier: ^6.0.2 - version: 6.0.2(eslint@9.33.0(jiti@2.5.1)) + version: 6.0.2(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-svelte: specifier: ^3.9.0 - version: 3.11.0(eslint@9.33.0(jiti@2.5.1))(svelte@5.35.5) + version: 3.12.3(eslint@9.35.0(jiti@2.5.1))(svelte@5.38.10) eslint-plugin-unicorn: specifier: ^60.0.0 - version: 60.0.0(eslint@9.33.0(jiti@2.5.1)) + version: 60.0.0(eslint@9.35.0(jiti@2.5.1)) factory.ts: specifier: ^1.4.1 version: 1.4.2 globals: specifier: ^16.0.0 - version: 16.3.0 + version: 16.4.0 prettier: specifier: ^3.4.2 version: 3.6.2 @@ -878,34 +878,34 @@ importers: version: 4.1.1(prettier@3.6.2) prettier-plugin-svelte: specifier: ^3.3.3 - version: 3.4.0(prettier@3.6.2)(svelte@5.35.5) + version: 3.4.0(prettier@3.6.2)(svelte@5.38.10) rollup-plugin-visualizer: specifier: ^6.0.0 version: 6.0.3(rollup@4.50.1) svelte: - specifier: 5.35.5 - version: 5.35.5 + specifier: 5.38.10 + version: 5.38.10 svelte-check: specifier: ^4.1.5 - version: 4.3.1(picomatch@4.0.3)(svelte@5.35.5)(typescript@5.9.2) + version: 4.3.1(picomatch@4.0.3)(svelte@5.38.10)(typescript@5.9.2) svelte-eslint-parser: specifier: ^1.2.0 - version: 1.3.1(svelte@5.35.5) + version: 1.3.2(svelte@5.38.10) tailwindcss: specifier: ^4.1.7 - version: 4.1.12 + version: 4.1.13 typescript: specifier: ^5.8.3 version: 5.9.2 typescript-eslint: specifier: ^8.28.0 - version: 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + version: 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) vite: specifier: ^7.1.2 - version: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) vitest: specifier: ^3.0.0 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) packages: @@ -1244,8 +1244,8 @@ packages: resolution: {integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==} engines: {node: '>=6.9.0'} - '@babel/parser@7.28.3': - resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==} + '@babel/parser@7.28.4': + resolution: {integrity: sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==} engines: {node: '>=6.0.0'} hasBin: true @@ -1697,12 +1697,12 @@ packages: resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.28.3': - resolution: {integrity: sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==} + '@babel/traverse@7.28.4': + resolution: {integrity: sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==} engines: {node: '>=6.9.0'} - '@babel/types@7.28.2': - resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==} + '@babel/types@7.28.4': + resolution: {integrity: sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==} engines: {node: '>=6.9.0'} '@balena/dockerignore@1.0.2': @@ -2468,8 +2468,8 @@ packages: cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.7.0': - resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} + '@eslint-community/eslint-utils@4.9.0': + resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 @@ -2486,10 +2486,6 @@ packages: resolution: {integrity: sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.14.0': - resolution: {integrity: sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.15.2': resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -2498,12 +2494,8 @@ packages: resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.30.1': - resolution: {integrity: sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/js@9.33.0': - resolution: {integrity: sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==} + '@eslint/js@9.35.0': + resolution: {integrity: sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': @@ -2579,18 +2571,14 @@ packages: resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} - '@humanfs/node@0.16.6': - resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + '@humanfs/node@0.16.7': + resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/retry@0.3.1': - resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} - engines: {node: '>=18.18'} - '@humanwhocodes/retry@0.4.3': resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} @@ -2767,8 +2755,8 @@ packages: '@types/node': optional: true - '@inquirer/external-editor@1.0.1': - resolution: {integrity: sha512-Oau4yL24d2B5IL4ma4UpbQigkVhzPDXLoqy1ggK4gnHg/stmkffJE4oOXHXF3uz0UEpywG68KcyXsyYpA1Re/Q==} + '@inquirer/external-editor@1.0.2': + resolution: {integrity: sha512-yy9cOoBnx58TlsPrIxauKIFQTiyH+0MK4e97y4sV9ERbI+zDxw7i2hxHLCIEGIE/8PPvDxGhgzIOTSOWcs6/MQ==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -3010,8 +2998,8 @@ packages: '@mdx-js/mdx@3.1.0': resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} - '@mdx-js/react@3.1.0': - resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} + '@mdx-js/react@3.1.1': + resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==} peerDependencies: '@types/react': '>=16' react: '>=16' @@ -3230,88 +3218,88 @@ packages: '@oazapfts/runtime@1.0.4': resolution: {integrity: sha512-7t6C2shug/6tZhQgkCa532oTYBLEnbASV/i1SG1rH2GB4h3aQQujYciYSPT92hvN4IwTe8S2hPkN/6iiOyTlCg==} - '@opentelemetry/api-logs@0.203.0': - resolution: {integrity: sha512-9B9RU0H7Ya1Dx/Rkyc4stuBZSGVQF27WigitInx2QQoj6KUpEFYPKoWjdFTunJYxmXmh17HeBvbMa1EhGyPmqQ==} + '@opentelemetry/api-logs@0.205.0': + resolution: {integrity: sha512-wBlPk1nFB37Hsm+3Qy73yQSobVn28F4isnWIBvKpd5IUH/eat8bwcL02H9yzmHyyPmukeccSl2mbN5sDQZYnPg==} engines: {node: '>=8.0.0'} '@opentelemetry/api@1.9.0': resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} engines: {node: '>=8.0.0'} - '@opentelemetry/context-async-hooks@2.0.1': - resolution: {integrity: sha512-XuY23lSI3d4PEqKA+7SLtAgwqIfc6E/E9eAQWLN1vlpC53ybO3o6jW4BsXo1xvz9lYyyWItfQDDLzezER01mCw==} + '@opentelemetry/context-async-hooks@2.1.0': + resolution: {integrity: sha512-zOyetmZppnwTyPrt4S7jMfXiSX9yyfF0hxlA8B5oo2TtKl+/RGCy7fi4DrBfIf3lCPrkKsRBWZZD7RFojK7FDg==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@2.0.1': - resolution: {integrity: sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==} + '@opentelemetry/core@2.1.0': + resolution: {integrity: sha512-RMEtHsxJs/GiHHxYT58IY57UXAQTuUnZVco6ymDEqTNlJKTimM4qPUPVe8InNFyBjhHBEAx4k3Q8LtNayBsbUQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/exporter-logs-otlp-grpc@0.203.0': - resolution: {integrity: sha512-g/2Y2noc/l96zmM+g0LdeuyYKINyBwN6FJySoU15LHPLcMN/1a0wNk2SegwKcxrRdE7Xsm7fkIR5n6XFe3QpPw==} + '@opentelemetry/exporter-logs-otlp-grpc@0.205.0': + resolution: {integrity: sha512-jQlw7OHbqZ8zPt+pOrW2KGN7T55P50e3NXBMr4ckPOF+DWDwSy4W7mkG09GpYWlQAQ5C9BXg5gfUlv5ldTgWsw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-logs-otlp-http@0.203.0': - resolution: {integrity: sha512-s0hys1ljqlMTbXx2XiplmMJg9wG570Z5lH7wMvrZX6lcODI56sG4HL03jklF63tBeyNwK2RV1/ntXGo3HgG4Qw==} + '@opentelemetry/exporter-logs-otlp-http@0.205.0': + resolution: {integrity: sha512-5JteMyVWiro4ghF0tHQjfE6OJcF7UBUcoEqX3UIQ5jutKP1H+fxFdyhqjjpmeHMFxzOHaYuLlNR1Bn7FOjGyJg==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-logs-otlp-proto@0.203.0': - resolution: {integrity: sha512-nl/7S91MXn5R1aIzoWtMKGvqxgJgepB/sH9qW0rZvZtabnsjbf8OQ1uSx3yogtvLr0GzwD596nQKz2fV7q2RBw==} + '@opentelemetry/exporter-logs-otlp-proto@0.205.0': + resolution: {integrity: sha512-q3VS9wS+lpZ01txKxiDGBtBpTNge3YhbVEFDgem9ZQR9eI3EZ68+9tVZH9zJcSxI37nZPJ6lEEZO58yEjYZsVA==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-grpc@0.203.0': - resolution: {integrity: sha512-FCCj9nVZpumPQSEI57jRAA89hQQgONuoC35Lt+rayWY/mzCAc6BQT7RFyFaZKJ2B7IQ8kYjOCPsF/HGFWjdQkQ==} + '@opentelemetry/exporter-metrics-otlp-grpc@0.205.0': + resolution: {integrity: sha512-1Vxlo4lUwqSKYX+phFkXHKYR3DolFHxCku6lVMP1H8sVE3oj4wwmwxMzDsJ7zF+sXd8M0FCr+ckK4SnNNKkV+w==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-http@0.203.0': - resolution: {integrity: sha512-HFSW10y8lY6BTZecGNpV3GpoSy7eaO0Z6GATwZasnT4bEsILp8UJXNG5OmEsz4SdwCSYvyCbTJdNbZP3/8LGCQ==} + '@opentelemetry/exporter-metrics-otlp-http@0.205.0': + resolution: {integrity: sha512-fFxNQ/HbbpLmh1pgU6HUVbFD1kNIjrkoluoKJkh88+gnmpFD92kMQ8WFNjPnSbjg2mNVnEkeKXgCYEowNW+p1w==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-metrics-otlp-proto@0.203.0': - resolution: {integrity: sha512-OZnhyd9npU7QbyuHXFEPVm3LnjZYifuKpT3kTnF84mXeEQ84pJJZgyLBpU4FSkSwUkt/zbMyNAI7y5+jYTWGIg==} + '@opentelemetry/exporter-metrics-otlp-proto@0.205.0': + resolution: {integrity: sha512-qIbNnedw9QfFjwpx4NQvdgjK3j3R2kWH/2T+7WXAm1IfMFe9fwatYxE61i7li4CIJKf8HgUC3GS8Du0C3D+AuQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-prometheus@0.203.0': - resolution: {integrity: sha512-2jLuNuw5m4sUj/SncDf/mFPabUxMZmmYetx5RKIMIQyPnl6G6ooFzfeE8aXNRf8YD1ZXNlCnRPcISxjveGJHNg==} + '@opentelemetry/exporter-prometheus@0.205.0': + resolution: {integrity: sha512-xsot/Qm9VLDTag4GEwAunD1XR1U8eBHTLAgO7IZNo2JuD/c/vL7xmDP7mQIUr6Lk3gtj/yGGIR2h3vhTeVzv4w==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-grpc@0.203.0': - resolution: {integrity: sha512-322coOTf81bm6cAA8+ML6A+m4r2xTCdmAZzGNTboPXRzhwPt4JEmovsFAs+grpdarObd68msOJ9FfH3jxM6wqA==} + '@opentelemetry/exporter-trace-otlp-grpc@0.205.0': + resolution: {integrity: sha512-ZBksUk84CcQOuDJB65yu5A4PORkC4qEsskNwCrPZxDLeWjPOFZNSWt0E0jQxKCY8PskLhjNXJYo12YaqsYvGFA==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-http@0.203.0': - resolution: {integrity: sha512-ZDiaswNYo0yq/cy1bBLJFe691izEJ6IgNmkjm4C6kE9ub/OMQqDXORx2D2j8fzTBTxONyzusbaZlqtfmyqURPw==} + '@opentelemetry/exporter-trace-otlp-http@0.205.0': + resolution: {integrity: sha512-vr2bwwPCSc9u7rbKc74jR+DXFvyMFQo9o5zs+H/fgbK672Whw/1izUKVf+xfWOdJOvuwTnfWxy+VAY+4TSo74Q==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-proto@0.203.0': - resolution: {integrity: sha512-1xwNTJ86L0aJmWRwENCJlH4LULMG2sOXWIVw+Szta4fkqKVY50Eo4HoVKKq6U9QEytrWCr8+zjw0q/ZOeXpcAQ==} + '@opentelemetry/exporter-trace-otlp-proto@0.205.0': + resolution: {integrity: sha512-bGtFzqiENO2GpJk988mOBMe0MfeNpTQjbLm/LBijas6VRyEDQarUzdBHpFlu89A25k1+BCntdWGsWTa9Ai4FyA==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-zipkin@2.0.1': - resolution: {integrity: sha512-a9eeyHIipfdxzCfc2XPrE+/TI3wmrZUDFtG2RRXHSbZZULAny7SyybSvaDvS77a7iib5MPiAvluwVvbGTsHxsw==} + '@opentelemetry/exporter-zipkin@2.1.0': + resolution: {integrity: sha512-0mEI0VDZrrX9t5RE1FhAyGz+jAGt96HSuXu73leswtY3L5YZD11gtcpARY2KAx/s6Z2+rj5Mhj566JsI2C7mfA==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.0.0 @@ -3322,62 +3310,62 @@ packages: peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-http@0.203.0': - resolution: {integrity: sha512-y3uQAcCOAwnO6vEuNVocmpVzG3PER6/YZqbPbbffDdJ9te5NkHEkfSMNzlC3+v7KlE+WinPGc3N7MR30G1HY2g==} + '@opentelemetry/instrumentation-http@0.205.0': + resolution: {integrity: sha512-6fOgRlV7ypBuEzCQP7vXkLQxz3UL1FhE24rAlMRbwGvPAnZLvutcG/fq9FI/n+VU23dOpYexocYsXCf5oy/AXw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-ioredis@0.51.0': - resolution: {integrity: sha512-9IUws0XWCb80NovS+17eONXsw1ZJbHwYYMXiwsfR9TSurkLV5UNbRSKb9URHO+K+pIJILy9wCxvyiOneMr91Ig==} + '@opentelemetry/instrumentation-ioredis@0.53.0': + resolution: {integrity: sha512-Ah2wU347vOJYbE563Tgm3UX2J3DAXoI8gsr8qH0OOO4uDuEv3kVS/eDCfXApt11bvvDDPlOoc60/TGn6m9IoPw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-nestjs-core@0.49.0': - resolution: {integrity: sha512-1R/JFwdmZIk3T/cPOCkVvFQeKYzbbUvDxVH3ShXamUwBlGkdEu5QJitlRMyVNZaHkKZKWgYrBarGQsqcboYgaw==} + '@opentelemetry/instrumentation-nestjs-core@0.51.0': + resolution: {integrity: sha512-Se/m4887W94OO12pjKMjI3398L7HCoWeCjcbwoPvNOWpSpMkljBOHA9vE/fyo63CaVG1XAM5xA4ad60wmJKl9A==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-pg@0.56.0': - resolution: {integrity: sha512-A/J4SlGX8Y0Wwp7Y66fsNCFT/1h9lmBzqwTnfWW/bULtcKFqkQfqhs3G8+4cRxX02UI2z7T1aW5bsyc6QSYc1Q==} + '@opentelemetry/instrumentation-pg@0.58.0': + resolution: {integrity: sha512-WHntZAorf6CZ0n5a3oHlwGkSeu5Xa4AiCmXkNTKg24TbYSFWzJUtWvPQSkxePvQ3ku71lhAY/M20WgwHlvpZpQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation@0.203.0': - resolution: {integrity: sha512-ke1qyM+3AK2zPuBPb6Hk/GCsc5ewbLvPNkEuELx/JmANeEp6ZjnZ+wypPAJSucTw0wvCGrUaibDSdcrGFoWxKQ==} + '@opentelemetry/instrumentation@0.205.0': + resolution: {integrity: sha512-cgvm7tvQdu9Qo7VurJP84wJ7ZV9F6WqDDGZpUc6rUEXwjV7/bXWs0kaYp9v+1Vh1+3TZCD3i6j/lUBcPhu8NhA==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-exporter-base@0.203.0': - resolution: {integrity: sha512-Wbxf7k+87KyvxFr5D7uOiSq/vHXWommvdnNE7vECO3tAhsA2GfOlpWINCMWUEPdHZ7tCXxw6Epp3vgx3jU7llQ==} + '@opentelemetry/otlp-exporter-base@0.205.0': + resolution: {integrity: sha512-2MN0C1IiKyo34M6NZzD6P9Nv9Dfuz3OJ3rkZwzFmF6xzjDfqqCTatc9v1EpNfaP55iDOCLHFyYNCgs61FFgtUQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-grpc-exporter-base@0.203.0': - resolution: {integrity: sha512-te0Ze1ueJF+N/UOFl5jElJW4U0pZXQ8QklgSfJ2linHN0JJsuaHG8IabEUi2iqxY8ZBDlSiz1Trfv5JcjWWWwQ==} + '@opentelemetry/otlp-grpc-exporter-base@0.205.0': + resolution: {integrity: sha512-AeuLfrciGYffqsp4EUTdYYc6Ee2BQS+hr08mHZk1C524SFWx0WnfcTnV0NFXbVURUNU6DZu1DhS89zRRrcx/hg==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-transformer@0.203.0': - resolution: {integrity: sha512-Y8I6GgoCna0qDQ2W6GCRtaF24SnvqvA8OfeTi7fqigD23u8Jpb4R5KFv/pRvrlGagcCLICMIyh9wiejp4TXu/A==} + '@opentelemetry/otlp-transformer@0.205.0': + resolution: {integrity: sha512-KmObgqPtk9k/XTlWPJHdMbGCylRAmMJNXIRh6VYJmvlRDMfe+DonH41G7eenG8t4FXn3fxOGh14o/WiMRR6vPg==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/propagator-b3@2.0.1': - resolution: {integrity: sha512-Hc09CaQ8Tf5AGLmf449H726uRoBNGPBL4bjr7AnnUpzWMvhdn61F78z9qb6IqB737TffBsokGAK1XykFEZ1igw==} + '@opentelemetry/propagator-b3@2.1.0': + resolution: {integrity: sha512-yOdHmFseIChYanddMMz0mJIFQHyjwbNhoxc65fEAA8yanxcBPwoFDoh1+WBUWAO/Z0NRgk+k87d+aFIzAZhcBw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/propagator-jaeger@2.0.1': - resolution: {integrity: sha512-7PMdPBmGVH2eQNb/AtSJizQNgeNTfh6jQFqys6lfhd6P4r+m/nTh3gKPPpaCXVdRQ+z93vfKk+4UGty390283w==} + '@opentelemetry/propagator-jaeger@2.1.0': + resolution: {integrity: sha512-QYo7vLyMjrBCUTpwQBF/e+rvP7oGskrSELGxhSvLj5gpM0az9oJnu/0O4l2Nm7LEhAff80ntRYKkAcSwVgvSVQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' @@ -3386,44 +3374,44 @@ packages: resolution: {integrity: sha512-4Wc0AWURII2cfXVVoZ6vDqK+s5n4K5IssdrlVrvGsx6OEOKdghKtJZqXAHWFiZv4nTDLH2/2fldjIHY8clMOjQ==} engines: {node: ^18.19.0 || >=20.6.0} - '@opentelemetry/resources@2.0.1': - resolution: {integrity: sha512-dZOB3R6zvBwDKnHDTB4X1xtMArB/d324VsbiPkX/Yu0Q8T2xceRthoIVFhJdvgVM2QhGVUyX9tzwiNxGtoBJUw==} + '@opentelemetry/resources@2.1.0': + resolution: {integrity: sha512-1CJjf3LCvoefUOgegxi8h6r4B/wLSzInyhGP2UmIBYNlo4Qk5CZ73e1eEyWmfXvFtm1ybkmfb2DqWvspsYLrWw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-logs@0.203.0': - resolution: {integrity: sha512-vM2+rPq0Vi3nYA5akQD2f3QwossDnTDLvKbea6u/A2NZ3XDkPxMfo/PNrDoXhDUD/0pPo2CdH5ce/thn9K0kLw==} + '@opentelemetry/sdk-logs@0.205.0': + resolution: {integrity: sha512-nyqhNQ6eEzPWQU60Nc7+A5LIq8fz3UeIzdEVBQYefB4+msJZ2vuVtRuk9KxPMw1uHoHDtYEwkr2Ct0iG29jU8w==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.4.0 <1.10.0' - '@opentelemetry/sdk-metrics@2.0.1': - resolution: {integrity: sha512-wf8OaJoSnujMAHWR3g+/hGvNcsC16rf9s1So4JlMiFaFHiE4HpIA3oUh+uWZQ7CNuK8gVW/pQSkgoa5HkkOl0g==} + '@opentelemetry/sdk-metrics@2.1.0': + resolution: {integrity: sha512-J9QX459mzqHLL9Y6FZ4wQPRZG4TOpMCyPOh6mkr/humxE1W2S3Bvf4i75yiMW9uyed2Kf5rxmLhTm/UK8vNkAw==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.9.0 <1.10.0' - '@opentelemetry/sdk-node@0.203.0': - resolution: {integrity: sha512-zRMvrZGhGVMvAbbjiNQW3eKzW/073dlrSiAKPVWmkoQzah9wfynpVPeL55f9fVIm0GaBxTLcPeukWGy0/Wj7KQ==} + '@opentelemetry/sdk-node@0.205.0': + resolution: {integrity: sha512-Y4Wcs8scj/Wy1u61pX1ggqPXPtCsGaqx/UnFu7BtRQE1zCQR+b0h56K7I0jz7U2bRlPUZIFdnNLtoaJSMNzz2g==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-trace-base@2.0.1': - resolution: {integrity: sha512-xYLlvk/xdScGx1aEqvxLwf6sXQLXCjk3/1SQT9X9AoN5rXRhkdvIFShuNNmtTEPRBqcsMbS4p/gJLNI2wXaDuQ==} + '@opentelemetry/sdk-trace-base@2.1.0': + resolution: {integrity: sha512-uTX9FBlVQm4S2gVQO1sb5qyBLq/FPjbp+tmGoxu4tIgtYGmBYB44+KX/725RFDe30yBSaA9Ml9fqphe1hbUyLQ==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-trace-node@2.0.1': - resolution: {integrity: sha512-UhdbPF19pMpBtCWYP5lHbTogLWx9N0EBxtdagvkn5YtsAnCBZzL7SjktG+ZmupRgifsHMjwUaCCaVmqGfSADmA==} + '@opentelemetry/sdk-trace-node@2.1.0': + resolution: {integrity: sha512-SvVlBFc/jI96u/mmlKm86n9BbTCbQ35nsPoOohqJX6DXH92K0kTe73zGY5r8xoI1QkjR9PizszVJLzMC966y9Q==} engines: {node: ^18.19.0 || >=20.6.0} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/semantic-conventions@1.36.0': - resolution: {integrity: sha512-TtxJSRD8Ohxp6bKkhrm27JRHAxPczQA7idtcTOMYI+wQRRrfgqxHv1cFbCApcSnNjtXkmzFozn6jQtFrOmbjPQ==} + '@opentelemetry/semantic-conventions@1.37.0': + resolution: {integrity: sha512-JD6DerIKdJGmRp4jQyX5FlrQjA4tjOw1cvfsPAZXfOOEErMUHjPcPSICS+6WnM0nB0efSFARh0KAZss+bvExOA==} engines: {node: '>=14'} '@opentelemetry/sql-common@0.41.0': @@ -3435,30 +3423,30 @@ packages: '@paralleldrive/cuid2@2.2.2': resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==} - '@photo-sphere-viewer/core@5.13.4': - resolution: {integrity: sha512-leVQL6gG9wTF+uvCFarHUcr8mzafCZ/GLzauksYQJfiqDVRFSAJNXnTOy7RH9otToluEdjN1hsN1f9HQy+rLYg==} + '@photo-sphere-viewer/core@5.14.0': + resolution: {integrity: sha512-V0JeDSB1D2Q60Zqn7+0FPjq8gqbKEwuxMzNdTLydefkQugVztLvdZykO+4k5XTpweZ2QAWPH/QOI1xZbsdvR9A==} - '@photo-sphere-viewer/equirectangular-video-adapter@5.13.4': - resolution: {integrity: sha512-OdTOKxFunP56FNoPR47mQp7V1WHvV4eiow3qtyJjAgLeU8T2q3kivLuH1kMZN2yTAJaXab+VBXzA/YChiHZ6mQ==} + '@photo-sphere-viewer/equirectangular-video-adapter@5.14.0': + resolution: {integrity: sha512-Ez88sZ4sj3fONpZSortnN3gLXlvV/hn5U/88LsWtxI73YwhkZ06ZtXFYLXU4MBaJvqCbMGaR6j39uVXTWFo5rw==} peerDependencies: - '@photo-sphere-viewer/core': 5.13.4 - '@photo-sphere-viewer/video-plugin': 5.13.4 + '@photo-sphere-viewer/core': 5.14.0 + '@photo-sphere-viewer/video-plugin': 5.14.0 - '@photo-sphere-viewer/resolution-plugin@5.13.4': - resolution: {integrity: sha512-HRBC5zYmpNoo/joKZzXbxn7jwoh3tdtTJFXzHxYPV51ELDclRNmzhmqEaZeVkrFHr4bRF5ow3AOjxiMtu1xQxA==} + '@photo-sphere-viewer/resolution-plugin@5.14.0': + resolution: {integrity: sha512-PvDMX1h+8FzWdySxiorQ2bSmyBGTPsZjNNFRBqIfmb5C+01aWCIE7kuXodXGHwpXQNcOojsVX9IiX0Vz4CiW4A==} peerDependencies: - '@photo-sphere-viewer/core': 5.13.4 - '@photo-sphere-viewer/settings-plugin': 5.13.4 + '@photo-sphere-viewer/core': 5.14.0 + '@photo-sphere-viewer/settings-plugin': 5.14.0 - '@photo-sphere-viewer/settings-plugin@5.13.4': - resolution: {integrity: sha512-As1nmlsfnjKBFQOWPVQLH1+dJ+s62MdEb6Jvlm16+3fUVHF4CBWRTJZyBKejLiu4xjbDxrE8v5ZHDLvG6ButiQ==} + '@photo-sphere-viewer/settings-plugin@5.14.0': + resolution: {integrity: sha512-sMLX4hFSE2PjiP2iUmH9qUAz6GV+UN2WX1zu/D58BBWzF3+8mV+FC9l50qxruO8qvWqqLwYysHUElHnmPPtpTg==} peerDependencies: - '@photo-sphere-viewer/core': 5.13.4 + '@photo-sphere-viewer/core': 5.14.0 - '@photo-sphere-viewer/video-plugin@5.13.4': - resolution: {integrity: sha512-QWbHMVAJHukLbFNn0irND/nEPtmzjbXth1ckBkT1bg8aRilFw50+IIB0Zfdl6X919R2GfGo8P0u+I/Mwxf7yfg==} + '@photo-sphere-viewer/video-plugin@5.14.0': + resolution: {integrity: sha512-jWMZBNlfwYq8Lgc8ncs3ptwHR6Yk7Wl8o1BCFYhmhoRkGZFHEjoOQj7gMPXCET+3iYXQ1TsjTh4ZCW8UUOi+pg==} peerDependencies: - '@photo-sphere-viewer/core': 5.13.4 + '@photo-sphere-viewer/core': 5.14.0 '@photostructure/tz-lookup@11.2.0': resolution: {integrity: sha512-DwrvodcXHNSdGdeSF7SBL5o8aBlsaeuCuG7633F04nYsL3hn5Hxe3z/5kCqxv61J1q7ggKZ27GPylR3x0cPNXQ==} @@ -3471,8 +3459,8 @@ packages: resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - '@playwright/test@1.54.2': - resolution: {integrity: sha512-A+znathYxPf+72riFd1r1ovOLqsIIB0jKIoPjyK2kqEIe30/6jF6BC7QNluHuwUmsD2tv1XZVugN8GqfTMOxsA==} + '@playwright/test@1.55.0': + resolution: {integrity: sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==} engines: {node: '>=18'} hasBin: true @@ -3550,8 +3538,8 @@ packages: peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc - '@react-email/components@0.5.0': - resolution: {integrity: sha512-esRbP+yMmSkNP9hcpiy2RwpDnvSmlxJcJ1HHbzSwlACGlCHTap+ma344QovvzhpVRhMccyWemdClLG822UvVpQ==} + '@react-email/components@0.5.3': + resolution: {integrity: sha512-8G5vsoMehuGOT4cDqaYLdpagtqCYPl4vThXNylClxO6SrN2w9Mh1+i2RNGj/rdqh/woamHORjlXMYCA/kzDMew==} engines: {node: '>=18.0.0'} peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc @@ -3615,8 +3603,8 @@ packages: peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc - '@react-email/render@1.2.0': - resolution: {integrity: sha512-5fpbV16VYR9Fmk8t7xiwPNAjxjdI8XzVtlx9J9OkhOsIHdr2s5DwAj8/MXzWa9qRYJyLirQ/l7rBSjjgyRAomw==} + '@react-email/render@1.2.3': + resolution: {integrity: sha512-qu3XYNkHGao3teJexVD5CrcgFkNLrzbZvpZN17a7EyQYUN3kHkTkE9saqY4VbvGx6QoNU3p8rsk/Xm++D/+pTw==} engines: {node: '>=18.0.0'} peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc @@ -3657,8 +3645,8 @@ packages: react-redux: optional: true - '@rollup/pluginutils@5.2.0': - resolution: {integrity: sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==} + '@rollup/pluginutils@5.3.0': + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -4003,14 +3991,18 @@ packages: svelte: ^5.0.0 vite: ^6.3.0 || >=7.0.0 - '@sveltejs/kit@2.27.1': - resolution: {integrity: sha512-u5HbL9T4TgWZwXZM7hwdT0f5sDkGaNxsSrLYQoql+eiz2+9rcbbq4MiOAPoRtXG0dys5P5ixBmyQdqZedwZUlA==} + '@sveltejs/kit@2.38.1': + resolution: {integrity: sha512-5JJBPu3U2KXpRwc+e/D2Pl+DJM9oBcCl6XtWenrb6xc6H4lFa0XIJaSch4wMiADrhX512sVIUf13VnEp7aWO1w==} engines: {node: '>=18.13'} hasBin: true peerDependencies: + '@opentelemetry/api': ^1.0.0 '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1 || ^5.0.0 || ^6.0.0-next.0 svelte: ^4.0.0 || ^5.0.0-next.0 vite: ^5.0.3 || ^6.0.0 || ^7.0.0-beta.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true '@sveltejs/vite-plugin-svelte-inspector@5.0.0': resolution: {integrity: sha512-iwQ8Z4ET6ZFSt/gC+tVfcsSBHwsqc6RumSaiLUkAurW3BCpJam65cmHw0oOlDMTO0u+PZi9hilBRYN+LZNHTUQ==} @@ -4020,8 +4012,8 @@ packages: svelte: ^5.0.0 vite: ^6.3.0 || ^7.0.0 - '@sveltejs/vite-plugin-svelte@6.1.2': - resolution: {integrity: sha512-7v+7OkUYelC2dhhYDAgX1qO2LcGscZ18Hi5kKzJQq7tQeXpH215dd0+J/HnX2zM5B3QKcIrTVqCGkZXAy5awYw==} + '@sveltejs/vite-plugin-svelte@6.2.0': + resolution: {integrity: sha512-nJsV36+o7rZUDlrnSduMNl11+RoDE1cKqOI0yUEBCcqFoAZOk47TwD3dPKS2WmRutke9StXnzsPBslY7prDM9w==} engines: {node: ^20.19 || ^22.12 || >=24} peerDependencies: svelte: ^5.0.0 @@ -4105,68 +4097,68 @@ packages: resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==} engines: {node: '>=14'} - '@swc/core-darwin-arm64@1.13.3': - resolution: {integrity: sha512-ux0Ws4pSpBTqbDS9GlVP354MekB1DwYlbxXU3VhnDr4GBcCOimpocx62x7cFJkSpEBF8bmX8+/TTCGKh4PbyXw==} + '@swc/core-darwin-arm64@1.13.5': + resolution: {integrity: sha512-lKNv7SujeXvKn16gvQqUQI5DdyY8v7xcoO3k06/FJbHJS90zEwZdQiMNRiqpYw/orU543tPaWgz7cIYWhbopiQ==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.13.3': - resolution: {integrity: sha512-p0X6yhxmNUOMZrbeZ3ZNsPige8lSlSe1llllXvpCLkKKxN/k5vZt1sULoq6Nj4eQ7KeHQVm81/+AwKZyf/e0TA==} + '@swc/core-darwin-x64@1.13.5': + resolution: {integrity: sha512-ILd38Fg/w23vHb0yVjlWvQBoE37ZJTdlLHa8LRCFDdX4WKfnVBiblsCU9ar4QTMNdeTBEX9iUF4IrbNWhaF1Ng==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.13.3': - resolution: {integrity: sha512-OmDoiexL2fVWvQTCtoh0xHMyEkZweQAlh4dRyvl8ugqIPEVARSYtaj55TBMUJIP44mSUOJ5tytjzhn2KFxFcBA==} + '@swc/core-linux-arm-gnueabihf@1.13.5': + resolution: {integrity: sha512-Q6eS3Pt8GLkXxqz9TAw+AUk9HpVJt8Uzm54MvPsqp2yuGmY0/sNaPPNVqctCX9fu/Nu8eaWUen0si6iEiCsazQ==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.13.3': - resolution: {integrity: sha512-STfKku3QfnuUj6k3g9ld4vwhtgCGYIFQmsGPPgT9MK/dI3Lwnpe5Gs5t1inoUIoGNP8sIOLlBB4HV4MmBjQuhw==} + '@swc/core-linux-arm64-gnu@1.13.5': + resolution: {integrity: sha512-aNDfeN+9af+y+M2MYfxCzCy/VDq7Z5YIbMqRI739o8Ganz6ST+27kjQFd8Y/57JN/hcnUEa9xqdS3XY7WaVtSw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.13.3': - resolution: {integrity: sha512-bc+CXYlFc1t8pv9yZJGus372ldzOVscBl7encUBlU1m/Sig0+NDJLz6cXXRcFyl6ABNOApWeR4Yl7iUWx6C8og==} + '@swc/core-linux-arm64-musl@1.13.5': + resolution: {integrity: sha512-9+ZxFN5GJag4CnYnq6apKTnnezpfJhCumyz0504/JbHLo+Ue+ZtJnf3RhyA9W9TINtLE0bC4hKpWi8ZKoETyOQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.13.3': - resolution: {integrity: sha512-dFXoa0TEhohrKcxn/54YKs1iwNeW6tUkHJgXW33H381SvjKFUV53WR231jh1sWVJETjA3vsAwxKwR23s7UCmUA==} + '@swc/core-linux-x64-gnu@1.13.5': + resolution: {integrity: sha512-WD530qvHrki8Ywt/PloKUjaRKgstQqNGvmZl54g06kA+hqtSE2FTG9gngXr3UJxYu/cNAjJYiBifm7+w4nbHbA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.13.3': - resolution: {integrity: sha512-ieyjisLB+ldexiE/yD8uomaZuZIbTc8tjquYln9Quh5ykOBY7LpJJYBWvWtm1g3pHv6AXlBI8Jay7Fffb6aLfA==} + '@swc/core-linux-x64-musl@1.13.5': + resolution: {integrity: sha512-Luj8y4OFYx4DHNQTWjdIuKTq2f5k6uSXICqx+FSabnXptaOBAbJHNbHT/06JZh6NRUouaf0mYXN0mcsqvkhd7Q==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.13.3': - resolution: {integrity: sha512-elTQpnaX5vESSbhCEgcwXjpMsnUbqqHfEpB7ewpkAsLzKEXZaK67ihSRYAuAx6ewRQTo7DS5iTT6X5aQD3MzMw==} + '@swc/core-win32-arm64-msvc@1.13.5': + resolution: {integrity: sha512-cZ6UpumhF9SDJvv4DA2fo9WIzlNFuKSkZpZmPG1c+4PFSEMy5DFOjBSllCvnqihCabzXzpn6ykCwBmHpy31vQw==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.13.3': - resolution: {integrity: sha512-nvehQVEOdI1BleJpuUgPLrclJ0TzbEMc+MarXDmmiRFwEUGqj+pnfkTSb7RZyS1puU74IXdK/YhTirHurtbI9w==} + '@swc/core-win32-ia32-msvc@1.13.5': + resolution: {integrity: sha512-C5Yi/xIikrFUzZcyGj9L3RpKljFvKiDMtyDzPKzlsDrKIw2EYY+bF88gB6oGY5RGmv4DAX8dbnpRAqgFD0FMEw==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.13.3': - resolution: {integrity: sha512-A+JSKGkRbPLVV2Kwx8TaDAV0yXIXm/gc8m98hSkVDGlPBBmydgzNdWy3X7HTUBM7IDk7YlWE7w2+RUGjdgpTmg==} + '@swc/core-win32-x64-msvc@1.13.5': + resolution: {integrity: sha512-YrKdMVxbYmlfybCSbRtrilc6UA8GF5aPmGKBdPvjrarvsmf4i7ZHGCEnLtfOMd3Lwbs2WUZq3WdMbozYeLU93Q==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.13.3': - resolution: {integrity: sha512-ZaDETVWnm6FE0fc+c2UE8MHYVS3Fe91o5vkmGfgwGXFbxYvAjKSqxM/j4cRc9T7VZNSJjriXq58XkfCp3Y6f+w==} + '@swc/core@1.13.5': + resolution: {integrity: sha512-WezcBo8a0Dg2rnR82zhwoR6aRNxeTGfK5QCD6TQ+kg3xx/zNT02s/0o+81h/3zhvFSB24NtqEr8FTw88O5W/JQ==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '>=0.5.17' @@ -4180,72 +4172,72 @@ packages: '@swc/helpers@0.5.17': resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} - '@swc/types@0.1.24': - resolution: {integrity: sha512-tjTMh3V4vAORHtdTprLlfoMptu1WfTZG9Rsca6yOKyNYsRr+MUXutKmliB17orgSZk5DpnDxs8GUdd/qwYxOng==} + '@swc/types@0.1.25': + resolution: {integrity: sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==} '@szmarczak/http-timer@5.0.1': resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} engines: {node: '>=14.16'} - '@tailwindcss/node@4.1.12': - resolution: {integrity: sha512-3hm9brwvQkZFe++SBt+oLjo4OLDtkvlE8q2WalaD/7QWaeM7KEJbAiY/LJZUaCs7Xa8aUu4xy3uoyX4q54UVdQ==} + '@tailwindcss/node@4.1.13': + resolution: {integrity: sha512-eq3ouolC1oEFOAvOMOBAmfCIqZBJuvWvvYWh5h5iOYfe1HFC6+GZ6EIL0JdM3/niGRJmnrOc+8gl9/HGUaaptw==} - '@tailwindcss/oxide-android-arm64@4.1.12': - resolution: {integrity: sha512-oNY5pq+1gc4T6QVTsZKwZaGpBb2N1H1fsc1GD4o7yinFySqIuRZ2E4NvGasWc6PhYJwGK2+5YT1f9Tp80zUQZQ==} + '@tailwindcss/oxide-android-arm64@4.1.13': + resolution: {integrity: sha512-BrpTrVYyejbgGo57yc8ieE+D6VT9GOgnNdmh5Sac6+t0m+v+sKQevpFVpwX3pBrM2qKrQwJ0c5eDbtjouY/+ew==} engines: {node: '>= 10'} cpu: [arm64] os: [android] - '@tailwindcss/oxide-darwin-arm64@4.1.12': - resolution: {integrity: sha512-cq1qmq2HEtDV9HvZlTtrj671mCdGB93bVY6J29mwCyaMYCP/JaUBXxrQQQm7Qn33AXXASPUb2HFZlWiiHWFytw==} + '@tailwindcss/oxide-darwin-arm64@4.1.13': + resolution: {integrity: sha512-YP+Jksc4U0KHcu76UhRDHq9bx4qtBftp9ShK/7UGfq0wpaP96YVnnjFnj3ZFrUAjc5iECzODl/Ts0AN7ZPOANQ==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@tailwindcss/oxide-darwin-x64@4.1.12': - resolution: {integrity: sha512-6UCsIeFUcBfpangqlXay9Ffty9XhFH1QuUFn0WV83W8lGdX8cD5/+2ONLluALJD5+yJ7k8mVtwy3zMZmzEfbLg==} + '@tailwindcss/oxide-darwin-x64@4.1.13': + resolution: {integrity: sha512-aAJ3bbwrn/PQHDxCto9sxwQfT30PzyYJFG0u/BWZGeVXi5Hx6uuUOQEI2Fa43qvmUjTRQNZnGqe9t0Zntexeuw==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@tailwindcss/oxide-freebsd-x64@4.1.12': - resolution: {integrity: sha512-JOH/f7j6+nYXIrHobRYCtoArJdMJh5zy5lr0FV0Qu47MID/vqJAY3r/OElPzx1C/wdT1uS7cPq+xdYYelny1ww==} + '@tailwindcss/oxide-freebsd-x64@4.1.13': + resolution: {integrity: sha512-Wt8KvASHwSXhKE/dJLCCWcTSVmBj3xhVhp/aF3RpAhGeZ3sVo7+NTfgiN8Vey/Fi8prRClDs6/f0KXPDTZE6nQ==} engines: {node: '>= 10'} cpu: [x64] os: [freebsd] - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.12': - resolution: {integrity: sha512-v4Ghvi9AU1SYgGr3/j38PD8PEe6bRfTnNSUE3YCMIRrrNigCFtHZ2TCm8142X8fcSqHBZBceDx+JlFJEfNg5zQ==} + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.13': + resolution: {integrity: sha512-mbVbcAsW3Gkm2MGwA93eLtWrwajz91aXZCNSkGTx/R5eb6KpKD5q8Ueckkh9YNboU8RH7jiv+ol/I7ZyQ9H7Bw==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@tailwindcss/oxide-linux-arm64-gnu@4.1.12': - resolution: {integrity: sha512-YP5s1LmetL9UsvVAKusHSyPlzSRqYyRB0f+Kl/xcYQSPLEw/BvGfxzbH+ihUciePDjiXwHh+p+qbSP3SlJw+6g==} + '@tailwindcss/oxide-linux-arm64-gnu@4.1.13': + resolution: {integrity: sha512-wdtfkmpXiwej/yoAkrCP2DNzRXCALq9NVLgLELgLim1QpSfhQM5+ZxQQF8fkOiEpuNoKLp4nKZ6RC4kmeFH0HQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tailwindcss/oxide-linux-arm64-musl@4.1.12': - resolution: {integrity: sha512-V8pAM3s8gsrXcCv6kCHSuwyb/gPsd863iT+v1PGXC4fSL/OJqsKhfK//v8P+w9ThKIoqNbEnsZqNy+WDnwQqCA==} + '@tailwindcss/oxide-linux-arm64-musl@4.1.13': + resolution: {integrity: sha512-hZQrmtLdhyqzXHB7mkXfq0IYbxegaqTmfa1p9MBj72WPoDD3oNOh1Lnxf6xZLY9C3OV6qiCYkO1i/LrzEdW2mg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@tailwindcss/oxide-linux-x64-gnu@4.1.12': - resolution: {integrity: sha512-xYfqYLjvm2UQ3TZggTGrwxjYaLB62b1Wiysw/YE3Yqbh86sOMoTn0feF98PonP7LtjsWOWcXEbGqDL7zv0uW8Q==} + '@tailwindcss/oxide-linux-x64-gnu@4.1.13': + resolution: {integrity: sha512-uaZTYWxSXyMWDJZNY1Ul7XkJTCBRFZ5Fo6wtjrgBKzZLoJNrG+WderJwAjPzuNZOnmdrVg260DKwXCFtJ/hWRQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tailwindcss/oxide-linux-x64-musl@4.1.12': - resolution: {integrity: sha512-ha0pHPamN+fWZY7GCzz5rKunlv9L5R8kdh+YNvP5awe3LtuXb5nRi/H27GeL2U+TdhDOptU7T6Is7mdwh5Ar3A==} + '@tailwindcss/oxide-linux-x64-musl@4.1.13': + resolution: {integrity: sha512-oXiPj5mi4Hdn50v5RdnuuIms0PVPI/EG4fxAfFiIKQh5TgQgX7oSuDWntHW7WNIi/yVLAiS+CRGW4RkoGSSgVQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@tailwindcss/oxide-wasm32-wasi@4.1.12': - resolution: {integrity: sha512-4tSyu3dW+ktzdEpuk6g49KdEangu3eCYoqPhWNsZgUhyegEda3M9rG0/j1GV/JjVVsj+lG7jWAyrTlLzd/WEBg==} + '@tailwindcss/oxide-wasm32-wasi@4.1.13': + resolution: {integrity: sha512-+LC2nNtPovtrDwBc/nqnIKYh/W2+R69FA0hgoeOn64BdCX522u19ryLh3Vf3F8W49XBcMIxSe665kwy21FkhvA==} engines: {node: '>=14.0.0'} cpu: [wasm32] bundledDependencies: @@ -4256,24 +4248,24 @@ packages: - '@emnapi/wasi-threads' - tslib - '@tailwindcss/oxide-win32-arm64-msvc@4.1.12': - resolution: {integrity: sha512-iGLyD/cVP724+FGtMWslhcFyg4xyYyM+5F4hGvKA7eifPkXHRAUDFaimu53fpNg9X8dfP75pXx/zFt/jlNF+lg==} + '@tailwindcss/oxide-win32-arm64-msvc@4.1.13': + resolution: {integrity: sha512-dziTNeQXtoQ2KBXmrjCxsuPk3F3CQ/yb7ZNZNA+UkNTeiTGgfeh+gH5Pi7mRncVgcPD2xgHvkFCh/MhZWSgyQg==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@tailwindcss/oxide-win32-x64-msvc@4.1.12': - resolution: {integrity: sha512-NKIh5rzw6CpEodv/++r0hGLlfgT/gFN+5WNdZtvh6wpU2BpGNgdjvj6H2oFc8nCM839QM1YOhjpgbAONUb4IxA==} + '@tailwindcss/oxide-win32-x64-msvc@4.1.13': + resolution: {integrity: sha512-3+LKesjXydTkHk5zXX01b5KMzLV1xl2mcktBJkje7rhFUpUlYJy7IMOLqjIRQncLTa1WZZiFY/foAeB5nmaiTw==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@tailwindcss/oxide@4.1.12': - resolution: {integrity: sha512-gM5EoKHW/ukmlEtphNwaGx45fGoEmP10v51t9unv55voWh6WrOL19hfuIdo2FjxIaZzw776/BUQg7Pck++cIVw==} + '@tailwindcss/oxide@4.1.13': + resolution: {integrity: sha512-CPgsM1IpGRa880sMbYmG1s4xhAy3xEt1QULgTJGQmZUeNgXFR7s1YxYygmJyBGtou4SyEosGAGEeYqY7R53bIA==} engines: {node: '>= 10'} - '@tailwindcss/vite@4.1.12': - resolution: {integrity: sha512-4pt0AMFDx7gzIrAOIYgYP0KCBuKWqyW8ayrdiLEjoJTT4pKTjrzG/e4uzWtTLDziC+66R9wbUqZBccJalSE5vQ==} + '@tailwindcss/vite@4.1.13': + resolution: {integrity: sha512-0PmqLQ010N58SbMTJ7BVJ4I2xopiQn/5i6nlb4JmxzQf8zcS5+m2Cv6tqh+sfDwtIdjoEnOvwsGQ1hkUi8QEHQ==} peerDependencies: vite: ^5.2.0 || ^6 || ^7 @@ -4281,8 +4273,8 @@ packages: resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} engines: {node: '>=18'} - '@testing-library/jest-dom@6.7.0': - resolution: {integrity: sha512-RI2e97YZ7MRa+vxP4UUnMuMFL2buSsf0ollxUbTgrbPLKhMn8KVTx7raS6DYjC7v1NDVrioOvaShxsguLNISCA==} + '@testing-library/jest-dom@6.8.0': + resolution: {integrity: sha512-WgXcWzVM6idy5JaftTVC8Vs83NKRmGJz4Hqs4oyOuO2J4r/y79vvKZsb+CaGyCSEbUPI6OsewfPd0G1A0/TUZQ==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} '@testing-library/svelte@5.2.8': @@ -4513,8 +4505,8 @@ packages: '@types/koa@3.0.0': resolution: {integrity: sha512-MOcVYdVYmkSutVHZZPh8j3+dAjLyR5Tl59CN0eKgpkE1h/LBSmPAsQQuWs+bKu7WtGNn+hKfJH9Gzml+PulmDg==} - '@types/leaflet@1.9.19': - resolution: {integrity: sha512-pB+n2daHcZPF2FDaWa+6B0a0mSDf4dPU35y5iTXsx7x/PzzshiX5atYiS1jlBn43X7XvM8AP+AB26lnSk0J4GA==} + '@types/leaflet@1.9.20': + resolution: {integrity: sha512-rooalPMlk61LCaLOvBF2VIf9M47HgMQqi5xQ9QRi7c8PkdIe0WrIi5IxXUXQjAdL0c+vcQ01mYWbthzmp9GHWw==} '@types/lodash-es@4.17.12': resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} @@ -4552,35 +4544,29 @@ packages: '@types/multer@2.0.0': resolution: {integrity: sha512-C3Z9v9Evij2yST3RSBktxP9STm6OdMc5uR1xF1SGr98uv8dUlAL2hqwrZ3GVB3uyMyiegnscEK6PGtYvNrjTjw==} - '@types/node-fetch@2.6.12': - resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - '@types/node-forge@1.3.11': resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==} '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@18.19.123': - resolution: {integrity: sha512-K7DIaHnh0mzVxreCR9qwgNxp3MH9dltPNIEddW9MYUlcKAzm+3grKNSTe2vCJHI1FaLpvpL5JGJrz1UZDKYvDg==} + '@types/node@18.19.126': + resolution: {integrity: sha512-8AXQlBfrGmtYJEJUPs63F/uZQqVeFiN9o6NUjbDJYfxNxFnArlZufANPw4h6dGhYGKxcyw+TapXFvEsguzIQow==} '@types/node@20.19.2': resolution: {integrity: sha512-9pLGGwdzOUBDYi0GNjM97FIA+f92fqSke6joWeBjWXllfNxZBs7qeMF7tvtOIsbY45xkWkxrdwUfUf3MnQa9gA==} - '@types/node@22.18.4': - resolution: {integrity: sha512-UJdblFqXymSBhmZf96BnbisoFIr8ooiiBRMolQgg77Ea+VM37jXw76C2LQr9n8wm9+i/OvlUlW6xSvqwzwqznw==} - '@types/node@22.18.5': resolution: {integrity: sha512-g9BpPfJvxYBXUWI9bV37j6d6LTMNQ88hPwdWWUeYZnMhlo66FIg9gCc1/DZb15QylJSKwOZjwrckvOTWpOiChg==} - '@types/node@24.3.0': - resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} + '@types/node@24.5.1': + resolution: {integrity: sha512-/SQdmUP2xa+1rdx7VwB9yPq8PaKej8TD5cQ+XfKDPWWC+VDJU4rvVVagXqKUzhKjtFoNA8rXDJAkCxQPAe00+Q==} '@types/nodemailer@7.0.1': resolution: {integrity: sha512-UfHAghPmGZVzaL8x9y+mKZMWyHC399+iq0MOmya5tIyenWX3lcdSb60vOmp0DocR6gCDTYTozv/ULQnREyyjkg==} - '@types/oidc-provider@9.1.2': - resolution: {integrity: sha512-JAreXkbWsZR72Gt3eigG652wq1qBcjhuy421PXU2a8PS0mM00XlG+UdXbM/QPihM3ko0YF8cwvt0H2kacXGcsg==} + '@types/oidc-provider@9.5.0': + resolution: {integrity: sha512-eEzCRVTSqIHD9Bo/qRJ4XQWQ5Z/zBcG+Z2cGJluRsSuWx1RJihqRyPxhIEpMXTwPzHYRTQkVp7hwisQOwzzSAg==} '@types/parse5@5.0.3': resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} @@ -4588,9 +4574,6 @@ packages: '@types/pg-pool@2.0.6': resolution: {integrity: sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==} - '@types/pg@8.15.4': - resolution: {integrity: sha512-I6UNVBAoYbvuWkkU3oosC8yxqH21f4/Jc4DK71JLG3dT2mdlGe1z+ep/LQGXaKaOgcvUrsQoPRqfgtMcvZiJhg==} - '@types/pg@8.15.5': resolution: {integrity: sha512-LF7lF6zWEKxuT3/OR8wAZGzkg4ENGXFNyiV/JeOt9z5B+0ZVwbql9McqX5c/WStFq1GaGso7H1AzP/qSzmlCKQ==} @@ -4639,8 +4622,8 @@ packages: '@types/sax@1.2.7': resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} - '@types/semver@7.7.0': - resolution: {integrity: sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==} + '@types/semver@7.7.1': + resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==} '@types/send@0.17.5': resolution: {integrity: sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w==} @@ -4687,8 +4670,8 @@ packages: '@types/uuid@9.0.8': resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} - '@types/validator@13.15.2': - resolution: {integrity: sha512-y7pa/oEJJ4iGYBxOpfAKn5b9+xuihvzDVnC/OSvlVnGxVg0pOqmjiMafiJ1KVNQEaPZf9HsEp5icEwGg8uIe5Q==} + '@types/validator@13.15.3': + resolution: {integrity: sha512-7bcUmDyS6PN3EuD9SlGGOxM77F8WLVsrwkxyWxKnxzmXoequ6c7741QBrANq6htVRGOITJ7z72mTP6Z4XyuG+Q==} '@types/whatwg-mimetype@3.0.2': resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} @@ -4702,63 +4685,63 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} - '@typescript-eslint/eslint-plugin@8.39.1': - resolution: {integrity: sha512-yYegZ5n3Yr6eOcqgj2nJH8cH/ZZgF+l0YIdKILSDjYFRjgYQMgv/lRjV5Z7Up04b9VYUondt8EPMqg7kTWgJ2g==} + '@typescript-eslint/eslint-plugin@8.43.0': + resolution: {integrity: sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.39.1 + '@typescript-eslint/parser': ^8.43.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/parser@8.39.1': - resolution: {integrity: sha512-pUXGCuHnnKw6PyYq93lLRiZm3vjuslIy7tus1lIQTYVK9bL8XBgJnCWm8a0KcTtHC84Yya1Q6rtll+duSMj0dg==} + '@typescript-eslint/parser@8.43.0': + resolution: {integrity: sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/project-service@8.39.1': - resolution: {integrity: sha512-8fZxek3ONTwBu9ptw5nCKqZOSkXshZB7uAxuFF0J/wTMkKydjXCzqqga7MlFMpHi9DoG4BadhmTkITBcg8Aybw==} + '@typescript-eslint/project-service@8.43.0': + resolution: {integrity: sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/scope-manager@8.39.1': - resolution: {integrity: sha512-RkBKGBrjgskFGWuyUGz/EtD8AF/GW49S21J8dvMzpJitOF1slLEbbHnNEtAHtnDAnx8qDEdRrULRnWVx27wGBw==} + '@typescript-eslint/scope-manager@8.43.0': + resolution: {integrity: sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.39.1': - resolution: {integrity: sha512-ePUPGVtTMR8XMU2Hee8kD0Pu4NDE1CN9Q1sxGSGd/mbOtGZDM7pnhXNJnzW63zk/q+Z54zVzj44HtwXln5CvHA==} + '@typescript-eslint/tsconfig-utils@8.43.0': + resolution: {integrity: sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/type-utils@8.39.1': - resolution: {integrity: sha512-gu9/ahyatyAdQbKeHnhT4R+y3YLtqqHyvkfDxaBYk97EcbfChSJXyaJnIL3ygUv7OuZatePHmQvuH5ru0lnVeA==} + '@typescript-eslint/type-utils@8.43.0': + resolution: {integrity: sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/types@8.39.1': - resolution: {integrity: sha512-7sPDKQQp+S11laqTrhHqeAbsCfMkwJMrV7oTDvtDds4mEofJYir414bYKUEb8YPUm9QL3U+8f6L6YExSoAGdQw==} + '@typescript-eslint/types@8.43.0': + resolution: {integrity: sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.39.1': - resolution: {integrity: sha512-EKkpcPuIux48dddVDXyQBlKdeTPMmALqBUbEk38McWv0qVEZwOpVJBi7ugK5qVNgeuYjGNQxrrnoM/5+TI/BPw==} + '@typescript-eslint/typescript-estree@8.43.0': + resolution: {integrity: sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/utils@8.39.1': - resolution: {integrity: sha512-VF5tZ2XnUSTuiqZFXCZfZs1cgkdd3O/sSYmdo2EpSyDlC86UM/8YytTmKnehOW3TGAlivqTDT6bS87B/GQ/jyg==} + '@typescript-eslint/utils@8.43.0': + resolution: {integrity: sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/visitor-keys@8.39.1': - resolution: {integrity: sha512-W8FQi6kEh2e8zVhQ0eeRnxdvIoOkAp/CPAahcNio6nO9dsIwb9b34z90KOlheoyuVf6LSOEdjlkxSkapNEc+4A==} + '@typescript-eslint/visitor-keys@8.43.0': + resolution: {integrity: sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': @@ -5000,8 +4983,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.2.0: - resolution: {integrity: sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==} + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} engines: {node: '>=12'} ansi-styles@4.3.0: @@ -5012,8 +4995,8 @@ packages: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} engines: {node: '>=10'} - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} engines: {node: '>=12'} ansis@4.1.0: @@ -5228,8 +5211,8 @@ packages: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - bits-ui@2.9.9: - resolution: {integrity: sha512-U8qsCQ/5rwXAzUBn8lCLFUeHBoXsA54Lb4uFuurXu6VEszVXLCedZRnhHOQsTc1I+2Js5l4iLiBtPUG7WjNbOA==} + bits-ui@2.9.8: + resolution: {integrity: sha512-oVAqdhLSuGIgEiT0yu3ShSI7AxncCxX26Gv6Lul94BuKHV2uzHoKfIodtnMQSq+udJ54svuCIRqA58whsv7vaA==} engines: {node: '>=20'} peerDependencies: '@internationalized/date': ^3.8.1 @@ -5299,8 +5282,8 @@ packages: resolution: {integrity: sha512-bkXY9WsVpY7CvMhKSR6pZilZu9Ln5WDrKVBUXf2S443etkmEO4V58heTecXcUIsNsi4Rx8JUO4NfX1IcQl4deg==} engines: {node: '>=18.20'} - bullmq@5.57.0: - resolution: {integrity: sha512-Xlh5mh6VQmHS6x5PIuYNf55Nn3T7GGN5Is+zHysN4ZUomX3RziyRFzQXeWgn3SKbaXxQ3aLWHjYDMaE5MhEXyA==} + bullmq@5.58.5: + resolution: {integrity: sha512-0A6Qjxdn8j7aOcxfRZY798vO/aMuwvoZwfE6a9EOXHb1pzpBVAogsc/OfRWeUf+5wMBoYB5nthstnJo/zrQOeQ==} busboy@1.6.0: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} @@ -5402,8 +5385,8 @@ packages: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} - chalk@5.6.0: - resolution: {integrity: sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==} + chalk@5.6.2: + resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} change-case@5.4.4: @@ -5425,9 +5408,6 @@ packages: character-reference-invalid@2.0.1: resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} - chardet@0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - chardet@2.1.0: resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} @@ -6001,8 +5981,8 @@ packages: supports-color: optional: true - debug@4.4.1: - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -6099,8 +6079,8 @@ packages: detect-europe-js@0.1.2: resolution: {integrity: sha512-lgdERlL3u0aUdHocoouzT10d9I89VVhk0qNRmll7mXdGfJT1/wqZ2ZLA4oJAjeACPY5fT1wsbq2AT+GkuInsow==} - detect-libc@2.0.4: - resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} + detect-libc@2.1.0: + resolution: {integrity: sha512-vEtk+OcP7VBRtQZ1EJ3bdgzSfBjgnEalLTp5zjJrS+2Z1w2KZly4SBdac/WDU3hhsNAZ9E8SC96ME4Ey8MZ7cg==} engines: {node: '>=8'} detect-node@2.1.0: @@ -6115,8 +6095,8 @@ packages: engines: {node: '>= 4.0.0'} hasBin: true - devalue@5.1.1: - resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} + devalue@5.3.2: + resolution: {integrity: sha512-UDsjUbpQn9kvm68slnrs+mfxwFkIflOhkanmyabZ8zOYk8SMEIbJ3TK+88g70hSIeytu4y18f0z/hYHMTrXIWw==} devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} @@ -6243,8 +6223,8 @@ packages: resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} engines: {node: '>=10'} - dotenv@17.2.1: - resolution: {integrity: sha512-kQhDYKZecqnM0fCnzI5eIv5L4cAe/iRI+HqMbO/hbRdTAeXDG+M9FjipUxNfbARuEg4iHIbhnhs78BCHNbSxEQ==} + dotenv@17.2.2: + resolution: {integrity: sha512-Sf2LSQP+bOlhKWWyhFsn0UsfdK/kCWRv1iuA2gXAwt3dyNabr6QSj00I2V10pidqz69soatm9ZwZvpQMTIOd5Q==} engines: {node: '>=12'} dunder-proto@1.0.1: @@ -6269,8 +6249,8 @@ packages: electron-to-chromium@1.5.207: resolution: {integrity: sha512-mryFrrL/GXDTmAtIVMVf+eIXM09BBPlO5IQ7lUyKmK8d+A4VpRGG+M3ofoVef6qyF8s60rJei8ymlJxjUA8Faw==} - emoji-regex@10.4.0: - resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} + emoji-regex@10.5.0: + resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -6335,8 +6315,8 @@ packages: err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + error-ex@1.3.4: + resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} es-define-property@1.0.1: resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} @@ -6424,8 +6404,8 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-p@0.25.0: - resolution: {integrity: sha512-e7oYgXN/tgtoaR3tZ0R2dKyPJtf5J41hYKsgpsBtwpi0t2Cxjf3l8G2QwrXCDwQTFVXW1hmD55hAqQZxiId1XA==} + eslint-p@0.26.0: + resolution: {integrity: sha512-Y5bDWKIFEUE7dZrbBbq5SiHWadYC4h3+Q+xBAUNNAqU1VMokleoGGfK92Qsmi+EBOLUBbxrtOCND5BSqQn8NaQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} deprecated: ESLint has built-in support for multithread linting now. This package is no longer needed. hasBin: true @@ -6450,8 +6430,8 @@ packages: eslint-config-prettier: optional: true - eslint-plugin-svelte@3.11.0: - resolution: {integrity: sha512-KliWlkieHyEa65aQIkRwUFfHzT5Cn4u3BQQsu3KlkJOs7c1u7ryn84EWaOjEzilbKgttT4OfBURA8Uc4JBSQIw==} + eslint-plugin-svelte@3.12.3: + resolution: {integrity: sha512-YVNhKsHZeXVvsjZcSMjnce9gO31frICu453p5JjFiXNszHoG9k8WvsA/LAoLi4K8T69G7DIrgg1AqasDJLpgoQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.1 || ^9.0.0 @@ -6482,18 +6462,8 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.30.1: - resolution: {integrity: sha512-zmxXPNMOXmwm9E0yQLi5uqXHs7uq2UIiqEKo3Gq+3fwo1XrJ+hijAZImyF7hclW3E6oHz43Yk3RP8at6OTKflQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - hasBin: true - peerDependencies: - jiti: '*' - peerDependenciesMeta: - jiti: - optional: true - - eslint@9.33.0: - resolution: {integrity: sha512-TS9bTNIryDzStCpJN93aC5VRSW3uTx9sClUn4B87pwiCaJh220otoI0X8mJKr+VcPtniMdN8GKjlwgWGUv5ZKA==} + eslint@9.35.0: + resolution: {integrity: sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -6641,10 +6611,6 @@ packages: extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - external-editor@3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} - fabric@6.7.1: resolution: {integrity: sha512-dLxSmIvN4InJf4xOjbl1LFWh8WGOUIYtcuDIGs2IN0Z9lI0zGobfesDauyEhI1+owMLTPCCiEv01rpYXm7g2EQ==} engines: {node: '>=16.20.0'} @@ -6916,8 +6882,8 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-east-asian-width@1.3.0: - resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} engines: {node: '>=18'} get-intrinsic@1.3.0: @@ -6989,8 +6955,8 @@ packages: resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} engines: {node: '>=18'} - globals@16.3.0: - resolution: {integrity: sha512-bqWEnJ1Nt3neqx2q5SFfGS8r/ahumIakg3HcwtNlrVlwXIeNumWn/c7Pn/wKzGhf6SaW6H6uWXLqC30STCMchQ==} + globals@16.4.0: + resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==} engines: {node: '>=18'} globalyzer@0.1.0: @@ -7287,6 +7253,10 @@ packages: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} + iconv-lite@0.7.0: + resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==} + engines: {node: '>=0.10.0'} + icss-utils@5.1.0: resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} @@ -7366,8 +7336,8 @@ packages: inline-style-parser@0.2.4: resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} - inquirer@8.2.6: - resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} + inquirer@8.2.7: + resolution: {integrity: sha512-UjOaSel/iddGZJ5xP/Eixh6dY1XghiBw4XK13rCCIJcJfyhhoul/7KhLLUGtebEj6GDYM6Vnx/mVsjx2L/mFIA==} engines: {node: '>=12.0.0'} internmap@2.0.3: @@ -7631,8 +7601,8 @@ packages: jose@5.10.0: resolution: {integrity: sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==} - jose@6.0.12: - resolution: {integrity: sha512-T8xypXs8CpmiIi78k0E+Lk7T2zlK4zDyg+o1CZ4AkOHgDg98ogdP2BeZ61lTFKFyoEwJ9RgAgN+SdM3iPgNonQ==} + jose@6.1.0: + resolution: {integrity: sha512-TTQJyoEoKcC1lscpVDCSsVgYzUDg/0Bt3WE//WiTPK6uOCQC2KZS4MpugbMWt/zyjkopgZoXhZuCi00gLudfUA==} js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -7972,8 +7942,8 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@11.1.0: - resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} + lru-cache@11.2.1: + resolution: {integrity: sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==} engines: {node: 20 || >=22} lru-cache@5.1.1: @@ -7992,8 +7962,8 @@ packages: resolution: {integrity: sha512-tJLxrKJhO2ukZ5z0gyjY1zPh3Rh88Ej9P7jNrZiHMUXHae1yvI2imgOZtL1TO8TW6biMMKfTtAOoEJANgtWBMQ==} engines: {node: '>=12'} - luxon@3.7.1: - resolution: {integrity: sha512-RkRWjA926cTvz5rAb1BqyWkKbbjzCGchDUIKMCUvNi17j6f6j8uHGDV82Aqcqtzd+icoYpELmG3ksgGiFNNcNg==} + luxon@3.7.2: + resolution: {integrity: sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==} engines: {node: '>=12'} lz-string@1.5.0: @@ -8003,6 +7973,9 @@ packages: magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + magic-string@0.30.19: + resolution: {integrity: sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==} + magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -8022,8 +7995,8 @@ packages: resolution: {integrity: sha512-p8lJFEiqmEQlyv+DQxFAOG/XPWN0Wp7j/Psq93Zywz7qt9CcUKFYDBOoOEKzqe6gudHVJY8/Bhqw6VDpX2lSBg==} engines: {node: '>=6.4.0'} - maplibre-gl@5.6.2: - resolution: {integrity: sha512-SEqYThhUCFf6Lm0TckpgpKnto5u4JsdPYdFJb6g12VtuaFsm3nYdBO+fOmnUYddc8dXihgoGnuXvPPooUcRv5w==} + maplibre-gl@5.7.1: + resolution: {integrity: sha512-iCOQB6W/EGgQx8aU4SyfU5a5/GR2E+ELF92NMsqYfs3x+vnY+8mARmz4gor6XZHCz3tv19mnotVDRlRTMNKyGw==} engines: {node: '>=16.14.0', npm: '>=8.1.0'} mark.js@8.11.1: @@ -8528,8 +8501,8 @@ packages: resolution: {integrity: sha512-HZpdkco+JeXq0G+WWpMJ4NsX3pqb5O7eR9uGz3FfoFt+LYzU8iRWp49nJtud6hsDoywM8tIrDo3gjgmOqJA8LA==} engines: {node: '>= 10'} - nest-commander@3.18.0: - resolution: {integrity: sha512-NWtodOl2aStnApWp9oajCoJW71lqN0CCjf9ygOWxpXnG3o4nQ8ZO5CgrExfVw2+0CVC877hr0rFR7FSu2rypGg==} + nest-commander@3.19.1: + resolution: {integrity: sha512-Pn6xcMeSnidlzZozNLnbe7P4TqXL7g0JuxqTAtJ89KT4S63ntJZKtRU6g/56h/aHUQa+m98j/c9OxBSduK7EPg==} peerDependencies: '@nestjs/common': ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 '@nestjs/core': ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 @@ -8607,8 +8580,8 @@ packages: resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} hasBin: true - node-gyp@11.3.0: - resolution: {integrity: sha512-9J0+C+2nt3WFuui/mC46z2XCZ21/cKlFDuywULmseD/LlmnOrSeEAE4c/1jw6aybXLmpZnQY3/LmOJfgyHIcng==} + node-gyp@11.4.2: + resolution: {integrity: sha512-3gD+6zsrLQH7DyYOUIutaauuXrcyxeTPyQuZQCQoNPZMHMMS5m4y0xclNpvYzoK3VNzuyxT6eF4mkIL4WSZ1eQ==} engines: {node: ^18.17.0 || >=20.5.0} hasBin: true @@ -8618,8 +8591,8 @@ packages: node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - nodemailer@7.0.5: - resolution: {integrity: sha512-nsrh2lO3j4GkLLXoeEksAMgAOqxOv6QumNRVQTJwKH4nuiww6iC2y7GyANs9kRAxCexg3+lTWM3PZ91iLlVjfg==} + nodemailer@7.0.6: + resolution: {integrity: sha512-F44uVzgwo49xboqbFgBGkRaiMgtoBrBEWCVincJPK9+S9Adkzt/wXCLKbf7dxucmxfTI5gHGB+bEmdyzN6QKjw==} engines: {node: '>=6.0.0'} nopt@1.0.10: @@ -8702,8 +8675,8 @@ packages: oas-validator@5.0.8: resolution: {integrity: sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==} - oauth4webapi@3.7.0: - resolution: {integrity: sha512-Q52wTPUWPsVLVVmTViXPQFMW2h2xv2jnDGxypjpelCFKaOjLsm7AxYuOk1oQgFm95VNDbuggasu9htXrz6XwKw==} + oauth4webapi@3.8.1: + resolution: {integrity: sha512-olkZDELNycOWQf9LrsELFq8n05LwJgV8UkrS0cburk6FOwf8GvLam+YB+Uj5Qvryee+vwWOfQVeI5Vm0MVg7SA==} object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} @@ -8731,8 +8704,8 @@ packages: obuf@1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} - oidc-provider@9.4.1: - resolution: {integrity: sha512-luNQK3MBTN6oRliEm+sWVzne8UR+e+Zo0qCWzsY7mhdUNOcjjoe5joFgJrW4i/6mEMYdeWUAPiTGrvggCsyMgQ==} + oidc-provider@9.5.1: + resolution: {integrity: sha512-19Wa4bfz3reoudxrY7sF5SeQKxe5b3dY8hWzQdnBGS87rH0BoYoDDUDRTYciJMN3oI6S02C9xM6vuaHtoZ48eA==} on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} @@ -8766,8 +8739,8 @@ packages: resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} hasBin: true - openid-client@6.6.4: - resolution: {integrity: sha512-PLWVhRksRnNH05sqeuCX/PR+1J70NyZcAcPske+FeF732KKONd3v0p5Utx1ro1iLfCglH8B3/+dA1vqIHDoIiA==} + openid-client@6.8.0: + resolution: {integrity: sha512-oG1d1nAVhIIE+JSjLS+7E9wY1QOJpZltkzlJdbZ7kEn7Hp3hqur2TEeQ8gLOHoHkhbRAGZJKoOnEQcLOQJuIyg==} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -8781,10 +8754,6 @@ packages: resolution: {integrity: sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==} engines: {node: '>=18'} - os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} - p-cancelable@3.0.0: resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} engines: {node: '>=12.20'} @@ -8939,6 +8908,9 @@ packages: resolution: {integrity: sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==} engines: {node: '>=16'} + path-to-regexp@8.3.0: + resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -9025,16 +8997,16 @@ packages: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} - pkg-types@2.2.0: - resolution: {integrity: sha512-2SM/GZGAEkPp3KWORxQZns4M+WSeXbC2HEvmOIJe3Cmiv6ieAJvdVhDldtHqM5J1Y7MrR1XhkBT/rMlhh9FdqQ==} + pkg-types@2.3.0: + resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==} - playwright-core@1.54.2: - resolution: {integrity: sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==} + playwright-core@1.55.0: + resolution: {integrity: sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==} engines: {node: '>=18'} hasBin: true - playwright@1.54.2: - resolution: {integrity: sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==} + playwright@1.55.0: + resolution: {integrity: sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==} engines: {node: '>=18'} hasBin: true @@ -9202,8 +9174,8 @@ packages: peerDependencies: postcss: ^8.0.0 - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + postcss-js@4.1.0: + resolution: {integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 @@ -9689,8 +9661,8 @@ packages: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} - quick-lru@7.0.1: - resolution: {integrity: sha512-kLjThirJMkWKutUKbZ8ViqFc09tDQhlbQo2MNuVeLWbRauqYP96Sm6nzlQ24F0HFjUNZ4i9+AgldJ9H6DZXi7g==} + quick-lru@7.2.0: + resolution: {integrity: sha512-fG4L8TlD1CacJiGMGPxM1/K8l/GaKL2eFQZ6DWAjxZYxSf07DkumbC/Mhh+u/NHvxkfQVL25By0pxBS8QE9ZrQ==} engines: {node: '>=18'} quickselect@2.0.0: @@ -9721,9 +9693,9 @@ packages: resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} engines: {node: '>= 0.8'} - raw-body@3.0.0: - resolution: {integrity: sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==} - engines: {node: '>= 0.8'} + raw-body@3.0.1: + resolution: {integrity: sha512-9G8cA+tuMS75+6G/TzW8OtLzmBDMo8p1JRxN5AZ+LAp8uxGA8V8GZm4GQ4/N5QNQEnLmg6SS7wyuSmbKepiKqA==} + engines: {node: '>= 0.10'} raw-loader@4.0.2: resolution: {integrity: sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==} @@ -9745,8 +9717,8 @@ packages: peerDependencies: react: ^19.1.1 - react-email@4.2.8: - resolution: {integrity: sha512-Eqzs/xZnS881oghPO/4CQ1cULyESuUhEjfYboXmYNOokXnJ6QP5GKKJZ6zjkg9SnKXxSrIxSo5PxzCI5jReJMA==} + react-email@4.2.11: + resolution: {integrity: sha512-/7TXRgsTrXcV1u7kc5ZXDVlPvZqEBaYcflMhE2FgWIJh3OHLjj2FqctFTgYcp0iwzbR59a7gzJLmSKyD0wYJEQ==} engines: {node: '>=18.0.0'} hasBin: true @@ -10311,8 +10283,8 @@ packages: resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} engines: {node: '>= 10'} - sirv@3.0.1: - resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==} + sirv@3.0.2: + resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} engines: {node: '>=18'} sisteransi@1.0.5: @@ -10413,8 +10385,8 @@ packages: sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - sql-formatter@15.6.6: - resolution: {integrity: sha512-bZydXEXhaNDQBr8xYHC3a8thwcaMuTBp0CkKGjwGYDsIB26tnlWeWPwJtSQ0TEwiJcz9iJJON5mFPkx7XroHcg==} + sql-formatter@15.6.9: + resolution: {integrity: sha512-r9VKnkRfKW7jbhTgytwbM+JqmFclQYN9L58Z3UTktuy9V1f1Y+rGK3t70Truh2wIOJzvZkzobAQ2PwGjjXsr6Q==} hasBin: true srcset@4.0.0: @@ -10499,8 +10471,8 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} engines: {node: '>=12'} strip-bom-string@1.0.0: @@ -10600,8 +10572,8 @@ packages: svelte: ^4.0.0 || ^5.0.0-next.0 typescript: '>=5.0.0' - svelte-eslint-parser@1.3.1: - resolution: {integrity: sha512-0Iztj5vcOVOVkhy1pbo5uA9r+d3yaVoE5XPc9eABIWDOSJZ2mOsZ4D+t45rphWCOr0uMw3jtSG2fh2e7GvKnPg==} + svelte-eslint-parser@1.3.2: + resolution: {integrity: sha512-whla4VlUbwJidn/bNyC3Ho3pBrXnR2CBEkuJwtaURW+wfwgKHPaYtZAmwAkp6HWWKCw1ILZL6iKsFdVY11rpDA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 @@ -10619,8 +10591,8 @@ packages: peerDependencies: svelte: ^3 || ^4 || ^5 - svelte-maplibre@1.2.0: - resolution: {integrity: sha512-JKYzL0glnqCJ7LwkdDAMb3jdZdFl8ZDHEZyc043BV624kG9ZVaXlIPgjb8sNktqx1D0rQBNrYNt5rR4XszNCiQ==} + svelte-maplibre@1.2.1: + resolution: {integrity: sha512-IVkbc54hQXznyaiFN69RIdjqbLHriNYPVEo1DQMtWSm1kLovrt/aZuhV4eOoZKn6wIvY2Vz34jXPS33f/d/GNw==} peerDependencies: '@deck.gl/core': ^9 '@deck.gl/layers': ^9 @@ -10651,8 +10623,8 @@ packages: peerDependencies: svelte: ^5.30.2 - svelte@5.35.5: - resolution: {integrity: sha512-KuRvI82rhh0RMz1EKsUJD96gZyHJ+h2+8zrwO8iqE/p/CmcNKvIItDUAeUePhuCDgtegDJmF8IKThbHIfmTgTA==} + svelte@5.38.10: + resolution: {integrity: sha512-UY+OhrWK7WI22bCZ00P/M3HtyWgwJPi9IxSRkoAE2MeAy6kl7ZlZWJZ8RaB+X4KD/G+wjis+cGVnVYaoqbzBqg==} engines: {node: '>=18'} svg-parser@2.0.4: @@ -10725,8 +10697,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - tailwindcss@4.1.12: - resolution: {integrity: sha512-DzFtxOi+7NsFf7DBtI3BJsynR+0Yp6etH+nRPTbpWnS2pZBaSksv/JGctNwSWzbFjp0vxSqknaUylseZqMDGrA==} + tailwindcss@4.1.13: + resolution: {integrity: sha512-i+zidfmTqtwquj4hMEwdjshYYgMbOrPzb9a0M3ZgNa0JMoZeFC6bxZvO8yr8ozS6ix2SDz0+mvryPeBs2TFE+w==} tapable@2.2.2: resolution: {integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==} @@ -10795,12 +10767,12 @@ packages: thenify@3.3.1: resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - three@0.175.0: - resolution: {integrity: sha512-nNE3pnTHxXN/Phw768u0Grr7W4+rumGg/H6PgeseNJojkJtmeHJfZWi41Gp2mpXl1pg1pf1zjwR4McM1jTqkpg==} - three@0.179.1: resolution: {integrity: sha512-5y/elSIQbrvKOISxpwXCR4sQqHtGiOI+MKLc3SsBdDXA2hz3Mdp3X59aUp8DyybMa34aeBwbFTpdoLJaUDEWSw==} + three@0.180.0: + resolution: {integrity: sha512-o+qycAMZrh+TsE01GqWUxUIKR1AL0S8pq7zDkYOQw8GqfX8b8VoCKYUoHbhiX5j+7hr8XsuHDVU6+gkQJQKg9w==} + through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} @@ -10858,10 +10830,6 @@ packages: resolution: {integrity: sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==} hasBin: true - tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - tmp@0.2.5: resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} engines: {node: '>=14.14'} @@ -10990,8 +10958,8 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript-eslint@8.39.1: - resolution: {integrity: sha512-GDUv6/NDYngUlNvwaHM1RamYftxf782IyEDbdj3SeaIHHv8fNQVRC++fITT7kUJV/5rIA/tkoRSSskt6osEfqg==} + typescript-eslint@8.43.0: + resolution: {integrity: sha512-FyRGJKUGvcFekRRcBKFBlAhnp4Ng8rhe8tuvvkR9OiU0gfd4vyvTRQHEckO6VDlH57jbeUQem2IpqPq9kLJH+w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -11010,8 +10978,8 @@ packages: ua-is-frozen@0.1.2: resolution: {integrity: sha512-RwKDW2p3iyWn4UbaxpP2+VxwqXh0jpvdxsYpZ5j/MLLiQOfbsV5shpgQiw93+KMYQPcteeMQ289MaAFzs3G9pw==} - ua-parser-js@2.0.4: - resolution: {integrity: sha512-XiBOnM/UpUq21ZZ91q2AVDOnGROE6UQd37WrO9WBgw4u2eGvUCNOheMmZ3EfEUj7DLHr8tre+Um/436Of/Vwzg==} + ua-parser-js@2.0.5: + resolution: {integrity: sha512-sZErtx3rhpvZQanWW5umau4o/snfoLqRcQwQIZ54377WtRzIecnIKvjpkd5JwPcSUMglGnbIgcsQBGAbdi3S9Q==} hasBin: true uglify-js@3.19.3: @@ -11037,11 +11005,11 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@7.10.0: - resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} + undici-types@7.12.0: + resolution: {integrity: sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==} - undici@7.14.0: - resolution: {integrity: sha512-Vqs8HTzjpQXZeXdpsfChQTlafcMQaaIwnGwLam1wudSSjlJeQ3bw1j+TLPePgrCnCpUXx7Ba5Pdpf5OBih62NQ==} + undici@7.16.0: + resolution: {integrity: sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g==} engines: {node: '>=20.18.1'} unicode-canonical-property-names-ecmascript@2.0.1: @@ -11127,13 +11095,13 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unplugin-swc@1.5.5: - resolution: {integrity: sha512-BahYtYvQ/KSgOqHoy5FfQgp/oZNAB7jwERxNeFVeN/PtJhg4fpK/ybj9OwKtqGPseOadS7+TGbq6tH2DmDAYvA==} + unplugin-swc@1.5.7: + resolution: {integrity: sha512-Ng4uuLAodZToA0kQk3+oY8b0C/Q9oV0ohRMixH2nqWMhCF/wNuMYZXZznYpwRLmF7wC36TFIOywBAxCLOReoeg==} peerDependencies: '@swc/core': ^1.2.108 - unplugin@2.3.5: - resolution: {integrity: sha512-RyWSb5AHmGtjjNQ6gIlA67sHOsWpsbWpwDokLwTcejVdOjEkJZh7QKu14J00gDDVSh8kGH4KYC/TNBceXFZhtw==} + unplugin@2.3.10: + resolution: {integrity: sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==} engines: {node: '>=18.12.0'} update-browserslist-db@1.1.3: @@ -11651,8 +11619,8 @@ packages: resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==} engines: {node: '>=18'} - yoctocolors@2.1.1: - resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} + yoctocolors@2.1.2: + resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==} engines: {node: '>=18'} zimmerframe@1.1.2: @@ -11797,11 +11765,11 @@ snapshots: optionalDependencies: chokidar: 4.0.3 - '@angular-devkit/schematics-cli@19.2.15(@types/node@22.18.4)(chokidar@4.0.3)': + '@angular-devkit/schematics-cli@19.2.15(@types/node@22.18.5)(chokidar@4.0.3)': dependencies: '@angular-devkit/core': 19.2.15(chokidar@4.0.3) '@angular-devkit/schematics': 19.2.15(chokidar@4.0.3) - '@inquirer/prompts': 7.3.2(@types/node@22.18.4) + '@inquirer/prompts': 7.3.2(@types/node@22.18.5) ansi-colors: 4.1.3 symbol-observable: 4.0.0 yargs-parser: 21.1.1 @@ -12230,12 +12198,12 @@ snapshots: '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.7) '@babel/helpers': 7.27.6 - '@babel/parser': 7.28.3 + '@babel/parser': 7.28.4 '@babel/template': 7.27.2 - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 + '@babel/traverse': 7.28.4 + '@babel/types': 7.28.4 convert-source-map: 2.0.0 - debug: 4.4.1 + debug: 4.4.3 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -12244,15 +12212,15 @@ snapshots: '@babel/generator@7.28.3': dependencies: - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 + '@babel/parser': 7.28.4 + '@babel/types': 7.28.4 '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.30 jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.27.3': dependencies: - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 '@babel/helper-compilation-targets@7.27.2': dependencies: @@ -12270,7 +12238,7 @@ snapshots: '@babel/helper-optimise-call-expression': 7.27.1 '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.7) '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -12287,7 +12255,7 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-plugin-utils': 7.27.1 - debug: 4.4.1 + debug: 4.4.3 lodash.debounce: 4.0.8 resolve: 1.22.10 transitivePeerDependencies: @@ -12297,15 +12265,15 @@ snapshots: '@babel/helper-member-expression-to-functions@7.27.1': dependencies: - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 + '@babel/traverse': 7.28.4 + '@babel/types': 7.28.4 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.27.1': dependencies: - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 + '@babel/traverse': 7.28.4 + '@babel/types': 7.28.4 transitivePeerDependencies: - supports-color @@ -12314,13 +12282,13 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-module-imports': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.27.1': dependencies: - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 '@babel/helper-plugin-utils@7.27.1': {} @@ -12329,7 +12297,7 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-wrap-function': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12338,14 +12306,14 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-member-expression-to-functions': 7.27.1 '@babel/helper-optimise-call-expression': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.27.1': dependencies: - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 + '@babel/traverse': 7.28.4 + '@babel/types': 7.28.4 transitivePeerDependencies: - supports-color @@ -12358,25 +12326,25 @@ snapshots: '@babel/helper-wrap-function@7.27.1': dependencies: '@babel/template': 7.27.2 - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 + '@babel/traverse': 7.28.4 + '@babel/types': 7.28.4 transitivePeerDependencies: - supports-color '@babel/helpers@7.27.6': dependencies: '@babel/template': 7.27.2 - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 - '@babel/parser@7.28.3': + '@babel/parser@7.28.4': dependencies: - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.27.1(@babel/core@7.27.7)': dependencies: '@babel/core': 7.27.7 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12403,7 +12371,7 @@ snapshots: dependencies: '@babel/core': 7.27.7 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12452,7 +12420,7 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.27.7) - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12498,7 +12466,7 @@ snapshots: '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.7) - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -12513,7 +12481,7 @@ snapshots: dependencies: '@babel/core': 7.27.7 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12562,7 +12530,7 @@ snapshots: '@babel/core': 7.27.7 '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12608,7 +12576,7 @@ snapshots: '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.7) '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12648,7 +12616,7 @@ snapshots: '@babel/helper-plugin-utils': 7.27.1 '@babel/plugin-transform-destructuring': 7.27.7(@babel/core@7.27.7) '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.27.7) - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 transitivePeerDependencies: - supports-color @@ -12724,7 +12692,7 @@ snapshots: '@babel/helper-module-imports': 7.27.1 '@babel/helper-plugin-utils': 7.27.1 '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.7) - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 transitivePeerDependencies: - supports-color @@ -12903,7 +12871,7 @@ snapshots: dependencies: '@babel/core': 7.27.7 '@babel/helper-plugin-utils': 7.27.1 - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 esutils: 2.0.3 '@babel/preset-react@7.27.1(@babel/core@7.27.7)': @@ -12938,22 +12906,22 @@ snapshots: '@babel/template@7.27.2': dependencies: '@babel/code-frame': 7.27.1 - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 + '@babel/parser': 7.28.4 + '@babel/types': 7.28.4 - '@babel/traverse@7.28.3': + '@babel/traverse@7.28.4': dependencies: '@babel/code-frame': 7.27.1 '@babel/generator': 7.28.3 '@babel/helper-globals': 7.28.0 - '@babel/parser': 7.28.3 + '@babel/parser': 7.28.4 '@babel/template': 7.27.2 - '@babel/types': 7.28.2 - debug: 4.4.1 + '@babel/types': 7.28.4 + debug: 4.4.3 transitivePeerDependencies: - supports-color - '@babel/types@7.28.2': + '@babel/types@7.28.4': dependencies: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 @@ -13257,7 +13225,7 @@ snapshots: '@babel/preset-typescript': 7.27.1(@babel/core@7.27.7) '@babel/runtime': 7.28.4 '@babel/runtime-corejs3': 7.27.6 - '@babel/traverse': 7.28.3 + '@babel/traverse': 7.28.4 '@docusaurus/logger': 3.8.1 '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) babel-plugin-dynamic-import-node: 2.3.3 @@ -13315,7 +13283,7 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/core@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/core@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: '@docusaurus/babel': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/bundler': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) @@ -13324,7 +13292,7 @@ snapshots: '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mdx-js/react': 3.1.0(@types/react@19.1.13)(react@18.3.1) + '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@18.3.1) boxen: 6.2.1 chalk: 4.1.2 chokidar: 3.6.0 @@ -13447,13 +13415,13 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/plugin-content-blog@3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-content-blog@3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/logger': 3.8.1 '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13489,13 +13457,13 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/logger': 3.8.1 '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/module-type-aliases': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13530,9 +13498,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-content-pages@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-content-pages@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13561,9 +13529,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-css-cascade-layers@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-css-cascade-layers@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13589,9 +13557,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-debug@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-debug@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) fs-extra: 11.3.0 @@ -13618,9 +13586,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-google-analytics@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-google-analytics@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -13645,9 +13613,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-google-gtag@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-google-gtag@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/gtag.js': 0.0.12 @@ -13673,9 +13641,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-google-tag-manager@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-google-tag-manager@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -13700,9 +13668,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-sitemap@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-sitemap@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/logger': 3.8.1 '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13732,9 +13700,9 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/plugin-svgr@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': + '@docusaurus/plugin-svgr@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -13763,22 +13731,22 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/preset-classic@3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2)': + '@docusaurus/preset-classic@3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-content-blog': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-content-pages': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-css-cascade-layers': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-debug': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-google-analytics': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-google-gtag': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-google-tag-manager': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-sitemap': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-svgr': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-blog': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-pages': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-css-cascade-layers': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-debug': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-google-analytics': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-google-gtag': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-google-tag-manager': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-sitemap': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-svgr': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/theme-classic': 3.8.1(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/theme-search-algolia': 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/theme-search-algolia': 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -13811,20 +13779,20 @@ snapshots: '@docusaurus/theme-classic@3.8.1(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2)': dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/logger': 3.8.1 '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/module-type-aliases': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-blog': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/plugin-content-pages': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/plugin-content-blog': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-pages': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/theme-translations': 3.8.1 '@docusaurus/types': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mdx-js/react': 3.1.0(@types/react@19.1.13)(react@18.3.1) + '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@18.3.1) clsx: 2.1.1 copy-text-to-clipboard: 3.2.0 infima: 0.2.0-alpha.45 @@ -13858,11 +13826,11 @@ snapshots: - utf-8-validate - webpack-cli - '@docusaurus/theme-common@3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@docusaurus/theme-common@3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/module-type-aliases': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/history': 4.7.11 @@ -13883,13 +13851,13 @@ snapshots: - uglify-js - webpack-cli - '@docusaurus/theme-search-algolia@3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2)': + '@docusaurus/theme-search-algolia@3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2)': dependencies: '@docsearch/react': 3.9.0(@algolia/client-search@5.29.0)(@types/react@19.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/logger': 3.8.1 - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/theme-translations': 3.8.1 '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -14172,14 +14140,9 @@ snapshots: '@esbuild/win32-x64@0.25.9': optional: true - '@eslint-community/eslint-utils@4.7.0(eslint@9.30.1(jiti@2.5.1))': + '@eslint-community/eslint-utils@4.9.0(eslint@9.35.0(jiti@2.5.1))': dependencies: - eslint: 9.30.1(jiti@2.5.1) - eslint-visitor-keys: 3.4.3 - - '@eslint-community/eslint-utils@4.7.0(eslint@9.33.0(jiti@2.5.1))': - dependencies: - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} @@ -14187,17 +14150,13 @@ snapshots: '@eslint/config-array@0.21.0': dependencies: '@eslint/object-schema': 2.1.6 - debug: 4.4.1 + debug: 4.4.3 minimatch: 3.1.2 transitivePeerDependencies: - supports-color '@eslint/config-helpers@0.3.1': {} - '@eslint/core@0.14.0': - dependencies: - '@types/json-schema': 7.0.15 - '@eslint/core@0.15.2': dependencies: '@types/json-schema': 7.0.15 @@ -14205,7 +14164,7 @@ snapshots: '@eslint/eslintrc@3.3.1': dependencies: ajv: 6.12.6 - debug: 4.4.1 + debug: 4.4.3 espree: 10.4.0 globals: 14.0.0 ignore: 5.3.2 @@ -14216,9 +14175,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.30.1': {} - - '@eslint/js@9.33.0': {} + '@eslint/js@9.35.0': {} '@eslint/object-schema@2.1.6': {} @@ -14301,15 +14258,13 @@ snapshots: '@humanfs/core@0.19.1': {} - '@humanfs/node@0.16.6': + '@humanfs/node@0.16.7': dependencies: '@humanfs/core': 0.19.1 - '@humanwhocodes/retry': 0.3.1 + '@humanwhocodes/retry': 0.4.3 '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/retry@0.3.1': {} - '@humanwhocodes/retry@0.4.3': {} '@img/sharp-darwin-arm64@0.34.3': @@ -14398,39 +14353,39 @@ snapshots: '@img/sharp-win32-x64@0.34.3': optional: true - '@immich/ui@0.29.0(@internationalized/date@3.8.2)(svelte@5.35.5)': + '@immich/ui@0.29.0(@internationalized/date@3.8.2)(svelte@5.38.10)': dependencies: '@mdi/js': 7.4.47 - bits-ui: 2.9.9(@internationalized/date@3.8.2)(svelte@5.35.5) + bits-ui: 2.9.8(@internationalized/date@3.8.2)(svelte@5.38.10) simple-icons: 15.15.0 - svelte: 5.35.5 + svelte: 5.38.10 tailwind-merge: 3.3.1 - tailwind-variants: 3.1.1(tailwind-merge@3.3.1)(tailwindcss@4.1.12) - tailwindcss: 4.1.12 + tailwind-variants: 3.1.1(tailwind-merge@3.3.1)(tailwindcss@4.1.13) + tailwindcss: 4.1.13 transitivePeerDependencies: - '@internationalized/date' - '@inquirer/checkbox@4.2.1(@types/node@22.18.4)': + '@inquirer/checkbox@4.2.1(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) '@inquirer/figures': 1.0.13 - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/type': 3.0.8(@types/node@22.18.5) ansi-escapes: 4.3.2 yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/confirm@5.1.15(@types/node@22.18.4)': + '@inquirer/confirm@5.1.15(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/core@10.1.15(@types/node@22.18.4)': + '@inquirer/core@10.1.15(@types/node@22.18.5)': dependencies: '@inquirer/figures': 1.0.13 - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/type': 3.0.8(@types/node@22.18.5) ansi-escapes: 4.3.2 cli-width: 4.1.0 mute-stream: 2.0.0 @@ -14438,115 +14393,115 @@ snapshots: wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/editor@4.2.17(@types/node@22.18.4)': + '@inquirer/editor@4.2.17(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/external-editor': 1.0.1(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/external-editor': 1.0.2(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/expand@4.0.17(@types/node@22.18.4)': + '@inquirer/expand@4.0.17(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/external-editor@1.0.1(@types/node@22.18.4)': + '@inquirer/external-editor@1.0.2(@types/node@22.18.5)': dependencies: chardet: 2.1.0 - iconv-lite: 0.6.3 + iconv-lite: 0.7.0 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@inquirer/figures@1.0.13': {} - '@inquirer/input@4.2.1(@types/node@22.18.4)': + '@inquirer/input@4.2.1(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/number@3.0.17(@types/node@22.18.4)': + '@inquirer/number@3.0.17(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/password@4.0.17(@types/node@22.18.4)': + '@inquirer/password@4.0.17(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) ansi-escapes: 4.3.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/prompts@7.3.2(@types/node@22.18.4)': + '@inquirer/prompts@7.3.2(@types/node@22.18.5)': dependencies: - '@inquirer/checkbox': 4.2.1(@types/node@22.18.4) - '@inquirer/confirm': 5.1.15(@types/node@22.18.4) - '@inquirer/editor': 4.2.17(@types/node@22.18.4) - '@inquirer/expand': 4.0.17(@types/node@22.18.4) - '@inquirer/input': 4.2.1(@types/node@22.18.4) - '@inquirer/number': 3.0.17(@types/node@22.18.4) - '@inquirer/password': 4.0.17(@types/node@22.18.4) - '@inquirer/rawlist': 4.1.5(@types/node@22.18.4) - '@inquirer/search': 3.1.0(@types/node@22.18.4) - '@inquirer/select': 4.3.1(@types/node@22.18.4) + '@inquirer/checkbox': 4.2.1(@types/node@22.18.5) + '@inquirer/confirm': 5.1.15(@types/node@22.18.5) + '@inquirer/editor': 4.2.17(@types/node@22.18.5) + '@inquirer/expand': 4.0.17(@types/node@22.18.5) + '@inquirer/input': 4.2.1(@types/node@22.18.5) + '@inquirer/number': 3.0.17(@types/node@22.18.5) + '@inquirer/password': 4.0.17(@types/node@22.18.5) + '@inquirer/rawlist': 4.1.5(@types/node@22.18.5) + '@inquirer/search': 3.1.0(@types/node@22.18.5) + '@inquirer/select': 4.3.1(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/prompts@7.8.0(@types/node@22.18.4)': + '@inquirer/prompts@7.8.0(@types/node@22.18.5)': dependencies: - '@inquirer/checkbox': 4.2.1(@types/node@22.18.4) - '@inquirer/confirm': 5.1.15(@types/node@22.18.4) - '@inquirer/editor': 4.2.17(@types/node@22.18.4) - '@inquirer/expand': 4.0.17(@types/node@22.18.4) - '@inquirer/input': 4.2.1(@types/node@22.18.4) - '@inquirer/number': 3.0.17(@types/node@22.18.4) - '@inquirer/password': 4.0.17(@types/node@22.18.4) - '@inquirer/rawlist': 4.1.5(@types/node@22.18.4) - '@inquirer/search': 3.1.0(@types/node@22.18.4) - '@inquirer/select': 4.3.1(@types/node@22.18.4) + '@inquirer/checkbox': 4.2.1(@types/node@22.18.5) + '@inquirer/confirm': 5.1.15(@types/node@22.18.5) + '@inquirer/editor': 4.2.17(@types/node@22.18.5) + '@inquirer/expand': 4.0.17(@types/node@22.18.5) + '@inquirer/input': 4.2.1(@types/node@22.18.5) + '@inquirer/number': 3.0.17(@types/node@22.18.5) + '@inquirer/password': 4.0.17(@types/node@22.18.5) + '@inquirer/rawlist': 4.1.5(@types/node@22.18.5) + '@inquirer/search': 3.1.0(@types/node@22.18.5) + '@inquirer/select': 4.3.1(@types/node@22.18.5) optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/rawlist@4.1.5(@types/node@22.18.4)': + '@inquirer/rawlist@4.1.5(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) + '@inquirer/type': 3.0.8(@types/node@22.18.5) yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/search@3.1.0(@types/node@22.18.4)': + '@inquirer/search@3.1.0(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) '@inquirer/figures': 1.0.13 - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/type': 3.0.8(@types/node@22.18.5) yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/select@4.3.1(@types/node@22.18.4)': + '@inquirer/select@4.3.1(@types/node@22.18.5)': dependencies: - '@inquirer/core': 10.1.15(@types/node@22.18.4) + '@inquirer/core': 10.1.15(@types/node@22.18.5) '@inquirer/figures': 1.0.13 - '@inquirer/type': 3.0.8(@types/node@22.18.4) + '@inquirer/type': 3.0.8(@types/node@22.18.5) ansi-escapes: 4.3.2 yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@inquirer/type@3.0.8(@types/node@22.18.4)': + '@inquirer/type@3.0.8(@types/node@22.18.5)': optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@internationalized/date@3.8.2': dependencies: @@ -14564,7 +14519,7 @@ snapshots: dependencies: string-width: 5.1.2 string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 strip-ansi-cjs: strip-ansi@6.0.1 wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 @@ -14584,7 +14539,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -14620,18 +14575,18 @@ snapshots: '@koa/router@14.0.0': dependencies: - debug: 4.4.1 + debug: 4.4.3 http-errors: 2.0.0 koa-compose: 4.1.0 - path-to-regexp: 8.2.0 + path-to-regexp: 8.3.0 transitivePeerDependencies: - supports-color - '@koddsson/eslint-plugin-tscompat@0.2.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)': + '@koddsson/eslint-plugin-tscompat@0.2.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2)': dependencies: '@mdn/browser-compat-data': 6.0.27 - '@typescript-eslint/type-utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/type-utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) browserslist: 4.25.3 transitivePeerDependencies: - eslint @@ -14661,7 +14616,7 @@ snapshots: '@mapbox/node-pre-gyp@1.0.11': dependencies: - detect-libc: 2.0.4 + detect-libc: 2.1.0 https-proxy-agent: 5.0.1 make-dir: 3.1.0 node-fetch: 2.7.0 @@ -14677,7 +14632,7 @@ snapshots: '@mapbox/node-pre-gyp@1.0.11(encoding@0.1.13)': dependencies: - detect-libc: 2.0.4 + detect-libc: 2.1.0 https-proxy-agent: 5.0.1 make-dir: 3.1.0 node-fetch: 2.7.0(encoding@0.1.13) @@ -14774,7 +14729,7 @@ snapshots: - acorn - supports-color - '@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1)': + '@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1)': dependencies: '@types/mdx': 2.0.13 '@types/react': 19.1.13 @@ -14819,26 +14774,26 @@ snapshots: '@nestjs/core': 11.1.6(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.6)(@nestjs/websockets@11.1.6)(reflect-metadata@0.2.2)(rxjs@7.8.2) tslib: 2.8.1 - '@nestjs/bullmq@11.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(bullmq@5.57.0)': + '@nestjs/bullmq@11.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(bullmq@5.58.5)': dependencies: '@nestjs/bull-shared': 11.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6) '@nestjs/common': 11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/core': 11.1.6(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.6)(@nestjs/websockets@11.1.6)(reflect-metadata@0.2.2)(rxjs@7.8.2) - bullmq: 5.57.0 + bullmq: 5.58.5 tslib: 2.8.1 - '@nestjs/cli@11.0.10(@swc/core@1.13.3(@swc/helpers@0.5.17))(@types/node@22.18.4)': + '@nestjs/cli@11.0.10(@swc/core@1.13.5(@swc/helpers@0.5.17))(@types/node@22.18.5)': dependencies: '@angular-devkit/core': 19.2.15(chokidar@4.0.3) '@angular-devkit/schematics': 19.2.15(chokidar@4.0.3) - '@angular-devkit/schematics-cli': 19.2.15(@types/node@22.18.4)(chokidar@4.0.3) - '@inquirer/prompts': 7.8.0(@types/node@22.18.4) + '@angular-devkit/schematics-cli': 19.2.15(@types/node@22.18.5)(chokidar@4.0.3) + '@inquirer/prompts': 7.8.0(@types/node@22.18.5) '@nestjs/schematics': 11.0.7(chokidar@4.0.3)(typescript@5.8.3) ansis: 4.1.0 chokidar: 4.0.3 cli-table3: 0.6.5 commander: 4.1.1 - fork-ts-checker-webpack-plugin: 9.1.0(typescript@5.8.3)(webpack@5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17))) + fork-ts-checker-webpack-plugin: 9.1.0(typescript@5.8.3)(webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17))) glob: 11.0.3 node-emoji: 1.11.0 ora: 5.4.1 @@ -14846,10 +14801,10 @@ snapshots: tsconfig-paths: 4.2.0 tsconfig-paths-webpack-plugin: 4.2.0 typescript: 5.8.3 - webpack: 5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17)) + webpack: 5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17)) webpack-node-externals: 3.0.0 optionalDependencies: - '@swc/core': 1.13.3(@swc/helpers@0.5.17) + '@swc/core': 1.13.5(@swc/helpers@0.5.17) transitivePeerDependencies: - '@types/node' - esbuild @@ -15015,311 +14970,311 @@ snapshots: '@oazapfts/runtime@1.0.4': {} - '@opentelemetry/api-logs@0.203.0': + '@opentelemetry/api-logs@0.205.0': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/api@1.9.0': {} - '@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/context-async-hooks@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/core@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/semantic-conventions': 1.37.0 - '@opentelemetry/exporter-logs-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-grpc@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.13.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.205.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-http@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-http@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.205.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.205.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-proto@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-proto@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.205.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-metrics-otlp-grpc@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.13.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-http': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-metrics-otlp-http@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-proto@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-metrics-otlp-proto@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-http': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-prometheus@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-prometheus@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-grpc@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.13.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-http@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-proto@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-proto@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-zipkin@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-zipkin@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 '@opentelemetry/host-metrics@0.36.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 systeminformation: 5.23.8 - '@opentelemetry/instrumentation-http@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-http@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 forwarded-parse: 2.1.2 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-ioredis@0.51.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-ioredis@0.53.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.205.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common': 0.38.0 - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/semantic-conventions': 1.37.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-nestjs-core@0.49.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-nestjs-core@0.51.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/instrumentation': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-pg@0.56.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-pg@0.58.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 '@opentelemetry/sql-common': 0.41.0(@opentelemetry/api@1.9.0) - '@types/pg': 8.15.4 + '@types/pg': 8.15.5 '@types/pg-pool': 2.0.6 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 + '@opentelemetry/api-logs': 0.205.0 import-in-the-middle: 1.14.2 require-in-the-middle: 7.5.2 transitivePeerDependencies: - supports-color - '@opentelemetry/otlp-exporter-base@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-exporter-base@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-grpc-exporter-base@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@grpc/grpc-js': 1.13.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.205.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-transformer@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.205.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) protobufjs: 7.5.4 - '@opentelemetry/propagator-b3@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/propagator-b3@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-jaeger@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/propagator-jaeger@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common@0.38.0': {} - '@opentelemetry/resources@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/resources@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 - '@opentelemetry/sdk-logs@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-logs@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.205.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-metrics@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-node@0.203.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-node@0.205.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.203.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-http': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-metrics-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-prometheus': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-zipkin': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-b3': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-jaeger': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/api-logs': 0.205.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-grpc': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-http': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-proto': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-grpc': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-http': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-metrics-otlp-proto': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-prometheus': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-grpc': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-http': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-proto': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-zipkin': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/propagator-b3': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/propagator-jaeger': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.205.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-node': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 transitivePeerDependencies: - supports-color - '@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-trace-base@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.36.0 + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.37.0 - '@opentelemetry/sdk-trace-node@2.0.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-trace-node@2.1.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/context-async-hooks': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/context-async-hooks': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.1.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions@1.36.0': {} + '@opentelemetry/semantic-conventions@1.37.0': {} '@opentelemetry/sql-common@0.41.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.1.0(@opentelemetry/api@1.9.0) '@paralleldrive/cuid2@2.2.2': dependencies: '@noble/hashes': 1.8.0 - '@photo-sphere-viewer/core@5.13.4': + '@photo-sphere-viewer/core@5.14.0': dependencies: - three: 0.175.0 - - '@photo-sphere-viewer/equirectangular-video-adapter@5.13.4(@photo-sphere-viewer/core@5.13.4)(@photo-sphere-viewer/video-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4))': - dependencies: - '@photo-sphere-viewer/core': 5.13.4 - '@photo-sphere-viewer/video-plugin': 5.13.4(@photo-sphere-viewer/core@5.13.4) three: 0.179.1 - '@photo-sphere-viewer/resolution-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4)(@photo-sphere-viewer/settings-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4))': + '@photo-sphere-viewer/equirectangular-video-adapter@5.14.0(@photo-sphere-viewer/core@5.14.0)(@photo-sphere-viewer/video-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0))': dependencies: - '@photo-sphere-viewer/core': 5.13.4 - '@photo-sphere-viewer/settings-plugin': 5.13.4(@photo-sphere-viewer/core@5.13.4) + '@photo-sphere-viewer/core': 5.14.0 + '@photo-sphere-viewer/video-plugin': 5.14.0(@photo-sphere-viewer/core@5.14.0) + three: 0.180.0 - '@photo-sphere-viewer/settings-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4)': + '@photo-sphere-viewer/resolution-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0)(@photo-sphere-viewer/settings-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0))': dependencies: - '@photo-sphere-viewer/core': 5.13.4 + '@photo-sphere-viewer/core': 5.14.0 + '@photo-sphere-viewer/settings-plugin': 5.14.0(@photo-sphere-viewer/core@5.14.0) - '@photo-sphere-viewer/video-plugin@5.13.4(@photo-sphere-viewer/core@5.13.4)': + '@photo-sphere-viewer/settings-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0)': dependencies: - '@photo-sphere-viewer/core': 5.13.4 - three: 0.179.1 + '@photo-sphere-viewer/core': 5.14.0 + + '@photo-sphere-viewer/video-plugin@5.14.0(@photo-sphere-viewer/core@5.14.0)': + dependencies: + '@photo-sphere-viewer/core': 5.14.0 + three: 0.180.0 '@photostructure/tz-lookup@11.2.0': {} @@ -15328,9 +15283,9 @@ snapshots: '@pkgr/core@0.2.9': {} - '@playwright/test@1.54.2': + '@playwright/test@1.55.0': dependencies: - playwright: 1.54.2 + playwright: 1.55.0 '@pnpm/config.env-replace@1.1.0': {} @@ -15390,7 +15345,7 @@ snapshots: dependencies: react: 19.1.1 - '@react-email/components@0.5.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': + '@react-email/components@0.5.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': dependencies: '@react-email/body': 0.1.0(react@19.1.1) '@react-email/button': 0.2.0(react@19.1.1) @@ -15407,7 +15362,7 @@ snapshots: '@react-email/link': 0.0.12(react@19.1.1) '@react-email/markdown': 0.0.15(react@19.1.1) '@react-email/preview': 0.0.13(react@19.1.1) - '@react-email/render': 1.2.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1) + '@react-email/render': 1.2.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1) '@react-email/row': 0.0.12(react@19.1.1) '@react-email/section': 0.0.16(react@19.1.1) '@react-email/tailwind': 1.2.2(react@19.1.1) @@ -15457,7 +15412,7 @@ snapshots: dependencies: react: 19.1.1 - '@react-email/render@1.2.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': + '@react-email/render@1.2.3(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': dependencies: html-to-text: 9.0.5 prettier: 3.6.2 @@ -15491,7 +15446,7 @@ snapshots: react: 18.3.1 react-redux: 7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@rollup/pluginutils@5.2.0(rollup@4.50.1)': + '@rollup/pluginutils@5.3.0(rollup@4.50.1)': dependencies: '@types/estree': 1.0.8 estree-walker: 2.0.2 @@ -15888,62 +15843,63 @@ snapshots: dependencies: acorn: 8.15.0 - '@sveltejs/adapter-static@3.0.9(@sveltejs/kit@2.27.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))': + '@sveltejs/adapter-static@3.0.9(@sveltejs/kit@2.38.1(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))': dependencies: - '@sveltejs/kit': 2.27.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + '@sveltejs/kit': 2.38.1(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) - '@sveltejs/enhanced-img@0.8.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.50.1)(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@sveltejs/enhanced-img@0.8.1(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.50.1)(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: - '@sveltejs/vite-plugin-svelte': 6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) - magic-string: 0.30.17 + '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + magic-string: 0.30.19 sharp: 0.34.3 - svelte: 5.35.5 - svelte-parse-markup: 0.1.5(svelte@5.35.5) - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + svelte: 5.38.10 + svelte-parse-markup: 0.1.5(svelte@5.38.10) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) vite-imagetools: 8.0.0(rollup@4.50.1) zimmerframe: 1.1.2 transitivePeerDependencies: - rollup - supports-color - '@sveltejs/kit@2.27.1(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@sveltejs/kit@2.38.1(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@standard-schema/spec': 1.0.0 '@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0) - '@sveltejs/vite-plugin-svelte': 6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@types/cookie': 0.6.0 acorn: 8.15.0 cookie: 0.6.0 - devalue: 5.1.1 + devalue: 5.3.2 esm-env: 1.2.2 kleur: 4.1.5 - magic-string: 0.30.17 + magic-string: 0.30.19 mrmime: 2.0.1 sade: 1.8.1 set-cookie-parser: 2.7.1 - sirv: 3.0.1 - svelte: 5.35.5 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + sirv: 3.0.2 + svelte: 5.38.10 + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + optionalDependencies: + '@opentelemetry/api': 1.9.0 - '@sveltejs/vite-plugin-svelte-inspector@5.0.0(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@sveltejs/vite-plugin-svelte-inspector@5.0.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: - '@sveltejs/vite-plugin-svelte': 6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) - debug: 4.4.1 - svelte: 5.35.5 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + '@sveltejs/vite-plugin-svelte': 6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + debug: 4.4.3 + svelte: 5.38.10 + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 5.0.0(@sveltejs/vite-plugin-svelte@6.1.2(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) - debug: 4.4.1 + '@sveltejs/vite-plugin-svelte-inspector': 5.0.0(@sveltejs/vite-plugin-svelte@6.2.0(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + debug: 4.4.3 deepmerge: 4.3.1 - kleur: 4.1.5 - magic-string: 0.30.17 - svelte: 5.35.5 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vitefu: 1.1.1(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + magic-string: 0.30.19 + svelte: 5.38.10 + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vitefu: 1.1.1(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) transitivePeerDependencies: - supports-color @@ -16004,7 +15960,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.28.2 + '@babel/types': 7.28.4 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.9.2))': @@ -16040,51 +15996,51 @@ snapshots: - supports-color - typescript - '@swc/core-darwin-arm64@1.13.3': + '@swc/core-darwin-arm64@1.13.5': optional: true - '@swc/core-darwin-x64@1.13.3': + '@swc/core-darwin-x64@1.13.5': optional: true - '@swc/core-linux-arm-gnueabihf@1.13.3': + '@swc/core-linux-arm-gnueabihf@1.13.5': optional: true - '@swc/core-linux-arm64-gnu@1.13.3': + '@swc/core-linux-arm64-gnu@1.13.5': optional: true - '@swc/core-linux-arm64-musl@1.13.3': + '@swc/core-linux-arm64-musl@1.13.5': optional: true - '@swc/core-linux-x64-gnu@1.13.3': + '@swc/core-linux-x64-gnu@1.13.5': optional: true - '@swc/core-linux-x64-musl@1.13.3': + '@swc/core-linux-x64-musl@1.13.5': optional: true - '@swc/core-win32-arm64-msvc@1.13.3': + '@swc/core-win32-arm64-msvc@1.13.5': optional: true - '@swc/core-win32-ia32-msvc@1.13.3': + '@swc/core-win32-ia32-msvc@1.13.5': optional: true - '@swc/core-win32-x64-msvc@1.13.3': + '@swc/core-win32-x64-msvc@1.13.5': optional: true - '@swc/core@1.13.3(@swc/helpers@0.5.17)': + '@swc/core@1.13.5(@swc/helpers@0.5.17)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.24 + '@swc/types': 0.1.25 optionalDependencies: - '@swc/core-darwin-arm64': 1.13.3 - '@swc/core-darwin-x64': 1.13.3 - '@swc/core-linux-arm-gnueabihf': 1.13.3 - '@swc/core-linux-arm64-gnu': 1.13.3 - '@swc/core-linux-arm64-musl': 1.13.3 - '@swc/core-linux-x64-gnu': 1.13.3 - '@swc/core-linux-x64-musl': 1.13.3 - '@swc/core-win32-arm64-msvc': 1.13.3 - '@swc/core-win32-ia32-msvc': 1.13.3 - '@swc/core-win32-x64-msvc': 1.13.3 + '@swc/core-darwin-arm64': 1.13.5 + '@swc/core-darwin-x64': 1.13.5 + '@swc/core-linux-arm-gnueabihf': 1.13.5 + '@swc/core-linux-arm64-gnu': 1.13.5 + '@swc/core-linux-arm64-musl': 1.13.5 + '@swc/core-linux-x64-gnu': 1.13.5 + '@swc/core-linux-x64-musl': 1.13.5 + '@swc/core-win32-arm64-msvc': 1.13.5 + '@swc/core-win32-ia32-msvc': 1.13.5 + '@swc/core-win32-x64-msvc': 1.13.5 '@swc/helpers': 0.5.17 '@swc/counter@0.1.3': {} @@ -16093,7 +16049,7 @@ snapshots: dependencies: tslib: 2.8.1 - '@swc/types@0.1.24': + '@swc/types@0.1.25': dependencies: '@swc/counter': 0.1.3 @@ -16101,76 +16057,76 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - '@tailwindcss/node@4.1.12': + '@tailwindcss/node@4.1.13': dependencies: '@jridgewell/remapping': 2.3.5 enhanced-resolve: 5.18.3 jiti: 2.5.1 lightningcss: 1.30.1 - magic-string: 0.30.17 + magic-string: 0.30.19 source-map-js: 1.2.1 - tailwindcss: 4.1.12 + tailwindcss: 4.1.13 - '@tailwindcss/oxide-android-arm64@4.1.12': + '@tailwindcss/oxide-android-arm64@4.1.13': optional: true - '@tailwindcss/oxide-darwin-arm64@4.1.12': + '@tailwindcss/oxide-darwin-arm64@4.1.13': optional: true - '@tailwindcss/oxide-darwin-x64@4.1.12': + '@tailwindcss/oxide-darwin-x64@4.1.13': optional: true - '@tailwindcss/oxide-freebsd-x64@4.1.12': + '@tailwindcss/oxide-freebsd-x64@4.1.13': optional: true - '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.12': + '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.13': optional: true - '@tailwindcss/oxide-linux-arm64-gnu@4.1.12': + '@tailwindcss/oxide-linux-arm64-gnu@4.1.13': optional: true - '@tailwindcss/oxide-linux-arm64-musl@4.1.12': + '@tailwindcss/oxide-linux-arm64-musl@4.1.13': optional: true - '@tailwindcss/oxide-linux-x64-gnu@4.1.12': + '@tailwindcss/oxide-linux-x64-gnu@4.1.13': optional: true - '@tailwindcss/oxide-linux-x64-musl@4.1.12': + '@tailwindcss/oxide-linux-x64-musl@4.1.13': optional: true - '@tailwindcss/oxide-wasm32-wasi@4.1.12': + '@tailwindcss/oxide-wasm32-wasi@4.1.13': optional: true - '@tailwindcss/oxide-win32-arm64-msvc@4.1.12': + '@tailwindcss/oxide-win32-arm64-msvc@4.1.13': optional: true - '@tailwindcss/oxide-win32-x64-msvc@4.1.12': + '@tailwindcss/oxide-win32-x64-msvc@4.1.13': optional: true - '@tailwindcss/oxide@4.1.12': + '@tailwindcss/oxide@4.1.13': dependencies: - detect-libc: 2.0.4 + detect-libc: 2.1.0 tar: 7.4.3 optionalDependencies: - '@tailwindcss/oxide-android-arm64': 4.1.12 - '@tailwindcss/oxide-darwin-arm64': 4.1.12 - '@tailwindcss/oxide-darwin-x64': 4.1.12 - '@tailwindcss/oxide-freebsd-x64': 4.1.12 - '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.12 - '@tailwindcss/oxide-linux-arm64-gnu': 4.1.12 - '@tailwindcss/oxide-linux-arm64-musl': 4.1.12 - '@tailwindcss/oxide-linux-x64-gnu': 4.1.12 - '@tailwindcss/oxide-linux-x64-musl': 4.1.12 - '@tailwindcss/oxide-wasm32-wasi': 4.1.12 - '@tailwindcss/oxide-win32-arm64-msvc': 4.1.12 - '@tailwindcss/oxide-win32-x64-msvc': 4.1.12 + '@tailwindcss/oxide-android-arm64': 4.1.13 + '@tailwindcss/oxide-darwin-arm64': 4.1.13 + '@tailwindcss/oxide-darwin-x64': 4.1.13 + '@tailwindcss/oxide-freebsd-x64': 4.1.13 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.13 + '@tailwindcss/oxide-linux-arm64-gnu': 4.1.13 + '@tailwindcss/oxide-linux-arm64-musl': 4.1.13 + '@tailwindcss/oxide-linux-x64-gnu': 4.1.13 + '@tailwindcss/oxide-linux-x64-musl': 4.1.13 + '@tailwindcss/oxide-wasm32-wasi': 4.1.13 + '@tailwindcss/oxide-win32-arm64-msvc': 4.1.13 + '@tailwindcss/oxide-win32-x64-msvc': 4.1.13 - '@tailwindcss/vite@4.1.12(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@tailwindcss/vite@4.1.13(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: - '@tailwindcss/node': 4.1.12 - '@tailwindcss/oxide': 4.1.12 - tailwindcss: 4.1.12 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + '@tailwindcss/node': 4.1.13 + '@tailwindcss/oxide': 4.1.13 + tailwindcss: 4.1.13 + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) '@testing-library/dom@10.4.0': dependencies: @@ -16183,7 +16139,7 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.7.0': + '@testing-library/jest-dom@6.8.0': dependencies: '@adobe/css-tools': 4.4.4 aria-query: 5.3.2 @@ -16192,13 +16148,13 @@ snapshots: picocolors: 1.1.1 redent: 3.0.0 - '@testing-library/svelte@5.2.8(svelte@5.35.5)(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@testing-library/svelte@5.2.8(svelte@5.38.10)(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@testing-library/dom': 10.4.0 - svelte: 5.35.5 + svelte: 5.38.10 optionalDependencies: - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) '@testing-library/user-event@14.6.1(@testing-library/dom@10.4.0)': dependencies: @@ -16206,7 +16162,7 @@ snapshots: '@tokenizer/inflate@0.2.7': dependencies: - debug: 4.4.1 + debug: 4.4.3 fflate: 0.8.2 token-types: 6.1.1 transitivePeerDependencies: @@ -16240,7 +16196,7 @@ snapshots: '@types/accepts@1.3.7': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/archiver@6.0.3': dependencies: @@ -16252,16 +16208,16 @@ snapshots: '@types/bcrypt@6.0.0': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/bonjour@3.5.13': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/braces@3.0.5': {} @@ -16282,21 +16238,21 @@ snapshots: '@types/cli-progress@3.11.6': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/compression@1.8.1': dependencies: '@types/express': 5.0.3 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 5.0.6 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/connect@3.4.38': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/content-disposition@0.5.9': {} @@ -16313,11 +16269,11 @@ snapshots: '@types/connect': 3.4.38 '@types/express': 5.0.3 '@types/keygrip': 1.0.6 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/cors@2.8.19': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/debug@4.1.12': dependencies: @@ -16327,13 +16283,13 @@ snapshots: '@types/docker-modem@3.0.6': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ssh2': 1.15.5 '@types/dockerode@3.3.42': dependencies: '@types/docker-modem': 3.0.6 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ssh2': 1.15.5 '@types/dom-to-image@2.6.7': {} @@ -16356,14 +16312,14 @@ snapshots: '@types/express-serve-static-core@4.19.6': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 0.17.5 '@types/express-serve-static-core@5.0.6': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 0.17.5 @@ -16389,7 +16345,7 @@ snapshots: '@types/fluent-ffmpeg@2.1.27': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/geojson-vt@3.2.5': dependencies: @@ -16426,7 +16382,7 @@ snapshots: '@types/http-proxy@1.17.16': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/inquirer@8.2.11': dependencies: @@ -16464,9 +16420,9 @@ snapshots: '@types/http-errors': 2.0.5 '@types/keygrip': 1.0.6 '@types/koa-compose': 3.2.8 - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@types/leaflet@1.9.19': + '@types/leaflet@1.9.20': dependencies: '@types/geojson': 7946.0.16 @@ -16496,7 +16452,7 @@ snapshots: '@types/mock-fs@4.13.4': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ms@2.1.0': {} @@ -16504,18 +16460,13 @@ snapshots: dependencies: '@types/express': 5.0.3 - '@types/node-fetch@2.6.12': - dependencies: - '@types/node': 22.18.4 - form-data: 4.0.4 - '@types/node-forge@1.3.11': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/node@17.0.45': {} - '@types/node@18.19.123': + '@types/node@18.19.126': dependencies: undici-types: 5.26.5 @@ -16523,31 +16474,27 @@ snapshots: dependencies: undici-types: 6.21.0 - '@types/node@22.18.4': - dependencies: - undici-types: 6.21.0 - '@types/node@22.18.5': dependencies: undici-types: 6.21.0 - '@types/node@24.3.0': + '@types/node@24.5.1': dependencies: - undici-types: 7.10.0 + undici-types: 7.12.0 optional: true '@types/nodemailer@7.0.1': dependencies: '@aws-sdk/client-sesv2': 3.890.0 - '@types/node': 22.18.4 + '@types/node': 22.18.5 transitivePeerDependencies: - aws-crt - '@types/oidc-provider@9.1.2': + '@types/oidc-provider@9.5.0': dependencies: '@types/keygrip': 1.0.6 '@types/koa': 3.0.0 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/parse5@5.0.3': {} @@ -16555,15 +16502,9 @@ snapshots: dependencies: '@types/pg': 8.15.5 - '@types/pg@8.15.4': - dependencies: - '@types/node': 22.18.4 - pg-protocol: 1.10.3 - pg-types: 2.2.0 - '@types/pg@8.15.5': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 pg-protocol: 1.10.3 pg-types: 2.2.0 @@ -16571,13 +16512,13 @@ snapshots: '@types/pngjs@6.0.5': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/prismjs@1.26.5': {} '@types/qrcode@1.5.5': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/qs@6.14.0': {} @@ -16613,7 +16554,7 @@ snapshots: '@types/readdir-glob@1.1.5': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/retry@0.12.0': {} @@ -16623,14 +16564,14 @@ snapshots: '@types/sax@1.2.7': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 - '@types/semver@7.7.0': {} + '@types/semver@7.7.1': {} '@types/send@0.17.5': dependencies: '@types/mime': 1.3.5 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/serve-index@1.9.4': dependencies: @@ -16639,31 +16580,31 @@ snapshots: '@types/serve-static@1.15.8': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/send': 0.17.5 '@types/sockjs@0.3.36': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ssh2-streams@0.1.12': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ssh2@0.5.52': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/ssh2-streams': 0.1.12 '@types/ssh2@1.15.5': dependencies: - '@types/node': 18.19.123 + '@types/node': 18.19.126 '@types/superagent@8.1.9': dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 22.18.4 + '@types/node': 22.18.5 form-data: 4.0.4 '@types/supercluster@7.1.3': @@ -16687,13 +16628,13 @@ snapshots: '@types/uuid@9.0.8': {} - '@types/validator@13.15.2': {} + '@types/validator@13.15.3': {} '@types/whatwg-mimetype@3.0.2': {} '@types/ws@8.18.1': dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 '@types/yargs-parser@21.0.3': {} @@ -16701,15 +16642,15 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.39.1(@typescript-eslint/parser@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)': + '@typescript-eslint/eslint-plugin@8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/scope-manager': 8.39.1 - '@typescript-eslint/type-utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/visitor-keys': 8.39.1 - eslint: 9.33.0(jiti@2.5.1) + '@typescript-eslint/parser': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/scope-manager': 8.43.0 + '@typescript-eslint/type-utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/visitor-keys': 8.43.0 + eslint: 9.35.0(jiti@2.5.1) graphemer: 1.4.0 ignore: 7.0.5 natural-compare: 1.4.0 @@ -16718,57 +16659,57 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)': + '@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2)': dependencies: - '@typescript-eslint/scope-manager': 8.39.1 - '@typescript-eslint/types': 8.39.1 - '@typescript-eslint/typescript-estree': 8.39.1(typescript@5.9.2) - '@typescript-eslint/visitor-keys': 8.39.1 - debug: 4.4.1 - eslint: 9.33.0(jiti@2.5.1) + '@typescript-eslint/scope-manager': 8.43.0 + '@typescript-eslint/types': 8.43.0 + '@typescript-eslint/typescript-estree': 8.43.0(typescript@5.9.2) + '@typescript-eslint/visitor-keys': 8.43.0 + debug: 4.4.3 + eslint: 9.35.0(jiti@2.5.1) typescript: 5.9.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.39.1(typescript@5.9.2)': + '@typescript-eslint/project-service@8.43.0(typescript@5.9.2)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.39.1(typescript@5.9.2) - '@typescript-eslint/types': 8.39.1 - debug: 4.4.1 + '@typescript-eslint/tsconfig-utils': 8.43.0(typescript@5.9.2) + '@typescript-eslint/types': 8.43.0 + debug: 4.4.3 typescript: 5.9.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.39.1': + '@typescript-eslint/scope-manager@8.43.0': dependencies: - '@typescript-eslint/types': 8.39.1 - '@typescript-eslint/visitor-keys': 8.39.1 + '@typescript-eslint/types': 8.43.0 + '@typescript-eslint/visitor-keys': 8.43.0 - '@typescript-eslint/tsconfig-utils@8.39.1(typescript@5.9.2)': + '@typescript-eslint/tsconfig-utils@8.43.0(typescript@5.9.2)': dependencies: typescript: 5.9.2 - '@typescript-eslint/type-utils@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)': + '@typescript-eslint/type-utils@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2)': dependencies: - '@typescript-eslint/types': 8.39.1 - '@typescript-eslint/typescript-estree': 8.39.1(typescript@5.9.2) - '@typescript-eslint/utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - debug: 4.4.1 - eslint: 9.33.0(jiti@2.5.1) + '@typescript-eslint/types': 8.43.0 + '@typescript-eslint/typescript-estree': 8.43.0(typescript@5.9.2) + '@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + debug: 4.4.3 + eslint: 9.35.0(jiti@2.5.1) ts-api-utils: 2.1.0(typescript@5.9.2) typescript: 5.9.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.39.1': {} + '@typescript-eslint/types@8.43.0': {} - '@typescript-eslint/typescript-estree@8.39.1(typescript@5.9.2)': + '@typescript-eslint/typescript-estree@8.43.0(typescript@5.9.2)': dependencies: - '@typescript-eslint/project-service': 8.39.1(typescript@5.9.2) - '@typescript-eslint/tsconfig-utils': 8.39.1(typescript@5.9.2) - '@typescript-eslint/types': 8.39.1 - '@typescript-eslint/visitor-keys': 8.39.1 - debug: 4.4.1 + '@typescript-eslint/project-service': 8.43.0(typescript@5.9.2) + '@typescript-eslint/tsconfig-utils': 8.43.0(typescript@5.9.2) + '@typescript-eslint/types': 8.43.0 + '@typescript-eslint/visitor-keys': 8.43.0 + debug: 4.4.3 fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 @@ -16778,78 +16719,59 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)': + '@typescript-eslint/utils@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2)': dependencies: - '@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1)) - '@typescript-eslint/scope-manager': 8.39.1 - '@typescript-eslint/types': 8.39.1 - '@typescript-eslint/typescript-estree': 8.39.1(typescript@5.9.2) - eslint: 9.33.0(jiti@2.5.1) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1)) + '@typescript-eslint/scope-manager': 8.43.0 + '@typescript-eslint/types': 8.43.0 + '@typescript-eslint/typescript-estree': 8.43.0(typescript@5.9.2) + eslint: 9.35.0(jiti@2.5.1) typescript: 5.9.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.39.1': + '@typescript-eslint/visitor-keys@8.43.0': dependencies: - '@typescript-eslint/types': 8.39.1 + '@typescript-eslint/types': 8.43.0 eslint-visitor-keys: 4.2.1 '@ungap/structured-clone@1.3.0': {} - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 ast-v8-to-istanbul: 0.3.3 - debug: 4.4.1 + debug: 4.4.3 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.1.7 - magic-string: 0.30.17 + magic-string: 0.30.19 magicast: 0.3.5 std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 ast-v8-to-istanbul: 0.3.3 - debug: 4.4.1 + debug: 4.4.3 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.1.7 - magic-string: 0.30.17 + magic-string: 0.30.19 magicast: 0.3.5 std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - transitivePeerDependencies: - - supports-color - - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': - dependencies: - '@ampproject/remapping': 2.3.0 - '@bcoe/v8-coverage': 1.0.2 - ast-v8-to-istanbul: 0.3.3 - debug: 4.4.1 - istanbul-lib-coverage: 3.2.2 - istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 5.0.6 - istanbul-reports: 3.1.7 - magic-string: 0.30.17 - magicast: 0.3.5 - std-env: 3.9.0 - test-exclude: 7.0.1 - tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -16861,21 +16783,21 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@vitest/mocker@3.2.4(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 - magic-string: 0.30.17 + magic-string: 0.30.19 optionalDependencies: - vite: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - '@vitest/mocker@3.2.4(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': + '@vitest/mocker@3.2.4(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 - magic-string: 0.30.17 + magic-string: 0.30.19 optionalDependencies: - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) '@vitest/pretty-format@3.2.4': dependencies: @@ -16890,7 +16812,7 @@ snapshots: '@vitest/snapshot@3.2.4': dependencies: '@vitest/pretty-format': 3.2.4 - magic-string: 0.30.17 + magic-string: 0.30.19 pathe: 2.0.3 '@vitest/spy@3.2.4': @@ -16987,10 +16909,10 @@ snapshots: dependencies: '@namnode/store': 0.1.0 - '@zoom-image/svelte@0.3.4(svelte@5.35.5)': + '@zoom-image/svelte@0.3.4(svelte@5.38.10)': dependencies: '@zoom-image/core': 0.41.0 - svelte: 5.35.5 + svelte: 5.38.10 abab@2.0.6: optional: true @@ -17041,7 +16963,7 @@ snapshots: agent-base@6.0.2: dependencies: - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color @@ -17133,7 +17055,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.2.0: {} + ansi-regex@6.2.2: {} ansi-styles@4.3.0: dependencies: @@ -17141,7 +17063,7 @@ snapshots: ansi-styles@5.2.0: {} - ansi-styles@6.2.1: {} + ansi-styles@6.2.3: {} ansis@4.1.0: {} @@ -17346,15 +17268,15 @@ snapshots: binary-extensions@2.3.0: {} - bits-ui@2.9.9(@internationalized/date@3.8.2)(svelte@5.35.5): + bits-ui@2.9.8(@internationalized/date@3.8.2)(svelte@5.38.10): dependencies: '@floating-ui/core': 1.7.3 '@floating-ui/dom': 1.7.4 '@internationalized/date': 3.8.2 esm-env: 1.2.2 - runed: 0.29.2(svelte@5.35.5) - svelte: 5.35.5 - svelte-toolbelt: 0.9.3(svelte@5.35.5) + runed: 0.29.2(svelte@5.38.10) + svelte: 5.38.10 + svelte-toolbelt: 0.9.3(svelte@5.38.10) tabbable: 6.2.0 bl@4.1.0: @@ -17384,12 +17306,12 @@ snapshots: dependencies: bytes: 3.1.2 content-type: 1.0.5 - debug: 4.4.1 + debug: 4.4.3 http-errors: 2.0.0 iconv-lite: 0.6.3 on-finished: 2.4.1 qs: 6.14.0 - raw-body: 3.0.0 + raw-body: 3.0.1 type-is: 2.0.1 transitivePeerDependencies: - supports-color @@ -17418,7 +17340,7 @@ snapshots: dependencies: ansi-align: 3.0.1 camelcase: 7.0.1 - chalk: 5.6.0 + chalk: 5.6.2 cli-boxes: 3.0.0 string-width: 5.1.2 type-fest: 2.19.0 @@ -17464,7 +17386,7 @@ snapshots: builtin-modules@5.0.0: {} - bullmq@5.57.0: + bullmq@5.58.5: dependencies: cron-parser: 4.9.0 ioredis: 5.7.0 @@ -17595,7 +17517,7 @@ snapshots: ansi-styles: 4.3.0 supports-color: 7.2.0 - chalk@5.6.0: {} + chalk@5.6.2: {} change-case@5.4.4: {} @@ -17609,8 +17531,6 @@ snapshots: character-reference-invalid@2.0.1: {} - chardet@0.7.0: {} - chardet@2.1.0: {} charset@1.0.1: {} @@ -17674,7 +17594,7 @@ snapshots: class-validator@0.14.2: dependencies: - '@types/validator': 13.15.2 + '@types/validator': 13.15.3 libphonenumber-js: 1.12.9 validator: 13.15.15 @@ -17977,7 +17897,7 @@ snapshots: cron-parser@4.9.0: dependencies: - luxon: 3.7.1 + luxon: 3.7.2 cron@4.3.0: dependencies: @@ -18195,7 +18115,7 @@ snapshots: dependencies: ms: 2.1.3 - debug@4.4.1: + debug@4.4.3: dependencies: ms: 2.1.3 @@ -18266,7 +18186,7 @@ snapshots: detect-europe-js@0.1.2: {} - detect-libc@2.0.4: {} + detect-libc@2.1.0: {} detect-node@2.1.0: {} @@ -18277,11 +18197,11 @@ snapshots: detect-port@1.6.1: dependencies: address: 1.2.2 - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color - devalue@5.1.1: {} + devalue@5.3.2: {} devlop@1.1.0: dependencies: @@ -18318,7 +18238,7 @@ snapshots: docker-modem@5.0.6: dependencies: - debug: 4.4.1 + debug: 4.4.3 readable-stream: 3.6.2 split-ca: 1.0.1 ssh2: 1.16.0 @@ -18337,9 +18257,9 @@ snapshots: transitivePeerDependencies: - supports-color - docusaurus-lunr-search@3.6.0(@docusaurus/core@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + docusaurus-lunr-search@3.6.0(@docusaurus/core@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/core': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) autocomplete.js: 0.37.1 clsx: 2.1.1 gauge: 3.0.2 @@ -18357,10 +18277,10 @@ snapshots: unified: 9.2.2 unist-util-is: 4.1.0 - docusaurus-plugin-openapi@0.7.6(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2): + docusaurus-plugin-openapi@0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2): dependencies: '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -18397,12 +18317,12 @@ snapshots: docusaurus-plugin-proxy@0.7.6: {} - docusaurus-preset-openapi@0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2): + docusaurus-preset-openapi@0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2): dependencies: - '@docusaurus/preset-classic': 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) - docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + '@docusaurus/preset-classic': 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) + docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) docusaurus-plugin-proxy: 0.7.6 - docusaurus-theme-openapi: 0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2) + docusaurus-theme-openapi: 0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: @@ -18431,16 +18351,16 @@ snapshots: - utf-8-validate - webpack-cli - docusaurus-theme-openapi@0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2): + docusaurus-theme-openapi@0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2): dependencies: - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mdx-js/react': 3.1.0(@types/react@19.1.13)(react@18.3.1) + '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@18.3.1) '@monaco-editor/react': 4.7.0(monaco-editor@0.31.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@reduxjs/toolkit': 1.9.7(react-redux@7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) buffer: 6.0.3 clsx: 1.2.1 crypto-js: 4.2.0 - docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.0(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) + docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) immer: 9.0.21 lodash: 4.17.21 marked: 11.2.0 @@ -18538,7 +18458,7 @@ snapshots: dependencies: is-obj: 2.0.0 - dotenv@17.2.1: {} + dotenv@17.2.2: {} dunder-proto@1.0.1: dependencies: @@ -18558,7 +18478,7 @@ snapshots: electron-to-chromium@1.5.207: {} - emoji-regex@10.4.0: {} + emoji-regex@10.5.0: {} emoji-regex@8.0.0: {} @@ -18600,7 +18520,7 @@ snapshots: engine.io@6.6.4: dependencies: '@types/cors': 2.8.19 - '@types/node': 22.18.4 + '@types/node': 22.18.5 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -18628,7 +18548,7 @@ snapshots: err-code@2.0.3: {} - error-ex@1.3.2: + error-ex@1.3.4: dependencies: is-arrayish: 0.2.1 @@ -18766,70 +18686,70 @@ snapshots: source-map: 0.6.1 optional: true - eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)): + eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)): dependencies: - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) - eslint-p@0.25.0(jiti@2.5.1): + eslint-p@0.26.0(jiti@2.5.1): dependencies: - eslint: 9.30.1(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) transitivePeerDependencies: - jiti - supports-color - eslint-plugin-compat@6.0.2(eslint@9.33.0(jiti@2.5.1)): + eslint-plugin-compat@6.0.2(eslint@9.35.0(jiti@2.5.1)): dependencies: '@mdn/browser-compat-data': 5.7.6 ast-metadata-inferer: 0.8.1 browserslist: 4.25.3 caniuse-lite: 1.0.30001735 - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) find-up: 5.0.0 globals: 15.15.0 lodash.memoize: 4.1.2 semver: 7.7.2 - eslint-plugin-prettier@5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2): + eslint-plugin-prettier@5.5.4(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1))(prettier@3.6.2): dependencies: - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) prettier: 3.6.2 prettier-linter-helpers: 1.0.0 synckit: 0.11.11 optionalDependencies: '@types/eslint': 9.6.1 - eslint-config-prettier: 10.1.8(eslint@9.33.0(jiti@2.5.1)) + eslint-config-prettier: 10.1.8(eslint@9.35.0(jiti@2.5.1)) - eslint-plugin-svelte@3.11.0(eslint@9.33.0(jiti@2.5.1))(svelte@5.35.5): + eslint-plugin-svelte@3.12.3(eslint@9.35.0(jiti@2.5.1))(svelte@5.38.10): dependencies: - '@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1)) '@jridgewell/sourcemap-codec': 1.5.5 - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) esutils: 2.0.3 - globals: 16.3.0 + globals: 16.4.0 known-css-properties: 0.37.0 postcss: 8.5.6 postcss-load-config: 3.1.4(postcss@8.5.6) postcss-safe-parser: 7.0.1(postcss@8.5.6) semver: 7.7.2 - svelte-eslint-parser: 1.3.1(svelte@5.35.5) + svelte-eslint-parser: 1.3.2(svelte@5.38.10) optionalDependencies: - svelte: 5.35.5 + svelte: 5.38.10 transitivePeerDependencies: - ts-node - eslint-plugin-unicorn@60.0.0(eslint@9.33.0(jiti@2.5.1)): + eslint-plugin-unicorn@60.0.0(eslint@9.35.0(jiti@2.5.1)): dependencies: '@babel/helper-validator-identifier': 7.27.1 - '@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1)) '@eslint/plugin-kit': 0.3.5 change-case: 5.4.4 ci-info: 4.3.0 clean-regexp: 1.0.0 core-js-compat: 3.45.0 - eslint: 9.33.0(jiti@2.5.1) + eslint: 9.35.0(jiti@2.5.1) esquery: 1.6.0 find-up-simple: 1.0.1 - globals: 16.3.0 + globals: 16.4.0 indent-string: 5.0.0 is-builtin-module: 5.0.0 jsesc: 3.1.0 @@ -18853,59 +18773,17 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.30.1(jiti@2.5.1): + eslint@9.35.0(jiti@2.5.1): dependencies: - '@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@2.5.1)) - '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.21.0 - '@eslint/config-helpers': 0.3.1 - '@eslint/core': 0.14.0 - '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.30.1 - '@eslint/plugin-kit': 0.3.5 - '@humanfs/node': 0.16.6 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.3 - '@types/estree': 1.0.8 - '@types/json-schema': 7.0.15 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.6 - debug: 4.4.1 - escape-string-regexp: 4.0.0 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - esquery: 1.6.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 - find-up: 5.0.0 - glob-parent: 6.0.2 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - optionalDependencies: - jiti: 2.5.1 - transitivePeerDependencies: - - supports-color - - eslint@9.33.0(jiti@2.5.1): - dependencies: - '@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1)) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.21.0 '@eslint/config-helpers': 0.3.1 '@eslint/core': 0.15.2 '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.33.0 + '@eslint/js': 9.35.0 '@eslint/plugin-kit': 0.3.5 - '@humanfs/node': 0.16.6 + '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.8 @@ -18913,7 +18791,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.1 + debug: 4.4.3 escape-string-regexp: 4.0.0 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -19019,7 +18897,7 @@ snapshots: eval@0.1.8: dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 require-like: 0.1.2 event-emitter@0.3.5: @@ -19057,7 +18935,7 @@ snapshots: batch-cluster: 13.0.0 exiftool-vendored.pl: 13.0.1 he: 1.2.0 - luxon: 3.7.1 + luxon: 3.7.2 optionalDependencies: exiftool-vendored.exe: 13.0.0 @@ -19109,7 +18987,7 @@ snapshots: content-type: 1.0.5 cookie: 0.7.2 cookie-signature: 1.2.2 - debug: 4.4.1 + debug: 4.4.3 encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 @@ -19145,12 +19023,6 @@ snapshots: extend@3.0.2: {} - external-editor@3.1.0: - dependencies: - chardet: 0.7.0 - iconv-lite: 0.4.24 - tmp: 0.0.33 - fabric@6.7.1: optionalDependencies: canvas: 2.11.2 @@ -19263,7 +19135,7 @@ snapshots: finalhandler@2.1.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 encodeurl: 2.0.0 escape-html: 1.0.3 on-finished: 2.4.1 @@ -19317,7 +19189,7 @@ snapshots: cross-spawn: 7.0.6 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@9.1.0(typescript@5.8.3)(webpack@5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17))): + fork-ts-checker-webpack-plugin@9.1.0(typescript@5.8.3)(webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17))): dependencies: '@babel/code-frame': 7.27.1 chalk: 4.1.2 @@ -19332,7 +19204,7 @@ snapshots: semver: 7.7.2 tapable: 2.2.2 typescript: 5.8.3 - webpack: 5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17)) + webpack: 5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17)) form-data-encoder@2.1.4: {} @@ -19440,7 +19312,7 @@ snapshots: get-caller-file@2.0.5: {} - get-east-asian-width@1.3.0: {} + get-east-asian-width@1.4.0: {} get-intrinsic@1.3.0: dependencies: @@ -19519,7 +19391,7 @@ snapshots: globals@15.15.0: {} - globals@16.3.0: {} + globals@16.4.0: {} globalyzer@0.1.0: {} @@ -19911,7 +19783,7 @@ snapshots: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color optional: true @@ -19919,7 +19791,7 @@ snapshots: http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.4 - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color @@ -19955,14 +19827,14 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color https-proxy-agent@7.0.6: dependencies: agent-base: 7.1.4 - debug: 4.4.1 + debug: 4.4.3 transitivePeerDependencies: - supports-color @@ -19980,6 +19852,10 @@ snapshots: dependencies: safer-buffer: 2.1.2 + iconv-lite@0.7.0: + dependencies: + safer-buffer: 2.1.2 + icss-utils@5.1.0(postcss@8.5.6): dependencies: postcss: 8.5.6 @@ -20035,13 +19911,13 @@ snapshots: inline-style-parser@0.2.4: {} - inquirer@8.2.6: + inquirer@8.2.7(@types/node@22.18.5): dependencies: + '@inquirer/external-editor': 1.0.2(@types/node@22.18.5) ansi-escapes: 4.3.2 chalk: 4.1.2 cli-cursor: 3.1.0 cli-width: 3.0.0 - external-editor: 3.1.0 figures: 3.2.0 lodash: 4.17.21 mute-stream: 0.0.8 @@ -20052,6 +19928,8 @@ snapshots: strip-ansi: 6.0.1 through: 2.3.8 wrap-ansi: 6.2.0 + transitivePeerDependencies: + - '@types/node' internmap@2.0.3: {} @@ -20072,7 +19950,7 @@ snapshots: dependencies: '@ioredis/commands': 1.3.0 cluster-key-slot: 1.1.2 - debug: 4.4.1 + debug: 4.4.3 denque: 2.1.0 lodash.defaults: 4.2.0 lodash.isarguments: 3.1.0 @@ -20216,7 +20094,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.30 - debug: 4.4.1 + debug: 4.4.3 istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -20241,7 +20119,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.18.4 + '@types/node': 22.18.5 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -20249,13 +20127,13 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -20276,7 +20154,7 @@ snapshots: jose@5.10.0: {} - jose@6.0.12: {} + jose@6.1.0: {} js-tokens@4.0.0: {} @@ -20555,7 +20433,7 @@ snapshots: lightningcss@1.30.1: dependencies: - detect-libc: 2.0.4 + detect-libc: 2.1.0 optionalDependencies: lightningcss-darwin-arm64: 1.30.1 lightningcss-darwin-x64: 1.30.1 @@ -20627,13 +20505,13 @@ snapshots: log-symbols@6.0.0: dependencies: - chalk: 5.6.0 + chalk: 5.6.2 is-unicode-supported: 1.3.0 log-symbols@7.0.1: dependencies: is-unicode-supported: 2.1.0 - yoctocolors: 2.1.1 + yoctocolors: 2.1.2 long@5.3.2: {} @@ -20653,7 +20531,7 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@11.1.0: {} + lru-cache@11.2.1: {} lru-cache@5.1.1: dependencies: @@ -20669,7 +20547,7 @@ snapshots: luxon@3.6.1: {} - luxon@3.7.1: {} + luxon@3.7.2: {} lz-string@1.5.0: {} @@ -20677,10 +20555,14 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 + magic-string@0.30.19: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + magicast@0.3.5: dependencies: - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 + '@babel/parser': 7.28.4 + '@babel/types': 7.28.4 source-map-js: 1.2.1 make-dir@3.1.0: @@ -20732,7 +20614,7 @@ snapshots: tinyqueue: 2.0.3 vt-pbf: 3.1.3 - maplibre-gl@5.6.2: + maplibre-gl@5.7.1: dependencies: '@mapbox/geojson-rewind': 0.5.2 '@mapbox/jsonlint-lines-primitives': 2.0.2 @@ -21275,7 +21157,7 @@ snapshots: micromark@4.0.2: dependencies: '@types/debug': 4.1.12 - debug: 4.4.1 + debug: 4.4.3 decode-named-character-reference: 1.2.0 devlop: 1.1.0 micromark-core-commonmark: 2.0.3 @@ -21508,7 +21390,7 @@ snapshots: neotraverse@0.6.15: {} - nest-commander@3.18.0(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@types/inquirer@8.2.11)(typescript@5.9.2): + nest-commander@3.19.1(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@types/inquirer@8.2.11)(@types/node@22.18.5)(typescript@5.9.2): dependencies: '@fig/complete-commander': 3.2.0(commander@11.1.0) '@golevelup/nestjs-discovery': 4.0.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6) @@ -21517,8 +21399,9 @@ snapshots: '@types/inquirer': 8.2.11 commander: 11.1.0 cosmiconfig: 8.3.6(typescript@5.9.2) - inquirer: 8.2.6 + inquirer: 8.2.7(@types/node@22.18.5) transitivePeerDependencies: + - '@types/node' - typescript nestjs-cls@5.4.3(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(reflect-metadata@0.2.2)(rxjs@7.8.2): @@ -21588,12 +21471,12 @@ snapshots: node-gyp-build-optional-packages@5.2.2: dependencies: - detect-libc: 2.0.4 + detect-libc: 2.1.0 optional: true node-gyp-build@4.8.4: {} - node-gyp@11.3.0: + node-gyp@11.4.2: dependencies: env-paths: 2.2.1 exponential-backoff: 3.1.2 @@ -21614,7 +21497,7 @@ snapshots: node-releases@2.0.19: {} - nodemailer@7.0.5: {} + nodemailer@7.0.6: {} nopt@1.0.10: dependencies: @@ -21669,7 +21552,7 @@ snapshots: citty: 0.1.6 consola: 3.4.2 pathe: 2.0.3 - pkg-types: 2.2.0 + pkg-types: 2.3.0 tinyexec: 0.3.2 oas-kit-common@1.0.8: @@ -21712,7 +21595,7 @@ snapshots: should: 13.2.3 yaml: 1.10.2 - oauth4webapi@3.7.0: {} + oauth4webapi@3.8.1: {} object-assign@4.1.1: {} @@ -21735,18 +21618,18 @@ snapshots: obuf@1.1.2: {} - oidc-provider@9.4.1: + oidc-provider@9.5.1: dependencies: '@koa/cors': 5.0.0 '@koa/router': 14.0.0 - debug: 4.4.1 + debug: 4.4.3 eta: 3.5.0 - jose: 6.0.12 + jose: 6.1.0 jsesc: 3.1.0 koa: 3.0.1 nanoid: 5.1.5 - quick-lru: 7.0.1 - raw-body: 3.0.0 + quick-lru: 7.2.0 + raw-body: 3.0.1 transitivePeerDependencies: - supports-color @@ -21798,10 +21681,10 @@ snapshots: opener@1.5.2: {} - openid-client@6.6.4: + openid-client@6.8.0: dependencies: - jose: 6.0.12 - oauth4webapi: 3.7.0 + jose: 6.1.0 + oauth4webapi: 3.8.1 optionator@0.9.4: dependencies: @@ -21826,7 +21709,7 @@ snapshots: ora@8.2.0: dependencies: - chalk: 5.6.0 + chalk: 5.6.2 cli-cursor: 5.0.0 cli-spinners: 2.9.2 is-interactive: 2.0.0 @@ -21834,9 +21717,7 @@ snapshots: log-symbols: 6.0.0 stdin-discarder: 0.2.2 string-width: 7.2.0 - strip-ansi: 7.1.0 - - os-tmpdir@1.0.2: {} + strip-ansi: 7.1.2 p-cancelable@3.0.0: {} @@ -21919,7 +21800,7 @@ snapshots: parse-json@5.2.0: dependencies: '@babel/code-frame': 7.27.1 - error-ex: 1.3.2 + error-ex: 1.3.4 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -21978,7 +21859,7 @@ snapshots: path-scurry@2.0.0: dependencies: - lru-cache: 11.1.0 + lru-cache: 11.2.1 minipass: 7.1.2 path-source@0.1.3: @@ -21996,6 +21877,8 @@ snapshots: path-to-regexp@8.2.0: {} + path-to-regexp@8.3.0: {} + path-type@4.0.0: {} path@0.12.7: @@ -22069,17 +21952,17 @@ snapshots: dependencies: find-up: 6.3.0 - pkg-types@2.2.0: + pkg-types@2.3.0: dependencies: confbox: 0.2.2 exsolve: 1.0.7 pathe: 2.0.3 - playwright-core@1.54.2: {} + playwright-core@1.55.0: {} - playwright@1.54.2: + playwright@1.55.0: dependencies: - playwright-core: 1.54.2 + playwright-core: 1.55.0 optionalDependencies: fsevents: 2.3.2 @@ -22087,7 +21970,7 @@ snapshots: pmtiles@3.2.1: dependencies: - '@types/leaflet': 1.9.19 + '@types/leaflet': 1.9.20 fflate: 0.8.2 pmtiles@4.3.0: @@ -22242,7 +22125,7 @@ snapshots: read-cache: 1.0.0 resolve: 1.22.10 - postcss-js@4.0.1(postcss@8.5.6): + postcss-js@4.1.0(postcss@8.5.6): dependencies: camelcase-css: 2.0.1 postcss: 8.5.6 @@ -22633,10 +22516,10 @@ snapshots: dependencies: prettier: 3.6.2 - prettier-plugin-svelte@3.4.0(prettier@3.6.2)(svelte@5.35.5): + prettier-plugin-svelte@3.4.0(prettier@3.6.2)(svelte@5.38.10): dependencies: prettier: 3.6.2 - svelte: 5.35.5 + svelte: 5.38.10 prettier@3.6.2: {} @@ -22715,7 +22598,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 22.18.4 + '@types/node': 22.18.5 long: 5.3.2 protocol-buffers-schema@3.6.0: {} @@ -22764,7 +22647,7 @@ snapshots: quick-lru@5.1.1: {} - quick-lru@7.0.1: {} + quick-lru@7.2.0: {} quickselect@2.0.0: {} @@ -22792,11 +22675,11 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 - raw-body@3.0.0: + raw-body@3.0.1: dependencies: bytes: 3.1.2 http-errors: 2.0.0 - iconv-lite: 0.6.3 + iconv-lite: 0.7.0 unpipe: 1.0.0 raw-loader@4.0.2(webpack@5.100.2): @@ -22823,11 +22706,10 @@ snapshots: react: 19.1.1 scheduler: 0.26.0 - react-email@4.2.8: + react-email@4.2.11: dependencies: - '@babel/parser': 7.28.3 - '@babel/traverse': 7.28.3 - chalk: 5.6.0 + '@babel/parser': 7.28.4 + '@babel/traverse': 7.28.4 chokidar: 4.0.3 commander: 13.1.0 debounce: 2.2.0 @@ -23158,7 +23040,7 @@ snapshots: require-in-the-middle@7.5.2: dependencies: - debug: 4.4.1 + debug: 4.4.3 module-details-from-path: 1.0.4 resolve: 1.22.10 transitivePeerDependencies: @@ -23259,11 +23141,11 @@ snapshots: router@2.2.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 depd: 2.0.0 is-promise: 4.0.0 parseurl: 1.3.3 - path-to-regexp: 8.2.0 + path-to-regexp: 8.3.0 transitivePeerDependencies: - supports-color @@ -23283,10 +23165,10 @@ snapshots: dependencies: queue-microtask: 1.2.3 - runed@0.29.2(svelte@5.35.5): + runed@0.29.2(svelte@5.38.10): dependencies: esm-env: 1.2.2 - svelte: 5.35.5 + svelte: 5.38.10 rw@1.3.3: {} @@ -23397,7 +23279,7 @@ snapshots: send@1.2.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 @@ -23490,9 +23372,9 @@ snapshots: sharp@0.34.3: dependencies: color: 4.2.3 - detect-libc: 2.0.4 + detect-libc: 2.1.0 node-addon-api: 8.5.0 - node-gyp: 11.3.0 + node-gyp: 11.4.2 semver: 7.7.2 optionalDependencies: '@img/sharp-darwin-arm64': 0.34.3 @@ -23616,7 +23498,7 @@ snapshots: mrmime: 2.0.1 totalist: 3.0.1 - sirv@3.0.1: + sirv@3.0.2: dependencies: '@polka/url': 1.0.0-next.29 mrmime: 2.0.1 @@ -23698,7 +23580,7 @@ snapshots: socks-proxy-agent@8.0.5: dependencies: agent-base: 7.1.4 - debug: 4.4.1 + debug: 4.4.3 socks: 2.8.7 transitivePeerDependencies: - supports-color @@ -23727,7 +23609,7 @@ snapshots: spdy-transport@3.0.0: dependencies: - debug: 4.4.1 + debug: 4.4.3 detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 @@ -23738,7 +23620,7 @@ snapshots: spdy@4.0.2: dependencies: - debug: 4.4.1 + debug: 4.4.3 handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -23752,7 +23634,7 @@ snapshots: sprintf-js@1.0.3: {} - sql-formatter@15.6.6: + sql-formatter@15.6.9: dependencies: argparse: 2.0.1 nearley: 2.20.1 @@ -23813,13 +23695,13 @@ snapshots: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 string-width@7.2.0: dependencies: - emoji-regex: 10.4.0 - get-east-asian-width: 1.3.0 - strip-ansi: 7.1.0 + emoji-regex: 10.5.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 string_decoder@1.1.1: dependencies: @@ -23844,9 +23726,9 @@ snapshots: dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: + strip-ansi@7.1.2: dependencies: - ansi-regex: 6.2.0 + ansi-regex: 6.2.2 strip-bom-string@1.0.0: {} @@ -23906,7 +23788,7 @@ snapshots: dependencies: component-emitter: 1.3.1 cookiejar: 2.1.4 - debug: 4.4.1 + debug: 4.4.3 fast-safe-stringify: 2.1.1 form-data: 4.0.4 formidable: 3.5.4 @@ -23920,7 +23802,7 @@ snapshots: dependencies: component-emitter: 1.3.1 cookiejar: 2.1.4 - debug: 4.4.1 + debug: 4.4.3 fast-safe-stringify: 2.1.1 form-data: 4.0.4 formidable: 2.1.5 @@ -23957,19 +23839,19 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@4.3.1(picomatch@4.0.3)(svelte@5.35.5)(typescript@5.9.2): + svelte-check@4.3.1(picomatch@4.0.3)(svelte@5.38.10)(typescript@5.9.2): dependencies: '@jridgewell/trace-mapping': 0.3.30 chokidar: 4.0.3 fdir: 6.5.0(picomatch@4.0.3) picocolors: 1.1.1 sade: 1.8.1 - svelte: 5.35.5 + svelte: 5.38.10 typescript: 5.9.2 transitivePeerDependencies: - picomatch - svelte-eslint-parser@1.3.1(svelte@5.35.5): + svelte-eslint-parser@1.3.2(svelte@5.38.10): dependencies: eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -23978,11 +23860,11 @@ snapshots: postcss-scss: 4.0.9(postcss@8.5.6) postcss-selector-parser: 7.1.0 optionalDependencies: - svelte: 5.35.5 + svelte: 5.38.10 svelte-gestures@5.1.4: {} - svelte-i18n@4.0.1(svelte@5.35.5): + svelte-i18n@4.0.1(svelte@5.38.10): dependencies: cli-color: 2.0.4 deepmerge: 4.3.1 @@ -23990,36 +23872,36 @@ snapshots: estree-walker: 2.0.2 intl-messageformat: 10.7.16 sade: 1.8.1 - svelte: 5.35.5 + svelte: 5.38.10 tiny-glob: 0.2.9 - svelte-maplibre@1.2.0(svelte@5.35.5): + svelte-maplibre@1.2.1(svelte@5.38.10): dependencies: d3-geo: 3.1.1 dequal: 2.0.3 just-compare: 2.3.0 - maplibre-gl: 5.6.2 + maplibre-gl: 5.7.1 pmtiles: 3.2.1 - svelte: 5.35.5 + svelte: 5.38.10 - svelte-parse-markup@0.1.5(svelte@5.35.5): + svelte-parse-markup@0.1.5(svelte@5.38.10): dependencies: - svelte: 5.35.5 + svelte: 5.38.10 - svelte-persisted-store@0.12.0(svelte@5.35.5): + svelte-persisted-store@0.12.0(svelte@5.38.10): dependencies: - svelte: 5.35.5 + svelte: 5.38.10 - svelte-toolbelt@0.9.3(svelte@5.35.5): + svelte-toolbelt@0.9.3(svelte@5.38.10): dependencies: clsx: 2.1.1 - runed: 0.29.2(svelte@5.35.5) + runed: 0.29.2(svelte@5.38.10) style-to-object: 1.0.9 - svelte: 5.35.5 + svelte: 5.38.10 - svelte@5.35.5: + svelte@5.38.10: dependencies: - '@ampproject/remapping': 2.3.0 + '@jridgewell/remapping': 2.3.5 '@jridgewell/sourcemap-codec': 1.5.5 '@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0) '@types/estree': 1.0.8 @@ -24031,7 +23913,7 @@ snapshots: esrap: 2.1.0 is-reference: 3.0.3 locate-character: 3.0.0 - magic-string: 0.30.17 + magic-string: 0.30.19 zimmerframe: 1.1.2 svg-parser@2.0.4: {} @@ -24081,9 +23963,9 @@ snapshots: tailwind-merge@3.3.1: {} - tailwind-variants@3.1.1(tailwind-merge@3.3.1)(tailwindcss@4.1.12): + tailwind-variants@3.1.1(tailwind-merge@3.3.1)(tailwindcss@4.1.13): dependencies: - tailwindcss: 4.1.12 + tailwindcss: 4.1.13 optionalDependencies: tailwind-merge: 3.3.1 @@ -24119,7 +24001,7 @@ snapshots: picocolors: 1.1.1 postcss: 8.5.6 postcss-import: 15.1.0(postcss@8.5.6) - postcss-js: 4.0.1(postcss@8.5.6) + postcss-js: 4.1.0(postcss@8.5.6) postcss-load-config: 4.0.2(postcss@8.5.6) postcss-nested: 6.2.0(postcss@8.5.6) postcss-selector-parser: 6.1.2 @@ -24128,7 +24010,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@4.1.12: {} + tailwindcss@4.1.13: {} tapable@2.2.2: {} @@ -24181,16 +24063,16 @@ snapshots: mkdirp: 3.0.1 yallist: 5.0.0 - terser-webpack-plugin@5.3.14(@swc/core@1.13.3(@swc/helpers@0.5.17))(webpack@5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17))): + terser-webpack-plugin@5.3.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17))): dependencies: '@jridgewell/trace-mapping': 0.3.30 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.43.1 - webpack: 5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17)) + webpack: 5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17)) optionalDependencies: - '@swc/core': 1.13.3(@swc/helpers@0.5.17) + '@swc/core': 1.13.5(@swc/helpers@0.5.17) terser-webpack-plugin@5.3.14(webpack@5.100.2): dependencies: @@ -24221,7 +24103,7 @@ snapshots: archiver: 7.0.1 async-lock: 1.4.1 byline: 5.0.0 - debug: 4.4.1 + debug: 4.4.3 docker-compose: 1.2.0 dockerode: 4.0.7 get-port: 7.1.0 @@ -24230,7 +24112,7 @@ snapshots: ssh-remote-port-forward: 1.0.4 tar-fs: 3.1.0 tmp: 0.2.5 - undici: 7.14.0 + undici: 7.16.0 transitivePeerDependencies: - bare-buffer - supports-color @@ -24249,10 +24131,10 @@ snapshots: dependencies: any-promise: 1.3.0 - three@0.175.0: {} - three@0.179.1: {} + three@0.180.0: {} + through@2.3.8: {} thumbhash@0.1.1: {} @@ -24300,10 +24182,6 @@ snapshots: tldts-core: 6.1.86 optional: true - tmp@0.0.33: - dependencies: - os-tmpdir: 1.0.2 - tmp@0.2.5: {} to-regex-range@5.0.1: @@ -24420,13 +24298,13 @@ snapshots: typedarray@0.0.6: {} - typescript-eslint@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2): + typescript-eslint@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.39.1(@typescript-eslint/parser@8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/parser': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - '@typescript-eslint/typescript-estree': 8.39.1(typescript@5.9.2) - '@typescript-eslint/utils': 8.39.1(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2) - eslint: 9.33.0(jiti@2.5.1) + '@typescript-eslint/eslint-plugin': 8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/parser': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + '@typescript-eslint/typescript-estree': 8.43.0(typescript@5.9.2) + '@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) + eslint: 9.35.0(jiti@2.5.1) typescript: 5.9.2 transitivePeerDependencies: - supports-color @@ -24437,15 +24315,12 @@ snapshots: ua-is-frozen@0.1.2: {} - ua-parser-js@2.0.4(encoding@0.1.13): + ua-parser-js@2.0.5: dependencies: - '@types/node-fetch': 2.6.12 detect-europe-js: 0.1.2 is-standalone-pwa: 0.1.1 - node-fetch: 2.7.0(encoding@0.1.13) ua-is-frozen: 0.1.2 - transitivePeerDependencies: - - encoding + undici: 7.16.0 uglify-js@3.19.3: optional: true @@ -24462,10 +24337,10 @@ snapshots: undici-types@6.21.0: {} - undici-types@7.10.0: + undici-types@7.12.0: optional: true - undici@7.14.0: {} + undici@7.16.0: {} unicode-canonical-property-names-ecmascript@2.0.1: {} @@ -24567,17 +24442,18 @@ snapshots: unpipe@1.0.0: {} - unplugin-swc@1.5.5(@swc/core@1.13.3(@swc/helpers@0.5.17))(rollup@4.50.1): + unplugin-swc@1.5.7(@swc/core@1.13.5(@swc/helpers@0.5.17))(rollup@4.50.1): dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.50.1) - '@swc/core': 1.13.3(@swc/helpers@0.5.17) + '@rollup/pluginutils': 5.3.0(rollup@4.50.1) + '@swc/core': 1.13.5(@swc/helpers@0.5.17) load-tsconfig: 0.2.5 - unplugin: 2.3.5 + unplugin: 2.3.10 transitivePeerDependencies: - rollup - unplugin@2.3.5: + unplugin@2.3.10: dependencies: + '@jridgewell/remapping': 2.3.5 acorn: 8.15.0 picomatch: 4.0.3 webpack-virtual-modules: 0.6.2 @@ -24591,7 +24467,7 @@ snapshots: update-notifier@6.0.2: dependencies: boxen: 7.1.1 - chalk: 5.6.0 + chalk: 5.6.2 configstore: 6.0.0 has-yarn: 3.0.0 import-lazy: 4.0.0 @@ -24711,20 +24587,20 @@ snapshots: vite-imagetools@8.0.0(rollup@4.50.1): dependencies: - '@rollup/pluginutils': 5.2.0(rollup@4.50.1) + '@rollup/pluginutils': 5.3.0(rollup@4.50.1) imagetools-core: 8.0.0 sharp: 0.34.3 transitivePeerDependencies: - rollup - supports-color - vite-node@3.2.4(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vite-node@3.2.4(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: cac: 6.7.14 - debug: 4.4.1 + debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -24739,13 +24615,13 @@ snapshots: - tsx - yaml - vite-node@3.2.4(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vite-node@3.2.4(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: cac: 6.7.14 - debug: 4.4.1 + debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -24760,18 +24636,18 @@ snapshots: - tsx - yaml - vite-tsconfig-paths@5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): + vite-tsconfig-paths@5.1.4(typescript@5.9.2)(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): dependencies: - debug: 4.4.1 + debug: 4.4.3 globrex: 0.1.2 tsconfck: 3.1.6(typescript@5.9.2) optionalDependencies: - vite: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) transitivePeerDependencies: - supports-color - typescript - vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: esbuild: 0.25.9 fdir: 6.5.0(picomatch@4.0.3) @@ -24780,14 +24656,14 @@ snapshots: rollup: 4.50.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 22.18.4 + '@types/node': 22.18.5 fsevents: 2.3.3 jiti: 2.5.1 lightningcss: 1.30.1 terser: 5.43.1 yaml: 2.8.1 - vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: esbuild: 0.25.9 fdir: 6.5.0(picomatch@4.0.3) @@ -24796,35 +24672,35 @@ snapshots: rollup: 4.50.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 24.3.0 + '@types/node': 24.5.1 fsevents: 2.3.3 jiti: 2.5.1 lightningcss: 1.30.1 terser: 5.43.1 yaml: 2.8.1 - vitefu@1.1.1(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): + vitefu@1.1.1(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): optionalDependencies: - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vitest-fetch-mock@0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): + vitest-fetch-mock@0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)): dependencies: - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 '@vitest/spy': 3.2.4 '@vitest/utils': 3.2.4 chai: 5.2.0 - debug: 4.4.1 + debug: 4.4.3 expect-type: 1.2.1 - magic-string: 0.30.17 + magic-string: 0.30.19 pathe: 2.0.3 picomatch: 4.0.3 std-env: 3.9.0 @@ -24833,12 +24709,12 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vite-node: 3.2.4(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite-node: 3.2.4(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 22.18.4 + '@types/node': 22.18.5 happy-dom: 18.0.1 jsdom: 26.1.0(canvas@2.11.2(encoding@0.1.13)) transitivePeerDependencies: @@ -24855,20 +24731,20 @@ snapshots: - tsx - yaml - vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.4)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.5)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 '@vitest/spy': 3.2.4 '@vitest/utils': 3.2.4 chai: 5.2.0 - debug: 4.4.1 + debug: 4.4.3 expect-type: 1.2.1 - magic-string: 0.30.17 + magic-string: 0.30.19 pathe: 2.0.3 picomatch: 4.0.3 std-env: 3.9.0 @@ -24877,12 +24753,12 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.5(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vite-node: 3.2.4(@types/node@22.18.4)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite-node: 3.2.4(@types/node@22.18.5)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 22.18.4 + '@types/node': 22.18.5 happy-dom: 18.0.1 jsdom: 26.1.0(canvas@2.11.2) transitivePeerDependencies: @@ -24899,20 +24775,20 @@ snapshots: - tsx - yaml - vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.5.1)(happy-dom@18.0.1)(jiti@2.5.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 '@vitest/spy': 3.2.4 '@vitest/utils': 3.2.4 chai: 5.2.0 - debug: 4.4.1 + debug: 4.4.3 expect-type: 1.2.1 - magic-string: 0.30.17 + magic-string: 0.30.19 pathe: 2.0.3 picomatch: 4.0.3 std-env: 3.9.0 @@ -24921,12 +24797,12 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.5(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) - vite-node: 3.2.4(@types/node@24.3.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite: 7.1.5(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) + vite-node: 3.2.4(@types/node@24.5.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 24.3.0 + '@types/node': 24.5.1 happy-dom: 18.0.1 jsdom: 26.1.0(canvas@2.11.2) transitivePeerDependencies: @@ -25098,7 +24974,7 @@ snapshots: - esbuild - uglify-js - webpack@5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17)): + webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17)): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.8 @@ -25122,7 +24998,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.2 tapable: 2.2.2 - terser-webpack-plugin: 5.3.14(@swc/core@1.13.3(@swc/helpers@0.5.17))(webpack@5.100.2(@swc/core@1.13.3(@swc/helpers@0.5.17))) + terser-webpack-plugin: 5.3.14(@swc/core@1.13.5(@swc/helpers@0.5.17))(webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17))) watchpack: 2.4.4 webpack-sources: 3.3.3 transitivePeerDependencies: @@ -25229,9 +25105,9 @@ snapshots: wrap-ansi@8.1.0: dependencies: - ansi-styles: 6.2.1 + ansi-styles: 6.2.3 string-width: 5.1.2 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 wrappy@1.0.2: {} @@ -25318,7 +25194,7 @@ snapshots: yoctocolors-cjs@2.1.2: {} - yoctocolors@2.1.1: {} + yoctocolors@2.1.2: {} zimmerframe@1.1.2: {} diff --git a/server/package.json b/server/package.json index ac3b0f3c1f..b090a4ddea 100644 --- a/server/package.json +++ b/server/package.json @@ -44,14 +44,14 @@ "@nestjs/websockets": "^11.0.4", "@opentelemetry/api": "^1.9.0", "@opentelemetry/context-async-hooks": "^2.0.0", - "@opentelemetry/exporter-prometheus": "^0.203.0", - "@opentelemetry/instrumentation-http": "^0.203.0", - "@opentelemetry/instrumentation-ioredis": "^0.51.0", - "@opentelemetry/instrumentation-nestjs-core": "^0.49.0", - "@opentelemetry/instrumentation-pg": "^0.56.0", + "@opentelemetry/exporter-prometheus": "^0.205.0", + "@opentelemetry/instrumentation-http": "^0.205.0", + "@opentelemetry/instrumentation-ioredis": "^0.53.0", + "@opentelemetry/instrumentation-nestjs-core": "^0.51.0", + "@opentelemetry/instrumentation-pg": "^0.58.0", "@opentelemetry/resources": "^2.0.1", "@opentelemetry/sdk-metrics": "^2.0.1", - "@opentelemetry/sdk-node": "^0.203.0", + "@opentelemetry/sdk-node": "^0.205.0", "@opentelemetry/semantic-conventions": "^1.34.0", "@react-email/components": "^0.5.0", "@react-email/render": "^1.1.2", diff --git a/web/eslint.config.js b/web/eslint.config.js index 54337ea78f..d2ef7631e7 100644 --- a/web/eslint.config.js +++ b/web/eslint.config.js @@ -127,6 +127,7 @@ export default typescriptEslint.config( '@typescript-eslint/no-misused-promises': 'error', '@typescript-eslint/require-await': 'error', 'object-shorthand': ['error', 'always'], + 'svelte/no-navigation-without-resolve': 'off', }, }, { diff --git a/web/package.json b/web/package.json index 6ce2640966..a82d6165f2 100644 --- a/web/package.json +++ b/web/package.json @@ -55,7 +55,7 @@ "qrcode": "^1.5.4", "simple-icons": "^15.15.0", "socket.io-client": "~4.8.0", - "svelte-gestures": "^5.1.3", + "svelte-gestures": "5.1.4", "svelte-i18n": "^4.0.1", "svelte-maplibre": "^1.2.0", "svelte-persisted-store": "^0.12.0", @@ -70,7 +70,7 @@ "@sveltejs/adapter-static": "^3.0.8", "@sveltejs/enhanced-img": "^0.8.0", "@sveltejs/kit": "^2.27.1", - "@sveltejs/vite-plugin-svelte": "6.1.2", + "@sveltejs/vite-plugin-svelte": "6.2.0", "@tailwindcss/vite": "^4.1.7", "@testing-library/jest-dom": "^6.4.2", "@testing-library/svelte": "^5.2.8", @@ -85,7 +85,7 @@ "dotenv": "^17.0.0", "eslint": "^9.18.0", "eslint-config-prettier": "^10.1.8", - "eslint-p": "^0.25.0", + "eslint-p": "^0.26.0", "eslint-plugin-compat": "^6.0.2", "eslint-plugin-svelte": "^3.9.0", "eslint-plugin-unicorn": "^60.0.0", @@ -97,7 +97,7 @@ "prettier-plugin-sort-json": "^4.1.1", "prettier-plugin-svelte": "^3.3.3", "rollup-plugin-visualizer": "^6.0.0", - "svelte": "5.35.5", + "svelte": "5.38.10", "svelte-check": "^4.1.5", "svelte-eslint-parser": "^1.2.0", "tailwindcss": "^4.1.7", diff --git a/web/src/lib/components/admin-settings/StorageTemplateSettings.svelte b/web/src/lib/components/admin-settings/StorageTemplateSettings.svelte index 854cf3fdd4..b7d5a3cc0b 100644 --- a/web/src/lib/components/admin-settings/StorageTemplateSettings.svelte +++ b/web/src/lib/components/admin-settings/StorageTemplateSettings.svelte @@ -1,4 +1,5 @@ - ({ touchAction: 'pan-x' })} onswipedown={showControlBar} /> +{/* @ts-expect-error https://github.com/Rezi/svelte-gestures/issues/38#issuecomment-3315953573 */ null} + {#if showControls}
({})} - onswipe={onSwipe} + {...useSwipe(onSwipe)} oncanplay={(e) => handleCanPlay(e.currentTarget)} onended={onVideoEnded} onvolumechange={(e) => ($videoViewerMuted = e.currentTarget.muted)} From cee6bcc5efadae7d45ec4c7d8ac21662f3ee4809 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 22 Sep 2025 02:33:20 +0000 Subject: [PATCH 18/60] chore: version v1.143.0 --- cli/package.json | 2 +- docs/static/archived-versions.json | 4 ++++ e2e/package.json | 2 +- mobile/android/fastlane/Fastfile | 4 ++-- mobile/ios/fastlane/Fastfile | 2 +- mobile/openapi/README.md | 2 +- mobile/pubspec.yaml | 2 +- open-api/immich-openapi-specs.json | 2 +- open-api/typescript-sdk/package.json | 2 +- open-api/typescript-sdk/src/fetch-client.ts | 2 +- server/package.json | 2 +- web/package.json | 2 +- 12 files changed, 16 insertions(+), 12 deletions(-) diff --git a/cli/package.json b/cli/package.json index 5b9b2d810c..93fcd040c9 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@immich/cli", - "version": "2.2.90", + "version": "2.2.91", "description": "Command Line Interface (CLI) for Immich", "type": "module", "exports": "./dist/index.js", diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index 8edce0be2d..2ff41c5e9e 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -1,4 +1,8 @@ [ + { + "label": "v1.143.0", + "url": "https://v1.143.0.archive.immich.app" + }, { "label": "v1.142.1", "url": "https://v1.142.1.archive.immich.app" diff --git a/e2e/package.json b/e2e/package.json index 737f488a50..2078774d01 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -1,6 +1,6 @@ { "name": "immich-e2e", - "version": "1.142.1", + "version": "1.143.0", "description": "", "main": "index.js", "type": "module", diff --git a/mobile/android/fastlane/Fastfile b/mobile/android/fastlane/Fastfile index 011658d09a..ea034664d7 100644 --- a/mobile/android/fastlane/Fastfile +++ b/mobile/android/fastlane/Fastfile @@ -35,8 +35,8 @@ platform :android do task: 'bundle', build_type: 'Release', properties: { - "android.injected.version.code" => 3015, - "android.injected.version.name" => "1.142.1", + "android.injected.version.code" => 3016, + "android.injected.version.name" => "1.143.0", } ) upload_to_play_store(skip_upload_apk: true, skip_upload_images: true, skip_upload_screenshots: true, aab: '../build/app/outputs/bundle/release/app-release.aab') diff --git a/mobile/ios/fastlane/Fastfile b/mobile/ios/fastlane/Fastfile index 3f0edf6ae4..b1071cc988 100644 --- a/mobile/ios/fastlane/Fastfile +++ b/mobile/ios/fastlane/Fastfile @@ -22,7 +22,7 @@ platform :ios do path: "./Runner.xcodeproj", ) increment_version_number( - version_number: "1.142.1" + version_number: "1.143.0" ) increment_build_number( build_number: latest_testflight_build_number + 1, diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index 7a426b74fc..c33828172c 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -3,7 +3,7 @@ Immich API This Dart package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 1.142.1 +- API version: 1.143.0 - Generator version: 7.8.0 - Build package: org.openapitools.codegen.languages.DartClientCodegen diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index 91f937125f..9f5ca01fc1 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -2,7 +2,7 @@ name: immich_mobile description: Immich - selfhosted backup media file on mobile phone publish_to: 'none' -version: 1.142.1+3015 +version: 1.143.0+3016 environment: sdk: '>=3.8.0 <4.0.0' diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index d3fe155a80..ab97adf646 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -9858,7 +9858,7 @@ "info": { "title": "Immich", "description": "Immich API", - "version": "1.142.1", + "version": "1.143.0", "contact": {} }, "tags": [], diff --git a/open-api/typescript-sdk/package.json b/open-api/typescript-sdk/package.json index 8f0d44dcbb..b988973763 100644 --- a/open-api/typescript-sdk/package.json +++ b/open-api/typescript-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@immich/sdk", - "version": "1.142.1", + "version": "1.143.0", "description": "Auto-generated TypeScript SDK for the Immich API", "type": "module", "main": "./build/index.js", diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index a8b1b0f596..be38e8581f 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1,6 +1,6 @@ /** * Immich - * 1.142.1 + * 1.143.0 * DO NOT MODIFY - This file has been generated using oazapfts. * See https://www.npmjs.com/package/oazapfts */ diff --git a/server/package.json b/server/package.json index b090a4ddea..fd5a7e1376 100644 --- a/server/package.json +++ b/server/package.json @@ -1,6 +1,6 @@ { "name": "immich", - "version": "1.142.1", + "version": "1.143.0", "description": "", "author": "", "private": true, diff --git a/web/package.json b/web/package.json index 7e7fd376d2..2cf47d1b7d 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "immich-web", - "version": "1.142.1", + "version": "1.143.0", "license": "GNU Affero General Public License version 3", "type": "module", "scripts": { From ba0cfb76ede1fec016ad29a8b66699a191aa5cef Mon Sep 17 00:00:00 2001 From: "Weblate (bot)" Date: Mon, 22 Sep 2025 04:41:25 +0200 Subject: [PATCH 19/60] chore(web): update translations (#22022) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Translate-URL: https://hosted.weblate.org/projects/immich/immich/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/af/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/bg/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/cs/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/da/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/gl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/he/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/hu/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ja/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lt/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/mk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nb_NO/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nn/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ro/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ta/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/tr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_SIMPLIFIED/ Translation: Immich/immich Co-authored-by: Cristi Bklash Co-authored-by: D S Co-authored-by: DevServs Co-authored-by: Dino Janevski Co-authored-by: Dmitry Banny Co-authored-by: Erik Leijen Co-authored-by: Fjuro Co-authored-by: Florian Ostertag Co-authored-by: Giulio Librando Co-authored-by: Gustavo de León Co-authored-by: Heinrich Gerber Co-authored-by: Indrek Haav Co-authored-by: Ivan Dimitrov Co-authored-by: Jenny Koppers Co-authored-by: Jozef Gaal Co-authored-by: Kiril Pan Co-authored-by: Leo Bottaro Co-authored-by: Luca-Bogdan Grigorescu Co-authored-by: Maj Mohar Co-authored-by: Marcelo Popper Costa Co-authored-by: Marcos Castro Co-authored-by: Matjaž T Co-authored-by: Mārtiņš Bruņenieks Co-authored-by: Pazystamas Co-authored-by: Prasanth Baskar Co-authored-by: Python Germany Co-authored-by: Richard <906747215@qq.com> Co-authored-by: Runskrift Co-authored-by: Steffen Strunge Mathiesen Co-authored-by: Sylvain Pichon Co-authored-by: TV Box Co-authored-by: Theodor Onarheim Co-authored-by: User 123456789 Co-authored-by: Vegard Fladby Co-authored-by: Yaros Co-authored-by: Yuki Ejima Co-authored-by: kgerg Co-authored-by: oliva Co-authored-by: pyccl Co-authored-by: swever Co-authored-by: waclaw66 Co-authored-by: Максим Горпиніч Co-authored-by: தமிழ்நேரம் --- i18n/af.json | 38 +- i18n/ar.json | 2 - i18n/bg.json | 40 +- i18n/ca.json | 8 +- i18n/cs.json | 42 +- i18n/da.json | 4 +- i18n/de.json | 40 +- i18n/el.json | 2 - i18n/es.json | 40 +- i18n/et.json | 43 +- i18n/fi.json | 2 - i18n/fr.json | 40 +- i18n/gl.json | 33 +- i18n/he.json | 34 +- i18n/hi.json | 2 - i18n/hr.json | 2 - i18n/hu.json | 39 +- i18n/id.json | 2 - i18n/it.json | 28 +- i18n/ja.json | 10 +- i18n/ko.json | 2 - i18n/lt.json | 254 +++++++++++- i18n/lv.json | 10 +- i18n/mk.json | 7 +- i18n/mr.json | 2 - i18n/ms.json | 2 - i18n/nb_NO.json | 38 +- i18n/nl.json | 22 +- i18n/nn.json | 20 + i18n/pl.json | 42 +- i18n/pt.json | 2 - i18n/pt_BR.json | 30 +- i18n/ro.json | 13 +- i18n/ru.json | 156 +++++--- i18n/sk.json | 38 +- i18n/sl.json | 110 ++++-- i18n/sv.json | 4 +- i18n/ta.json | 847 +++++++++++++++++++++++++++++++++++++--- i18n/tr.json | 96 +++-- i18n/uk.json | 38 +- i18n/vi.json | 2 - i18n/zh_Hant.json | 2 - i18n/zh_SIMPLIFIED.json | 40 +- 43 files changed, 1920 insertions(+), 308 deletions(-) diff --git a/i18n/af.json b/i18n/af.json index b3729903ec..fce944504b 100644 --- a/i18n/af.json +++ b/i18n/af.json @@ -14,6 +14,7 @@ "add_a_location": "Voeg 'n ligging by", "add_a_name": "Voeg 'n naam by", "add_a_title": "Voeg 'n titel by", + "add_birthday": "Voeg 'n verjaarsdag by", "add_endpoint": "Voeg Koppelvlakpunt by", "add_exclusion_pattern": "Voeg uitsgluitingspatrone by", "add_import_path": "Voeg invoerpad by", @@ -27,6 +28,8 @@ "add_to_album": "Voeg na album", "add_to_album_bottom_sheet_added": "By {album} bygevoeg", "add_to_album_bottom_sheet_already_exists": "Reeds in {album}", + "add_to_albums": "Voeg by albums", + "add_to_albums_count": "Voeg by ({count}) albums", "add_to_shared_album": "Voeg toe aan gedeelde album", "add_url": "Voeg URL by", "added_to_archive": "By argief toegevoegd", @@ -44,6 +47,11 @@ "backup_database": "Skep Datastortlêer", "backup_database_enable_description": "Aktiveer databasisrugsteun", "backup_keep_last_amount": "Aantal vorige rugsteune om te hou", + "backup_onboarding_3_description": "totale kopieë van jou data, insluitende die oorspronklikke lêers. Dit sluit in 1 kopie op 'n ander perseel en 2 kopieë om die huidige rekenaar.", + "backup_onboarding_description": "'N 3-2-1 rugsteun strategie word sterk aanbeveel om jou data veilig te hou. Hou kopieë van jou fotos/videos so wel as die Immich databasis vir 'n volledige rugsteun oplossing.", + "backup_onboarding_footer": "Vir meer inligting oor hoe om 'n rugsteun kopie van Immich te maak, gaan lees asseblief hierdie dokument.", + "backup_onboarding_parts_title": "'N 3-2-1 rugsteun sluit in:", + "backup_onboarding_title": "Rugsteun kopieë", "backup_settings": "Rugsteun instellings", "backup_settings_description": "Bestuur databasis rugsteun instellings.", "cleared_jobs": "Poste gevee vir: {job}", @@ -62,8 +70,8 @@ "duplicate_detection_job_description": "Begin masjienleer op bates om soortgelyke beelde op te spoor. Maak staat op Smart Search", "exclusion_pattern_description": "Met uitsluitingspatrone kan jy lêers en vouers ignoreer wanneer jy jou biblioteek skandeer. Dit is nuttig as jy vouers het wat lêers bevat wat jy nie wil invoer nie, soos RAW-lêers.", "external_library_management": "Eksterne Biblioteekbestuur", - "face_detection": "Gesig deteksie", - "face_detection_description": "Detecteer die gesigte in media deur middel van masjienleer. Vir videos word slegs die duimnaelskets oorweeg. “Herlaai” (ver)werk al die media weer. “Stel terug” verwyder boonop alle huidige gesigdata. “Onverwerk” plaas bates in die tou wat nog nie verwerk is nie. Gedekte gesigte sal ná voltooiing van Gesigdetectie vir Gesigherkenning in die tou geplaas word, om hulle in bestaande of nuwe persone te groepeer.", + "face_detection": "Gesig herkenning", + "face_detection_description": "Identifiseer die gesigte in media deur middel van masjienleer. Vir videos word slegs die duimnaelskets oorweeg. “Herlaai” (ver)werk al die media weer. “Stel terug” verwyder alle huidige gesigdata. “Onverwerk” plaas bates in die tou wat nog nie verwerk is nie. Geidentifiseerde gesigte sal ná voltooiing van Gesigidentifikasie vir Gesigherkenning in die tou geplaas word, om hulle in bestaande of nuwe persone te groepeer.", "facial_recognition_job_description": "Groepeer gesigte in mense in. Die stap is vinniger nadat Gesig Deteksie klaar is. \"Herstel\" (her-)groepeer alle gesigte. \"Vermiste\" plaas gesigte in ry wat nie 'n persoon gekoppel het nie.", "failed_job_command": "Opdrag {command} het misluk vir werk: {job}", "force_delete_user_warning": "WAARSKUWING: Dit sal onmiddellik die gebruiker en alle bates verwyder. Dit kan nie ontdoen word nie en die lêers kan nie herstel word nie.", @@ -93,15 +101,33 @@ "job_status": "Werkstatus", "library_created": "Biblioteek geskep: {library}", "library_deleted": "Biblioteek verwyder", - "library_import_path_description": "Spesifiseer 'n leer om in te neem. Hierdie leer, en al die sub leers, gaan geskandeer for vir prente en videos.", - "library_scanning": "Periodieke Skandering", - "library_scanning_description": "Stel periodieke skandering van biblioteek in", + "library_import_path_description": "Spesifiseer 'n leer om in te neem. Hierdie leer, en al die sub leers, gaan deursoek word vir prente en videos.", + "library_scanning": "Periodieke Soek", + "library_scanning_description": "Stel periodieke deursoek van biblioteek in", "library_scanning_enable_description": "Aktiveer periodieke biblioteekskandering", "library_settings": "Eksterne Biblioteek", + "library_settings_description": "Eksterne biblioteek verstellings", + "library_tasks_description": "Deursoek eksterne biblioteke vir nuwe of veranderde bates", + "library_watching_enable_description": "Hou eksterne biblioteke dop vir leer veranderinge", + "library_watching_settings": "Biblioteek dop hou (EKSPERIMENTEEL)", + "library_watching_settings_description": "Hou automaties dop vir veranderinge", + "logging_enable_description": "Aktifeer \"logging\"", + "logging_level_description": "Wanneer aktief, watter vlak van \"logs\" om te skep.", + "logging_settings": "\"Logs\"", + "machine_learning_clip_model": "CLIP model", + "machine_learning_duplicate_detection": "Duplikaat herkenning", + "machine_learning_duplicate_detection_enabled": "Aktifeer duplikaat herkenning", + "machine_learning_enabled": "Aktifeer masjienleer", + "machine_learning_facial_recognition": "Gesigsherkenning", + "machine_learning_facial_recognition_description": "Herken, identifiseer en groepeer gesigte in fotos", + "machine_learning_facial_recognition_model": "Gesigsherkennings model", + "machine_learning_facial_recognition_setting": "Aktifeer gesigsherkenning", + "machine_learning_max_detection_distance": "Maksimum herkennings afstand", "map_settings": "Kaart", "migration_job": "Migrasie", "oauth_settings": "OAuth", - "transcoding_acceleration_vaapi": "VAAPI" + "transcoding_acceleration_vaapi": "VAAPI", + "transcoding_preferred_hardware_device": "Verkiesde hardeware" }, "administration": "Administrasie", "advanced": "Gevorderde", diff --git a/i18n/ar.json b/i18n/ar.json index 8a436deba5..ec3745546f 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -387,8 +387,6 @@ "admin_password": "كلمة سر المشرف", "administration": "الإدارة", "advanced": "متقدم", - "advanced_settings_beta_timeline_subtitle": "جرب تجربة التطبيق الجديدة", - "advanced_settings_beta_timeline_title": "الجدول الزمني التجريبي", "advanced_settings_enable_alternate_media_filter_subtitle": "استخدم هذا الخيار لتصفية الوسائط اثناء المزامنه بناء على معايير بديلة. جرب هذا الخيار فقط كان لديك مشاكل مع التطبيق بالكشف عن جميع الالبومات.", "advanced_settings_enable_alternate_media_filter_title": "[تجريبي] استخدم جهاز تصفية مزامنه البومات بديل", "advanced_settings_log_level_title": "مستوى السجل: {level}", diff --git a/i18n/bg.json b/i18n/bg.json index 8d9727e492..9debd3b10f 100644 --- a/i18n/bg.json +++ b/i18n/bg.json @@ -387,8 +387,6 @@ "admin_password": "Администраторска парола", "administration": "Администрация", "advanced": "Разширено", - "advanced_settings_beta_timeline_subtitle": "Опитайте новите функции на приложението", - "advanced_settings_beta_timeline_title": "Бета версия на времевата линия", "advanced_settings_enable_alternate_media_filter_subtitle": "При синхронизация, използвайте тази опция като филтър, основан на промяна на даден критерии. Опитайте само в случай, че приложението има проблем с откриване на всички албуми.", "advanced_settings_enable_alternate_media_filter_title": "[ЕКСПЕРИМЕНТАЛНО] Използвай филтъра на алтернативното устройство за синхронизация на албуми", "advanced_settings_log_level_title": "Ниво на запис в дневника: {level}", @@ -404,7 +402,7 @@ "advanced_settings_sync_remote_deletions_title": "Синхронизация на дистанционни изтривания [ЕКСПЕРИМЕНТАЛНО]", "advanced_settings_tile_subtitle": "Разширени потребителски настройки", "advanced_settings_troubleshooting_subtitle": "Разреши допълнителни възможности за отстраняване на проблеми", - "advanced_settings_troubleshooting_title": "Отстраняване на проблеми", + "advanced_settings_troubleshooting_title": "Отстраняванe на проблеми", "age_months": "Възраст {months, plural, one {# месец} other {# месеци}}", "age_year_months": "Възраст 1 година, {months, plural, one {# месец} other {# месеци}}", "age_years": "{years, plural, other {Година #}}", @@ -425,6 +423,7 @@ "album_remove_user_confirmation": "Сигурни ли сте, че искате да премахнете {user}?", "album_search_not_found": "Няма намерени албуми, отговарящи на търсенето ви", "album_share_no_users": "Изглежда, че сте споделили този албум с всички потребители или нямате друг потребител, с когото да го споделите.", + "album_summary": "Обобщение на албума", "album_updated": "Албумът е актуализиран", "album_updated_setting_description": "Получавайте известие по имейл, когато споделен албум има нови файлове", "album_user_left": "Напусна {album}", @@ -496,6 +495,8 @@ "asset_restored_successfully": "Успешно възстановен обект", "asset_skipped": "Пропуснато", "asset_skipped_in_trash": "В кошчето", + "asset_trashed": "Обектът е изхвърлен", + "asset_troubleshoot": "Поправка на грешки с обекта", "asset_uploaded": "Качено", "asset_uploading": "Качване…", "asset_viewer_settings_subtitle": "Управление на настройките за изглед", @@ -529,8 +530,10 @@ "autoplay_slideshow": "Автоматична смяна на слайдовете", "back": "Назад", "back_close_deselect": "Назад, затваряне или премахване на избора", + "background_backup_running_error": "Стартирано е фоново архивиране, не може да се пусне ръчно архивиране", "background_location_permission": "Разрешение за достъп до местоположението във фонов режим", "background_location_permission_content": "За да може да чете имената на Wi-Fi мрежите и да ги превключва при работа във фонов режим, Immich трябва *винаги* да има достъп до точното местоположение", + "background_options": "Опции за фоновите задачи", "backup": "Архивиране", "backup_album_selection_page_albums_device": "Албуми на устройството ({count})", "backup_album_selection_page_albums_tap": "Натисни за да включиш, двойно за да изключиш", @@ -538,6 +541,7 @@ "backup_album_selection_page_select_albums": "Избор на албуми", "backup_album_selection_page_selection_info": "Информация за избраното", "backup_album_selection_page_total_assets": "Уникални обекти общо", + "backup_albums_sync": "Синхронизиране на архивите", "backup_all": "Всичко", "backup_background_service_backup_failed_message": "Неуспешно архивиране. Нов опит…", "backup_background_service_connection_failed_message": "Неуспешно свързване към сървъра. Нов опит…", @@ -587,7 +591,7 @@ "backup_controller_page_turn_on": "Включи архивиране в активен режим", "backup_controller_page_uploading_file_info": "Инфо за архивирания файл", "backup_err_only_album": "Не може да се премахне единствения албум", - "backup_info_card_assets": "обекти", + "backup_info_card_assets": "обекта", "backup_manual_cancelled": "Отменено", "backup_manual_in_progress": "Върви архивиране. Опитай след малко", "backup_manual_success": "Успешно", @@ -654,6 +658,8 @@ "change_pin_code": "Смени PIN кода", "change_your_password": "Променете паролата си", "changed_visibility_successfully": "Видимостта е променена успешно", + "charging": "При зареждане", + "charging_requirement_mobile_backup": "Фоново архивиране само при зареждане на устройството", "check_corrupt_asset_backup": "Провери за повредени архивни копия", "check_corrupt_asset_backup_button": "Провери", "check_corrupt_asset_backup_description": "Изпълни тази проверка само при Wi-Fi и след архивиране на всички обекти. Процедурата може да продължи няколко минути.", @@ -740,6 +746,7 @@ "create_user": "Създай потребител", "created": "Създадено", "created_at": "Създаден", + "creating_linked_albums": "Създаване на свързани албуми...", "crop": "Изрежи", "curated_object_page_title": "Неща", "current_device": "Текущо устройство", @@ -889,7 +896,9 @@ "error": "Грешка", "error_change_sort_album": "Неуспешна промяна на реда на сортиране на албум", "error_delete_face": "Грешка при изтриване на лице от актива", + "error_getting_places": "Грешка при събиране на местата", "error_loading_image": "Грешка при зареждане на изображението", + "error_loading_partners": "Грешка при зареждане на партньори: {error}", "error_saving_image": "Грешка: {error}", "error_tag_face_bounding_box": "Грешка при отбелязване на лице - неуспешно получаване на координати на рамката", "error_title": "Грешка - нещо се обърка", @@ -1054,6 +1063,7 @@ "favorites_page_no_favorites": "Не са намерени любими обекти", "feature_photo_updated": "Представителната снимка е променена", "features": "Функции", + "features_in_development": "Функции в процес на разработка", "features_setting_description": "Управление на функциите на приложението", "file_name": "Име на файла", "file_name_or_extension": "Име на файл или разширение", @@ -1218,6 +1228,7 @@ "local": "Локално", "local_asset_cast_failed": "Не може да се предава обект, който още не е качен на сървъра", "local_assets": "Локални обекти", + "local_media_summary": "Обобщение на локалните медийни файлове", "local_network": "Локална мрежа", "local_network_sheet_info": "Приложението ще се свърже със сървъра на този URL, когато устройството е свързано към зададената Wi-Fi мрежа", "location_permission": "Разрешение за местоположение", @@ -1229,6 +1240,7 @@ "location_picker_longitude_hint": "Въведете географска дължина тук", "lock": "Заключи", "locked_folder": "Заключена папка", + "log_detail_title": "Подробности от дневника", "log_out": "Излизане", "log_out_all_devices": "Излизане с всички устройства", "logged_in_as": "Вписан като {user}", @@ -1259,6 +1271,7 @@ "login_password_changed_success": "Успешно обновена парола", "logout_all_device_confirmation": "Сигурни ли сте, че искате да излезете от всички устройства?", "logout_this_device_confirmation": "Сигурни ли сте, че искате да излезете от това устройство?", + "logs": "Дневник", "longitude": "Дължина", "look": "Изглед", "loop_videos": "Повтаряне на видеата", @@ -1301,6 +1314,7 @@ "mark_as_read": "Маркирай като четено", "marked_all_as_read": "Всички маркирани като прочетени", "matches": "Съвпадения", + "matching_assets": "Съвпадащи обекти", "media_type": "Вид медия", "memories": "Спомени", "memories_all_caught_up": "Това е всичко за днес", @@ -1341,6 +1355,7 @@ "name_or_nickname": "Име или прякор", "network_requirement_photos_upload": "Използвай мобилни данни за архивиране на снимки", "network_requirement_videos_upload": "Използвай мобилни данни за архивиране на видео", + "network_requirements": "Изисквания към мрежата", "network_requirements_updated": "Мрежовите настройки са променени, нулиране на опашката за архивиране", "networking_settings": "Мрежа", "networking_subtitle": "Управление на настройките за връзка със сървъра", @@ -1351,6 +1366,7 @@ "new_person": "Нов човек", "new_pin_code": "Нов PIN код", "new_pin_code_subtitle": "Това е първи достъп до заключена папка. Създайте PIN код за защитен достъп до тази страница", + "new_timeline": "Нова времева линия", "new_user_created": "Създаден нов потребител", "new_version_available": "НАЛИЧНА НОВА ВЕРСИЯ", "newest_first": "Най-новите първи", @@ -1364,20 +1380,25 @@ "no_assets_message": "КЛИКНЕТЕ, ЗА ДА КАЧИТЕ ПЪРВАТА СИ СНИМКА", "no_assets_to_show": "Няма обекти за показване", "no_cast_devices_found": "Няма намерени устройства за предаване", + "no_checksum_local": "Липсват контролни суми - не може да се получат локални обекти", + "no_checksum_remote": "Липсват контролни суми - не може да се получат обекти от сървъра", "no_duplicates_found": "Не бяха открити дубликати.", "no_exif_info_available": "Няма exif информация", "no_explore_results_message": "Качете още снимки, за да разгледате колекцията си.", "no_favorites_message": "Добавете в любими, за да намирате бързо най-добрите си снимки и видеоклипове", "no_libraries_message": "Създайте външна библиотека за да разглеждате снимки и видеоклипове", + "no_local_assets_found": "Не е намерен локален обект с такава контролна сума", "no_locked_photos_message": "Снимките и видеата в заключената папка са скрити и не се показват при разглеждане на библиотеката.", "no_name": "Без име", "no_notifications": "Няма известия", "no_people_found": "Не са намерени съответстващи хора", "no_places": "Няма места", + "no_remote_assets_found": "Не е намерен обект на сървъра с такава контролна сума", "no_results": "Няма резултати", "no_results_description": "Опитайте със синоним или по-обща ключова дума", "no_shared_albums_message": "Създайте албум, за да споделяте снимки и видеоклипове с хората в мрежата си", "no_uploads_in_progress": "Няма качване в момента", + "not_available": "Неналично", "not_in_any_album": "Не е в никой албум", "not_selected": "Не е избрано", "note_apply_storage_label_to_previously_uploaded assets": "Забележка: За да приложите етикета за съхранение към предварително качени активи, стартирайте", @@ -1515,7 +1536,7 @@ "profile_drawer_client_out_of_date_minor": "Мобилното приложение е остаряло. Моля, актуализирай до най-новата версия.", "profile_drawer_client_server_up_to_date": "Клиента и сървъра са обновени", "profile_drawer_github": "GitHub", - "profile_drawer_readonly_mode": "Режима само за четене е активиран. С двоен клик върху картиката-аватар на потребителя ще деактивирате само за четене.", + "profile_drawer_readonly_mode": "Режима само за четене е активиран. С дълго натискане върху картиката-аватар на потребителя ще деактивирате само за четене.", "profile_drawer_server_out_of_date_major": "Версията на сървъра е остаряла. Моля, актуализирай поне до последната главна версия.", "profile_drawer_server_out_of_date_minor": "Версията на сървъра е остаряла. Моля, актуализирай до последната версия.", "profile_image_of_user": "Профилна снимка на {user}", @@ -1588,6 +1609,7 @@ "regenerating_thumbnails": "Пресъздаване на миниатюрите", "remote": "На сървъра", "remote_assets": "Обекти на сървъра", + "remote_media_summary": "Обобщение на медийните файлове на сървъра", "remove": "Премахни", "remove_assets_album_confirmation": "Сигурни ли сте, че искате да премахнете {count, plural, one {# елемент} other {# елемента}} от албума?", "remove_assets_shared_link_confirmation": "Сигурни ли сте, че искате да премахнете {count, plural, one {# елемент} other {# елемента}} от този споеделен линк?", @@ -1640,6 +1662,7 @@ "restore_user": "Възстанови потребител", "restored_asset": "Възстановен елемент", "resume": "Продължаване", + "resume_paused_jobs": "Продължи изпълнението на {count, plural, one {# задача} other {# задачи}}", "retry_upload": "Опитай качването отново", "review_duplicates": "Разгледай дубликатите", "review_large_files": "Преглед на големи файлове", @@ -1862,6 +1885,7 @@ "show_slideshow_transition": "Покажи прехода на слайдшоуто", "show_supporter_badge": "Значка поддръжник", "show_supporter_badge_description": "Покажи значка поддръжник", + "show_text_search_menu": "Покажи менюто за търсене на текст", "shuffle": "Разбъркване", "sidebar": "Странична лента", "sidebar_display_description": "Показване на връзка към изгледа в страничната лента", @@ -1916,6 +1940,8 @@ "sync_albums_manual_subtitle": "Синхронизирай всички заредени видеа и снимки в избраните архивни албуми", "sync_local": "Локална синхронизация", "sync_remote": "Синхронизация със сървъра", + "sync_status": "Състояние на синхронизацията", + "sync_status_subtitle": "Преглед и управление на системата за синхронизация", "sync_upload_album_setting_subtitle": "Създавайте и зареждайте снимки и видеа в избрани албуми в Immich", "tag": "Таг", "tag_assets": "Тагни елементи", @@ -1975,6 +2001,7 @@ "trash_page_select_assets_btn": "Избери обекти", "trash_page_title": "В коша ({count})", "trashed_items_will_be_permanently_deleted_after": "Изхвърлените в кошчето елементи ще бъдат изтрити за постоянно след {days, plural, one {# ден} other {# дни}}.", + "troubleshoot": "Отстраняване на проблеми", "type": "Тип", "unable_to_change_pin_code": "Невъзможна промяна на PIN кода", "unable_to_setup_pin_code": "Неуспешно задаване на PIN кода", @@ -2091,5 +2118,6 @@ "yes": "Да", "you_dont_have_any_shared_links": "Нямате споделени връзки", "your_wifi_name": "Вашата Wi-Fi мрежа", - "zoom_image": "Увеличаване на изображението" + "zoom_image": "Увеличаване на изображението", + "zoom_to_bounds": "Приближи до събиране в границите" } diff --git a/i18n/ca.json b/i18n/ca.json index 4d532e0476..cdedff97ea 100644 --- a/i18n/ca.json +++ b/i18n/ca.json @@ -387,8 +387,6 @@ "admin_password": "Contrasenya de l'administrador", "administration": "Administració", "advanced": "Avançat", - "advanced_settings_beta_timeline_subtitle": "Prova la nova experiència de l'aplicació", - "advanced_settings_beta_timeline_title": "Cronologia beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Feu servir aquesta opció per filtrar els continguts multimèdia durant la sincronització segons criteris alternatius. Només proveu-ho si teniu problemes amb l'aplicació per detectar tots els àlbums.", "advanced_settings_enable_alternate_media_filter_title": "Utilitza el filtre de sincronització d'àlbums de dispositius alternatius", "advanced_settings_log_level_title": "Nivell de registre: {level}", @@ -425,6 +423,7 @@ "album_remove_user_confirmation": "Esteu segurs que voleu eliminar {user}?", "album_search_not_found": "No s'ha trobat cap àlbum que coincideixi amb la teva cerca", "album_share_no_users": "Sembla que has compartit aquest àlbum amb tots els usuaris o no tens cap usuari amb qui compartir-ho.", + "album_summary": "Resum de l'àlbum", "album_updated": "Àlbum actualitzat", "album_updated_setting_description": "Rep una notificació per correu electrònic quan un àlbum compartit tingui recursos nous", "album_user_left": "Surt de {album}", @@ -496,6 +495,7 @@ "asset_restored_successfully": "Element recuperat correctament", "asset_skipped": "Saltat", "asset_skipped_in_trash": "A la paperera", + "asset_trashed": "Recurs a la paperera", "asset_uploaded": "Carregat", "asset_uploading": "S'està carregant…", "asset_viewer_settings_subtitle": "Gestiona la configuració del visualitzador de la galeria", @@ -529,6 +529,7 @@ "autoplay_slideshow": "Reprodueix automàticament les diapositives", "back": "Enrere", "back_close_deselect": "Tornar, tancar o anul·lar la selecció", + "background_backup_running_error": "La còpia de seguretat en segon pla s'està executant actualment, no es pot iniciar la còpia de seguretat manual", "background_location_permission": "Permís d'ubicació en segon pla", "background_location_permission_content": "Per canviar de xarxa quan s'executa en segon pla, Immich ha de *sempre* tenir accés a la ubicació precisa perquè l'aplicació pugui llegir el nom de la xarxa Wi-Fi", "backup": "Còpia", @@ -740,6 +741,7 @@ "create_user": "Crea un usuari", "created": "Creat", "created_at": "Creat", + "creating_linked_albums": "Creant àlbums enllaçats...", "crop": "Retalla", "curated_object_page_title": "Coses", "current_device": "Dispositiu actual", @@ -889,6 +891,7 @@ "error": "Error", "error_change_sort_album": "No s'ha pogut canviar l'ordre d'ordenació dels àlbums", "error_delete_face": "Error esborrant cara de les cares reconegudes", + "error_getting_places": "S'ha produït un error en obtenir els llocs", "error_loading_image": "Error carregant la imatge", "error_saving_image": "Error: {error}", "error_tag_face_bounding_box": "Error a l'etiquetar la cara - no s'han pogut obtenir les coordenades de l'àrea", @@ -1054,6 +1057,7 @@ "favorites_page_no_favorites": "No s'han trobat preferits", "feature_photo_updated": "Foto destacada actualitzada", "features": "Característiques", + "features_in_development": "Funcions en desenvolupament", "features_setting_description": "Administrar les funcions de l'aplicació", "file_name": "Nom de l'arxiu", "file_name_or_extension": "Nom de l'arxiu o extensió", diff --git a/i18n/cs.json b/i18n/cs.json index e97d7f4211..4c42d2d3f1 100644 --- a/i18n/cs.json +++ b/i18n/cs.json @@ -123,6 +123,13 @@ "logging_enable_description": "Povolit protokolování", "logging_level_description": "Když je povoleno, jakou úroveň protokolu použít.", "logging_settings": "Protokolování", + "machine_learning_availability_checks": "Kontroly dostupnosti", + "machine_learning_availability_checks_description": "Automaticky zvolit a preferovat dostupné servery strojového učení", + "machine_learning_availability_checks_enabled": "Povolit kontroly dostupnosti", + "machine_learning_availability_checks_interval": "Interval kontrol", + "machine_learning_availability_checks_interval_description": "Interval v milisekundách mezi kontrolami dostupnosti", + "machine_learning_availability_checks_timeout": "Vypršení požadavku", + "machine_learning_availability_checks_timeout_description": "Časové vypršení požadavku v milisekundách u kontrol dostupnosti", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Název CLIP modelu je uvedený zde. Pamatujte, že při změně modelu je nutné znovu spustit úlohu 'Chytré vyhledávání' pro všechny obrázky.", "machine_learning_duplicate_detection": "Kontrola duplicit", @@ -387,8 +394,6 @@ "admin_password": "Heslo správce", "administration": "Administrace", "advanced": "Pokročilé", - "advanced_settings_beta_timeline_subtitle": "Vyzkoušejte nové prostředí aplikace", - "advanced_settings_beta_timeline_title": "Časová osa (beta)", "advanced_settings_enable_alternate_media_filter_subtitle": "Tuto možnost použijte k filtrování médií během synchronizace na základě alternativních kritérií. Tuto možnost vyzkoušejte pouze v případě, že máte problémy s detekcí všech alb v aplikaci.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTÁLNÍ] Použít alternativní filtr pro synchronizaci alb zařízení", "advanced_settings_log_level_title": "Úroveň protokolování: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Opravdu chcete odebrat uživatele {user}?", "album_search_not_found": "Nebyla nalezena žádná alba odpovídající vašemu hledání", "album_share_no_users": "Zřejmě jste toto album sdíleli se všemi uživateli, nebo nemáte žádného uživatele, se kterým byste ho mohli sdílet.", + "album_summary": "Souhrn alba", "album_updated": "Album aktualizováno", "album_updated_setting_description": "Dostávat e-mailová oznámení o nových položkách sdíleného alba", "album_user_left": "Opustil {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Položka úspěšně obnovena", "asset_skipped": "Přeskočeno", "asset_skipped_in_trash": "V koši", + "asset_trashed": "Položka vyhozena", + "asset_troubleshoot": "Řešení problémů s položkami", "asset_uploaded": "Nahráno", "asset_uploading": "Nahrávání…", "asset_viewer_settings_subtitle": "Správa nastavení prohlížeče galerie", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Automatické přehrávání prezentace", "back": "Zpět", "back_close_deselect": "Zpět, zavřít nebo zrušit výběr", + "background_backup_running_error": "Právě probíhá zálohování na pozadí, nelze spustit ruční zálohování", "background_location_permission": "Povolení polohy na pozadí", "background_location_permission_content": "Aby bylo možné přepínat sítě při běhu na pozadí, musí mít Immich *vždy* přístup k přesné poloze, aby mohl zjistit název Wi-Fi sítě", + "background_options": "Možnosti běhu na pozadí", "backup": "Záloha", "backup_album_selection_page_albums_device": "Alba v zařízení ({count})", "backup_album_selection_page_albums_tap": "Klepnutím na položku ji zahrnete, opětovným klepnutím ji vyloučíte", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Vybraná alba", "backup_album_selection_page_selection_info": "Informace o výběru", "backup_album_selection_page_total_assets": "Celkový počet jedinečných položek", + "backup_albums_sync": "Synchronizace zálohovaných alb", "backup_all": "Vše", "backup_background_service_backup_failed_message": "Zálohování médií selhalo. Zkouším to znovu…", "backup_background_service_connection_failed_message": "Nepodařilo se připojit k serveru. Zkouším to znovu…", @@ -654,6 +665,8 @@ "change_pin_code": "Změnit PIN kód", "change_your_password": "Změna vašeho hesla", "changed_visibility_successfully": "Změna viditelnosti proběhla úspěšně", + "charging": "Nabíjení", + "charging_requirement_mobile_backup": "Zálohování na pozadí vyžaduje, aby bylo zařízení nabíjeno", "check_corrupt_asset_backup": "Kontrola poškozených záloh položek", "check_corrupt_asset_backup_button": "Provést kontrolu", "check_corrupt_asset_backup_description": "Tuto kontrolu provádějte pouze přes Wi-Fi a po zálohování všech prostředků. Takto operace může trvat několik minut.", @@ -740,6 +753,7 @@ "create_user": "Vytvořit uživatele", "created": "Vytvořeno", "created_at": "Vytvořeno", + "creating_linked_albums": "Vytváření propojených alb...", "crop": "Oříznout", "curated_object_page_title": "Věci", "current_device": "Současné zařízení", @@ -889,7 +903,9 @@ "error": "Chyba", "error_change_sort_album": "Nepodařilo se změnit pořadí alba", "error_delete_face": "Chyba při odstraňování obličeje z položky", + "error_getting_places": "Chyba při zjišťování míst", "error_loading_image": "Chyba při načítání obrázku", + "error_loading_partners": "Chyba při načítání partnerů: {error}", "error_saving_image": "Chyba: {error}", "error_tag_face_bounding_box": "Chyba při označování obličeje - nelze získat souřadnice ohraničujícího rámečku", "error_title": "Chyba - Něco se pokazilo", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Nebyla nalezena žádná oblíbená média", "feature_photo_updated": "Hlavní fotka aktualizována", "features": "Funkce", + "features_in_development": "Funkce ve vývoji", "features_setting_description": "Správa funkcí aplikace", "file_name": "Název souboru", "file_name_or_extension": "Název nebo přípona souboru", @@ -1218,6 +1235,7 @@ "local": "Místní", "local_asset_cast_failed": "Nelze odeslat položku, která není nahraná na serveru", "local_assets": "Místní položky", + "local_media_summary": "Souhrn místních médií", "local_network": "Místní síť", "local_network_sheet_info": "Aplikace se při použití zadané sítě Wi-Fi připojí k serveru prostřednictvím tohoto URL", "location_permission": "Oprávnění polohy", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Zadejte vlastní zeměpisnou délku", "lock": "Zamknout", "locked_folder": "Uzamčená složka", + "log_detail_title": "Podrobnosti protokolu", "log_out": "Odhlásit", "log_out_all_devices": "Odhlásit všechna zařízení", "logged_in_as": "Přihlášen jako {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Heslo bylo úspěšně aktualizováno", "logout_all_device_confirmation": "Opravdu chcete odhlásit všechna zařízení?", "logout_this_device_confirmation": "Opravdu chcete odhlásit toto zařízení?", + "logs": "Protokoly", "longitude": "Zeměpisná délka", "look": "Zobrazení", "loop_videos": "Videa ve smyčce", @@ -1301,6 +1321,7 @@ "mark_as_read": "Označit jako přečtené", "marked_all_as_read": "Vše označeno jako přečtené", "matches": "Shody", + "matching_assets": "Odpovídající položky", "media_type": "Typ média", "memories": "Vzpomínky", "memories_all_caught_up": "To je všechno", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Jméno nebo přezdívka", "network_requirement_photos_upload": "Pro zálohování fotografií používat mobilní data", "network_requirement_videos_upload": "Pro zálohování videí používat mobilní data", + "network_requirements": "Požadavky na síť", "network_requirements_updated": "Požadavky na síť se změnily, fronta zálohování se vytvoří znovu", "networking_settings": "Síť", "networking_subtitle": "Správa nastavení koncového bodu serveru", @@ -1351,6 +1373,7 @@ "new_person": "Nová osoba", "new_pin_code": "Nový PIN kód", "new_pin_code_subtitle": "Poprvé přistupujete k uzamčené složce. Vytvořte si kód PIN pro bezpečný přístup na tuto stránku", + "new_timeline": "Nová časová osa", "new_user_created": "Vytvořen nový uživatel", "new_version_available": "NOVÁ VERZE K DISPOZICI", "newest_first": "Nejnovější první", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLIKNĚTE PRO NAHRÁNÍ PRVNÍ FOTOGRAFIE", "no_assets_to_show": "Žádné položky k zobrazení", "no_cast_devices_found": "Nebyla nalezena žádná zařízení", + "no_checksum_local": "Není k dispozici kontrolní součet - nelze načíst místní položky", + "no_checksum_remote": "Není k dispozici kontrolní součet - nelze načíst vzdálenou položku", "no_duplicates_found": "Nebyly nalezeny žádné duplicity.", "no_exif_info_available": "Exif není k dispozici", "no_explore_results_message": "Nahrajte další fotografie a prozkoumejte svou sbírku.", "no_favorites_message": "Přidejte si oblíbené položky a rychle najděte své nejlepší obrázky a videa", "no_libraries_message": "Vytvořte si externí knihovnu pro zobrazení fotografií a videí", + "no_local_assets_found": "Nebyly nalezeny žádné místní položky s tímto kontrolním součtem", "no_locked_photos_message": "Fotky a videa v uzamčené složce jsou skryté a při procházení nebo vyhledávání v knihovně se nezobrazují.", "no_name": "Bez jména", "no_notifications": "Žádná oznámení", "no_people_found": "Nebyli nalezeni žádní odpovídající lidé", "no_places": "Žádná místa", + "no_remote_assets_found": "Nebyly nalezeny žádné vzdálené položky s tímto kontrolním součtem", "no_results": "Žádné výsledky", "no_results_description": "Zkuste použít synonymum nebo obecnější klíčové slovo", "no_shared_albums_message": "Vytvořte si album a sdílejte fotografie a videa s lidmi ve své síti", "no_uploads_in_progress": "Neprobíhá žádné nahrávání", + "not_available": "Není k dispozici", "not_in_any_album": "Bez alba", "not_selected": "Není vybráno", "note_apply_storage_label_to_previously_uploaded assets": "Upozornění: Chcete-li použít štítek úložiště na dříve nahrané položky, spusťte příkaz", @@ -1499,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Správa předvoleb aplikace", "preferences_settings_title": "Předvolby", + "preparing": "Příprava", "preset": "Přednastavení", "preview": "Náhled", "previous": "Předchozí", @@ -1564,6 +1593,7 @@ "read_changelog": "Přečtěte si seznam změn", "readonly_mode_disabled": "Režim pouze pro čtení je deaktivován", "readonly_mode_enabled": "Režim pouze pro čtení povolen", + "ready_for_upload": "Připraveno k nahrání", "reassign": "Přeřadit", "reassigned_assets_to_existing_person": "Přeřadit {count, plural, one {# položku} few {# položky} other {# položek}} na {name, select, null {existující osobu} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {Přeřazena # položka} few {Přeřazeny # položky} other {Přeřazeno # položek}} na novou osobu", @@ -1588,6 +1618,7 @@ "regenerating_thumbnails": "Regenerace miniatur", "remote": "Vzdálený", "remote_assets": "Vzdálené položky", + "remote_media_summary": "Souhrn vzdálených médií", "remove": "Odstranit", "remove_assets_album_confirmation": "Opravdu chcete z alba odstranit {count, plural, one {# položku} few {# položky} other {# položek}}?", "remove_assets_shared_link_confirmation": "Opravdu chcete ze sdíleného odkazu odstranit {count, plural, one {# položku} few {# položky} other {# položek}}?", @@ -1653,7 +1684,7 @@ "saved_api_key": "API klíč uložen", "saved_profile": "Profil uložen", "saved_settings": "Nastavení uloženo", - "say_something": "Řekněte něco", + "say_something": "Napište něco", "scaffold_body_error_occurred": "Došlo k chybě", "scan_all_libraries": "Prohledat všechny knihovny", "scan_library": "Prohledat", @@ -1863,6 +1894,7 @@ "show_slideshow_transition": "Zobrazit přechod prezentace", "show_supporter_badge": "Odznak podporovatele", "show_supporter_badge_description": "Zobrazit odznak podporovatele", + "show_text_search_menu": "Zobrazit nabídku pro vyhledávání textu", "shuffle": "Náhodný výběr", "sidebar": "Postranní panel", "sidebar_display_description": "Zobrazení odkazu na zobrazení v postranním panelu", @@ -1893,6 +1925,7 @@ "stacktrace": "Výpis zásobníku", "start": "Start", "start_date": "Počáteční datum", + "start_date_before_end_date": "Počáteční datum se musí nacházet před konečným datem", "state": "Stát", "status": "Stav", "stop_casting": "Zastavit odesílání", @@ -2095,5 +2128,6 @@ "yes": "Ano", "you_dont_have_any_shared_links": "Nemáte žádné sdílené odkazy", "your_wifi_name": "Název vaší Wi-Fi", - "zoom_image": "Zvětšit obrázek" + "zoom_image": "Zvětšit obrázek", + "zoom_to_bounds": "Přiblížit na okraje" } diff --git a/i18n/da.json b/i18n/da.json index c45cf4000d..9c25a293bc 100644 --- a/i18n/da.json +++ b/i18n/da.json @@ -2,7 +2,7 @@ "about": "Om os", "account": "Konto", "account_settings": "Kontoindstillinger", - "acknowledge": "Anerkendelse", + "acknowledge": "Accepter", "action": "Handling", "action_common_update": "Opdater", "actions": "Handlinger", @@ -387,8 +387,6 @@ "admin_password": "Administratoradgangskode", "administration": "Administration", "advanced": "Avanceret", - "advanced_settings_beta_timeline_subtitle": "Prøv den nye app-oplevelse", - "advanced_settings_beta_timeline_title": "Beta-tidslinje", "advanced_settings_enable_alternate_media_filter_subtitle": "Brug denne valgmulighed for at filtrere media under synkronisering baseret på alternative kriterier. Prøv kun denne hvis du har problemer med at appen ikke opdager alle albums.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTEL] Brug alternativ enheds album synkroniserings filter", "advanced_settings_log_level_title": "Logniveau: {level}", diff --git a/i18n/de.json b/i18n/de.json index c6317a25bb..cef8a5b4d5 100644 --- a/i18n/de.json +++ b/i18n/de.json @@ -123,6 +123,13 @@ "logging_enable_description": "Aktiviere Logging", "logging_level_description": "Wenn aktiviert, welches Log-Level genutzt wird.", "logging_settings": "Protokollierung", + "machine_learning_availability_checks": "Verfügbarkeitschecks", + "machine_learning_availability_checks_description": "Erkenne und bevorzuge verfügbare Machine Learning Servers", + "machine_learning_availability_checks_enabled": "Verfügbarkeitschecks einschalten", + "machine_learning_availability_checks_interval": "Überprüfungsinterval", + "machine_learning_availability_checks_interval_description": "Interval in Millisekunden zwischen Verfügbarkeitschecks", + "machine_learning_availability_checks_timeout": "Anfragenzeitüberschreitung", + "machine_learning_availability_checks_timeout_description": "Zeitüberschreitung in Millisekunden für Verfügbarkeitschecks", "machine_learning_clip_model": "CLIP-Modell", "machine_learning_clip_model_description": "Der Name eines CLIP-Modells, welches hier aufgeführt ist. Beachte, dass du die Aufgabe \"Intelligente Suche\" für alle Bilder erneut ausführen musst, wenn du das Modell wechselst.", "machine_learning_duplicate_detection": "Duplikaterkennung", @@ -387,8 +394,6 @@ "admin_password": "Administrator Passwort", "administration": "Verwaltung", "advanced": "Erweitert", - "advanced_settings_beta_timeline_subtitle": "Probier die neue App-Erfahrung aus", - "advanced_settings_beta_timeline_title": "Beta-Timeline", "advanced_settings_enable_alternate_media_filter_subtitle": "Verwende diese Option, um Medien während der Synchronisierung nach anderen Kriterien zu filtern. Versuchen dies nur, wenn Probleme mit der Erkennung aller Alben durch die App auftreten.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTELL] Benutze alternativen Filter für Synchronisierung der Gerätealben", "advanced_settings_log_level_title": "Log-Level: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Bist du sicher, dass du {user} entfernen willst?", "album_search_not_found": "Keine Alben gefunden, die zur Suche passen", "album_share_no_users": "Es sieht so aus, als hättest du dieses Album mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.", + "album_summary": "Album Zusammenfassung", "album_updated": "Album aktualisiert", "album_updated_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn ein freigegebenes Album neue Dateien enthält", "album_user_left": "{album} verlassen", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Datei erfolgreich wiederhergestellt", "asset_skipped": "Übersprungen", "asset_skipped_in_trash": "Im Papierkorb", + "asset_trashed": "Datei Gelöscht", + "asset_troubleshoot": "Datei Fehlerbehebung", "asset_uploaded": "Hochgeladen", "asset_uploading": "Hochladen…", "asset_viewer_settings_subtitle": "Verwaltung der Einstellungen für die Fotoanzeige", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Automatische Diashow", "back": "Zurück", "back_close_deselect": "Zurück, Schließen oder Abwählen", + "background_backup_running_error": "Hintergrund Sicherung läuft, kann manuelle Sicherung nicht starten", "background_location_permission": "Hintergrund Standortfreigabe", "background_location_permission_content": "Um im Hintergrund zwischen den Netzwerken wechseln zu können, muss Immich *immer* Zugriff auf den genauen Standort haben, damit die App den Namen des WLAN-Netzwerks ermitteln kann", + "background_options": "Hintergrund Optionen", "backup": "Sicherung", "backup_album_selection_page_albums_device": "Alben auf dem Gerät ({count})", "backup_album_selection_page_albums_tap": "Einmalig das Album antippen um es zu sichern, doppelt antippen um es nicht mehr zu sichern", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Alben auswählen", "backup_album_selection_page_selection_info": "Information", "backup_album_selection_page_total_assets": "Elemente", + "backup_albums_sync": "Synchronisation von Alben beim Backup", "backup_all": "Alle", "backup_background_service_backup_failed_message": "Es trat ein Fehler bei der Sicherung auf. Erneuter Versuch…", "backup_background_service_connection_failed_message": "Es konnte keine Verbindung zum Server hergestellt werden. Erneuter Versuch…", @@ -654,6 +665,8 @@ "change_pin_code": "PIN Code ändern", "change_your_password": "Ändere dein Passwort", "changed_visibility_successfully": "Die Sichtbarkeit wurde erfolgreich geändert", + "charging": "Aufladen", + "charging_requirement_mobile_backup": "Backup im Hintergrund erfordert Aufladen des Geräts", "check_corrupt_asset_backup": "Auf beschädigte Asset-Backups überprüfen", "check_corrupt_asset_backup_button": "Überprüfung durchführen", "check_corrupt_asset_backup_description": "Führe diese Prüfung nur mit aktivierten WLAN durch, nachdem alle Dateien gesichert worden sind. Dieser Vorgang kann ein paar Minuten dauern.", @@ -740,6 +753,7 @@ "create_user": "Nutzer erstellen", "created": "Erstellt", "created_at": "Erstellt", + "creating_linked_albums": "Erstelle verknüpfte Alben...", "crop": "Zuschneiden", "curated_object_page_title": "Dinge", "current_device": "Aktuelles Gerät", @@ -889,7 +903,9 @@ "error": "Fehler", "error_change_sort_album": "Ändern der Anzeigereihenfolge fehlgeschlagen", "error_delete_face": "Fehler beim Löschen des Gesichts", + "error_getting_places": "Fehler beim Abrufen der Orte", "error_loading_image": "Fehler beim Laden des Bildes", + "error_loading_partners": "Fehler beim Laden der Partner: {error}", "error_saving_image": "Fehler: {error}", "error_tag_face_bounding_box": "Fehler beim Markieren des Gesichts - Begrenzungen können nicht abgerufen werden", "error_title": "Fehler - Etwas ist schief gelaufen", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Keine favorisierten Inhalte gefunden", "feature_photo_updated": "Profilbild aktualisiert", "features": "Funktionen", + "features_in_development": "Feature in Entwicklung", "features_setting_description": "Funktionen der App verwalten", "file_name": "Dateiname", "file_name_or_extension": "Dateiname oder -erweiterung", @@ -1190,7 +1207,7 @@ "large_files": "Große Dateien", "last": "Letzte", "last_seen": "Zuletzt gesehen", - "latest_version": "Aktuellste Version", + "latest_version": "Aktuelle Version", "latitude": "Breitengrad", "leave": "Verlassen", "leave_album": "Album verlassen", @@ -1218,6 +1235,7 @@ "local": "Lokal", "local_asset_cast_failed": "Eine Datei, die nicht auf den Server hochgeladen wurde, kann nicht gecastet werden", "local_assets": "Lokale Dateien", + "local_media_summary": "Zusammenfassung der lokalen Medien", "local_network": "Lokales Netzwerk", "local_network_sheet_info": "Die App stellt über diese URL eine Verbindung zum Server her, wenn sie das angegebene WLAN-Netzwerk verwendet", "location_permission": "Standort Genehmigung", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Längengrad eingeben", "lock": "Sperren", "locked_folder": "Gesperrter Ordner", + "log_detail_title": "Protokoll Details", "log_out": "Abmelden", "log_out_all_devices": "Alle Geräte abmelden", "logged_in_as": "Angemeldet als {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Passwort erfolgreich geändert", "logout_all_device_confirmation": "Bist du sicher, dass du alle Geräte abmelden willst?", "logout_this_device_confirmation": "Bist du sicher, dass du dieses Gerät abmelden willst?", + "logs": "Protokolle", "longitude": "Längengrad", "look": "Erscheinungsbild", "loop_videos": "Loop-Videos", @@ -1301,6 +1321,7 @@ "mark_as_read": "Als gelesen markieren", "marked_all_as_read": "Alle als gelesen markiert", "matches": "Treffer", + "matching_assets": "Passende Dateien", "media_type": "Medientyp", "memories": "Erinnerungen", "memories_all_caught_up": "Alles aufgeholt", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Name oder Nickname", "network_requirement_photos_upload": "Mobiles Datennetz verwenden, um Fotos zu sichern", "network_requirement_videos_upload": "Mobiles Datennetz verwenden, um Videos zu sichern", + "network_requirements": "Anforderungen ans Netzwerk", "network_requirements_updated": "Netzwerk-Abhängigkeiten haben sich geändert, Backup-Warteschlange wird zurückgesetzt", "networking_settings": "Netzwerk", "networking_subtitle": "Verwaltung von Server-Endpunkt-Einstellungen", @@ -1351,6 +1373,7 @@ "new_person": "Neue Person", "new_pin_code": "Neuer PIN Code", "new_pin_code_subtitle": "Dies ist dein erster Zugriff auf den gesperrten Ordner. Erstelle einen PIN Code für den sicheren Zugriff auf diese Seite", + "new_timeline": "Neue Zeitleiste", "new_user_created": "Neuer Benutzer wurde erstellt", "new_version_available": "NEUE VERSION VERFÜGBAR", "newest_first": "Neueste zuerst", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLICKE, UM DEIN ERSTES FOTO HOCHZULADEN", "no_assets_to_show": "Keine Vorschau vorhanden", "no_cast_devices_found": "Keine Geräte zum Übertragen gefunden", + "no_checksum_local": "Prüfsumme nicht verfügbar - kann lokale Datei/en nicht laden", + "no_checksum_remote": "Prüfsumme nicht verfügbar - kann entfernte Datei/en nicht laden", "no_duplicates_found": "Es wurden keine Duplikate gefunden.", "no_exif_info_available": "Keine EXIF-Informationen vorhanden", "no_explore_results_message": "Lade weitere Fotos hoch, um deine Sammlung zu erkunden.", "no_favorites_message": "Füge Favoriten hinzu, um deine besten Bilder und Videos schnell zu finden", "no_libraries_message": "Eine externe Bibliothek erstellen, um deine Fotos und Videos anzusehen", + "no_local_assets_found": "Keine lokale Datei mit dieser Prüfsumme gefunden", "no_locked_photos_message": "Fotos und Videos im gesperrten Ordner sind versteckt und werden nicht angezeigt, wenn du deine Bibliothek durchsuchst.", "no_name": "Kein Name", "no_notifications": "Keine Benachrichtigungen", "no_people_found": "Keine passenden Personen gefunden", "no_places": "Keine Orte", + "no_remote_assets_found": "Keine entfernten Dateien mit dieser Prüfsumme gefunden", "no_results": "Keine Ergebnisse", "no_results_description": "Versuche es mit einem Synonym oder einem allgemeineren Stichwort", "no_shared_albums_message": "Erstelle ein Album, um Fotos und Videos mit Personen in deinem Netzwerk zu teilen", "no_uploads_in_progress": "Kein Upload in Bearbeitung", + "not_available": "N/A", "not_in_any_album": "In keinem Album", "not_selected": "Nicht ausgewählt", "note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um eine Speicherpfadbezeichnung anzuwenden, starte den", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Miniaturansichten werden neu erstellt", "remote": "Server", "remote_assets": "Server-Dateien", + "remote_media_summary": "Zusammenfassung der entfernten Medien", "remove": "Entfernen", "remove_assets_album_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} aus dem Album entfernen willst?", "remove_assets_shared_link_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} von diesem geteilten Link entfernen willst?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Slideshow-Übergang anzeigen", "show_supporter_badge": "Unterstützerabzeichen", "show_supporter_badge_description": "Zeige Unterstützerabzeichen", + "show_text_search_menu": "Zeige Menü für Textsuche", "shuffle": "Durchmischen", "sidebar": "Seitenleiste", "sidebar_display_description": "Zeige einen Link zu der Ansicht in der Seitenleiste an", @@ -1893,6 +1923,7 @@ "stacktrace": "Stapelaufgaben", "start": "Starten", "start_date": "Anfangsdatum", + "start_date_before_end_date": "Anfangsdatum muss vor dem Enddatum liegen", "state": "Bundesland / Provinz", "status": "Status", "stop_casting": "Übertragung stoppen", @@ -2095,5 +2126,6 @@ "yes": "Ja", "you_dont_have_any_shared_links": "Du hast keine geteilten Links", "your_wifi_name": "Dein WLAN-Name", - "zoom_image": "Bild vergrößern" + "zoom_image": "Bild vergrößern", + "zoom_to_bounds": "In die Grenzen zoomen" } diff --git a/i18n/el.json b/i18n/el.json index 2dff77a48f..a8eeb59740 100644 --- a/i18n/el.json +++ b/i18n/el.json @@ -387,8 +387,6 @@ "admin_password": "Κωδικός πρόσβασης Διαχειριστή", "administration": "Διαχείριση", "advanced": "Για προχωρημένους", - "advanced_settings_beta_timeline_subtitle": "Δοκίμασε τη νέα εμπειρία της εφαρμογής", - "advanced_settings_beta_timeline_title": "Δοκιμαστικό χρονολόγιο", "advanced_settings_enable_alternate_media_filter_subtitle": "Χρησιμοποιήστε αυτήν την επιλογή για να φιλτράρετε τα μέσα ενημέρωσης κατά τον συγχρονισμό με βάση εναλλακτικά κριτήρια. Δοκιμάστε αυτή τη δυνατότητα μόνο αν έχετε προβλήματα με την εφαρμογή που εντοπίζει όλα τα άλμπουμ.", "advanced_settings_enable_alternate_media_filter_title": "[ΠΕΙΡΑΜΑΤΙΚΟ] Χρήση εναλλακτικού φίλτρου συγχρονισμού άλμπουμ συσκευής", "advanced_settings_log_level_title": "Επίπεδο σύνδεσης: {level}", diff --git a/i18n/es.json b/i18n/es.json index cd37c89315..e4873051f6 100644 --- a/i18n/es.json +++ b/i18n/es.json @@ -123,6 +123,13 @@ "logging_enable_description": "Habilitar registro", "logging_level_description": "Indica el nivel de registro a utilizar cuando está habilitado.", "logging_settings": "Registro", + "machine_learning_availability_checks": "Verificaciones de disponibilidad", + "machine_learning_availability_checks_description": "Automáticamente detectar y preferir servidores de machine learning disponibles", + "machine_learning_availability_checks_enabled": "Habilitar verificaciones de disponibilidad", + "machine_learning_availability_checks_interval": "Intervalo de verificación", + "machine_learning_availability_checks_interval_description": "Intervalo en milisegundos entre las verificaciones de disponibilidad", + "machine_learning_availability_checks_timeout": "Tiempo de espera de solicitud", + "machine_learning_availability_checks_timeout_description": "Tiempo de espera en milisegundos para verificaciones de disponibilidad", "machine_learning_clip_model": "Modelo CLIP (Contrastive Language-Image Pre-Training)", "machine_learning_clip_model_description": "El nombre de un modelo CLIP listado aquí. Tendrás que relanzar el trabajo 'Búsqueda Inteligente' para todos los elementos al cambiar de modelo.", "machine_learning_duplicate_detection": "Detección de duplicados", @@ -387,8 +394,6 @@ "admin_password": "Contraseña del administrador", "administration": "Administración", "advanced": "Avanzada", - "advanced_settings_beta_timeline_subtitle": "Prueba la nueva experiencia de la aplicación", - "advanced_settings_beta_timeline_title": "Cronología beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Usa esta opción para filtrar medios durante la sincronización según criterios alternativos. Intenta esto solo si tienes problemas con que la aplicación detecte todos los álbumes.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Usar filtro alternativo de sincronización de álbumes del dispositivo", "advanced_settings_log_level_title": "Nivel de registro: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "¿Estás seguro de que quieres eliminar a {user}?", "album_search_not_found": "No se encontraron álbumes que coincidan con tu búsqueda", "album_share_no_users": "Parece que has compartido este álbum con todos los usuarios o no tienes ningún usuario con quien compartirlo.", + "album_summary": "Resumen del álbum", "album_updated": "Album actualizado", "album_updated_setting_description": "Reciba una notificación por correo electrónico cuando un álbum compartido tenga nuevos archivos", "album_user_left": "Salida {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Elementos restaurados exitosamente", "asset_skipped": "Omitido", "asset_skipped_in_trash": "En la papelera", + "asset_trashed": "Elemento eliminado", + "asset_troubleshoot": "Diagnóstico del elemento", "asset_uploaded": "Subido", "asset_uploading": "Subiendo…", "asset_viewer_settings_subtitle": "Administra las configuracioens de tu visor de fotos", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Presentación con reproducción automática", "back": "Atrás", "back_close_deselect": "Atrás, cerrar o anular la selección", + "background_backup_running_error": "Ya se está ejecutando la copia de seguridad en segundo plano, no se puede iniciar la copia de seguridad manual", "background_location_permission": "Permiso de ubicación en segundo plano", "background_location_permission_content": "Para poder cambiar de red mientras se ejecuta en segundo plano, Immich debe tener *siempre* acceso a la ubicación precisa para que la aplicación pueda leer el nombre de la red Wi-Fi", + "background_options": "Opciones de segundo plano", "backup": "Copia de Seguridad", "backup_album_selection_page_albums_device": "Álbumes en el dispositivo ({count})", "backup_album_selection_page_albums_tap": "Toque para incluir, doble toque para excluir", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Seleccionar álbumes", "backup_album_selection_page_selection_info": "Información sobre la Selección", "backup_album_selection_page_total_assets": "Total de elementos únicos", + "backup_albums_sync": "Sincronización de álbumes de respaldo", "backup_all": "Todos", "backup_background_service_backup_failed_message": "Error al copiar elementos. Reintentando…", "backup_background_service_connection_failed_message": "Error al conectar con el servidor. Reintentando…", @@ -654,6 +665,8 @@ "change_pin_code": "Cambiar PIN", "change_your_password": "Cambia tu contraseña", "changed_visibility_successfully": "Visibilidad cambiada correctamente", + "charging": "Cargando", + "charging_requirement_mobile_backup": "La copia de seguridad en segundo plano requiere que el dispositivo se esté cargando", "check_corrupt_asset_backup": "Comprobar copias de seguridad de archivos corruptos", "check_corrupt_asset_backup_button": "Realizar comprobación", "check_corrupt_asset_backup_description": "Ejecutar esta comprobación solo por Wi-Fi y una vez que todos los archivos hayan sido respaldados. El procedimiento puede tardar unos minutos.", @@ -740,6 +753,7 @@ "create_user": "Crear usuario", "created": "Creado", "created_at": "Creado", + "creating_linked_albums": "Creando álbumes vinculados...", "crop": "Recortar", "curated_object_page_title": "Objetos", "current_device": "Dispositivo actual", @@ -889,7 +903,9 @@ "error": "Error", "error_change_sort_album": "No se pudo cambiar el orden de visualización del álbum", "error_delete_face": "Error al eliminar la cara del archivo", + "error_getting_places": "Error obteniendo lugares", "error_loading_image": "Error al cargar la imagen", + "error_loading_partners": "Error al cargar compañeros: {error}", "error_saving_image": "Error: {error}", "error_tag_face_bounding_box": "Error al etiquetar la cara: no se pueden obtener las coordenadas del marco", "error_title": "Error: algo salió mal", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "No se encontraron elementos marcados como favoritos", "feature_photo_updated": "Foto destacada actualizada", "features": "Características", + "features_in_development": "Funciones en Desarrollo", "features_setting_description": "Administrar las funciones de la aplicación", "file_name": "Nombre de archivo", "file_name_or_extension": "Nombre del archivo o extensión", @@ -1218,6 +1235,7 @@ "local": "Local", "local_asset_cast_failed": "No es posible transmitir un recurso que no está subido al servidor", "local_assets": "Archivos Locales", + "local_media_summary": "Resumen de Medios Locales", "local_network": "Red local", "local_network_sheet_info": "La aplicación se conectará al servidor a través de esta URL cuando utilice la red Wi-Fi especificada", "location_permission": "Permiso de ubicación", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Introduce tu longitud aquí", "lock": "Bloquear", "locked_folder": "Carpeta protegida", + "log_detail_title": "Detalle del registro", "log_out": "Cerrar sesión", "log_out_all_devices": "Cerrar sesión en todos los dispositivos", "logged_in_as": "Sesión iniciada como {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Contraseña cambiado con éxito", "logout_all_device_confirmation": "¿Estás seguro de que quieres cerrar sesión en todos los dispositivos?", "logout_this_device_confirmation": "¿Estás seguro de que quieres cerrar sesión en este dispositivo?", + "logs": "Registros", "longitude": "Longitud", "look": "Mirar", "loop_videos": "Vídeos en bucle", @@ -1301,6 +1321,7 @@ "mark_as_read": "Marcar como leído", "marked_all_as_read": "Todos marcados como leídos", "matches": "Coincidencias", + "matching_assets": "Elementos Coincidentes", "media_type": "Tipo de medio", "memories": "Recuerdos", "memories_all_caught_up": "Puesto al día", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Nombre o apodo", "network_requirement_photos_upload": "Usar datos móviles para crear una copia de seguridad de las fotos", "network_requirement_videos_upload": "Usar datos móviles para crear una copia de seguridad de los videos", + "network_requirements": "Requisitos de red", "network_requirements_updated": "Los requisitos de red han cambiado, reiniciando la cola de copias de seguridad", "networking_settings": "Red", "networking_subtitle": "Configuraciones de acceso por URL al servidor", @@ -1351,6 +1373,7 @@ "new_person": "Nueva persona", "new_pin_code": "Nuevo PIN", "new_pin_code_subtitle": "Esta es la primera vez que accedes a la carpeta protegida. Crea un código PIN seguro para acceder a esta página", + "new_timeline": "Nueva Línea de tiempo", "new_user_created": "Nuevo usuario creado", "new_version_available": "NUEVA VERSIÓN DISPONIBLE", "newest_first": "El más reciente primero", @@ -1364,20 +1387,25 @@ "no_assets_message": "HAZ CLIC PARA SUBIR TU PRIMERA FOTO", "no_assets_to_show": "No hay elementos a mostrar", "no_cast_devices_found": "No se encontraron dispositivos de transmisión", + "no_checksum_local": "Suma de verificación no disponible. No se pueden obtener los elementos locales", + "no_checksum_remote": "Suma de verificación no disponible. No se puede obtener el elemento remoto", "no_duplicates_found": "No se encontraron duplicados.", "no_exif_info_available": "No hay información exif disponible", "no_explore_results_message": "Sube más fotos para explorar tu colección.", "no_favorites_message": "Agregue favoritos para encontrar rápidamente sus mejores fotos y videos", "no_libraries_message": "Crea una biblioteca externa para ver tus fotos y vídeos", + "no_local_assets_found": "No se encontraron elementos locales con esta suma de comprobación", "no_locked_photos_message": "Las fotos y los vídeos de la carpeta protegida se mantienen ocultos; no aparecerán cuando veas o busques elementos en tu biblioteca.", "no_name": "Sin nombre", "no_notifications": "Ninguna notificación", "no_people_found": "No se encontraron personas coincidentes", "no_places": "Sin lugares", + "no_remote_assets_found": "No se encontraron elementos remotos con esta suma de comprobación", "no_results": "Sin resultados", "no_results_description": "Pruebe con un sinónimo o una palabra clave más general", "no_shared_albums_message": "Crea un álbum para compartir fotos y vídeos con personas de tu red", "no_uploads_in_progress": "No hay cargas en progreso", + "not_available": "N/D", "not_in_any_album": "Sin álbum", "not_selected": "No seleccionado", "note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar la etiqueta de almacenamiento a los archivos que ya se subieron, ejecute la", @@ -1499,6 +1527,7 @@ "port": "Puerto", "preferences_settings_subtitle": "Configuraciones de la aplicación", "preferences_settings_title": "Preferencias", + "preparing": "Preparando", "preset": "Preestablecido", "preview": "Posterior", "previous": "Anterior", @@ -1564,6 +1593,7 @@ "read_changelog": "Leer registro de cambios", "readonly_mode_disabled": "Modo Solo lectura deshabilitado", "readonly_mode_enabled": "Modo Solo lectura habilitado", + "ready_for_upload": "Listo para subir", "reassign": "Reasignar", "reassigned_assets_to_existing_person": "Reasignado {count, plural, one {# elemento} other {# elementos}} a {name, select, null {una persona existente} other {{name}}}", "reassigned_assets_to_new_person": "Reasignado {count, plural, one {# elemento} other {# elementos}} a un nuevo usuario", @@ -1588,6 +1618,7 @@ "regenerating_thumbnails": "Recargando miniaturas", "remote": "Remoto", "remote_assets": "Elementos remotos", + "remote_media_summary": "Resumen de Medios Remotos", "remove": "Eliminar", "remove_assets_album_confirmation": "¿Estás seguro que quieres eliminar {count, plural, one {# elemento} other {# elementos}} del álbum?", "remove_assets_shared_link_confirmation": "¿Estás seguro que quieres eliminar {count, plural, one {# elemento} other {# elementos}} del enlace compartido?", @@ -1863,6 +1894,7 @@ "show_slideshow_transition": "Mostrar la transición de las diapositivas", "show_supporter_badge": "Insignia de colaborador", "show_supporter_badge_description": "Mostrar una insignia de colaborador", + "show_text_search_menu": "Mostrar el menú de búsqueda", "shuffle": "Modo aleatorio", "sidebar": "Barra lateral", "sidebar_display_description": "Muestra un enlace a la vista en la barra lateral", @@ -1893,6 +1925,7 @@ "stacktrace": "Seguimiento de pila", "start": "Inicio", "start_date": "Fecha de inicio", + "start_date_before_end_date": "Fecha de inicio debe ser antes de fecha final", "state": "Estado", "status": "Estado", "stop_casting": "Detener transmisión", @@ -2095,5 +2128,6 @@ "yes": "Sí", "you_dont_have_any_shared_links": "No tienes ningún enlace compartido", "your_wifi_name": "El nombre de tu Wi-Fi", - "zoom_image": "Acercar Imagen" + "zoom_image": "Acercar Imagen", + "zoom_to_bounds": "Ajustar a los límites" } diff --git a/i18n/et.json b/i18n/et.json index 33a003bd54..3f38f32d3e 100644 --- a/i18n/et.json +++ b/i18n/et.json @@ -123,6 +123,13 @@ "logging_enable_description": "Luba logimine", "logging_level_description": "Kui lubatud, millist logimistaset kasutada.", "logging_settings": "Logimine", + "machine_learning_availability_checks": "Saadavuskontrollid", + "machine_learning_availability_checks_description": "Tuvasta ja eelista automaatselt saadavalolevaid masinõppeservereid", + "machine_learning_availability_checks_enabled": "Luba saadavuskontrollid", + "machine_learning_availability_checks_interval": "Kontrolli intervall", + "machine_learning_availability_checks_interval_description": "Saadavuskontrollide intervall millisekundites", + "machine_learning_availability_checks_timeout": "Päringu ajalõpp", + "machine_learning_availability_checks_timeout_description": "Saadavuskontrollide ajalõpp millisekundites", "machine_learning_clip_model": "CLIP mudel", "machine_learning_clip_model_description": "CLIP mudeli nimi, mis on loetletud siin. Pane tähele, et mudeli muutmisel pead kõigi piltide peal nutiotsingu tööte uuesti käivitama.", "machine_learning_duplicate_detection": "Duplikaatide leidmine", @@ -387,8 +394,6 @@ "admin_password": "Administraatori parool", "administration": "Administratsioon", "advanced": "Täpsemad valikud", - "advanced_settings_beta_timeline_subtitle": "Koge uut rakendust", - "advanced_settings_beta_timeline_title": "Beeta ajajoon", "advanced_settings_enable_alternate_media_filter_subtitle": "Kasuta seda valikut, et filtreerida sünkroonimise ajal üksuseid alternatiivsete kriteeriumite alusel. Proovi seda ainult siis, kui rakendusel on probleeme kõigi albumite tuvastamisega.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTAALNE] Kasuta alternatiivset seadme albumi sünkroonimise filtrit", "advanced_settings_log_level_title": "Logimistase: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Kas oled kindel, et soovid kasutaja {user} eemaldada?", "album_search_not_found": "Otsingule vastavaid albumeid ei leitud", "album_share_no_users": "Paistab, et oled seda albumit kõikide kasutajatega jaganud, või pole ühtegi kasutajat, kellega jagada.", + "album_summary": "Albumi kokkuvõte", "album_updated": "Album muudetud", "album_updated_setting_description": "Saa teavitus e-posti teel, kui jagatud albumis on uusi üksuseid", "album_user_left": "Lahkutud albumist {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Üksus edukalt taastatud", "asset_skipped": "Vahele jäetud", "asset_skipped_in_trash": "Prügikastis", + "asset_trashed": "Üksus liigutatud prügikasti", + "asset_troubleshoot": "Üksuse tõrkeotsing", "asset_uploaded": "Üleslaaditud", "asset_uploading": "Üleslaadimine…", "asset_viewer_settings_subtitle": "Halda galeriivaaturi seadeid", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Esita slaidiesitlus automaatselt", "back": "Tagasi", "back_close_deselect": "Tagasi, sulge või tühista valik", + "background_backup_running_error": "Taustvarundus on käimas, ei saa käsitsi varundust alustada", "background_location_permission": "Taustal asukoha luba", "background_location_permission_content": "Et taustal töötades võrguühendust vahetada, peab Immich'il *alati* olema täpse asukoha luba, et rakendus saaks WiFi-võrgu nime lugeda", + "background_options": "Taustavalikud", "backup": "Varundamine", "backup_album_selection_page_albums_device": "Albumid seadmel ({count})", "backup_album_selection_page_albums_tap": "Puuduta kaasamiseks, topeltpuuduta välistamiseks", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Vali albumid", "backup_album_selection_page_selection_info": "Valiku info", "backup_album_selection_page_total_assets": "Unikaalseid üksuseid kokku", + "backup_albums_sync": "Varundusalbumite sünkroniseerimine", "backup_all": "Kõik", "backup_background_service_backup_failed_message": "Üksuste varundamine ebaõnnestus. Uuesti proovimine…", "backup_background_service_connection_failed_message": "Serveriga ühendumine ebaõnnestus. Uuesti proovimine…", @@ -654,6 +665,8 @@ "change_pin_code": "Muuda PIN-koodi", "change_your_password": "Muuda oma parooli", "changed_visibility_successfully": "Nähtavus muudetud", + "charging": "Laadimine", + "charging_requirement_mobile_backup": "Taustal varundus vajab, et seade oleks laadimas", "check_corrupt_asset_backup": "Otsi riknenud üksuste varukoopiaid", "check_corrupt_asset_backup_button": "Teosta kontroll", "check_corrupt_asset_backup_description": "Käivita see kontroll ainult WiFi-võrgus ja siis, kui kõik üksused on varundatud. See protseduur võib kesta mõne minuti.", @@ -740,6 +753,7 @@ "create_user": "Lisa kasutaja", "created": "Lisatud", "created_at": "Lisatud", + "creating_linked_albums": "Lingitud albumite loomine...", "crop": "Kärpimine", "curated_object_page_title": "Asjad", "current_device": "Praegune seade", @@ -832,11 +846,11 @@ "download_settings_description": "Halda üksuste allalaadimise seadeid", "download_started": "Allalaadimine alustatud", "download_sucess": "Allalaadimine õnnestus", - "download_sucess_android": "Meediumid laaditi alla kataloogi DCIM/Immich", + "download_sucess_android": "Üksused laaditi alla kataloogi DCIM/Immich", "download_waiting_to_retry": "Uuesti proovimise ootel", "downloading": "Allalaadimine", "downloading_asset_filename": "Üksuse {filename} allalaadimine", - "downloading_media": "Meediumi allalaadimine", + "downloading_media": "Üksuste allalaadimine", "drop_files_to_upload": "Failide üleslaadimiseks sikuta need ükskõik kuhu", "duplicates": "Duplikaadid", "duplicates_description": "Lahenda iga grupp, valides duplikaadid, kui neid on", @@ -889,7 +903,9 @@ "error": "Viga", "error_change_sort_album": "Albumi sorteerimisjärjestuse muutmine ebaõnnestus", "error_delete_face": "Viga näo kustutamisel", + "error_getting_places": "Viga kohtade pärimisel", "error_loading_image": "Viga pildi laadimisel", + "error_loading_partners": "Viga partnerite laadimisel: {error}", "error_saving_image": "Viga: {error}", "error_tag_face_bounding_box": "Viga näo sildistamisel - ümbritseva kasti koordinaate ei õnnestunud leida", "error_title": "Viga - midagi läks valesti", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Lemmikuid üksuseid ei leitud", "feature_photo_updated": "Esiletõstetud foto muudetud", "features": "Funktsioonid", + "features_in_development": "Arendusjärgus olevad funktsioonid", "features_setting_description": "Halda rakenduse funktsioone", "file_name": "Failinimi", "file_name_or_extension": "Failinimi või -laiend", @@ -1218,6 +1235,7 @@ "local": "Lokaalsed", "local_asset_cast_failed": "Ei saa edastada üksust, mis pole serverisse üles laaditud", "local_assets": "Lokaalsed üksused", + "local_media_summary": "Lokaalsete üksuste kokkuvõte", "local_network": "Kohalik võrk", "local_network_sheet_info": "Rakendus ühendub valitud Wi-Fi võrgus olles serveriga selle URL-i kaudu", "location_permission": "Asukoha luba", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Sisesta pikkuskraad siia", "lock": "Lukusta", "locked_folder": "Lukustatud kaust", + "log_detail_title": "Logi detailid", "log_out": "Logi välja", "log_out_all_devices": "Logi kõigist seadmetest välja", "logged_in_as": "Logitud sisse kasutajana {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Parool edukalt uuendatud", "logout_all_device_confirmation": "Kas oled kindel, et soovid kõigist seadmetest välja logida?", "logout_this_device_confirmation": "Kas oled kindel, et soovid sellest seadmest välja logida?", + "logs": "Logid", "longitude": "Pikkuskraad", "look": "Välimus", "loop_videos": "Taasesita videod", @@ -1301,6 +1321,7 @@ "mark_as_read": "Märgi loetuks", "marked_all_as_read": "Kõik märgiti loetuks", "matches": "Ühtivad failid", + "matching_assets": "Ühtivad üksused", "media_type": "Meediumi tüüp", "memories": "Mälestused", "memories_all_caught_up": "Ongi kõik", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Nimi või hüüdnimi", "network_requirement_photos_upload": "Kasuta fotode varundamiseks mobiilset andmesidet", "network_requirement_videos_upload": "Kasuta videote varundamiseks mobiilset andmesidet", + "network_requirements": "Võrgu nõuded", "network_requirements_updated": "Võrgu nõuded muutusid, varundamise järjekord lähtestatakse", "networking_settings": "Võrguühendus", "networking_subtitle": "Halda serveri lõpp-punkti seadeid", @@ -1351,6 +1373,7 @@ "new_person": "Uus isik", "new_pin_code": "Uus PIN-kood", "new_pin_code_subtitle": "See on sul esimene kord lukustatud kausta kasutada. Turvaliseks ligipääsuks loo PIN-kood", + "new_timeline": "Uus ajajoon", "new_user_created": "Uus kasutaja lisatud", "new_version_available": "UUS VERSIOON SAADAVAL", "newest_first": "Uuemad eespool", @@ -1364,16 +1387,20 @@ "no_assets_message": "KLIKI ESIMESE FOTO ÜLESLAADIMISEKS", "no_assets_to_show": "Pole üksuseid, mida kuvada", "no_cast_devices_found": "Edastamise seadmeid ei leitud", + "no_checksum_local": "Kontrollsumma pole saadaval - lokaalse üksuse pärimine ebaõnnestus", + "no_checksum_remote": "Kontrollsumma pole saadaval - kaugüksuse pärimine ebaõnnestus", "no_duplicates_found": "Ühtegi duplikaati ei leitud.", "no_exif_info_available": "Exif info pole saadaval", "no_explore_results_message": "Oma kogu avastamiseks laadi üles rohkem fotosid.", "no_favorites_message": "Lisa lemmikud, et oma parimaid fotosid ja videosid kiiresti leida", "no_libraries_message": "Lisa väline kogu oma fotode ja videote vaatamiseks", + "no_local_assets_found": "Selle kontrollsummaga lokaalseid üksuseid ei leitud", "no_locked_photos_message": "Lukustatud kaustas olevad fotod ja videod on peidetud ning need pole kogu sirvimisel ja otsimisel nähtavad.", "no_name": "Nimetu", "no_notifications": "Teavitusi pole", "no_people_found": "Kattuvaid isikuid ei leitud", "no_places": "Kohti ei ole", + "no_remote_assets_found": "Selle kontrollsummaga kaugüksuseid ei leitud", "no_results": "Vasteid pole", "no_results_description": "Proovi sünonüümi või üldisemat märksõna", "no_shared_albums_message": "Lisa album, et fotosid ja videosid teistega jagada", @@ -1587,6 +1614,7 @@ "regenerating_thumbnails": "Pisipiltide uuesti genereerimine", "remote": "Serveris", "remote_assets": "Kaugüksused", + "remote_media_summary": "Kaugüksuste kokkuvõte", "remove": "Eemalda", "remove_assets_album_confirmation": "Kas oled kindel, et soovid {count, plural, one {# üksuse} other {# üksust}} albumist eemaldada?", "remove_assets_shared_link_confirmation": "Kas oled kindel, et soovid eemaldada {count, plural, one {# üksuse} other {# üksust}} sellelt jagatud lingilt?", @@ -1862,6 +1890,7 @@ "show_slideshow_transition": "Kuva slaidiesitluse üleminekud", "show_supporter_badge": "Toetaja märk", "show_supporter_badge_description": "Kuva toetaja märki", + "show_text_search_menu": "Kuva tekstiotsingu menüüd", "shuffle": "Juhuslik", "sidebar": "Külgmenüü", "sidebar_display_description": "Kuva külgmenüüs linki vaatele", @@ -1892,6 +1921,7 @@ "stacktrace": "Pinujälg", "start": "Alusta", "start_date": "Alguskuupäev", + "start_date_before_end_date": "Alguskuupäev peab olema varasem kui lõppkuupäev", "state": "Osariik", "status": "Staatus", "stop_casting": "Lõpeta edastamine", @@ -2027,7 +2057,7 @@ "upload_success": "Üleslaadimine õnnestus, uute üksuste nägemiseks värskenda lehte.", "upload_to_immich": "Laadi Immich'isse ({count})", "uploading": "Üleslaadimine", - "uploading_media": "Meediumi üleslaadimine", + "uploading_media": "Üksuste üleslaadimine", "url": "URL", "usage": "Kasutus", "use_biometric": "Kasuta biomeetriat", @@ -2094,5 +2124,6 @@ "yes": "Jah", "you_dont_have_any_shared_links": "Sul pole ühtegi jagatud linki", "your_wifi_name": "Sinu WiFi-võrgu nimi", - "zoom_image": "Suumi pilti" + "zoom_image": "Suumi pilti", + "zoom_to_bounds": "Suumi piiridesse" } diff --git a/i18n/fi.json b/i18n/fi.json index 2451b30a4b..b3f1542906 100644 --- a/i18n/fi.json +++ b/i18n/fi.json @@ -387,8 +387,6 @@ "admin_password": "Ylläpitäjän salasana", "administration": "Ylläpito", "advanced": "Edistyneet", - "advanced_settings_beta_timeline_subtitle": "Kokeile uutta sovelluskokemusta", - "advanced_settings_beta_timeline_title": "Beta-aikajana", "advanced_settings_enable_alternate_media_filter_subtitle": "Käytä tätä vaihtoehtoa suodattaaksesi mediaa synkronoinnin aikana vaihtoehtoisten kriteerien perusteella. Kokeile tätä vain, jos sovelluksessa on ongelmia kaikkien albumien tunnistamisessa.", "advanced_settings_enable_alternate_media_filter_title": "[KOKEELLINEN] Käytä vaihtoehtoisen laitteen albumin synkronointisuodatinta", "advanced_settings_log_level_title": "Kirjaustaso: {level}", diff --git a/i18n/fr.json b/i18n/fr.json index 29f9025516..c0a76c69fe 100644 --- a/i18n/fr.json +++ b/i18n/fr.json @@ -123,6 +123,13 @@ "logging_enable_description": "Activer la journalisation", "logging_level_description": "Niveau de journalisation lorsque cette option est activée.", "logging_settings": "Journalisation", + "machine_learning_availability_checks": "Vérifications de disponibilité", + "machine_learning_availability_checks_description": "Détecte automatiquement et choisit les serveurs d'apprentissage machine disponibles", + "machine_learning_availability_checks_enabled": "Activer les vérifications de disponibilité", + "machine_learning_availability_checks_interval": "Intervalle de vérification", + "machine_learning_availability_checks_interval_description": "Intervalle en millisecondes entre les vérifications de disponibilité", + "machine_learning_availability_checks_timeout": "Délai d'expiration de la requête", + "machine_learning_availability_checks_timeout_description": "Délai d'expiration en millisecondes pour les vérifications de disponibilité", "machine_learning_clip_model": "Modèle de langage CLIP", "machine_learning_clip_model_description": "Le nom d'un modèle CLIP listé ici. Notez que vous devez réexécuter la tâche 'Recherche intelligente' pour toutes les images après avoir changé de modèle.", "machine_learning_duplicate_detection": "Détection des doublons", @@ -387,8 +394,6 @@ "admin_password": "Mot de passe Admin", "administration": "Administration", "advanced": "Avancé", - "advanced_settings_beta_timeline_subtitle": "Essayer la nouvelle application", - "advanced_settings_beta_timeline_title": "Timeline de la béta", "advanced_settings_enable_alternate_media_filter_subtitle": "Utilisez cette option pour filtrer les média durant la synchronisation avec des critères alternatifs. N'utilisez cela que lorsque l'application n'arrive pas à détecter tous les albums.", "advanced_settings_enable_alternate_media_filter_title": "[EXPÉRIMENTAL] Utiliser le filtre de synchronisation d'album alternatif", "advanced_settings_log_level_title": "Niveau de journalisation : {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Êtes-vous sûr de vouloir supprimer {user} ?", "album_search_not_found": "Aucun album trouvé ne correspond à votre recherche", "album_share_no_users": "Il semble que vous ayez partagé cet album avec tous les utilisateurs ou que vous n'ayez aucun utilisateur avec lequel le partager.", + "album_summary": "Résumé de l'album", "album_updated": "Album mis à jour", "album_updated_setting_description": "Recevoir une notification par courriel lorsqu'un album partagé a de nouveaux médias", "album_user_left": "{album} quitté", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Élément restauré avec succès", "asset_skipped": "Sauté", "asset_skipped_in_trash": "À la corbeille", + "asset_trashed": "Média mis à la corbeille", + "asset_troubleshoot": "Dépannage de média", "asset_uploaded": "Envoyé", "asset_uploading": "Envoi…", "asset_viewer_settings_subtitle": "Modifier les paramètres du visualiseur photos", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Lecture automatique d'un diaporama", "back": "Retour", "back_close_deselect": "Retournez en arrière, fermez ou désélectionnez", + "background_backup_running_error": "La sauvegarde en tâche de fond est actuellement en cours, impossible de démarrer une sauvegarde manuelle", "background_location_permission": "Permission de localisation en arrière plan", "background_location_permission_content": "Afin de pouvoir changer d'adresse en arrière plan, Immich doit avoir *en permanence* accès à la localisation précise, afin d'accéder au le nom du réseau Wi-Fi utilisé", + "background_options": "Options d'arrière-plan", "backup": "Sauvegarde", "backup_album_selection_page_albums_device": "Albums sur l'appareil ({count})", "backup_album_selection_page_albums_tap": "Tapez pour inclure, tapez deux fois pour exclure", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Sélectionner les albums", "backup_album_selection_page_selection_info": "Informations sur la sélection", "backup_album_selection_page_total_assets": "Total des éléments uniques", + "backup_albums_sync": "Sauvegarde de la synchronisation des albums", "backup_all": "Tout", "backup_background_service_backup_failed_message": "Échec de la sauvegarde des médias. Nouvelle tentative…", "backup_background_service_connection_failed_message": "Impossible de se connecter au serveur. Nouvelle tentative…", @@ -654,6 +665,8 @@ "change_pin_code": "Changer le code PIN", "change_your_password": "Changer votre mot de passe", "changed_visibility_successfully": "Visibilité modifiée avec succès", + "charging": "En charge", + "charging_requirement_mobile_backup": "La sauvegarde en tâche de fond nécessite que l'appareil soit en charge", "check_corrupt_asset_backup": "Vérifier la corruption des éléments enregistrés", "check_corrupt_asset_backup_button": "Vérifier", "check_corrupt_asset_backup_description": "Lancer cette vérification uniquement lorsque connecté à un réseau Wi-Fi et que tout le contenu a été enregistré. Cette procédure peut durer plusieurs minutes.", @@ -740,6 +753,7 @@ "create_user": "Créer un utilisateur", "created": "Créé", "created_at": "Créé à", + "creating_linked_albums": "Création des albums liés...", "crop": "Recadrer", "curated_object_page_title": "Objets", "current_device": "Appareil actuel", @@ -889,7 +903,9 @@ "error": "Erreur", "error_change_sort_album": "Impossible de modifier l'ordre de tri des albums", "error_delete_face": "Erreur lors de la suppression du visage pour le média", + "error_getting_places": "Erreur à la récupération des lieux", "error_loading_image": "Erreur de chargement de l'image", + "error_loading_partners": "Erreur de récupération des partenaires : {error}", "error_saving_image": "Erreur : {error}", "error_tag_face_bounding_box": "Erreur lors de l'identification de visage - impossible de récupérer les coordonnées du cadre entourant le visage", "error_title": "Erreur - Quelque chose s'est mal passé", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Aucun élément favori n'a été trouvé", "feature_photo_updated": "Photo de la personne mise à jour", "features": "Fonctionnalités", + "features_in_development": "Fonctionnalités en développement", "features_setting_description": "Gérer les fonctionnalités de l'application", "file_name": "Nom du fichier", "file_name_or_extension": "Nom du fichier ou extension", @@ -1218,6 +1235,7 @@ "local": "Local", "local_asset_cast_failed": "Impossible de caster un média qui n'a pas envoyé vers le serveur", "local_assets": "Média locaux", + "local_media_summary": "Résumé du média local", "local_network": "Réseau local", "local_network_sheet_info": "L'application va se connecter au serveur via cette URL quand l'appareil est connecté à ce réseau Wi-Fi", "location_permission": "Autorisation de localisation", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Saisir la longitude ici", "lock": "Verrouiller", "locked_folder": "Dossier verrouillé", + "log_detail_title": "Niveau de journalisation", "log_out": "Se déconnecter", "log_out_all_devices": "Déconnecter tous les appareils", "logged_in_as": "Connecté en tant que {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Mot de passe mis à jour avec succès", "logout_all_device_confirmation": "Êtes-vous sûr de vouloir déconnecter tous les appareils ?", "logout_this_device_confirmation": "Êtes-vous sûr de vouloir déconnecter cet appareil ?", + "logs": "Journaux", "longitude": "Longitude", "look": "Regarder", "loop_videos": "Vidéos en boucle", @@ -1301,6 +1321,7 @@ "mark_as_read": "Marquer comme lu", "marked_all_as_read": "Tout a été marqué comme lu", "matches": "Correspondances", + "matching_assets": "Médias correspondants", "media_type": "Type de média", "memories": "Souvenirs", "memories_all_caught_up": "Vous avez tout vu", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Nom ou surnom", "network_requirement_photos_upload": "Utiliser les données mobile pour sauvegarder les photos", "network_requirement_videos_upload": "Utiliser les données mobile pour sauvegarder les vidéos", + "network_requirements": "Prérequis réseau", "network_requirements_updated": "Contraintes réseau modifiées, file d'attente de sauvegarde réinitialisée", "networking_settings": "Réseau", "networking_subtitle": "Gérer les adresses du serveur", @@ -1351,6 +1373,7 @@ "new_person": "Nouvelle personne", "new_pin_code": "Nouveau code PIN", "new_pin_code_subtitle": "C'est votre premier accès au dossier verrouillé. Créez un code PIN pour sécuriser l'accès à cette page", + "new_timeline": "Nouvelle vue chronologique", "new_user_created": "Nouvel utilisateur créé", "new_version_available": "NOUVELLE VERSION DISPONIBLE", "newest_first": "Récents en premier", @@ -1364,20 +1387,25 @@ "no_assets_message": "CLIQUEZ POUR ENVOYER VOTRE PREMIÈRE PHOTO", "no_assets_to_show": "Aucun élément à afficher", "no_cast_devices_found": "Aucun appareil de diffusion trouvé", + "no_checksum_local": "Aucune empreinte numerique disponible - impossible de récupérer les médias locaux", + "no_checksum_remote": "Aucune empreinte numérique disponible - impossible de récupérer les médias distants", "no_duplicates_found": "Aucun doublon n'a été trouvé.", "no_exif_info_available": "Aucune information exif disponible", "no_explore_results_message": "Envoyez plus de photos pour explorer votre bibliothèque.", "no_favorites_message": "Ajouter des photos et vidéos à vos favoris pour les retrouver plus rapidement", "no_libraries_message": "Créer une bibliothèque externe pour voir vos photos et vidéos dans un autre espace de stockage", + "no_local_assets_found": "Aucun média local trouvé avec cette empreinte numerique", "no_locked_photos_message": "Les photos et vidéos du dossier verrouillé sont masqués et ne s'afficheront pas dans votre galerie ou la recherche.", "no_name": "Pas de nom", "no_notifications": "Pas de notification", "no_people_found": "Aucune personne correspondante trouvée", "no_places": "Pas de lieu", + "no_remote_assets_found": "Aucun média distant trouvé avec cette empreinte numerique", "no_results": "Aucun résultat", "no_results_description": "Essayez un synonyme ou un mot-clé plus général", "no_shared_albums_message": "Créer un album pour partager vos photos et vidéos avec les personnes de votre réseau", "no_uploads_in_progress": "Pas d'envoi en cours", + "not_available": "N/A", "not_in_any_album": "Dans aucun album", "not_selected": "Non sélectionné", "note_apply_storage_label_to_previously_uploaded assets": "Note : Pour appliquer l'étiquette de stockage aux médias précédemment envoyés, exécutez", @@ -1499,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Gérer les préférences de l'application", "preferences_settings_title": "Préférences", + "preparing": "Préparation", "preset": "Préréglage", "preview": "Aperçu", "previous": "Précédent", @@ -1564,6 +1593,7 @@ "read_changelog": "Lire les changements", "readonly_mode_disabled": "Mode lecture seule désactivé", "readonly_mode_enabled": "Mode lecture seule activé", + "ready_for_upload": "Téléchargement prêt", "reassign": "Réattribuer", "reassigned_assets_to_existing_person": "{count, plural, one {# média réattribué} other {# médias réattribués}} à {name, select, null {une personne existante} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {# média réattribué} other {# médias réattribués}} à une nouvelle personne", @@ -1588,6 +1618,7 @@ "regenerating_thumbnails": "Regénération des miniatures", "remote": "À distance", "remote_assets": "Média à distance", + "remote_media_summary": "Résumé du média distant", "remove": "Supprimer", "remove_assets_album_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# média} other {# médias}} de l'album ?", "remove_assets_shared_link_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# média} other {# médias}} de ce lien partagé ?", @@ -1863,6 +1894,7 @@ "show_slideshow_transition": "Afficher la transition du diaporama", "show_supporter_badge": "Badge de contributeur", "show_supporter_badge_description": "Afficher le badge de contributeur", + "show_text_search_menu": "Afficher le menu de recherche de texte", "shuffle": "Mélanger", "sidebar": "Barre latérale", "sidebar_display_description": "Afficher un lien vers la vue dans la barre latérale", @@ -1893,6 +1925,7 @@ "stacktrace": "Trace de la pile", "start": "Commencer", "start_date": "Date de début", + "start_date_before_end_date": "La date de début doit être avant la date de fin", "state": "Région", "status": "Statut", "stop_casting": "Arrêter la diffusion", @@ -2095,5 +2128,6 @@ "yes": "Oui", "you_dont_have_any_shared_links": "Vous n'avez aucun lien partagé", "your_wifi_name": "Nom du réseau wifi", - "zoom_image": "Zoomer" + "zoom_image": "Zoomer", + "zoom_to_bounds": "Zoom sur la zone" } diff --git a/i18n/gl.json b/i18n/gl.json index 6851b8e7c2..b6a59fadc7 100644 --- a/i18n/gl.json +++ b/i18n/gl.json @@ -45,11 +45,18 @@ "authentication_settings_disable_all": "Estás seguro de que queres desactivar todos os métodos de inicio de sesión? O inicio de sesión desactivarase completamente.", "authentication_settings_reenable": "Para reactivalo, use un Comando de servidor.", "background_task_job": "Tarefas en segundo plano", - "backup_database": "Copia de seguridade da base de datos", - "backup_database_enable_description": "Activar copias de seguridade da base de datos", + "backup_database": "Crear un vertedoiro de base de datos", + "backup_database_enable_description": "Activar o vertedoiro de copias de seguridade da base de datos", "backup_keep_last_amount": "Cantidade de copias de seguridade anteriores a conservar", + "backup_onboarding_1_description": "Copia no exterior na nube ou noutra localización física.", + "backup_onboarding_2_description": "Copias locais en diferentes dispositivos. Isto inclue os arquivos principais e as copias de esos arquivos localmente.", + "backup_onboarding_3_description": "copias totais da tua información, incluindo os arquivos orixinais. Isto inclue 1 copia externa e 2 copias locais.", + "backup_onboarding_description": "Unha estratexia de copia 3-2-1 é recomendada para protexer os teus datos. Deberías gardar copias das túas fotos/videos subidas así como da base de datos de Immich como unha solución de seguridade.", + "backup_onboarding_footer": "Pra máis información sobre copias de seguridade de Immich, por favor use a seguinte ligazón de documentación.", + "backup_onboarding_parts_title": "Unha copia de seguridade 3-2-1 inclue:", + "backup_onboarding_title": "Copia de seguridade", "backup_settings": "Configuración da copia de seguridade", - "backup_settings_description": "Xestionar a configuración da copia de seguridade da base de datos", + "backup_settings_description": "Xestionar a configuración do volcado da base de datos", "cleared_jobs": "Traballos borrados para: {job}", "config_set_by_file": "A configuración establécese actualmente mediante un ficheiro de configuración", "confirm_delete_library": "Estás seguro de que queres eliminar a biblioteca {library}?", @@ -116,6 +123,13 @@ "logging_enable_description": "Activar rexistro", "logging_level_description": "Cando estea activado, que nivel de rexistro usar.", "logging_settings": "Rexistro", + "machine_learning_availability_checks": "Comprobacións de dispoñibilidade", + "machine_learning_availability_checks_description": "Detectar automáticamente e preferir servidores de aprendizaxe profunda dispoñibles", + "machine_learning_availability_checks_enabled": "Activar comprobacións de dispoñibilidade", + "machine_learning_availability_checks_interval": "Intervalo de comprobación", + "machine_learning_availability_checks_interval_description": "Intervalo en milisegundos entre comprobacións de dispoñibilidade", + "machine_learning_availability_checks_timeout": "Tempo de espera da solicitude", + "machine_learning_availability_checks_timeout_description": "Tempo de espera en milisegundos para as comprobación de dispoñibilidade", "machine_learning_clip_model": "Modelo CLIP", "machine_learning_clip_model_description": "O nome dun modelo CLIP listado aquí. Ten en conta que debe volver executar o traballo 'Busca Intelixente' para todas as imaxes ao cambiar un modelo.", "machine_learning_duplicate_detection": "Detección de duplicados", @@ -170,6 +184,19 @@ "metadata_settings_description": "Xestionar a configuración de metadatos", "migration_job": "Migración", "migration_job_description": "Migrar miniaturas de activos e caras á última estrutura de cartafoles", + "nightly_tasks_cluster_faces_setting_description": "Executar recoñecemento facial nas novas caras detectadas", + "nightly_tasks_cluster_new_faces_setting": "Agrupar novas caras", + "nightly_tasks_database_cleanup_setting": "Tarefas de limpeza da base de datos", + "nightly_tasks_database_cleanup_setting_description": "Limpar información vella e obsoleta da base de datos", + "nightly_tasks_generate_memories_setting": "Xerar memorias", + "nightly_tasks_generate_memories_setting_description": "Crear novas memorias dende os recursos", + "nightly_tasks_missing_thumbnails_setting": "Xerar as miniaturas que faltan", + "nightly_tasks_missing_thumbnails_setting_description": "Encolar arquivos sin miniaturas para a xeración das miniaturas", + "nightly_tasks_settings": "Configuración das tarefas nocturnas", + "nightly_tasks_settings_description": "Administrar as tarefas nocturnas", + "nightly_tasks_start_time_setting": "Tempo de inicio", + "nightly_tasks_start_time_setting_description": "O tempo no que o servidor comeza a executar as tarefas nocturnas", + "nightly_tasks_sync_quota_usage_setting": "Sincronizar uso de cuota", "no_paths_added": "Non se engadiron rutas", "no_pattern_added": "Non se engadiu ningún padrón", "note_apply_storage_label_previous_assets": "Nota: Para aplicar a Etiqueta de Almacenamento a activos cargados previamente, execute o", diff --git a/i18n/he.json b/i18n/he.json index d8529413a0..3bf4f703e8 100644 --- a/i18n/he.json +++ b/i18n/he.json @@ -123,6 +123,9 @@ "logging_enable_description": "אפשר רישום ביומן", "logging_level_description": "כאשר פועל, באיזה רמת יומן לתעד.", "logging_settings": "רישום ביומן", + "machine_learning_availability_checks": "בדיקת זמינות", + "machine_learning_availability_checks_enabled": "הפעלת בדיקות זמינות", + "machine_learning_availability_checks_interval": "תזמון בדיקה", "machine_learning_clip_model": "מודל CLIP", "machine_learning_clip_model_description": "שמו של מודל CLIP רשום כאן. שים לב שעליך להפעיל מחדש את המשימה 'חיפוש חכם' עבור כל התמונות בעת שינוי מודל.", "machine_learning_duplicate_detection": "איתור כפילויות", @@ -387,8 +390,6 @@ "admin_password": "סיסמת מנהל", "administration": "ניהול", "advanced": "מתקדם", - "advanced_settings_beta_timeline_subtitle": "נסה את חווית האפליקציה החדשה", - "advanced_settings_beta_timeline_title": "ציר זמן (בטא)", "advanced_settings_enable_alternate_media_filter_subtitle": "השתמש באפשרות זו כדי לסנן מדיה במהלך הסנכרון לפי קריטריונים חלופיים. מומלץ להשתמש בזה רק אם יש בעיה בזיהוי כל האלבומים באפליקציה.", "advanced_settings_enable_alternate_media_filter_title": "[ניסיוני] השתמש במסנן סנכרון אלבום חלופי שמבכשיר", "advanced_settings_log_level_title": "רמת רישום ביומן: {level}", @@ -425,6 +426,7 @@ "album_remove_user_confirmation": "האם באמת ברצונך להסיר את {user}?", "album_search_not_found": "לא נמצאו אלבומים התואמים לחיפוש שלך", "album_share_no_users": "נראה ששיתפת את האלבום הזה עם כל המשתמשים או שאין לך אף משתמש לשתף איתו.", + "album_summary": "תקציר אלבום", "album_updated": "אלבום עודכן", "album_updated_setting_description": "קבל הודעת דוא\"ל כאשר לאלבום משותף יש תמונות חדשות", "album_user_left": "עזב את {album}", @@ -1564,10 +1566,11 @@ "read_changelog": "קרא את יומן השינויים", "readonly_mode_disabled": "מצב לקריאה בלבד מושבת", "readonly_mode_enabled": "מצב לקריאה בלבד מופעל", - "reassign": "הקצה מחדש", + "ready_for_upload": "מוכן להעלאה", + "reassign": "הקצאה מחדש", "reassigned_assets_to_existing_person": "{count, plural, one {תמונה # הוקצתה} other {# תמונות הוקצו}} מחדש אל {name, select, null {אדם קיים} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {תמונה # הוקצתה} other {# תמונות הוקצו}} מחדש לאדם חדש", - "reassing_hint": "הקצה תמונות שנבחרו לאדם קיים", + "reassing_hint": "הקצאת תמונות שנבחרו לאדם קיים", "recent": "חדש", "recent-albums": "אלבומים אחרונים", "recent_searches": "חיפושים אחרונים", @@ -1575,11 +1578,11 @@ "recently_added_page_title": "נוסף לאחרונה", "recently_taken": "צולם לאחרונה", "recently_taken_page_title": "צולם לאחרונה", - "refresh": "רענן", - "refresh_encoded_videos": "רענן סרטונים מקודדים", - "refresh_faces": "רענן פנים", - "refresh_metadata": "רענן מטא-נתונים", - "refresh_thumbnails": "רענן תמונות ממוזערות", + "refresh": "רענון", + "refresh_encoded_videos": "רענון סרטונים מקודדים", + "refresh_faces": "רענון פנים", + "refresh_metadata": "רענון מטא-נתונים", + "refresh_thumbnails": "רענון תמונות ממוזערות", "refreshed": "רוענן", "refreshes_every_file": "קורא מחדש את כל הקבצים הקיימים והחדשים", "refreshing_encoded_video": "מרענן סרטון מקודד", @@ -1588,15 +1591,16 @@ "regenerating_thumbnails": "מחדש תמונות ממוזערות", "remote": "מרוחק", "remote_assets": "תמונות מרוחקות", - "remove": "הסר", + "remote_media_summary": "תקציר תמונות מרוחקות", + "remove": "הסרה", "remove_assets_album_confirmation": "האם באמת ברצונך להסיר {count, plural, one {תמונה #} other {# תמונות}} מהאלבום?", - "remove_assets_shared_link_confirmation": "האם אתה בטוח שברצונך להסיר {count, plural, one {תמונה #} other {# תמונות}} מהקישור המשותף הזה?", + "remove_assets_shared_link_confirmation": "האם ברצונך להסיר {count, plural, one {תמונה #} other {# תמונות}} מהקישור המשותף הזה?", "remove_assets_title": "להסיר תמונות?", - "remove_custom_date_range": "הסר טווח תאריכים מותאם", - "remove_deleted_assets": "הסר קבצים לא מקוונים", - "remove_from_album": "הסר מאלבום", + "remove_custom_date_range": "הסרת טווח תאריכים מותאם", + "remove_deleted_assets": "הסרת קבצים לא מקוונים", + "remove_from_album": "הסרה מאלבום", "remove_from_album_action_prompt": "{count} הוסרו מהאלבום", - "remove_from_favorites": "הסר מהמועדפים", + "remove_from_favorites": "הסרה מהמועדפים", "remove_from_lock_folder_action_prompt": "{count} הוסרו מהתיקייה הנעולה", "remove_from_locked_folder": "הסר מהתיקייה הנעולה", "remove_from_locked_folder_confirmation": "האם אתה בטוח שברצונך להעביר את התמונות והסרטונים האלה מחוץ לתיקייה הנעולה? הם יהיו מוצגים בספרייה שלך.", diff --git a/i18n/hi.json b/i18n/hi.json index 90795e7330..4c9eb7bd5d 100644 --- a/i18n/hi.json +++ b/i18n/hi.json @@ -381,8 +381,6 @@ "admin_password": "व्यवस्थापक पासवर्ड", "administration": "प्रशासन", "advanced": "विकसित", - "advanced_settings_beta_timeline_subtitle": "नए ऐप अनुभव को आज़माएँ", - "advanced_settings_beta_timeline_title": "बीटा टाइमलाइन", "advanced_settings_enable_alternate_media_filter_subtitle": "सिंक के दौरान वैकल्पिक मानदंडों के आधार पर मीडिया को फ़िल्टर करने के लिए इस विकल्प का उपयोग करें। इसे केवल तभी आज़माएँ जब आपको ऐप द्वारा सभी एल्बमों का पता लगाने में समस्या हो।", "advanced_settings_enable_alternate_media_filter_title": "[प्रयोगात्मक] वैकल्पिक डिवाइस एल्बम सिंक फ़िल्टर का उपयोग करें", "advanced_settings_log_level_title": "लॉग स्तर:{level}", diff --git a/i18n/hr.json b/i18n/hr.json index 329ff1438d..32331976c1 100644 --- a/i18n/hr.json +++ b/i18n/hr.json @@ -387,8 +387,6 @@ "admin_password": "Admin lozinka", "administration": "Administracija", "advanced": "Napredno", - "advanced_settings_beta_timeline_subtitle": "Isprobaj novo iskustvo aplikacije", - "advanced_settings_beta_timeline_title": "Beta vremenska crta", "advanced_settings_enable_alternate_media_filter_subtitle": "Koristite ovu opciju za filtriranje medija tijekom sinkronizacije na temelju alternativnih kriterija. Pokušajte ovo samo ako imate problema s aplikacijom koja ne prepoznaje sve albume.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTALNO] Koristite alternativni filter za sinkronizaciju albuma na uređaju", "advanced_settings_log_level_title": "Razina zapisivanja: {level}", diff --git a/i18n/hu.json b/i18n/hu.json index 598910789d..131df91a79 100644 --- a/i18n/hu.json +++ b/i18n/hu.json @@ -123,6 +123,13 @@ "logging_enable_description": "Naplózás engedélyezése", "logging_level_description": "Ha be van kapcsolva, milyen részletességű legyen a naplózás.", "logging_settings": "Naplózás", + "machine_learning_availability_checks": "Elérhetőség ellenőrzése", + "machine_learning_availability_checks_description": "Automatikusan keressen és válasszon elérhető gépi tanulás szervereket", + "machine_learning_availability_checks_enabled": "Elérhetőség ellenőrzésének bekapcsolása", + "machine_learning_availability_checks_interval": "Ellenőrzési intervallum", + "machine_learning_availability_checks_interval_description": "Elérhetőség-ellenőrzések közötti késleltetés milliszekundumban", + "machine_learning_availability_checks_timeout": "Kérések időkorlátja", + "machine_learning_availability_checks_timeout_description": "Elérhetőség-ellenőrzések időkorlátja milliszekundumban", "machine_learning_clip_model": "CLIP modell", "machine_learning_clip_model_description": "Egy CLIP modell neve az itt felsoroltak közül. A modell megváltoztatása után újra kell futtatni az 'Okos Keresés' feladatot minden képre.", "machine_learning_duplicate_detection": "Duplikációk Keresése", @@ -387,8 +394,6 @@ "admin_password": "Admin Jelszó", "administration": "Adminisztráció", "advanced": "Haladó", - "advanced_settings_beta_timeline_subtitle": "Próbáld ki az új alkalmazást", - "advanced_settings_beta_timeline_title": "Béta Idővonal", "advanced_settings_enable_alternate_media_filter_subtitle": "Ezzel a beállítással a szinkronizálás során alternatív kritériumok alapján szűrheted a fájlokat. Csak akkor próbáld ki, ha problémáid vannak azzal, hogy az alkalmazás nem ismeri fel az összes albumot.", "advanced_settings_enable_alternate_media_filter_title": "[KÍSÉRLETI] Alternatív eszköz album szinkronizálási szűrő használata", "advanced_settings_log_level_title": "Naplózás szintje: {level}", @@ -396,6 +401,8 @@ "advanced_settings_prefer_remote_title": "Távoli képek előnyben részesítése", "advanced_settings_proxy_headers_subtitle": "Add meg azokat a proxy fejléceket, amiket az app elküldjön minden hálózati kérésnél", "advanced_settings_proxy_headers_title": "Proxy Fejlécek", + "advanced_settings_readonly_mode_subtitle": "Bekapcsol egy írásvédett módot ahol csak fotókat nézni lehetséges, egyebek, mint több kép kiválasztása, megosztás, kivetítés és törlés ki vannak kapcsolva. Ki/bekapcsolható a felhasználó ikonjáról a fő képernyőn", + "advanced_settings_readonly_mode_title": "Írásvédett Mód", "advanced_settings_self_signed_ssl_subtitle": "Nem ellenőrzi a szerver SSL tanúsítványát. Önaláírt tanúsítvány esetén szükséges beállítás.", "advanced_settings_self_signed_ssl_title": "Önaláírt SSL tanúsítványok engedélyezése", "advanced_settings_sync_remote_deletions_subtitle": "Automatikusan törölni vagy visszaállítani egy elemet ezen az eszközön, ha az adott műveletet a weben hajtották végre", @@ -423,6 +430,7 @@ "album_remove_user_confirmation": "Biztos, hogy el szeretnéd távolítani {user} felhasználót?", "album_search_not_found": "Nem található a keresésnek megfelelő album", "album_share_no_users": "Úgy tűnik, hogy már minden felhasználóval megosztottad ezt az albumot, vagy nincs senki, akivel meg tudnád osztani.", + "album_summary": "Album összefogalaló", "album_updated": "Album frissült", "album_updated_setting_description": "Küldjön email értesítőt, amikor egy megosztott albumhoz új elemeket adnak hozzá", "album_user_left": "Kiléptél a(z) {album} albumból", @@ -461,6 +469,7 @@ "app_bar_signout_dialog_title": "Kijelentkezés", "app_settings": "Alkalmazás Beállítások", "appears_in": "Itt szerepel", + "apply_count": "Alkalmaz ({count, number})", "archive": "Archívum", "archive_action_prompt": "{count} elem hozzáadva az Archívumhoz", "archive_or_unarchive_photo": "Fotó archiválása vagy archiválásának visszavonása", @@ -493,6 +502,8 @@ "asset_restored_successfully": "Elem sikeresen helyreállítva", "asset_skipped": "Kihagyva", "asset_skipped_in_trash": "Lomtárban", + "asset_trashed": "Elem lomtárba helyezve", + "asset_troubleshoot": "Hibajavítás", "asset_uploaded": "Feltöltve", "asset_uploading": "Feltöltés…", "asset_viewer_settings_subtitle": "A képnézegető beállításainak kezelése", @@ -500,7 +511,7 @@ "assets": "Elemek", "assets_added_count": "{count, plural, other {# elem}} hozzáadva", "assets_added_to_album_count": "{count, plural, other {# elem}} hozzáadva az albumhoz", - "assets_added_to_albums_count": "Az {assetTotal, plural, one {elem} other {elemek}} hozzáadva {albumTotal} albumhoz", + "assets_added_to_albums_count": "{assetTotal, plural, one {# elem} other {# elemek}} hozzáadva {albumTotal, plural, one {# albumhoz} other {# albumokhoz}}", "assets_cannot_be_added_to_album_count": "{count, plural, one {Az elem} other {Az elemek}} nem adhatóak hozzá az albumhoz", "assets_cannot_be_added_to_albums": "Az {count, plural, one {elemet} other {elemeket}} nem lehet hozzáadni egy albumhoz sem", "assets_count": "{count, plural, other {# elem}}", @@ -526,8 +537,10 @@ "autoplay_slideshow": "Automatikus diavetítés", "back": "Vissza", "back_close_deselect": "Vissza, bezárás, vagy kijelölés törlése", + "background_backup_running_error": "Háttérben futó mentés folyamatban, kézi mentés nem indítható", "background_location_permission": "Háttérben történő helymeghatározási engedély", "background_location_permission_content": "Hálózatok automatikus váltásához az Immich-nek *mindenképpen* hozzá kell férnie a pontos helyzethez, hogy az alkalmazás le tudja kérni a Wi-Fi hálózat nevét", + "background_options": "Háttérbeli futás beállításai", "backup": "Mentés", "backup_album_selection_page_albums_device": "Ezen az eszközön lévő albumok ({count})", "backup_album_selection_page_albums_tap": "Koppints a hozzáadáshoz, duplán koppints az eltávolításhoz", @@ -651,6 +664,8 @@ "change_pin_code": "PIN kód megváltoztatása", "change_your_password": "Jelszavad megváltoztatása", "changed_visibility_successfully": "Láthatóság sikeresen megváltoztatva", + "charging": "Töltés", + "charging_requirement_mobile_backup": "Háttérben mentéshez szükséges, hogy az eszköz töltőn legyen", "check_corrupt_asset_backup": "Sérült elemek keresése a mentésben", "check_corrupt_asset_backup_button": "Ellenőrzés", "check_corrupt_asset_backup_description": "Ezt az ellenőtzést csak Wi-Fi hálózaton futtasd és csak akkot, ha már az összes elem feltöltésre került. A folyamat néhány percig is eltarthat.", @@ -737,6 +752,7 @@ "create_user": "Felhasználó létrehozása", "created": "Készült", "created_at": "Létrehozva", + "creating_linked_albums": "Kapcsolt albumok létrehozása...", "crop": "Kivágás", "curated_object_page_title": "Dolgok", "current_device": "Ez az eszköz", @@ -886,7 +902,9 @@ "error": "Hiba", "error_change_sort_album": "Album sorbarendezésének megváltoztatása sikertelen", "error_delete_face": "Hiba az arc törlése során", + "error_getting_places": "Hiba a helyek betöltésekor", "error_loading_image": "Hiba a kép betöltése közben", + "error_loading_partners": "Hiba a partnerek betöltésénél: {error}", "error_saving_image": "Hiba: {error}", "error_tag_face_bounding_box": "Hiba az arc megjelölése közben - nem elérhetőek a határoló koordináták", "error_title": "Hiba - valami félresikerült", @@ -1051,6 +1069,7 @@ "favorites_page_no_favorites": "Nem található kedvencnek jelölt elem", "feature_photo_updated": "Címlapkép frissítve", "features": "Jellemzők", + "features_in_development": "Folyamatban lévő fejlesztések", "features_setting_description": "Az alkalmazás jellemzőinek kezelése", "file_name": "Fájlnév", "file_name_or_extension": "Fájlnév vagy kiterjesztés", @@ -1071,12 +1090,15 @@ "gcast_enabled": "Google Cast", "gcast_enabled_description": "Ez a funkció a Google-től tölti be a működéséhez szükséges külső adatokat.", "general": "Általános", + "geolocation_instruction_location": "Kattints egy elemre, amelynek ismert a helyszíne a pozíció kiválasztásához, vagy válassz a térképen", "get_help": "Segítségkérés", "get_wifiname_error": "Nem sikerült lekérni a Wi-Fi nevét. Győződj meg róla, hogy megadtad a szükséges engedélyeket és csatlakoztál egy Wi-Fi hálózathoz", "getting_started": "Kezdő Lépések", "go_back": "Visszalépés", "go_to_folder": "Ugrás a mappához", "go_to_search": "Ugrás a kereséshez", + "gps": "GPS", + "gps_missing": "Nincs GPS", "grant_permission": "Engedély megadása", "group_albums_by": "Albumok csoportosítása...", "group_country": "Csoportosítás ország szerint", @@ -1212,6 +1234,7 @@ "local": "Helyi", "local_asset_cast_failed": "Nem lehet olyan elemet vetíteni, ami nincs a szerverre feltöltve", "local_assets": "Helyi Elemek", + "local_media_summary": "Helyi média összegzés", "local_network": "Helyi hálózat", "local_network_sheet_info": "Az alkalmazés ezen az URL címen fogja elérni a szervert, ha a megadott WiFi hálózathoz van csatlankozva", "location_permission": "Helymeghatározási engedély", @@ -1223,6 +1246,7 @@ "location_picker_longitude_hint": "Ide írd a hosszúsági kört", "lock": "Zárolás", "locked_folder": "Zárolt mappa", + "log_detail_title": "Naplók részletei", "log_out": "Kijelentkezés", "log_out_all_devices": "Kijelentkezés Minden Eszközön", "logged_in_as": "Belépve: {user} néven", @@ -1253,6 +1277,7 @@ "login_password_changed_success": "Jelszó sikeresen módosítva", "logout_all_device_confirmation": "Biztos, hogy minden eszközön ki szeretnél jelentkezni?", "logout_this_device_confirmation": "Biztos, hogy ki szeretnél jelentkezni ezen az eszközön?", + "logs": "Naplók", "longitude": "Hosszúság", "look": "Megjelenítés", "loop_videos": "Videók ismétlése", @@ -1260,6 +1285,7 @@ "main_branch_warning": "Fejlesztői verziót használsz. Javasoljuk a stabil verzió használatát!", "main_menu": "Főmenü", "make": "Gyártó", + "manage_geolocation": "Helyadatok kezelése", "manage_shared_links": "Megosztási linkek kezelése", "manage_sharing_with_partners": "Partnerekkel való megosztás kezelése", "manage_the_app_settings": "Alkalmazás beállításainak kezelése", @@ -1294,6 +1320,7 @@ "mark_as_read": "Megjelölés olvasottként", "marked_all_as_read": "Összes megjelölve olvasottként", "matches": "Azonosak", + "matching_assets": "Kapcsolódó elemek", "media_type": "Médiatípus", "memories": "Emlékek", "memories_all_caught_up": "Naprakész vagy", @@ -1334,6 +1361,7 @@ "name_or_nickname": "Név vagy becenév", "network_requirement_photos_upload": "Mobil adatforgalmat használjon a fényképek biztonsági mentéséhez", "network_requirement_videos_upload": "Mobil adatforgalmat használjon a videók biztonsági mentéséhez", + "network_requirements": "Hálózati követelmények", "network_requirements_updated": "A hálózat megváltozott, a biztonsági mentési sor visszaállítása", "networking_settings": "Hálózat", "networking_subtitle": "Szerver végpont beállítások kezelése", @@ -1344,6 +1372,7 @@ "new_person": "Új személy", "new_pin_code": "Új PIN kód", "new_pin_code_subtitle": "Ez az első alkalom hogy megnyitod a zárolt mappát. Hozz létre egy jelszót a mappa biztonságos eléréséhez", + "new_timeline": "Új idővonal", "new_user_created": "Új felhasználó létrehozva", "new_version_available": "ÚJ VERZIÓ ÉRHETŐ EL", "newest_first": "Legújabb először", @@ -1902,6 +1931,8 @@ "sync_albums_manual_subtitle": "Összes fotó és videó létrehozása és szinkronizálása a kiválasztott Immich albumokba", "sync_local": "Helyi Szinkronizálása", "sync_remote": "Távoli Szinkronizálása", + "sync_status": "Szinkronizálás állapota", + "sync_status_subtitle": "Szinkronizálás megtekintése és kezelése", "sync_upload_album_setting_subtitle": "Fotók és videók létrehozása és szinkronizálása a kiválasztott Immich albumba", "tag": "Címke", "tag_assets": "Elemek címkézése", @@ -1989,6 +2020,7 @@ "unstacked_assets_count": "{count, plural, other {# elemből}} álló csoport szétszedve", "untagged": "Címke eltávolítva", "up_next": "Következik", + "update_location_action_prompt": "{count} elem pozíciójának frissítése a következővel:", "updated_at": "Frissített", "updated_password": "Jelszó megváltoztatva", "upload": "Feltöltés", @@ -2055,6 +2087,7 @@ "view_next_asset": "Következő elem megtekintése", "view_previous_asset": "Előző elem megtekintése", "view_qr_code": "QR kód megtekintése", + "view_similar_photos": "Hasonló képek keresése", "view_stack": "Csoport Megtekintése", "view_user": "Felhasználó Megtekintése", "viewer_remove_from_stack": "Eltávolít a Csoportból", diff --git a/i18n/id.json b/i18n/id.json index abe57386ac..40a4ddbef4 100644 --- a/i18n/id.json +++ b/i18n/id.json @@ -387,8 +387,6 @@ "admin_password": "Kata Sandi Admin", "administration": "Administrasi", "advanced": "Tingkat lanjut", - "advanced_settings_beta_timeline_subtitle": "Coba pengalaman aplikasi baru", - "advanced_settings_beta_timeline_title": "Garis waktu Beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Gunakan opsi ini untuk menyaring media saat sinkronisasi berdasarkan kriteria alternatif. Hanya coba ini dengan aplikasi mendeteksi semua album.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTAL] Gunakan saringan sinkronisasi album perangkat alternatif", "advanced_settings_log_level_title": "Tingkat log: {level}", diff --git a/i18n/it.json b/i18n/it.json index eca0ebf644..044e86c6df 100644 --- a/i18n/it.json +++ b/i18n/it.json @@ -387,8 +387,6 @@ "admin_password": "Password Amministratore", "administration": "Amministrazione", "advanced": "Avanzate", - "advanced_settings_beta_timeline_subtitle": "Prova la nuova esperienza dell'app", - "advanced_settings_beta_timeline_title": "Timeline beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Usa questa opzione per filtrare i contenuti multimediali durante la sincronizzazione in base a criteri alternativi. Prova questa opzione solo se riscontri problemi con il rilevamento di tutti gli album da parte dell'app.", "advanced_settings_enable_alternate_media_filter_title": "[SPERIMENTALE] Usa un filtro alternativo per la sincronizzazione degli album del dispositivo", "advanced_settings_log_level_title": "Livello log: {level}", @@ -425,6 +423,7 @@ "album_remove_user_confirmation": "Sicuro di voler rimuovere l'utente {user}?", "album_search_not_found": "Nessun album trovato corrispondente alla tua ricerca", "album_share_no_users": "Sembra che tu abbia condiviso questo album con tutti gli utenti oppure non hai nessun utente con cui condividere.", + "album_summary": "Sommario Album", "album_updated": "Album aggiornato", "album_updated_setting_description": "Ricevi una notifica email quando un album condiviso ha nuovi media", "album_user_left": "{album} abbandonato", @@ -496,6 +495,8 @@ "asset_restored_successfully": "Elemento ripristinato con successo", "asset_skipped": "Saltato", "asset_skipped_in_trash": "Nel cestino", + "asset_trashed": "Asset cestinato", + "asset_troubleshoot": "Risoluzione dei problemi dell'asset", "asset_uploaded": "Caricato", "asset_uploading": "Caricamento…", "asset_viewer_settings_subtitle": "Gestisci le impostazioni del visualizzatore della galleria", @@ -529,6 +530,7 @@ "autoplay_slideshow": "Avvio automatico presentazione", "back": "Indietro", "back_close_deselect": "Indietro, chiudi o deseleziona", + "background_backup_running_error": "Il backup in background è attualmente in esecuzione, impossibile avviare il backup manuale", "background_location_permission": "Permesso di localizzazione in background", "background_location_permission_content": "Per fare in modo che sia possibile cambiare rete quando è in esecuzione in background, Immich deve *sempre* avere accesso alla tua posizione precisa in modo da poter leggere il nome della rete Wi-Fi", "backup": "Backup", @@ -740,6 +742,7 @@ "create_user": "Crea utente", "created": "Creato", "created_at": "Creato il", + "creating_linked_albums": "Creazione di album collegati...", "crop": "Ritaglia", "curated_object_page_title": "Oggetti", "current_device": "Dispositivo attuale", @@ -889,7 +892,9 @@ "error": "Errore", "error_change_sort_album": "Errore nel cambiare l'ordine di degli album", "error_delete_face": "Errore nel cancellare la faccia dalla foto", + "error_getting_places": "Errore durante il recupero dei luoghi", "error_loading_image": "Errore nel caricamento dell'immagine", + "error_loading_partners": "Errore durante il caricamento dei partner: {error}", "error_saving_image": "Errore: {error}", "error_tag_face_bounding_box": "Errore durante il tag del volto - impossibile ricavare le coordinate del riquadro", "error_title": "Errore - Qualcosa è andato storto", @@ -1054,6 +1059,7 @@ "favorites_page_no_favorites": "Nessun preferito", "feature_photo_updated": "Foto in evidenza aggiornata", "features": "Funzionalità", + "features_in_development": "Funzionalità in fase di sviluppo", "features_setting_description": "Gestisci le funzionalità dell'app", "file_name": "Nome file", "file_name_or_extension": "Nome file o estensione", @@ -1218,6 +1224,7 @@ "local": "Locale", "local_asset_cast_failed": "Impossibile trasmettere una risorsa che non è caricata sul server", "local_assets": "Risorsa locale", + "local_media_summary": "Riepilogo dei Media Locali", "local_network": "Rete locale", "local_network_sheet_info": "L'app si collegherà al server tramite questo URL quando è in uso la rete Wi-Fi specificata", "location_permission": "Permesso di localizzazione", @@ -1229,6 +1236,7 @@ "location_picker_longitude_hint": "Inserisci la longitudine qui", "lock": "Rendi privato", "locked_folder": "Cartella Privata", + "log_detail_title": "Dettaglio dei Log", "log_out": "Esci", "log_out_all_devices": "Disconnetti tutti i dispositivi", "logged_in_as": "Effettuato l'accesso come {user}", @@ -1259,6 +1267,7 @@ "login_password_changed_success": "Password aggiornata con successo", "logout_all_device_confirmation": "Sei sicuro di volerti disconnettere da tutti i dispositivi?", "logout_this_device_confirmation": "Sei sicuro di volerti disconnettere da questo dispositivo?", + "logs": "Logs", "longitude": "Longitudine", "look": "Guarda", "loop_videos": "Riproduci video in loop", @@ -1301,6 +1310,7 @@ "mark_as_read": "Segna come letto", "marked_all_as_read": "Segnato tutto come letto", "matches": "Corrispondenze", + "matching_assets": "Assets Corrispondenti", "media_type": "Tipo Media", "memories": "Ricordi", "memories_all_caught_up": "Tutto a posto", @@ -1351,6 +1361,7 @@ "new_person": "Nuova persona", "new_pin_code": "Nuovo codice PIN", "new_pin_code_subtitle": "Questa è la prima volta che accedi alla cartella privata. Crea un codice PIN per accedere in modo sicuro a questa pagina", + "new_timeline": "Nuova Timeline", "new_user_created": "Nuovo utente creato", "new_version_available": "NUOVA VERSIONE DISPONIBILE", "newest_first": "Prima recenti", @@ -1364,20 +1375,25 @@ "no_assets_message": "CLICCA PER CARICARE LA TUA PRIMA FOTO", "no_assets_to_show": "Nessuna risorsa da mostrare", "no_cast_devices_found": "Nessun dispositivo di trasmissione trovato", + "no_checksum_local": "Nessun checksum disponibile: impossibile recuperare gli assets locali", + "no_checksum_remote": "Nessun checksum disponibile: impossibile recuperare l'asset remoto", "no_duplicates_found": "Nessun duplicato trovato.", "no_exif_info_available": "Nessuna informazione exif disponibile", "no_explore_results_message": "Carica più foto per esplorare la tua collezione.", "no_favorites_message": "Aggiungi preferiti per trovare facilmente le tue migliori foto e video", "no_libraries_message": "Crea una libreria esterna per vedere le tue foto e i tuoi video", + "no_local_assets_found": "Nessun asset locale trovato con questo checksum", "no_locked_photos_message": "Le foto e i video nella cartella privata sono nascosti e non vengono visualizzati mentre navighi o cerchi nella tua libreria.", "no_name": "Nessun nome", "no_notifications": "Nessuna notifica", "no_people_found": "Nessuna persona trovata", "no_places": "Nessun posto", + "no_remote_assets_found": "Nessun asset remoto trovato con questo checksum", "no_results": "Nessun risultato", "no_results_description": "Prova ad usare un sinonimo oppure una parola chiave più generica", "no_shared_albums_message": "Crea un album per condividere foto e video con le persone nella tua rete", "no_uploads_in_progress": "Nessun upload in corso", + "not_available": "N/A", "not_in_any_album": "In nessun album", "not_selected": "Non selezionato", "note_apply_storage_label_to_previously_uploaded assets": "Nota: Per aggiungere l'etichetta dell'archiviazione agli asset caricati in precedenza, esegui", @@ -1588,6 +1604,7 @@ "regenerating_thumbnails": "Rigenerando le anteprime", "remote": "Remoto", "remote_assets": "Risorse remote", + "remote_media_summary": "Riepilogo dei Media Remoti", "remove": "Rimuovi", "remove_assets_album_confirmation": "Sei sicuro di voler rimuovere {count, plural, one {# asset} other {# asset}} dall'album?", "remove_assets_shared_link_confirmation": "Sei sicuro di voler rimuovere {count, plural, one {# asset} other {# asset}} da questo link condiviso?", @@ -1863,6 +1880,7 @@ "show_slideshow_transition": "Mostra la transizione della presentazione", "show_supporter_badge": "Medaglia di Contributore", "show_supporter_badge_description": "Mostra la medaglia di contributore", + "show_text_search_menu": "Mostra il menu di ricerca del testo", "shuffle": "Casuale", "sidebar": "Barra laterale", "sidebar_display_description": "Visualizzare un link alla vista nella barra laterale", @@ -1917,6 +1935,8 @@ "sync_albums_manual_subtitle": "Sincronizza tutti i video e le foto caricati con gli album di backup selezionati", "sync_local": "Sincronizza gli elementi locali", "sync_remote": "Sincronizza gli elementi remoti", + "sync_status": "Stato di Sincronizzazione", + "sync_status_subtitle": "Visualizza e gestisci il sistema di sincronizzazione", "sync_upload_album_setting_subtitle": "Crea e carica le tue foto e video sull'album selezionato in Immich", "tag": "Tag", "tag_assets": "Tagga risorse", @@ -1976,6 +1996,7 @@ "trash_page_select_assets_btn": "Seleziona elemento", "trash_page_title": "Cestino ({count})", "trashed_items_will_be_permanently_deleted_after": "Gli elementi cestinati saranno eliminati definitivamente dopo {days, plural, one {# giorno} other {# giorni}}.", + "troubleshoot": "Risoluzione dei problemi", "type": "Tipo", "unable_to_change_pin_code": "Impossibile cambiare il codice PIN", "unable_to_setup_pin_code": "Impossibile configurare il codice PIN", @@ -2092,5 +2113,6 @@ "yes": "Si", "you_dont_have_any_shared_links": "Non è presente alcun link condiviso", "your_wifi_name": "Nome della tua rete Wi-Fi", - "zoom_image": "Ingrandisci immagine" + "zoom_image": "Ingrandisci immagine", + "zoom_to_bounds": "Ingrandisci fino ai bordi" } diff --git a/i18n/ja.json b/i18n/ja.json index 29e1a6a760..ccee08fa01 100644 --- a/i18n/ja.json +++ b/i18n/ja.json @@ -123,6 +123,11 @@ "logging_enable_description": "ログの有効化", "logging_level_description": "有効な場合に使用されるログ レベル。", "logging_settings": "ログ", + "machine_learning_availability_checks_enabled": "可用性チェックを有効にする", + "machine_learning_availability_checks_interval": "チェックの間隔", + "machine_learning_availability_checks_interval_description": "可用性チェックの間隔(ミリ秒単位)", + "machine_learning_availability_checks_timeout": "リクエストタイムアウト", + "machine_learning_availability_checks_timeout_description": "可用性チェックのタイムアウト時間(ミリ秒単位)", "machine_learning_clip_model": "Clipモデル", "machine_learning_clip_model_description": "CLIP モデルの名前はここにリストされています。モデルを変更した場合は、すべてのイメージに対して「スマート検索」ジョブを再実行する必要があります。", "machine_learning_duplicate_detection": "重複検出", @@ -387,8 +392,6 @@ "admin_password": "管理者パスワード", "administration": "管理", "advanced": "詳細設定", - "advanced_settings_beta_timeline_subtitle": "新しいアプリを体験してみましょう", - "advanced_settings_beta_timeline_title": "試験運用のタイムライン", "advanced_settings_enable_alternate_media_filter_subtitle": "別の基準に従ってメディアファイルにフィルターをかけて、同期を行います。アプリがすべてのアルバムを読み込んでくれない場合にのみ、この機能を試してください。", "advanced_settings_enable_alternate_media_filter_title": "[試験運用] 別のデバイスのアルバム同期フィルターを使用する", "advanced_settings_log_level_title": "ログレベル: {level}", @@ -1499,6 +1502,7 @@ "port": "ポートレート", "preferences_settings_subtitle": "アプリに関する設定", "preferences_settings_title": "設定", + "preparing": "準備中", "preset": "プリセット", "preview": "プレビュー", "previous": "前", @@ -1564,6 +1568,7 @@ "read_changelog": "変更履歴を読む", "readonly_mode_disabled": "読み取り専用モード無効", "readonly_mode_enabled": "読み取り専用モード有効", + "ready_for_upload": "アップロード準備完了", "reassign": "再割り当て", "reassigned_assets_to_existing_person": "{count, plural, one {#個} other {#個}}のアセットを{name, select, null {既存の人物} other {{name}}}に再割り当てしました", "reassigned_assets_to_new_person": "{count, plural, one {#個} other {#個}}のアセットを新しい人物に割り当てました", @@ -1893,6 +1898,7 @@ "stacktrace": "スタックトレース", "start": "開始", "start_date": "開始日", + "start_date_before_end_date": "開始日は終了日より前でなければなりません", "state": "都道府県", "status": "ステータス", "stop_casting": "キャストを停止", diff --git a/i18n/ko.json b/i18n/ko.json index 09d215c2a3..815f1b2b2f 100644 --- a/i18n/ko.json +++ b/i18n/ko.json @@ -387,8 +387,6 @@ "admin_password": "관리자 비밀번호", "administration": "관리", "advanced": "고급", - "advanced_settings_beta_timeline_subtitle": "새로운 앱 경험 사용해보기", - "advanced_settings_beta_timeline_title": "베타 타임라인", "advanced_settings_enable_alternate_media_filter_subtitle": "이 옵션을 사용하면 동기화 중 미디어를 대체 기준으로 필터링할 수 있습니다. 앱이 모든 앨범을 제대로 감지하지 못할 때만 사용하세요.", "advanced_settings_enable_alternate_media_filter_title": "대체 기기 앨범 동기화 필터 사용 (실험적)", "advanced_settings_log_level_title": "로그 레벨: {level}", diff --git a/i18n/lt.json b/i18n/lt.json index 4392fdb944..c66b57cfa0 100644 --- a/i18n/lt.json +++ b/i18n/lt.json @@ -387,8 +387,6 @@ "admin_password": "Administratoriaus slaptažodis", "administration": "Administravimas", "advanced": "Sudėtingesnis", - "advanced_settings_beta_timeline_subtitle": "Išbandykite naujos programos patirtį", - "advanced_settings_beta_timeline_title": "Beta laiko juosta", "advanced_settings_enable_alternate_media_filter_subtitle": "Naudokite šį nustatymą medijos filtravimui sinchronizuojant remiantis alternatyviais kriterijais. Naudokite tik jei programa turi problemų su visų albumų aptikimu.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTINIS] Naudokite alternatyvų įrenginio albumų sinchronizavimo filtrą", "advanced_settings_log_level_title": "Žurnalo įrašų lygis: {level}", @@ -425,6 +423,7 @@ "album_remove_user_confirmation": "Ar tikrai norite pašalinti naudotoją {user}?", "album_search_not_found": "Pagal jūsų paiešką albumų nerasta", "album_share_no_users": "Atrodo, kad bendrinate šį albumą su visais naudotojais, arba neturite naudotojų, su kuriais galėtumėte bendrinti.", + "album_summary": "Albumo santrauka", "album_updated": "Albumas atnaujintas", "album_updated_setting_description": "Gauti pranešimą el. paštu, kai bendrinamas albumas turi naujų elementų", "album_user_left": "Paliko {album}", @@ -496,6 +495,8 @@ "asset_restored_successfully": "Elementas atkurtas sėkmingai", "asset_skipped": "Praleista", "asset_skipped_in_trash": "Šiukšliadėžėje", + "asset_trashed": "Elementai ištrinti", + "asset_troubleshoot": "Elementų trikčių šalinimas", "asset_uploaded": "Įkelta", "asset_uploading": "Įkeliama…", "asset_viewer_settings_subtitle": "Tvarkykite savo galerijos peržiūros nustatymus", @@ -529,8 +530,10 @@ "autoplay_slideshow": "Automatiškai rodyti skaidrių demonstraciją", "back": "Atgal", "back_close_deselect": "Atgal, uždaryti arba atžymėti", + "background_backup_running_error": "Vyksta foninis atsarginis kopijavimas, negalima pradėti rankinio kopijavimo", "background_location_permission": "Foninis vietovės leidimas", "background_location_permission_content": "Veikiant fone tinklo perjungimui Immich privalo *visada* turėti prieigą prie tikslios vietovės, kad programa galėtų perskaityti Wi-Fi tinklo pavadinimą", + "background_options": "Fono nuostatos", "backup": "Atsarginė kopija", "backup_album_selection_page_albums_device": "Albumų įrenginyje ({count})", "backup_album_selection_page_albums_tap": "Palieskite įtraukti, du kart palieskite neįtraukti", @@ -538,6 +541,7 @@ "backup_album_selection_page_select_albums": "Pažymėti albumai", "backup_album_selection_page_selection_info": "Pažymėjimo informacija", "backup_album_selection_page_total_assets": "Viso unikalių elementų", + "backup_albums_sync": "Atsarginio kopijavimo albumų sinchronizacija", "backup_all": "Visi", "backup_background_service_backup_failed_message": "Nepavyko sukurti atsarginių kopijų. Bandoma dar kartą…", "backup_background_service_connection_failed_message": "Nepavyko prisijungti prie serverio. Bandoma dar kartą…", @@ -651,6 +655,8 @@ "change_pin_code": "Pakeisti PIN kodą", "change_your_password": "Pakeisti slaptažodį", "changed_visibility_successfully": "Matomumas pakeistas sėkmingai", + "charging": "Kraunasi", + "charging_requirement_mobile_backup": "Foninis kopijavimas reikalauja, kad įrenginys būtų prijungtas pakrovimui", "check_corrupt_asset_backup": "Patikrinti sugadintų elementų atsarginę kopiją", "check_corrupt_asset_backup_button": "Atlikti patikrinimą", "check_corrupt_asset_backup_description": "Paleiskite šį patikrinimą tik per Wi-Fi ir tik kai visi elementai buvo perkopijuoti. Ši procedūra užtruks kelias minutes.", @@ -737,6 +743,7 @@ "create_user": "Sukurti naudotoją", "created": "Sukurta", "created_at": "Sukurta", + "creating_linked_albums": "Kuriami susieti albumai...", "crop": "Apkirpti", "curated_object_page_title": "Daiktai", "current_device": "Dabartinis įrenginys", @@ -886,7 +893,9 @@ "error": "Klaida", "error_change_sort_album": "Nepavyko pakeisti albumo rūšiavimo tvarkos", "error_delete_face": "Klaida trinant veidą iš elementų", + "error_getting_places": "Klaida gaunant vietoves", "error_loading_image": "Klaida įkeliant vaizdą", + "error_loading_partners": "Klaida užkraunant partnerius: {error}", "error_saving_image": "Klaida: {error}", "error_tag_face_bounding_box": "Klaida aprašant veidą - nepavyko gauti veido vietos koordinačių", "error_title": "Klaida - Kažkas nutiko ne taip", @@ -1051,6 +1060,7 @@ "favorites_page_no_favorites": "Nerasta mėgstamiausių elementų", "feature_photo_updated": "Pageidaujama nuotrauka atnaujinta", "features": "Funkcijos", + "features_in_development": "Kūrimo funkcijos", "features_setting_description": "Valdyti aplikacijos funkcijas", "file_name": "Failo pavadinimas", "file_name_or_extension": "Failo pavadinimas arba plėtinys", @@ -1115,64 +1125,158 @@ "home_page_building_timeline": "Kuriama laiko juosta", "home_page_delete_err_partner": "Negalima ištrinti partnerio elementų, praleidžiama", "home_page_delete_remote_err_local": "Vietiniai elementai ištrinant nuotolinį pasirinkimą, praleidžiami", - "home_page_favorite_err_local": "Kol kad negalima priskirti mėgstamiausių vietinių elementų, praleidžiama", + "home_page_favorite_err_local": "Kol kas negalima priskirti mėgstamiausių vietinių elementų, praleidžiama", + "home_page_favorite_err_partner": "Kol kas negalima priskirti mėgstamiausių partnerio elementų, praleidžiama", "home_page_first_time_notice": "Jei jūs naudojate programą pirmą kartą, tai prašome pasirinkti atsarginės kopijos albumą, kad laiko juosta galėtų tvarkyti albumo nuotraukas ir vaizdo įrašus", "home_page_locked_error_local": "Nepavyko perkelti lokalių failų į užrakintą aplanką, praleidžiama", "home_page_locked_error_partner": "Nepavyko perkelti partnerio failų į užrakintą aplanką, praleidžiama", + "home_page_share_err_local": "Negalima dalinti vietinių elementų per nuorodą, praleidžiama", + "home_page_upload_err_limit": "Galima įkelti tik iki 30 elementų vienu metu, praleidžiama", + "host": "Šeimininkas", "hour": "Valanda", + "hours": "Valandos", + "id": "ID", + "idle": "Laisva", + "ignore_icloud_photos": "Ignoruoti iCloud nuotraukas", + "ignore_icloud_photos_description": "Nuotraukos laikomos iCloud nebus įkeltos į Immich serverį", "image": "Nuotrauka", + "image_alt_text_date": "{isVideo, select, true {Filmuota} other {Fotografuota}} {date}", + "image_alt_text_date_1_person": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1} {date}", + "image_alt_text_date_2_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1} ir {person2} {date}", + "image_alt_text_date_3_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} {date} su {person1}, {person2} ir{person3}", + "image_alt_text_date_4_or_more_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} {date} su {person1}, {person2} ir {additionalCount, number} kitais", + "image_alt_text_date_place": "{isVideo, select, true {Filmuota} other {Fotografuota}} {city}, {country} {date}", + "image_alt_text_date_place_1_person": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1} - {city}, {country} {date}", + "image_alt_text_date_place_2_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1} ir {person2} - {city}, {country} {date}", + "image_alt_text_date_place_3_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1}, {person2}, ir {person3} - {city}, {country} {date}", + "image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Filmuota} other {Fotografuota}} su {person1}, {person2}, ir {additionalCount, number} kitais - {city}, {country} {date}", + "image_saved_successfully": "Nuotrauka išsaugota", + "image_viewer_page_state_provider_download_started": "Atsisiuntimas pradėtas", + "image_viewer_page_state_provider_download_success": "Atsisiuntimas pavyko", + "image_viewer_page_state_provider_share_error": "Dalinimosi klaida", "immich_logo": "Immich logotipas", + "immich_web_interface": "Immich Web sąsaja", "import_from_json": "Importuoti iš JSON", "import_path": "Importavimo kelias", + "in_albums": "{count, plural, one {# Albume} few {#Albumuose} other {# Albumų}}", "in_archive": "Archyve", "include_archived": "Įtraukti archyvuotus", "include_shared_albums": "Įtraukti bendrinamus albumus", "include_shared_partner_assets": "Įtraukti partnerio pasidalintus elementus", + "individual_share": "Pavienis pasidalinimas", + "individual_shares": "Pavieniai pasidalinimai", "info": "Informacija", "interval": { "day_at_onepm": "Kiekvieną dieną 13:00", + "hours": "Kas{hours, plural, one {valandą} few {#valandas} other {{hours, number} valandų}}", "night_at_midnight": "Kiekvieną vidurnaktį", "night_at_twoam": "Kiekvieną naktį 02:00" }, + "invalid_date": "Netinkama data", + "invalid_date_format": "Netinkamas datos formatas", "invite_people": "Kviesti žmones", "invite_to_album": "Pakviesti į albumą", + "ios_debug_info_fetch_ran_at": "Užkrovimas vyko {dateTime}", + "ios_debug_info_last_sync_at": "Paskutinė sinchronizacija {dateTime}", + "ios_debug_info_no_processes_queued": "Eilėje nėra foninių procesų", "ios_debug_info_no_sync_yet": "Jokia background sync užduotis dar nebuvo paleista", + "ios_debug_info_processes_queued": "{count, plural, one {Eilėje {count} foninis procesas} few {Eilėje {count} foniniai procesai} other {Eilėje {count} foninių procesų}}", + "ios_debug_info_processing_ran_at": "Apdorojimas vyko {dateTime}", "items_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}}", "jobs": "Užduotys", "keep": "Palikti", "keep_all": "Palikti visus", + "keep_this_delete_others": "Išsaugoti šį, kitus ištrinti", + "kept_this_deleted_others": "Išsaugotas šis elementas ir {count, plural, one {ištrintas # elementas} few {ištrinti # elementai} other {ištrinta # elementų}}", "keyboard_shortcuts": "Spartieji klaviatūros klavišai", "language": "Kalba", + "language_no_results_subtitle": "Bandykite pakoreguoti paieškos terminą", + "language_no_results_title": "Kalbos nerastos", + "language_search_hint": "Ieškoti kalbų...", "language_setting_description": "Pasirinkti pageidaujamą kalbą", + "large_files": "Dideli failai", + "last": "Paskutinis", "last_seen": "Paskutinį kartą matytas", "latest_version": "Naujausia versija", "latitude": "Platuma", "leave": "Išeiti", + "leave_album": "Palikti albumą", + "lens_model": "Lęšių modelis", "let_others_respond": "Leisti kitiems reaguoti", "level": "Lygis", "library": "Biblioteka", "library_options": "Bibliotekos pasirinktys", + "library_page_device_albums": "Albumai įrenginyje", + "library_page_new_album": "Naujas albumas", "library_page_sort_asset_count": "Elementų skaičius", "library_page_sort_created": "Kūrimo data", "library_page_sort_last_modified": "Paskutinį kartą modifikuota", "library_page_sort_title": "Albumo pavadinimas", + "licenses": "Licencijos", + "light": "Šviesi", + "like": "Kaip", + "like_deleted": "Kaip ištrintas", + "link_motion_video": "Susieti judesio vaizdo įrašą", "link_to_oauth": "Susieti su OAuth", "linked_oauth_account": "Susieta OAuth paskyra", "list": "Sąrašas", "loading": "Kraunama", "loading_search_results_failed": "Nepavyko užkrauti paieškos rezultatų", + "local": "Vietinis", + "local_asset_cast_failed": "Negalima transliuoti elemento kuris neįkeltas į serverį", + "local_assets": "Vietiniai elementai", + "local_media_summary": "Vietinės medijos santrauka", + "local_network": "Vietinis tinklas", + "local_network_sheet_info": "Programa jungsis prie serverio per šį URL kai naudos pasirinktą Wi-Fi tinklą", + "location_permission": "Vietovės leidimai", "location_permission_content": "Norint naudoti automatinio persijungimo opciją, Immich reikia tikslios vietovės leidimo, kad galėtų nuskaityti Wi-Fi tinklo pavadinimą", + "location_picker_choose_on_map": "Pasirinkite žemėlapyje", + "location_picker_latitude_error": "Įveskite tinkamą platumą", + "location_picker_latitude_hint": "Įveskite platumą čia", + "location_picker_longitude_error": "Įveskite tinkamą ilgumą", + "location_picker_longitude_hint": "Įveskite ilgumą čia", + "lock": "Užrakinti", "locked_folder": "Užrakintas aplankas", + "log_detail_title": "Žurnalo detalės", "log_out": "Atsijungti", "log_out_all_devices": "Atsijungti iš visų įrenginių", + "logged_in_as": "Prisijungta kaip {user}", "logged_out_all_devices": "Atsijungta iš visų įrenginių", + "logged_out_device": "Atsijungta nuo įrenginio", "login": "Prisijungti", + "login_disabled": "Prisijungimas neįgalintas", + "login_form_api_exception": "API išimtis. Patikrinkite serverio URL ir bandykite dar kartą.", + "login_form_back_button_text": "Atgal", + "login_form_email_hint": "jusupastas@email.com", + "login_form_endpoint_hint": "http://jusu-serverio-ip:port", + "login_form_endpoint_url": "Serverio galutinio taško URL", + "login_form_err_http": "Prašome nurodyti http:// arba https://", + "login_form_err_invalid_email": "Neteisingas el. paštas", + "login_form_err_invalid_url": "Neteisingas URL", + "login_form_err_leading_whitespace": "Pradinis tarpas", + "login_form_err_trailing_whitespace": "Galinis tarpas", + "login_form_failed_get_oauth_server_config": "Klaida prisijungiant su OAuth, patikrinkite serverio URL", + "login_form_failed_get_oauth_server_disable": "Serveryje OAuth funkcija negalima", + "login_form_failed_login": "Klaida prisijungiant, patikrinkite serverio URL, el. paštą ir slaptažodį", + "login_form_handshake_exception": "Įvyko serverio patvirtinimo išimtis. Jei naudojate savarankiškai pasirašytą sertifikatą, nustatymuose įjunkite savarankiškai pasirašyto sertifikato palaikymą.", + "login_form_password_hint": "slaptažodis", + "login_form_save_login": "Likti prisijungus", + "login_form_server_empty": "Įveskite serverio URL.", + "login_form_server_error": "Nepavyko prisijungti prie serverio.", "login_has_been_disabled": "Prisijungimas išjungtas.", + "login_password_changed_error": "Įvyko klaida atnaujinant jūsų slaptažodį", + "login_password_changed_success": "Slaptažodis sėkmingai atnaujintas", "logout_all_device_confirmation": "Ar tikrai norite atsijungti iš visų įrenginių?", "logout_this_device_confirmation": "Ar tikrai norite atsijungti iš šio prietaiso?", + "logs": "Žurnalas", "longitude": "Ilguma", + "look": "Išvaizda", "loop_videos": "Kartoti vaizdo įrašus", + "loop_videos_description": "Įgalinti automatinį vaizdo įrašo rodymą iš naujo detalių peržiūroje.", + "main_branch_warning": "Jūs naudojate kūrėjo versiją, mes stipriai rekomenduojame naudoti galutinę versiją!", + "main_menu": "Pagrindinis meniu", "make": "Gamintojas", + "manage_geolocation": "Tvarkyti vietovę", "manage_shared_links": "Bendrinimo nuorodų tvarkymas", "manage_sharing_with_partners": "Valdyti dalijimąsi su partneriais", "manage_the_app_settings": "Valdyti programos nustatymus", @@ -1182,15 +1286,41 @@ "manage_your_oauth_connection": "Tvarkyti OAuth prisijungimą", "map": "Žemėlapis", "map_assets_in_bounds": "{count, plural, =0 {Nuotraukų nėra} one {# nuotrauka} other {# nuotraukos}}", + "map_cannot_get_user_location": "Negalime gauti naudotojo vietovės", + "map_location_dialog_yes": "Taip", + "map_location_picker_page_use_location": "Naudoti šią vietovę", + "map_location_service_disabled_content": "Vietovės servisas turi būti įjungtas, kad rodytų elementus iš dabartinės vietovės. Įjungti vietovės servisą?", + "map_location_service_disabled_title": "Vietovės servisas išjungtas", + "map_marker_for_images": "Žemėlapio žymeklis nuotraukoms yra {city}, {country}", + "map_marker_with_image": "Žemėlapio žymeklis su nuotrauka", + "map_no_location_permission_content": "Reikalingas vietovės leidimas, kad rodytų elementus iš dabartinės vietovės. Ar norite suteikti leidimą?", + "map_no_location_permission_title": "Vietovės leidimas atmestas", "map_settings": "Žemėlapio nustatymai", + "map_settings_dark_mode": "Tamsi tema", + "map_settings_date_range_option_day": "Pastarosios 24 valandos", "map_settings_date_range_option_days": "Pastarąsias {days} dienas", + "map_settings_date_range_option_year": "Pastarieji metai", "map_settings_date_range_option_years": "Pastaruosius {years} metus", + "map_settings_dialog_title": "Žemėlapio nustatymai", "map_settings_include_show_archived": "Įtraukti archyvuotus", + "map_settings_include_show_partners": "Pridėti partneriai", + "map_settings_only_show_favorites": "Rodyti tik mėgstamiausius", + "map_settings_theme_settings": "Žemėlapio tema", + "map_zoom_to_see_photos": "Atitolinkite, kad matytumėte nuotraukas", + "mark_all_as_read": "Pažymėti viską kaip perskaitytą", + "mark_as_read": "Pažymėti kaip perskaitytą", + "marked_all_as_read": "Viskas pažymėta kaip perskaityta", "matches": "Atitikmenys", + "matching_assets": "Atitinkantys elementai", "media_type": "Laikmenos tipas", "memories": "Atsiminimai", + "memories_all_caught_up": "Jau viskas peržiūrėta", + "memories_check_back_tomorrow": "Užsukite rytoj, kad pamatytumėte daugiau prisiminimų", "memories_setting_description": "Valdyti tai, ką matote savo prisiminimuose", - "memory": "Atmintis", + "memories_start_over": "Pradėti iš naujo", + "memories_swipe_to_close": "Perbraukite į viršų norėdami uždaryti", + "memory": "Prisiminimai", + "memory_lane_title": "Prisiminimų juosta {title}", "menu": "Meniu", "merge": "Sujungti", "merge_people": "Sujungti asmenis", @@ -1200,24 +1330,40 @@ "merged_people_count": "{count, plural, one {Sujungtas # asmuo} few {Sujungti # asmenys} other {Sujungta # asmenų}}", "minimize": "Sumažinti", "minute": "Minutė", + "minutes": "Minutės", "missing": "Trūkstami", "model": "Modelis", "month": "Mėnesis", + "monthly_title_text_date_format": "MMMM y", "more": "Daugiau", + "move": "Perkelti", "move_off_locked_folder": "Ištraukti iš užrakinto aplanko", "move_to_lock_folder_action_prompt": "{count} įkelta į užrakintą aplanką", "move_to_locked_folder": "Įtraukti į užrakintą aplanką", "move_to_locked_folder_confirmation": "Šios nuotraukos ir vaizdo įrašai bus pašalinti iš visų albumų ir bus matomi tik užrakintame aplanke", + "moved_to_archive": "{count, plural, one {# Elementas perkeltas} few {# Elementai perkelti} other {# Elementų perkelta}} į archyvą", + "moved_to_library": "{count, plural, one {# Elementas perkeltas} few {# Elementai perkelti} other {# Elementų perkelta}} į biblioteką", "moved_to_trash": "Perkelta į šiukšliadėžę", + "multiselect_grid_edit_date_time_err_read_only": "Negalima redaguoti tik skaitomo elemento datos, praleidžiama", + "multiselect_grid_edit_gps_err_read_only": "Negalima redaguoti tik skaitomo elemento vietovės, praleidžiama", + "mute_memories": "Užtildyti prisiminimus", "my_albums": "Mano albumai", "name": "Vardas", "name_or_nickname": "Vardas arba slapyvardis", + "network_requirement_photos_upload": "Naudoti mobilų internetą atsarginėms nuotraukų kopijoms", + "network_requirement_videos_upload": "Naudoti mobilų internetą atsarginėms vaizdo įrašų kopijoms", + "network_requirements": "Tinklo reikalavimai", + "network_requirements_updated": "Tinklo reikalavimai pakeisti, atstatoma atsarginio kopijavimo eilė", + "networking_settings": "Tinklai", + "networking_subtitle": "Tvarkyti serverio galutinio taško nustatymus", "never": "Niekada", "new_album": "Naujas albumas", "new_api_key": "Naujas API raktas", "new_password": "Naujas slaptažodis", "new_person": "Naujas asmuo", + "new_pin_code": "Naujas PIN kodas", "new_pin_code_subtitle": "Tai pirmas kartas, kai naudojate užrakinto aplanko funkciją. Nustatykite PIN kodą savo užrakintam aplankui", + "new_timeline": "Nauja laiko juosta", "new_user_created": "Naujas naudotojas sukurtas", "new_version_available": "PRIEINAMA NAUJA VERSIJA", "newest_first": "Pirmiausia naujausi", @@ -1229,33 +1375,68 @@ "no_albums_yet": "Atrodo, kad dar neturite albumų.", "no_archived_assets_message": "Suarchyvuokite nuotraukas ir vaizdo įrašus, kad jie nebūtų rodomi nuotraukų rodinyje", "no_assets_message": "SPUSTELĖKITE NORĖDAMI ĮKELTI PIRMĄJĄ NUOTRAUKĄ", + "no_assets_to_show": "Nėra rodomų elementų", + "no_cast_devices_found": "Nerasta transliavimo įrenginių", + "no_checksum_local": "Kontrolinė suma nepasiekiama – negalima gauti vietinių elementų", + "no_checksum_remote": "Kontrolinė suma nepasiekiama – negalima gauti nuotolinių elementų", "no_duplicates_found": "Dublikatų nerasta.", + "no_exif_info_available": "Nėra Exif informacijos", "no_explore_results_message": "Įkelkite daugiau nuotraukų ir tyrinėkite savo kolekciją.", + "no_favorites_message": "Pridėti į mėgstamiausius, kad greitai rastum geriausias nuotraukas ir vaizdo įrašus", "no_libraries_message": "Sukurkite išorinę biblioteką nuotraukoms ir vaizdo įrašams peržiūrėti", + "no_local_assets_found": "Nerasta jokių vietinių elementų su šia kontroline suma", "no_locked_photos_message": "Užrakintame aplanke esančios nuotraukos ir vaizdo įrašai yra paslėpti ir nematomi naršant ir ieškant.", "no_name": "Be vardo", - "no_results": "Nerasta", + "no_notifications": "Pranešimų nėra", + "no_people_found": "Ieškomų žmonių nerasta", + "no_places": "Vietovių nėra", + "no_remote_assets_found": "Nerasta jokių nuotolinių elementų su šia kontroline suma", + "no_results": "Rezultatų nerasta", "no_results_description": "Pabandykite sinonimą arba bendresnį raktažodį", + "no_shared_albums_message": "Sukurkite nuotraukų ar vaizdo įrašų albumą dalinimuisi su žmonėmis jūsų tinkle", + "no_uploads_in_progress": "Nėra vykstančių įkėlimų", + "not_available": "Nepasiekiamas", "not_in_any_album": "Nė viename albume", - "note_apply_storage_label_to_previously_uploaded assets": "Pastaba: Priskirti Saugyklos Žymą prie ankčiau įkeltų ištekliu, paleiskite šį", + "not_selected": "Nepasirinkta", + "note_apply_storage_label_to_previously_uploaded assets": "Pastaba: Priskirti Saugyklos Žymą prie anksčiau įkeltų ištekliu, paleiskite šį", "notes": "Pastabos", + "nothing_here_yet": "Kol kas tuščia", + "notification_permission_dialog_content": "Pranešimų įgalinimui eikite į Nustatymus ir pasirinkite Leisti.", + "notification_permission_list_tile_content": "Suteikti leidimą pranešimų įgalinimui.", + "notification_permission_list_tile_enable_button": "Įgalinti pranešimus", + "notification_permission_list_tile_title": "Pranešimų leidimai", "notification_toggle_setting_description": "Įjungti el. pašto pranešimus", "notifications": "Pranešimai", "notifications_setting_description": "Tvarkyti pranešimus", "oauth": "OAuth", "official_immich_resources": "Oficialūs Immich ištekliai", "offline": "Neprisijungęs", + "offset": "Ofsetas", + "ok": "Ok", "oldest_first": "Seniausias pirmas", "on_this_device": "Šiame įrenginyje", + "onboarding": "Įdarbinimas", + "onboarding_locale_description": "Pasirinkite pageidaujamą kalbą. Vėliau ją galėsite pakeisti nustatymuose.", + "onboarding_privacy_description": "Sekančios (neprivalomos) funkcijos remiasi išorinėmis paslaugomis ir gali būti bet kada išjungtos nustatymuose.", + "onboarding_server_welcome_description": "Nustatykime jūsų programą su dažniausiai naudojamais nustatymais.", + "onboarding_theme_description": "Pasirinkite temos spalvą. Vėliau galite pasikeisti ją nustatymuose.", + "onboarding_user_welcome_description": "Pradėkime!", "onboarding_welcome_user": "Sveiki atvykę, {user}", "online": "Prisijungęs", "only_favorites": "Tik mėgstamiausi", + "open": "Atverti", + "open_in_map_view": "Atverti žemėlapio peržiūroje", + "open_in_openstreetmap": "Atverti per OpenStreetMap", "open_the_search_filters": "Atidaryti paieškos filtrus", "options": "Pasirinktys", "or": "arba", + "organize_into_albums": "Sutvarkyti į albumus", + "organize_into_albums_description": "Sukelti egzistuojančias nuotraukas į albumus naudojant dabartinius sinchronizavimo nustatymus", "organize_your_library": "Tvarkykite savo biblioteką", "original": "Originalas", + "other": "Kiti", "other_devices": "Kiti įrenginiai", + "other_entities": "Kiti subjektai", "other_variables": "Kiti kintamieji", "owned": "Nuosavi", "owner": "Savininkas", @@ -1263,13 +1444,27 @@ "partner_can_access": "{partner} gali naudotis", "partner_can_access_assets": "Visos jūsų nuotraukos ir vaizdo įrašai, išskyrus archyvuotus ir ištrintus", "partner_can_access_location": "Vieta, kurioje darytos nuotraukos", + "partner_list_user_photos": "{user} nuotraukos", + "partner_list_view_all": "Žiūrėti viską", + "partner_page_empty_message": "Jūsų nuotraukomis dar nesidalinama su jokiu partneriu.", + "partner_page_no_more_users": "Nėra daugiau naudotojų pridėjimui", + "partner_page_partner_add_failed": "Nepavyko pridėti partnerio", + "partner_page_select_partner": "Pasirinkite partnerį", + "partner_page_shared_to_title": "Dalinamasi su", "partner_page_stop_sharing_content": "{partner} daugiau nebegalės pasiekti jūsų nuotraukų.", + "partner_sharing": "Dalinimasis su partneriu", "partners": "Partneriai", "password": "Slaptažodis", "password_does_not_match": "Slaptažodis nesutampa", "password_required": "Reikalingas slaptažodis", "password_reset_success": "Slaptažodis sėkmingai atkurtas", + "past_durations": { + "days": "Per {days, plural, one {pastarąją dieną} few {# pastarąsias dienas} other {# pastarųjų dienų}}", + "hours": "Per {hours, plural, one {pastarąją valandą} few{# pastarąsias valandas} other {# pastarųjų valandų}}", + "years": "Per {years, plural, one {pastaruosius metus} few{# pastaruosius metus} other {# pastarųjų metų}}" + }, "path": "Kelias", + "pattern": "Raštas", "pause": "Sustabdyti", "pause_memories": "Pristabdyti atsiminimus", "paused": "Sustabdyta", @@ -1278,27 +1473,73 @@ "people_edits_count": "{count, plural, one {Redaguotas # asmuo} few {Redaguoti # asmenys} other {Redaguota # asmenų}}", "people_feature_description": "Peržiūrėkite nuotraukas ir vaizdo įrašus sugrupuotus pagal asmenis", "people_sidebar_description": "Rodyti asmenų rodinio nuorodą šoninėje juostoje", + "permanent_deletion_warning": "Ištrynimo visam laikui perspėjimas", + "permanent_deletion_warning_setting_description": "Rodyti perspėjimą kai elementas ištrinamas visam laikui", "permanently_delete": "Ištrinti visam laikui", "permanently_delete_assets_count": "Visam laikui ištrinti {count, plural, one {# elementą} few {# elementus} other {# elementų}}", + "permanently_delete_assets_prompt": "Ar tikrai norite visam laikui ištrinti {count, plural, one {šitą elementą?} few {šituos # elementus?} other {šitų # elementų?}} Tuo pačiu {count, plural, one {jis bus pašalintas} other {jie bus pašalinti}} iš albumo.", + "permanently_deleted_asset": "Visiškai ištrinti elementai", "permanently_deleted_assets_count": "Visam laikui {count, plural, one {ištrintas # elementas} few {ištrinti # elementai} other {ištrinta # elementų}}", + "permission": "Leidimas", + "permission_empty": "Jūsų leidimas neturėtų būti tuščias", + "permission_onboarding_back": "Atgal", + "permission_onboarding_continue_anyway": "Vis tiek tęsti", + "permission_onboarding_get_started": "Pradėkite", + "permission_onboarding_go_to_settings": "Eiti į nustatymus", + "permission_onboarding_permission_denied": "Leidimas nesuteiktas. Norėdami naudoti Immich, suteikite nuotraukų ir vaizdo įrašų leidimus nustatymuose.", + "permission_onboarding_permission_granted": "Leidimas suteiktas! jūs pasiruošę.", + "permission_onboarding_permission_limited": "Leidimai apriboti. Norėdami leisti Immich kurti atsargines kopijas ir tvarkyti visą jūsų galerijos kolekciją, suteikite nuotraukų ir vaizdo įrašų leidimus nustatymuose.", + "permission_onboarding_request": "Immich reikalingas leidimas peržiūrėti jūsų nuotraukas ir vaizdo įrašus.", + "person": "Asmuo", + "person_age_months": "{months, plural, one {# mėnesio} other {# mėnesių}} amžiaus", + "person_age_year_months": "1 metų ir {months, plural, one {# mėnesio} other {# mėnesių}} amžiaus", + "person_age_years": "{years, plural, other {# metų}} amžiaus", + "person_birthdate": "Gimė {date}", + "person_hidden": "{name}{hidden, select, true { (paslėptas)} other {}}", + "photo_shared_all_users": "Panašu, kad savo nuotraukomis pasidalijote su visais naudotojais arba neturite naudotojų, su kuriais galėtumėte jomis pasidalyti.", "photos": "Nuotraukos", "photos_and_videos": "Nuotraukos ir vaizdo įrašai", "photos_count": "{count, plural, one {{count, number} nuotrauka} few {{count, number} nuotraukos} other {{count, number} nuotraukų}}", "photos_from_previous_years": "Ankstesnių metų nuotraukos", + "pick_a_location": "Išsirinkite vietovę", + "pin_code_changed_successfully": "PIN kodas pakeistas sėkmingai", + "pin_code_reset_successfully": "PIN kodas sėkmingai atstatytas", + "pin_code_setup_successfully": "PIN kodas sėkmingai nustatytas", + "pin_verification": "PIN kodo patvirtinimas", "place": "Vieta", "places": "Vietos", + "places_count": "{count, plural, one {{count, number} Vieta} few{{count, number} Vietos} other {{count, number} Vietų}}", + "play": "Paleisti", "play_memories": "Leisti atsiminimus", + "play_motion_photo": "Rodyti judančias nuotraukas", + "play_or_pause_video": "Rodyti arba sustabdyti vaizdo įrašą", + "please_auth_to_access": "Prašome patvirtinti prisijungimą", + "port": "Portas", + "preferences_settings_subtitle": "Tvarkyti programos nuostatas", + "preferences_settings_title": "Nuostatos", + "preset": "Šablonas", + "preview": "Peržiūra", + "previous": "Buvęs", + "previous_memory": "Buvęs prisiminimas", + "previous_or_next_day": "Dieną pirmyn/atgal", + "previous_or_next_month": "Mėnesį pirmyn/atgal", + "previous_or_next_photo": "Nuotrauką pirmyn/atgal", + "previous_or_next_year": "Metus pirmyn/atgal", + "primary": "Pirminis", + "privacy": "Privatumas", "profile": "Profilis", "profile_drawer_app_logs": "Logai", "profile_drawer_client_out_of_date_major": "Mobili aplikacija jau pasenusios versijos. Prašome atsinaujinti į paskutinę didžiąją versiją.", "profile_drawer_client_out_of_date_minor": "Mobili aplikacija jau pasenusios versijos. Prašome atsinaujinti į paskutinę mažąją versiją.", "profile_drawer_client_server_up_to_date": "Klientas ir Serveris yra atnaujinti", "profile_drawer_github": "GitHub", + "profile_drawer_readonly_mode": "Tik skaitymo rėžimas įgalintas. Ilgai paspauskite vartotojo ikoną išėjimui.", "profile_drawer_server_out_of_date_major": "Serveris jau yra pasenusios versijos. Prašome atsinaujinti į paskutinę didžiąją versiją.", "profile_drawer_server_out_of_date_minor": "Serveris jau yra pasenusios versijos. Prašome atsinaujinti į paskutinę mažąją versiją.", "profile_image_of_user": "{user} profilio nuotrauka", "profile_picture_set": "Profilio nuotrauka nustatyta.", "public_album": "Viešas albumas", + "public_share": "Viešas dilinimasis", "purchase_account_info": "Rėmėjas", "purchase_activated_subtitle": "Dėkojame, kad remiate Immich ir atviro kodo programinę įrangą", "purchase_activated_time": "Suaktyvinta {date}", @@ -1313,6 +1554,7 @@ "purchase_failed_activation": "Nepavyko suaktyvinti! Patikrinkite el. paštą, ar turite teisingo produkto koda!", "purchase_individual_description_1": "Asmeniui", "purchase_individual_description_2": "Rėmėjo statusas", + "purchase_individual_title": "Asmeninis", "purchase_input_suggestion": "Turite produkto raktą? Įveskite jį žemiau", "purchase_license_subtitle": "Įsigykite „Immich“, kad palaikytumėte tolesnį paslaugos vystymą", "purchase_lifetime_description": "Pirkimas visam gyvenimui", diff --git a/i18n/lv.json b/i18n/lv.json index b0c77998b3..f4522a80c8 100644 --- a/i18n/lv.json +++ b/i18n/lv.json @@ -231,8 +231,6 @@ "admin_password": "Administratora parole", "administration": "Administrēšana", "advanced": "Papildu", - "advanced_settings_beta_timeline_subtitle": "Izmēģini jauno lietotnes pieredzi", - "advanced_settings_beta_timeline_title": "Bēta laika skala", "advanced_settings_log_level_title": "Žurnalēšanas līmenis: {level}", "advanced_settings_prefer_remote_subtitle": "Dažās ierīcēs sīktēli no ierīcē esošajiem resursiem tiek ielādēti ļoti lēni. Aktivizējiet šo iestatījumu, lai tā vietā ielādētu attālus attēlus.", "advanced_settings_prefer_remote_title": "Dot priekšroku attāliem attēliem", @@ -328,6 +326,7 @@ "automatic_endpoint_switching_title": "Automātiska URL pārslēgšana", "autoplay_slideshow": "Automātiska slaidrādes atskaņošana", "back": "Atpakaļ", + "background_options": "Fona opcijas", "backup": "Dublēšana", "backup_album_selection_page_albums_device": "Albumi ierīcē ({count})", "backup_album_selection_page_albums_tap": "Pieskarieties, lai iekļautu, veiciet dubultskārienu, lai izslēgtu", @@ -335,6 +334,7 @@ "backup_album_selection_page_select_albums": "Atlasīt albumus", "backup_album_selection_page_selection_info": "Atlases informācija", "backup_album_selection_page_total_assets": "Unikālo failu kopsumma", + "backup_albums_sync": "Dublēšanas albumu sinhronizācija", "backup_all": "Viss", "backup_background_service_backup_failed_message": "Neizdevās dublēt līdzekļus. Notiek atkārtota mēģināšana…", "backup_background_service_connection_failed_message": "Neizdevās izveidot savienojumu ar serveri. Notiek atkārtota mēģināšana…", @@ -436,6 +436,8 @@ "change_password_form_password_mismatch": "Paroles nesakrīt", "change_password_form_reenter_new_password": "Atkārtoti ievadīt jaunu paroli", "change_pin_code": "Nomainīt PIN kodu", + "charging": "Lādē", + "charging_requirement_mobile_backup": "Fona dublēšanai nepieciešams, lai ierīce tiktu lādēta", "check_corrupt_asset_backup_button": "Veikt pārbaudi", "choose_matching_people_to_merge": "Izvēlies atbilstošas personas apvienošanai", "city": "Pilsēta", @@ -601,6 +603,7 @@ "enter_your_pin_code_subtitle": "Ievadi savu PIN kodu, lai piekļūtu slēgtajai mapei", "error": "Kļūda", "error_change_sort_album": "Neizdevās nomainīt albuma kārtošanas secību", + "error_loading_partners": "Kļūda, ielādējot partnerus: {error}", "error_saving_image": "Kļūda: {error}", "errors": { "cant_get_faces": "Nevar iegūt sejas", @@ -664,6 +667,7 @@ "favorite": "Izlase", "favorites": "Izlase", "favorites_page_no_favorites": "Nav atrasti iecienītākie faili", + "features_in_development": "Izstrādes stadijā esošas funkcijas", "features_setting_description": "Lietotnes funkciju pārvaldība", "file_name": "Faila nosaukums", "file_name_or_extension": "Faila nosaukums vai paplašinājums", @@ -894,6 +898,7 @@ "name_or_nickname": "Vārds vai iesauka", "network_requirement_photos_upload": "Izmantot mobilo datu pārraidi, lai dublētu fotoattēlus", "network_requirement_videos_upload": "Izmantot mobilo datu pārraidi, lai dublētu video", + "network_requirements": "Tīkla prasības", "networking_subtitle": "Pārvaldīt servera galapunktu iestatījumus", "never": "nekad", "new_album": "Jauns albums", @@ -1268,6 +1273,7 @@ "show_slideshow_transition": "Rādīt slīdrādes pāreju", "show_supporter_badge": "Atbalstītāja nozīmīte", "show_supporter_badge_description": "Rādīt atbalstītāja nozīmīti", + "show_text_search_menu": "Rādīt teksta meklēšanas izvēlni", "shuffle": "Jaukta", "sidebar": "Sānu josla", "sidebar_display_description": "Parādīt saiti uz skatu sānu joslā", diff --git a/i18n/mk.json b/i18n/mk.json index 75951405e8..86694ce346 100644 --- a/i18n/mk.json +++ b/i18n/mk.json @@ -14,6 +14,7 @@ "add_a_location": "Додади локација", "add_a_name": "Додади име", "add_a_title": "Додади наслов", + "add_birthday": "Додади роденден", "add_exclusion_pattern": "Додади шаблон за исклучување", "add_import_path": "Додади патека за импортирање", "add_location": "Додади локација", @@ -23,6 +24,9 @@ "add_photos": "Додади слики", "add_to": "Додади во…", "add_to_album": "Додади во албум", + "add_to_album_bottom_sheet_added": "Додадено во {album}", + "add_to_albums": "Додади во албуми", + "add_to_albums_count": "Додади во албуми ({count})", "add_to_shared_album": "Додади во споделен албум", "add_url": "Додади URL", "added_to_archive": "Додадено во архива", @@ -30,13 +34,14 @@ "added_to_favorites_count": "Додадени {count, number} во омилени", "admin": { "add_exclusion_pattern_description": "Додади шаблони за исклучување. Поддржано е користење на glob со *, **, и ?. За да се игнорираат сите датотеки во кој било директориум именуван \"Raw\", користи \"**/Raw/**\". За да се игнорираат сите датотеки што завршуваат со \".tif\", користи \"**/*.tif\". За да се игнорира апсолутна патека, користи \"/path/to/ignore/**\".", + "admin_user": "Административен Корисник", "asset_offline_description": "Ова средство од екстерна библиотека веќе не е пронајдено на дискот и е преместено во ѓубре. Ако датотеката била преместена во рамките на библиотеката, проверете ја вашата временска линија за новото соодветно средство. За да го вратите ова средство, осигурајте се дека долунаведената патека може да биде пристапена од Immich и скенирајте ја библиотеката.", "authentication_settings": "Поставки за автентикација", "authentication_settings_description": "Управувај со лозинки, OAuth, и други поставки за автентикација", "authentication_settings_disable_all": "Дали сте сигурни дека сакате да ги исклучите сите методи за најава? Целосно ќе биде оневозможено најавување.", "authentication_settings_reenable": "За повторно да овозможите, искористете Сервер команда.", "background_task_job": "Позадински задачи", - "backup_database": "Резервна копија од базата на податоци", + "backup_database": "Креирај резервна копија од базата на податоци", "backup_database_enable_description": "Овозможи резервни копии од базата на податоци", "backup_keep_last_amount": "Количина на претходни резервни копии за чување", "backup_settings": "Поставки за резервни копии", diff --git a/i18n/mr.json b/i18n/mr.json index 33a3dc5c93..dbc2e3d114 100644 --- a/i18n/mr.json +++ b/i18n/mr.json @@ -383,8 +383,6 @@ "admin_password": "प्रशासक पासवर्ड", "administration": "प्रशासन", "advanced": "प्रगत", - "advanced_settings_beta_timeline_subtitle": "नवीन ॲप अनुभव वापरून पहा", - "advanced_settings_beta_timeline_title": "बीटा टाईमलाईन", "advanced_settings_enable_alternate_media_filter_subtitle": "सिंक दरम्यान वैकल्पिक निकषांवर आधारित मीडिया फिल्टर करण्यासाठी हा पर्याय वापरा. ॲप सर्व अल्बम ओळखण्यात समस्या येत असल्यासच वापरा.", "advanced_settings_enable_alternate_media_filter_title": "[प्रयोगात्मक] उपकरण-आधारित अल्बम सिंक फिल्टर वापरा", "advanced_settings_log_level_title": "लॉग पातळी: {level}", diff --git a/i18n/ms.json b/i18n/ms.json index e7e0432a4c..b87c547920 100644 --- a/i18n/ms.json +++ b/i18n/ms.json @@ -373,8 +373,6 @@ "admin_password": "Kata laluan Pentadbir", "administration": "Pentadbiran", "advanced": "Lanjutan", - "advanced_settings_beta_timeline_subtitle": "Cuba pengalaman aplikasi baharu", - "advanced_settings_beta_timeline_title": "Garis masa beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Gunakan pilihan ini untuk menapis media semasa penyegerakan berdasarkan kriteria alternatif. Hanya cuba jika anda menghadapi masalah dengan aplikasi mengesan semua album.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTAL] Gunakan penapis penyelarasan album peranti alternatif", "advanced_settings_log_level_title": "Tahap log: {level}", diff --git a/i18n/nb_NO.json b/i18n/nb_NO.json index 37c5c3011e..d6eb4944c2 100644 --- a/i18n/nb_NO.json +++ b/i18n/nb_NO.json @@ -123,6 +123,13 @@ "logging_enable_description": "Aktiver logging", "logging_level_description": "Hvis aktivert, hvilket loggnivå som skal brukes.", "logging_settings": "Logger", + "machine_learning_availability_checks": "Tilgjengelighetssjekk", + "machine_learning_availability_checks_description": "Automatisk oppdag og velg tilgjengelige maskinlæring-servere", + "machine_learning_availability_checks_enabled": "Aktiver tilgjengelighetssjekk", + "machine_learning_availability_checks_interval": "Sjekkintervall", + "machine_learning_availability_checks_interval_description": "Interval i millisekunder mellom tilgjengelighetssjekk", + "machine_learning_availability_checks_timeout": "Forespørselstimeout", + "machine_learning_availability_checks_timeout_description": "Tidsavbrudd i millisekunder for tilgjengelighetssjekk", "machine_learning_clip_model": "Clip-modell", "machine_learning_clip_model_description": "Navnet på en CLIP-modell finnes her. Merk at du må kjøre 'Smart Søk'-jobben på nytt for alle bilder etter at du har endret modell.", "machine_learning_duplicate_detection": "Duplikatsøk", @@ -387,8 +394,6 @@ "admin_password": "Administrator Passord", "administration": "Administrasjon", "advanced": "Avansert", - "advanced_settings_beta_timeline_subtitle": "Prøv den nye app opplevelsen", - "advanced_settings_beta_timeline_title": "Beta tidslinje", "advanced_settings_enable_alternate_media_filter_subtitle": "Bruk denne innstillingen for å filtrere mediefiler under synkronisering basert på alternative kriterier. Bruk kun denne innstillingen dersom man opplever problemer med at applikasjonen ikke oppdager alle album.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTELT] Bruk alternativ enhet album synk filter", "advanced_settings_log_level_title": "Loggnivå: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Er du sikker på at du vil fjerne {user}?", "album_search_not_found": "Ingen album ble funnet som traff ditt søk", "album_share_no_users": "Ser ut til at du har delt dette albumet med alle brukere, eller du ikke har noen brukere å dele det med.", + "album_summary": "Oppsummering av album", "album_updated": "Album oppdatert", "album_updated_setting_description": "Motta e-postvarsling når et delt album får nye filer", "album_user_left": "Forlot {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Objekt(er) gjenopprettet", "asset_skipped": "Hoppet over", "asset_skipped_in_trash": "I søppelbøtten", + "asset_trashed": "Objekt slettet", + "asset_troubleshoot": "Feilsøk objekt", "asset_uploaded": "Lastet opp", "asset_uploading": "Laster opp…", "asset_viewer_settings_subtitle": "Endre dine visningsinnstillinger for galleriet", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Autoavspilling av lysbildefremvisning", "back": "Tilbake", "back_close_deselect": "Tilbake, lukk eller fjern merking", + "background_backup_running_error": "Bakgrunnsbackup kjører, kan ikke starte manuell backup", "background_location_permission": "Bakgrunnstillatelse for plassering", "background_location_permission_content": "For å bytte nettverk når du kjører i bakgrunnen, må Immich *alltid* ha presis posisjonstilgang slik at appen kan lese Wi-Fi-nettverkets navn", + "background_options": "Bakgrunnsinnstillinger", "backup": "Sikkerhetskopiering", "backup_album_selection_page_albums_device": "Album på enhet ({count})", "backup_album_selection_page_albums_tap": "Trykk for å inkludere, dobbelttrykk for å ekskludere", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Velg album", "backup_album_selection_page_selection_info": "Valginformasjon", "backup_album_selection_page_total_assets": "Totalt antall unike objekter", + "backup_albums_sync": "Synkronisering av sikkerhetskopialbum", "backup_all": "Alle", "backup_background_service_backup_failed_message": "Sikkerhetskopiering av objekter feilet. Prøver på nytt…", "backup_background_service_connection_failed_message": "Tilkobling til server feilet. Prøver på nytt…", @@ -654,6 +665,8 @@ "change_pin_code": "Endre PIN kode", "change_your_password": "Endre passordet ditt", "changed_visibility_successfully": "Endret synlighet vellykket", + "charging": "Lading", + "charging_requirement_mobile_backup": "Bakgrunnsbackup krever at enheten lader", "check_corrupt_asset_backup": "Sjekk etter korrupte backupobjekter", "check_corrupt_asset_backup_button": "Utfør sjekk", "check_corrupt_asset_backup_description": "Kjør denne sjekken kun over Wi-Fi og når alle objekter har blitt lastet opp. Denne sjekken kan ta noen minutter.", @@ -740,6 +753,7 @@ "create_user": "Opprett Bruker", "created": "Opprettet", "created_at": "Laget", + "creating_linked_albums": "Oppretter sammenkoblede albumer...", "crop": "Beskjær", "curated_object_page_title": "Ting", "current_device": "Nåværende enhet", @@ -889,7 +903,9 @@ "error": "Feil", "error_change_sort_album": "Feilet ved endring av sorteringsrekkefølge på albumer", "error_delete_face": "Feil ved sletting av ansikt fra aktivia", + "error_getting_places": "Feil ved henting av steder", "error_loading_image": "Feil ved lasting av bilde", + "error_loading_partners": "Feil ved lasting av partnere: {error}", "error_saving_image": "Feil: {error}", "error_tag_face_bounding_box": "Feil ved merking av ansikt - klarte ikke å få koordinatene på omrisset", "error_title": "Feil - Noe gikk galt", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Ingen favorittobjekter funnet", "feature_photo_updated": "Fremhevet bilde oppdatert", "features": "Funksjoner", + "features_in_development": "Funksjoner under utvikling", "features_setting_description": "Administrerer funksjoner for appen", "file_name": "Filnavn", "file_name_or_extension": "Filnavn eller filtype", @@ -1218,6 +1235,7 @@ "local": "Lokal", "local_asset_cast_failed": "Kan ikke caste et bilde som ikke er lastet opp til serveren", "local_assets": "Lokale objekter", + "local_media_summary": "Oppsummering av lokale media", "local_network": "Lokalt nettverk", "local_network_sheet_info": "Appen vil koble til serveren via denne URL-en når du bruker det angitte Wi-Fi-nettverket", "location_permission": "Stedstillatelse", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Skriv inn lengdegrad her", "lock": "Lås", "locked_folder": "Låst mappe", + "log_detail_title": "Loggdetaljer", "log_out": "Logg ut", "log_out_all_devices": "Logg ut fra alle enheter", "logged_in_as": "Logget inn som {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Passord oppdatert", "logout_all_device_confirmation": "Er du sikker på at du vil logge ut av alle enheter?", "logout_this_device_confirmation": "Er du sikker på at du vil logge ut av denne enheten?", + "logs": "Logger", "longitude": "Lengdegrad", "look": "Se", "loop_videos": "Gjenta Videoer", @@ -1301,6 +1321,7 @@ "mark_as_read": "Merk som lest", "marked_all_as_read": "Merket alle som lest", "matches": "Samsvarende", + "matching_assets": "Matchende objekter", "media_type": "Mediatype", "memories": "Minner", "memories_all_caught_up": "Alt utført", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Navn eller kallenavn", "network_requirement_photos_upload": "Bruk mobildata for backup av bilder", "network_requirement_videos_upload": "Bruk mobildata for backup av videoer", + "network_requirements": "Nettverkskrav", "network_requirements_updated": "Nettverkskrav endret, resetter backupkø", "networking_settings": "Nettverk", "networking_subtitle": "Administrer serverendepunkt-innstillinger", @@ -1351,6 +1373,7 @@ "new_person": "Ny person", "new_pin_code": "Ny PIN-kode", "new_pin_code_subtitle": "Dette er første gang du åpner den låste mappen. Lag en PIN-kode for å sikre tilgangen til denne siden", + "new_timeline": "Ny tidslinje", "new_user_created": "Ny bruker opprettet", "new_version_available": "NY VERSJON TILGJENGELIG", "newest_first": "Nyeste først", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLIKK FOR Å LASTE OPP DITT FØRSTE BILDE", "no_assets_to_show": "Ingen objekter å vise", "no_cast_devices_found": "Ingen caste-enheter oppdaget", + "no_checksum_local": "Ingen sjekksum tilgjengelig - Kan ikke hente lokale objekter", + "no_checksum_remote": "Ingen sjekksum tilgjengelig - Kan ikke hente eksterne objekter", "no_duplicates_found": "Ingen duplikater ble funnet.", "no_exif_info_available": "Ingen EXIF-informasjon tilgjengelig", "no_explore_results_message": "Last opp flere bilder for å utforske samlingen din.", "no_favorites_message": "Legg til favoritter for å finne dine beste bilder og videoer raskt", "no_libraries_message": "Opprett et eksternt bibliotek for å se bildene og videoene dine", + "no_local_assets_found": "Ingen lokale objekter funnet med denne sjekksummen", "no_locked_photos_message": "Bilder og videoer i den låste mappen er skjult og vil ikke vises når du blar i biblioteket.", "no_name": "Ingen navn", "no_notifications": "Ingen varsler", "no_people_found": "Ingen samsvarende personer funnet", "no_places": "Ingen steder", + "no_remote_assets_found": "Ingen eksterne objekter funnet med denne sjekksummen", "no_results": "Ingen resultater", "no_results_description": "Prøv et synonym eller mer generelt søkeord", "no_shared_albums_message": "Opprett et album for å dele bilder og videoer med personer i nettverket ditt", "no_uploads_in_progress": "Ingen opplasting pågår", + "not_available": "Ikke tilgjengelig", "not_in_any_album": "Ikke i noe album", "not_selected": "Ikke valgt", "note_apply_storage_label_to_previously_uploaded assets": "Merk: For å bruke lagringsetiketten på tidligere opplastede filer, kjør", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Regenererer miniatyrbilder", "remote": "Eksternt", "remote_assets": "Eksterne objekter", + "remote_media_summary": "Oppsummering av eksterne media", "remove": "Fjern", "remove_assets_album_confirmation": "Er du sikker på at du fil slette {count, plural, one {# objekt} other {# objekter}} fra albumet?", "remove_assets_shared_link_confirmation": "Er du sikker på at du vil slette {count, plural, one {# objekt} other {# objekter}} fra den delte lenken?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Vis overgang til lysbildefremvisning", "show_supporter_badge": "Supportermerke", "show_supporter_badge_description": "Vis et supportermerke", + "show_text_search_menu": "Vis tekstsøk meny", "shuffle": "Bland", "sidebar": "Sidefelt", "sidebar_display_description": "Vis en lenke for visningen i sidefeltet", @@ -1893,6 +1923,7 @@ "stacktrace": "Stakkspor", "start": "Start", "start_date": "Startdato", + "start_date_before_end_date": "Startdato må være før sluttdato", "state": "Fylke", "status": "Status", "stop_casting": "Stopp casting", @@ -2095,5 +2126,6 @@ "yes": "Ja", "you_dont_have_any_shared_links": "Du har ingen delte lenker", "your_wifi_name": "Ditt Wi-Fi-navn", - "zoom_image": "Zoom Bilde" + "zoom_image": "Zoom Bilde", + "zoom_to_bounds": "Zoom til grensene" } diff --git a/i18n/nl.json b/i18n/nl.json index cfd8ffca98..c236401a73 100644 --- a/i18n/nl.json +++ b/i18n/nl.json @@ -123,6 +123,10 @@ "logging_enable_description": "Logboek inschakelen", "logging_level_description": "Indien ingeschakeld, welk logniveau er wordt gebruikt.", "logging_settings": "Logging", + "machine_learning_availability_checks_description": "Automatisch detecteren en selecteren van beschikbare machine learning servers", + "machine_learning_availability_checks_enabled": "Activeer beschikbaarheid controles", + "machine_learning_availability_checks_interval": "Controleinterval", + "machine_learning_availability_checks_interval_description": "Interval in milliseconden tussen beschikbaarheid checks", "machine_learning_clip_model": "CLIP model", "machine_learning_clip_model_description": "De naam van een CLIP-model dat hier is vermeld. Let op: je moet de 'Slim Zoeken -taak opnieuw uitvoeren voor alle afbeeldingen wanneer je een model wijzigt.", "machine_learning_duplicate_detection": "Duplicaat detectie", @@ -387,8 +391,6 @@ "admin_password": "Beheerder wachtwoord", "administration": "Beheer", "advanced": "Geavanceerd", - "advanced_settings_beta_timeline_subtitle": "Probeer de nieuwe app-ervaring", - "advanced_settings_beta_timeline_title": "Beta tijdlijn", "advanced_settings_enable_alternate_media_filter_subtitle": "Gebruik deze optie om media te filteren tijdens de synchronisatie op basis van alternatieve criteria. Gebruik dit enkel als de app problemen heeft met het detecteren van albums.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTEEL] Gebruik een alternatieve album synchronisatie filter", "advanced_settings_log_level_title": "Logniveau: {level}", @@ -425,6 +427,7 @@ "album_remove_user_confirmation": "Weet je zeker dat je {user} wilt verwijderen?", "album_search_not_found": "Geen albums gevonden die aan je zoekopdracht voldoen", "album_share_no_users": "Het lijkt erop dat je dit album met alle gebruikers hebt gedeeld, of dat je geen gebruikers hebt om mee te delen.", + "album_summary": "Album samenvatting", "album_updated": "Album bijgewerkt", "album_updated_setting_description": "Ontvang een e-mailmelding wanneer een gedeeld album nieuwe items heeft", "album_user_left": "{album} verlaten", @@ -496,6 +499,8 @@ "asset_restored_successfully": "Item succesvol hersteld", "asset_skipped": "Overgeslagen", "asset_skipped_in_trash": "In prullenbak", + "asset_trashed": "Asset verwijderd", + "asset_troubleshoot": "Asset probleemoplossing", "asset_uploaded": "Geüpload", "asset_uploading": "Uploaden…", "asset_viewer_settings_subtitle": "Beheer je instellingen voor galerijweergave", @@ -529,8 +534,10 @@ "autoplay_slideshow": "Diavoorstelling automatisch afspelen", "back": "Terug", "back_close_deselect": "Terug, sluiten of deselecteren", + "background_backup_running_error": "Achtergrond backup draait, handmatige backup kan niet worden gestart", "background_location_permission": "Achtergrond locatie toestemming", "background_location_permission_content": "Om van netwerk te wisselen terwijl de app op de achtergrond draait, heeft Immich *altijd* toegang tot de exacte locatie nodig om de naam van het WiFi-netwerk te kunnen lezen", + "background_options": "Achtergrond opties", "backup": "Back-up", "backup_album_selection_page_albums_device": "Albums op apparaat ({count})", "backup_album_selection_page_albums_tap": "Tik om op te nemen, dubbel tik om uit te sluiten", @@ -538,6 +545,7 @@ "backup_album_selection_page_select_albums": "Selecteer albums", "backup_album_selection_page_selection_info": "Selectie info", "backup_album_selection_page_total_assets": "Totaal unieke items", + "backup_albums_sync": "Backup albums synchronisatie", "backup_all": "Alle", "backup_background_service_backup_failed_message": "Fout bij het back-uppen van de items. Opnieuw proberen…", "backup_background_service_connection_failed_message": "Fout bij het verbinden met de server. Opnieuw proberen…", @@ -654,6 +662,8 @@ "change_pin_code": "Wijzig PIN code", "change_your_password": "Wijzig je wachtwoord", "changed_visibility_successfully": "Zichtbaarheid succesvol gewijzigd", + "charging": "Opladen", + "charging_requirement_mobile_backup": "Achtergrond backup vereist dat het apparaat wordt opgeladen", "check_corrupt_asset_backup": "Controleer op corrupte back-ups van items", "check_corrupt_asset_backup_button": "Controle uitvoeren", "check_corrupt_asset_backup_description": "Voer deze controle alleen uit via WiFi en nadat alle items zijn geback-upt. De procedure kan een paar minuten duren.", @@ -740,6 +750,7 @@ "create_user": "Gebruiker aanmaken", "created": "Aangemaakt", "created_at": "Aangemaakt", + "creating_linked_albums": "Gekoppelde albums worden aangemaakt", "crop": "Bijsnijden", "curated_object_page_title": "Dingen", "current_device": "Huidig apparaat", @@ -1054,6 +1065,7 @@ "favorites_page_no_favorites": "Geen favoriete items gevonden", "feature_photo_updated": "Uitgelichte afbeelding bijgewerkt", "features": "Functies", + "features_in_development": "Functies in ontwikkeling", "features_setting_description": "Beheer de app functies", "file_name": "Bestandsnaam", "file_name_or_extension": "Bestandsnaam of extensie", @@ -1218,6 +1230,7 @@ "local": "Lokaal", "local_asset_cast_failed": "Kan geen item casten die nog niet geüpload is naar de server", "local_assets": "Lokale Items", + "local_media_summary": "Lokale media samenvatting", "local_network": "Lokaal netwerk", "local_network_sheet_info": "De app maakt verbinding met de server via deze URL wanneer het opgegeven WiFi-netwerk wordt gebruikt", "location_permission": "Locatietoestemming", @@ -1229,6 +1242,7 @@ "location_picker_longitude_hint": "Voer hier je lengtegraad in", "lock": "Vergrendel", "locked_folder": "Vergrendelde map", + "log_detail_title": "Log details", "log_out": "Uitloggen", "log_out_all_devices": "Uitloggen op alle apparaten", "logged_in_as": "Ingelogd als {user}", @@ -1259,6 +1273,7 @@ "login_password_changed_success": "Wachtwoord succesvol bijgewerkt", "logout_all_device_confirmation": "Weet je zeker dat je wilt uitloggen op alle apparaten?", "logout_this_device_confirmation": "Weet je zeker dat je wilt uitloggen op dit apparaat?", + "logs": "Logs", "longitude": "Lengtegraad", "look": "Uiterlijk", "loop_videos": "Video's herhalen", @@ -1301,6 +1316,7 @@ "mark_as_read": "Markeren als gelezen", "marked_all_as_read": "Allen gemarkeerd als gelezen", "matches": "Overeenkomsten", + "matching_assets": "Overeenkomende assets", "media_type": "Mediatype", "memories": "Herinneringen", "memories_all_caught_up": "Je bent helemaal bij", @@ -1341,6 +1357,7 @@ "name_or_nickname": "Naam of gebruikersnaam", "network_requirement_photos_upload": "Gebruik mobiele data voor de backup van foto's", "network_requirement_videos_upload": "Gebruik mobiele data voor de backups van video's", + "network_requirements": "Netwerk vereisten", "network_requirements_updated": "Netwerkeisen zijn gewijzigd, back-upwachtrij wordt opnieuw ingesteld", "networking_settings": "Netwerk", "networking_subtitle": "Beheer de instellingen voor de server-URL", @@ -1351,6 +1368,7 @@ "new_person": "Nieuw persoon", "new_pin_code": "Nieuwe PIN code", "new_pin_code_subtitle": "Dit is de eerste keer dat u de vergrendelde map opent. Stel een pincode in om deze pagina veilig te openen", + "new_timeline": "Nieuwe tijdlijn", "new_user_created": "Nieuwe gebruiker aangemaakt", "new_version_available": "NIEUWE VERSIE BESCHIKBAAR", "newest_first": "Nieuwste eerst", diff --git a/i18n/nn.json b/i18n/nn.json index 01f76f528b..7b2f256c94 100644 --- a/i18n/nn.json +++ b/i18n/nn.json @@ -28,6 +28,8 @@ "add_to_album": "Legg til i album", "add_to_album_bottom_sheet_added": "Lagt til i {album}", "add_to_album_bottom_sheet_already_exists": "Allereie i {album}", + "add_to_albums": "Legg til i album", + "add_to_albums_count": "Legg til i album ({count})", "add_to_shared_album": "Legg til i delt album", "add_url": "Legg til URL", "added_to_archive": "Lagt til i arkiv", @@ -45,6 +47,7 @@ "backup_database": "Lag tryggingskopi av database", "backup_database_enable_description": "Aktiver tryggingskopiering av database", "backup_keep_last_amount": "Antal tryggingskopiar å behalde", + "backup_onboarding_1_description": "sikkerheitskopi i skya eller på eit anna fysisk sted.", "backup_onboarding_2_description": "lokale kopiar på andre einingar. Dette inkluderer hovudfilene og backup av desse filene lokalt.", "backup_onboarding_3_description": "fullstendige kopiar av dine data, inkludert originalfilene. Dette inkluderer 1 utomhus kopi og 2 lokale kopiar.", "backup_onboarding_description": "Ein 3-2-1 backup-strategi tilrådast for å verne dataa dine. Du bør ha kopiar av dei opplasta bileta/videoane dine samt Immich-databasen, slik at du har ei fleirdelt backup-løysing.", @@ -78,6 +81,7 @@ "image_format_description": "WebP gjev mindre filstorleik enn JPEG, men er treigare å lage.", "image_fullsize_description": "Bilete i full storleik utan metadata, i bruk når zooma inn", "image_fullsize_enabled": "Skru på generering av bilete i full storleik", + "image_fullsize_enabled_description": "Generer bilete i full storleik for ikkje web-tilpassa formatar. Når \"Foretrekk", "image_fullsize_quality_description": "Kvalitet på bilete i full storleik frå 1-100. Høgare er betre, men gjev større filer.", "image_fullsize_title": "Innstillingar for bilete i full storleik", "image_prefer_embedded_preview": "Bruk helst innebygd førehandsvisning", @@ -118,6 +122,9 @@ "logging_enable_description": "Aktiver loggføring", "logging_level_description": "Når aktivert, kva loggnivå å bruke.", "logging_settings": "Logging", + "machine_learning_availability_checks_description": "Automatiser oppdaging og prioritet av tilgjengelege maskinlærings-serverar", + "machine_learning_availability_checks_interval": "Sjekk intervall", + "machine_learning_availability_checks_timeout_description": "Utløpstid i millisekund for tilgjengelegheitssjekk", "machine_learning_clip_model": "CLIP modell", "machine_learning_clip_model_description": "Namnet på ein CLIP modell finst her. Merk at du må køyre 'Smart Søk'-jobben på nytt for alle bilete etter du har forandra modell.", "machine_learning_duplicate_detection": "Duplikatdeteksjon", @@ -139,6 +146,7 @@ "machine_learning_min_detection_score": "Minimum deteksjonsresultat", "machine_learning_min_detection_score_description": "Minimum tillitspoeng for at eit ansikt skal bli oppdaga, på ein skala frå 0 til 1. Lågare verdiar vil oppdage fleire ansikt, men kan føre til feilaktige treff.", "machine_learning_min_recognized_faces": "Minimum gjenkjende ansikt", + "machine_learning_min_recognized_faces_description": "Minste tal på gjenkjende fjes for å opprette ein person. Aukar ein dette, vert ansiktsgjenkjenninga meir presis, på bekostning av auka sjanse for at ansikt ikkje vert tileigna ein person.", "machine_learning_settings": "Innstillingar for maskinlæring", "machine_learning_settings_description": "Administrer maskinlæringsfunksjonar og innstillingar", "machine_learning_smart_search": "Smart Søk", @@ -154,6 +162,7 @@ "map_settings": "Kart", "map_settings_description": "Endre kartinnstillingar", "map_style_description": "URL til eit style.json-karttema", + "memory_generate_job": "Minne-generering", "metadata_extraction_job": "Hent ut metadata", "metadata_extraction_job_description": "Hent ut metadata frå kvart bilete, slik som GPS, ansikt og oppløysing", "metadata_faces_import_setting": "Skru på import av ansikt", @@ -161,6 +170,17 @@ "metadata_settings": "Metadata Innstillinger", "metadata_settings_description": "Endre metadata-innstillingar", "migration_job": "Migrasjon", + "migration_job_description": "Overfør miniatyrbilete for bilete og ansikt til den nyaste mappestrukturen", + "nightly_tasks_cluster_faces_setting_description": "Køyr ansiktsgjenkjenning på nyleg identifiserte ansikt", + "nightly_tasks_database_cleanup_setting_description": "Fjern gamal, utgått data frå databasen", + "nightly_tasks_generate_memories_setting": "Generer minner", + "nightly_tasks_generate_memories_setting_description": "Lag nye minner frå bilete", + "nightly_tasks_missing_thumbnails_setting": "Generer manglande miniatyrbilete", + "nightly_tasks_missing_thumbnails_setting_description": "Set bilete utan miniatyrbilete i kø for generering av miniatyrbilete", + "nightly_tasks_settings": "Innstillingar for nattlege jobbar", + "nightly_tasks_settings_description": "Handsam nattlege jobbar", + "nightly_tasks_start_time_setting": "Starttid", + "nightly_tasks_start_time_setting_description": "Tidspunktet serveren køyrer nattlege jobbar", "notification_email_from_address": "Frå adresse", "notification_email_test_email_failed": "Mislukka sending av test-e-post, sjekk konfigurasjonen din", "notification_email_test_email_sent": "Det vart sendt ei test-melding til {email}. Sjekk e-posten din.", diff --git a/i18n/pl.json b/i18n/pl.json index dd0ba8cd4d..f0bd407bab 100644 --- a/i18n/pl.json +++ b/i18n/pl.json @@ -123,6 +123,13 @@ "logging_enable_description": "Uruchom zapisywanie logów", "logging_level_description": "Kiedy włączone, jakiego poziomu użyć.", "logging_settings": "Rejestrowanie logów", + "machine_learning_availability_checks": "Sprawdzanie dostępności", + "machine_learning_availability_checks_description": "Automatyczne wykrywaj i preferuj dostępne serwery uczenia maszynowego", + "machine_learning_availability_checks_enabled": "Włącz sprawdzanie dostępności", + "machine_learning_availability_checks_interval": "Częstotliwość sprawdzania", + "machine_learning_availability_checks_interval_description": "Odstęp czasu w milisekundach między sprawdzeniami dostępności", + "machine_learning_availability_checks_timeout": "Upłynął czas żądania", + "machine_learning_availability_checks_timeout_description": "Limit czasu żądania w milisekundach dla sprawdzania dostępności", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Nazwa modelu CLIP jest wymieniona tutaj. Zwróć uwagę, że po zmianie modelu musisz ponownie uruchomić zadanie 'Smart Search' dla wszystkich obrazów.", "machine_learning_duplicate_detection": "Wykrywanie Duplikatów", @@ -233,7 +240,7 @@ "oauth_storage_quota_default": "Domyślna ilość miejsca w magazynie (GiB)", "oauth_storage_quota_default_description": "Limit w GiB do wykorzystania, gdy nie podano żadnej wartości.", "oauth_timeout": "Upłynął czas żądania", - "oauth_timeout_description": "Limit czasu żądania (w milisekundach)", + "oauth_timeout_description": "Limit czasu żądania w milisekundach", "password_enable_description": "Zaloguj używając e-mail i hasła", "password_settings": "Logowanie Hasłem", "password_settings_description": "Zarządzaj ustawieniami logowania hasłem", @@ -387,8 +394,6 @@ "admin_password": "Hasło Administratora", "administration": "Administracja", "advanced": "Zaawansowane", - "advanced_settings_beta_timeline_subtitle": "Wypróbuj nową funkcjonalność aplikacji", - "advanced_settings_beta_timeline_title": "Beta-Timeline", "advanced_settings_enable_alternate_media_filter_subtitle": "Użyj tej opcji do filtrowania mediów podczas synchronizacji alternatywnych kryteriów. Używaj tylko wtedy gdy aplikacja ma problemy z wykrywaniem wszystkich albumów.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERYMENTALNE] Użyj alternatywnego filtra synchronizacji albumu", "advanced_settings_log_level_title": "Poziom szczegółowości dziennika: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Na pewno chcesz usunąć {user}?", "album_search_not_found": "Nie znaleziono albumów pasujących do Twojego wyszukiwania", "album_share_no_users": "Wygląda na to, że ten album albo udostępniono wszystkim użytkownikom, albo nie ma komu go udostępnić.", + "album_summary": "Podsumowanie albumu", "album_updated": "Album zaktualizowany", "album_updated_setting_description": "Otrzymaj powiadomienie e-mail, gdy do udostępnionego Ci albumu zostaną dodane nowe zasoby", "album_user_left": "Opuszczono {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Zasób został pomyślnie przywrócony", "asset_skipped": "Pominięto", "asset_skipped_in_trash": "W koszu", + "asset_trashed": "Zasób wrzucono do kosza", + "asset_troubleshoot": "Rozwiązywanie problemów z zasobami", "asset_uploaded": "Przesłano", "asset_uploading": "Przesyłanie…", "asset_viewer_settings_subtitle": "Zarządzaj ustawieniami przeglądarki galerii", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Automatyczne odtwarzanie pokazu slajdów", "back": "Wstecz", "back_close_deselect": "Wróć, zamknij lub odznacz", + "background_backup_running_error": "Tworzenie kopii zapasowej w tle jest obecnie w toku, nie można rozpocząć ręcznego tworzenia kopii zapasowej", "background_location_permission": "Uprawnienia do lokalizacji w tle", "background_location_permission_content": "Aby móc przełączać sieć podczas pracy w tle, Immich musi *zawsze* mieć dostęp do dokładnej lokalizacji, aby aplikacja mogła odczytać nazwę sieci Wi-Fi", + "background_options": "Opcje w tle", "backup": "Kopia zapasowa", "backup_album_selection_page_albums_device": "Albumy na urządzeniu ({count})", "backup_album_selection_page_albums_tap": "Stuknij, aby włączyć, stuknij dwukrotnie, aby wykluczyć", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Wybierz albumy", "backup_album_selection_page_selection_info": "Info o wyborze", "backup_album_selection_page_total_assets": "Łącznie unikalnych plików", + "backup_albums_sync": "Synchronizacja kopii zapasowych albumów", "backup_all": "Wszystkie", "backup_background_service_backup_failed_message": "Nie udało się wykonać kopii zapasowej zasobów. Ponowna próba…", "backup_background_service_connection_failed_message": "Nie udało się połączyć z serwerem. Ponowna próba…", @@ -654,6 +665,8 @@ "change_pin_code": "Zmień kod PIN", "change_your_password": "Zmień swoje hasło", "changed_visibility_successfully": "Pomyślnie zmieniono widoczność", + "charging": "Ładowanie", + "charging_requirement_mobile_backup": "Tworzenie kopii zapasowej w tle wymaga by urządzenie było podłączone do ładowania", "check_corrupt_asset_backup": "Sprawdź, czy kopie zapasowe zasobów nie są uszkodzone", "check_corrupt_asset_backup_button": "Wykonaj sprawdzenie", "check_corrupt_asset_backup_description": "Uruchom sprawdzenie tylko przez Wi-Fi i po utworzeniu kopii zapasowej wszystkich zasobów. Procedura może potrwać kilka minut.", @@ -740,6 +753,7 @@ "create_user": "Stwórz użytkownika", "created": "Utworzono", "created_at": "Utworzony", + "creating_linked_albums": "Tworzenie połączonych albumów...", "crop": "Przytnij", "curated_object_page_title": "Rzeczy", "current_device": "Obecne urządzenie", @@ -888,8 +902,10 @@ "enter_your_pin_code_subtitle": "Wprowadź twój kod PIN, aby uzyskać dostęp do folderu zablokowanego", "error": "Błąd", "error_change_sort_album": "Nie udało się zmienić kolejności sortowania albumów", - "error_delete_face": "Wystąpił błąd podczas usuwania twarzy z zasobów", + "error_delete_face": "Błąd podczas usuwania twarzy z zasobów", + "error_getting_places": "Błąd podczas pozyskiwania lokalizacji", "error_loading_image": "Błąd podczas ładowania zdjęcia", + "error_loading_partners": "Błąd podczas ładowania partnerów: {error}", "error_saving_image": "Błąd: {error}", "error_tag_face_bounding_box": "Błąd przy dodawaniu etykiety dla tej twarzy - nie może uzyskać współrzędnych granicznych", "error_title": "Błąd - Coś poszło nie tak", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Nie znaleziono ulubionych zasobów", "feature_photo_updated": "Zdjęcie główne zaktualizowane pomyślnie", "features": "Funkcje", + "features_in_development": "Funkcje w fazie rozwoju", "features_setting_description": "Zarządzaj funkcjami aplikacji", "file_name": "Nazwa pliku", "file_name_or_extension": "Nazwie lub rozszerzeniu pliku", @@ -1218,6 +1235,7 @@ "local": "Lokalny", "local_asset_cast_failed": "Nie można strumieniować zasobu, który nie został przesłany na serwer", "local_assets": "Zasoby lokalne", + "local_media_summary": "Podsumowanie lokalnych mediów", "local_network": "Sieć lokalna", "local_network_sheet_info": "Aplikacja połączy się z serwerem za pośrednictwem tego adresu URL podczas korzystania z określonej sieci Wi-Fi", "location_permission": "Zezwolenie na lokalizację", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Wpisz tutaj swoją długość geograficzną", "lock": "Zablokuj", "locked_folder": "Folder zablokowany", + "log_detail_title": "Szczegóły dziennika", "log_out": "Wyloguj", "log_out_all_devices": "Wyloguj ze Wszystkich Urządzeń", "logged_in_as": "Zalogowano jako {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Hasło zostało zmienione", "logout_all_device_confirmation": "Czy na pewno chcesz wylogować się ze wszystkich urządzeń?", "logout_this_device_confirmation": "Czy na pewno chcesz wylogować to urządzenie?", + "logs": "Logi", "longitude": "Długość geograficzna", "look": "Wygląd", "loop_videos": "Powtarzaj filmy", @@ -1301,6 +1321,7 @@ "mark_as_read": "Zaznacz jako odczytane", "marked_all_as_read": "Zaznaczono wszystkie jako przeczytane", "matches": "Powiązania", + "matching_assets": "Pasujące zasoby", "media_type": "Typ zasobu", "memories": "Wspomnienia", "memories_all_caught_up": "Wszystko złapane", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Nazwa lub pseudonim", "network_requirement_photos_upload": "Używaj danych komórkowych do tworzenia kopii zapasowych zdjęć", "network_requirement_videos_upload": "Używaj danych komórkowych do tworzenia kopii zapasowych filmów", + "network_requirements": "Wymagania sieciowe", "network_requirements_updated": "Zmieniono wymagania sieciowe, resetowanie kolejki kopii zapasowych", "networking_settings": "Sieć", "networking_subtitle": "Zarządzaj ustawieniami punktu końcowego serwera", @@ -1351,6 +1373,7 @@ "new_person": "Nowa osoba", "new_pin_code": "Nowy kod PIN", "new_pin_code_subtitle": "Jest to pierwszy raz, kiedy wchodzisz do folderu zablokowanego. Utwórz kod PIN, aby bezpiecznie korzystać z tej strony", + "new_timeline": "Nowa oś czasu", "new_user_created": "Pomyślnie stworzono nowego użytkownika", "new_version_available": "NOWA WERSJA DOSTĘPNA", "newest_first": "Od najnowszych", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLIKNIJ, ABY WYSŁAĆ PIERWSZE ZDJĘCIE", "no_assets_to_show": "Brak zasobów do pokazania", "no_cast_devices_found": "Nie znaleziono urządzeń do przesyłania strumieniowego", + "no_checksum_local": "Brak sumy kontrolnej - nie można pobrać lokalnych zasobów", + "no_checksum_remote": "Brak sumy kontrolnej - nie można pobrać zdalnego zasobu", "no_duplicates_found": "Nie znaleziono duplikatów.", "no_exif_info_available": "Nie znaleziono informacji exif", "no_explore_results_message": "Prześlij więcej zdjęć, aby przeglądać swój zbiór.", "no_favorites_message": "Dodaj ulubione aby szybko znaleźć swoje najlepsze zdjęcia i filmy", "no_libraries_message": "Stwórz bibliotekę zewnętrzną, aby przeglądać swoje zdjęcia i filmy", + "no_local_assets_found": "Nie znaleziono żadnych lokalnych zasobów o tej sumie kontrolnej", "no_locked_photos_message": "Zdjęcia i filmy w folderze zablokowanym są ukryte i nie będą wyświetlane podczas przeglądania biblioteki.", "no_name": "Brak Nazwy", "no_notifications": "Brak powiadomień", "no_people_found": "Brak pasujących osób", "no_places": "Brak miejsc", + "no_remote_assets_found": "Nie znaleziono żadnych zdalnych zasobów o tej sumie kontrolnej", "no_results": "Brak wyników", "no_results_description": "Spróbuj użyć synonimu lub bardziej ogólnego słowa kluczowego", "no_shared_albums_message": "Stwórz album aby udostępnić zdjęcia i filmy osobom w Twojej sieci", "no_uploads_in_progress": "Brak przesyłań w toku", + "not_available": "Nie dotyczy", "not_in_any_album": "Bez albumu", "not_selected": "Nie wybrano", "note_apply_storage_label_to_previously_uploaded assets": "Uwaga: Aby przypisać etykietę magazynowania do wcześniej przesłanych zasobów, uruchom", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Regenerowanie miniatur", "remote": "Zdalny", "remote_assets": "Zasoby zdalne", + "remote_media_summary": "Podsumowanie mediów zdalnych", "remove": "Usuń", "remove_assets_album_confirmation": "Czy na pewno chcesz usunąć {count, plural, one {# zasób} few {# zasoby} other {# zasobów}} z albumu?", "remove_assets_shared_link_confirmation": "Czy na pewno chcesz usunąć {count, plural, one {# zasób} other {# zasoby}} z tego udostępnionego linku?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Pokaż przejście pokazu slajdów", "show_supporter_badge": "Odznaka wspierającego", "show_supporter_badge_description": "Pokaż odznakę wspierającego", + "show_text_search_menu": "Pokaż menu wyszukiwania tekstowego", "shuffle": "Losuj", "sidebar": "Panel boczny", "sidebar_display_description": "Wyświetl link do widoku w pasku bocznym", @@ -1893,6 +1923,7 @@ "stacktrace": "Ślad stosu", "start": "Start", "start_date": "Od dnia", + "start_date_before_end_date": "Data początkowa musi być wcześniejsza niż data końcowa", "state": "Województwo", "status": "Status", "stop_casting": "Zatrzymaj strumieniowanie", @@ -2095,5 +2126,6 @@ "yes": "Tak", "you_dont_have_any_shared_links": "Nie masz żadnych udostępnionych linków", "your_wifi_name": "Twoja nazwa Wi-Fi", - "zoom_image": "Powiększ obraz" + "zoom_image": "Powiększ obraz", + "zoom_to_bounds": "Powiększ do krawędzi" } diff --git a/i18n/pt.json b/i18n/pt.json index 97673bb7a5..f039505152 100644 --- a/i18n/pt.json +++ b/i18n/pt.json @@ -387,8 +387,6 @@ "admin_password": "Palavra-passe do administrador", "administration": "Administração", "advanced": "Avançado", - "advanced_settings_beta_timeline_subtitle": "Experimente as novas funcionalidades da aplicação", - "advanced_settings_beta_timeline_title": "Linha temporal da versão Beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Utilize esta definição para filtrar ficheiros durante a sincronização baseada em critérios alternativos. Utilize apenas se a aplicação estiver com problemas a detetar todos os álbuns.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Utilizar um filtro alternativo de sincronização de álbuns em dispositivos", "advanced_settings_log_level_title": "Nível de registo: {level}", diff --git a/i18n/pt_BR.json b/i18n/pt_BR.json index 5115f9ff6a..ae5335c872 100644 --- a/i18n/pt_BR.json +++ b/i18n/pt_BR.json @@ -387,8 +387,6 @@ "admin_password": "Senha do administrador", "administration": "Administração", "advanced": "Avançado", - "advanced_settings_beta_timeline_subtitle": "Teste a nova interface do aplicativo", - "advanced_settings_beta_timeline_title": "Linha do tempo Beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Use esta opção para filtrar mídias durante a sincronização com base em critérios alternativos. Tente esta opção somente se o aplicativo estiver com problemas para detectar todos os álbuns.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Utilizar filtro alternativo de sincronização de álbum de dispositivo", "advanced_settings_log_level_title": "Nível de log: {level}", @@ -425,6 +423,7 @@ "album_remove_user_confirmation": "Tem certeza de que deseja remover {user}?", "album_search_not_found": "Não há álbum que corresponda à sua pesquisa", "album_share_no_users": "Parece que você já compartilhou este álbum com todos os usuários ou não há nenhum usuário para compartilhar.", + "album_summary": "Resumo do álbum", "album_updated": "Álbum atualizado", "album_updated_setting_description": "Receba uma notificação por e-mail quando um álbum compartilhado tiver novos recursos", "album_user_left": "Saiu do álbum {album}", @@ -496,6 +495,8 @@ "asset_restored_successfully": "Arquivo restaurado", "asset_skipped": "Ignorado", "asset_skipped_in_trash": "Na lixeira", + "asset_trashed": "Arquivo enviado para a lixeira", + "asset_troubleshoot": "Diagnóstico do arquivo", "asset_uploaded": "Enviado", "asset_uploading": "Enviando…", "asset_viewer_settings_subtitle": "Gerenciar as configurações do visualizador da galeria", @@ -529,8 +530,10 @@ "autoplay_slideshow": "Apresentação de slides automática", "back": "Voltar", "back_close_deselect": "Voltar, fechar ou desmarcar", + "background_backup_running_error": "Não é possível iniciar o backup manual agora pois o backup em segundo plano já está sendo executado", "background_location_permission": "Permissão de localização em segundo plano", "background_location_permission_content": "Para que seja possível trocar o endereço quando estiver executando em segundo plano, o Immich deve *sempre* ter a permissão de localização precisa para que o aplicativo consiga ler o nome da rede Wi-Fi", + "background_options": "Opções de Plano de Fundo", "backup": "Backup", "backup_album_selection_page_albums_device": "Álbuns no dispositivo ({count})", "backup_album_selection_page_albums_tap": "Toque para incluir, toque duas vezes para excluir", @@ -538,6 +541,7 @@ "backup_album_selection_page_select_albums": "Selecionar álbuns", "backup_album_selection_page_selection_info": "Informações da Seleção", "backup_album_selection_page_total_assets": "Total de recursos exclusivos", + "backup_albums_sync": "Backup de sincronização de álbuns", "backup_all": "Todos", "backup_background_service_backup_failed_message": "Falha ao fazer backup. Tentando novamente…", "backup_background_service_connection_failed_message": "Falha na conexão com o servidor. Tentando novamente…", @@ -654,6 +658,8 @@ "change_pin_code": "Alterar código PIN", "change_your_password": "Alterar sua senha", "changed_visibility_successfully": "Visibilidade alterada com sucesso", + "charging": "Carregando", + "charging_requirement_mobile_backup": "Backups em plano de fundo requerem que o dispositivo esteja sendo carregado", "check_corrupt_asset_backup": "Verifique se há backups corrompidos", "check_corrupt_asset_backup_button": "Verificar", "check_corrupt_asset_backup_description": "Execute esta verificação somente em uma rede Wi-Fi e quando o backup de todos os arquivos já estiver concluído. O processo demora alguns minutos.", @@ -740,6 +746,7 @@ "create_user": "Criar usuário", "created": "Criado", "created_at": "Criado em", + "creating_linked_albums": "Criando álbuns relacionados...", "crop": "Cortar", "curated_object_page_title": "Objetos", "current_device": "Dispositivo atual", @@ -889,7 +896,9 @@ "error": "Erro", "error_change_sort_album": "Falha ao alterar a ordem de exibição", "error_delete_face": "Erro ao remover face do arquivo", + "error_getting_places": "Erro ao buscar os locais", "error_loading_image": "Erro ao carregar a página", + "error_loading_partners": "Erro ao carregar parceiros: {error}", "error_saving_image": "Erro: {error}", "error_tag_face_bounding_box": "Erro ao marcar o rosto - não foi possível localizar o rosto", "error_title": "Erro - Algo deu errado", @@ -1054,6 +1063,7 @@ "favorites_page_no_favorites": "Nenhuma mídia favorita encontrada", "feature_photo_updated": "Foto principal atualizada", "features": "Funcionalidades", + "features_in_development": "Funções em desenvolvimento", "features_setting_description": "Gerenciar as funcionalidades da aplicação", "file_name": "Nome do arquivo", "file_name_or_extension": "Nome do arquivo ou extensão", @@ -1218,6 +1228,7 @@ "local": "Local", "local_asset_cast_failed": "Não é possível transmitir um arquivo que não foi enviado ao servidor", "local_assets": "Arquivos no dispositivo", + "local_media_summary": "Resumo das mídias locais", "local_network": "Rede local", "local_network_sheet_info": "O aplicativo irá se conectar ao servidor através deste endereço quando estiver na rede Wi-Fi especificada", "location_permission": "Permissão de localização", @@ -1229,6 +1240,7 @@ "location_picker_longitude_hint": "Digite a longitude", "lock": "Trancar", "locked_folder": "Pasta com senha", + "log_detail_title": "Detalhes do Log", "log_out": "Sair", "log_out_all_devices": "Sair de todos dispositivos", "logged_in_as": "Usuário atual: {user}", @@ -1259,6 +1271,7 @@ "login_password_changed_success": "Senha atualizada com sucesso", "logout_all_device_confirmation": "Tem certeza de que deseja sair de todos os dispositivos?", "logout_this_device_confirmation": "Tem certeza de que deseja sair deste dispositivo?", + "logs": "Logs", "longitude": "Longitude", "look": "Estilo", "loop_videos": "Repetir vídeos", @@ -1301,6 +1314,7 @@ "mark_as_read": "Marcar como lido", "marked_all_as_read": "Tudo marcado como lido", "matches": "Correspondências", + "matching_assets": "Arquivos encontrados", "media_type": "Tipo de mídia", "memories": "Memórias", "memories_all_caught_up": "Finalizamos por hoje", @@ -1341,6 +1355,7 @@ "name_or_nickname": "Nome ou apelido", "network_requirement_photos_upload": "Use a rede móvel para enviar fotos", "network_requirement_videos_upload": "Use a rede móvel para enviar vídeos", + "network_requirements": "Requerimentos de Rede", "network_requirements_updated": "Requerimentos de rede alterados, reiniciando a fila de envio", "networking_settings": "Conexões", "networking_subtitle": "Gerencie as conexões ao servidor", @@ -1351,6 +1366,7 @@ "new_person": "Nova Pessoa", "new_pin_code": "Novo código PIN", "new_pin_code_subtitle": "Esta é a primeira vez que está acessando a pasta com senha. Crie um código PIN para acessar esta página de forma segura", + "new_timeline": "Nova Linha do Tempo", "new_user_created": "Novo usuário criado", "new_version_available": "NOVA VERSÃO DISPONÍVEL", "newest_first": "Mais recente primeiro", @@ -1364,20 +1380,25 @@ "no_assets_message": "CLIQUE PARA ENVIAR SUA PRIMEIRA FOTO", "no_assets_to_show": "Não há arquivos para exibir", "no_cast_devices_found": "Nenhum dispositivo encontrado", + "no_checksum_local": "Nenhum checksum disponível - não foi possível carregar os arquivos locais", + "no_checksum_remote": "Nenhum checksum disponível - não foi possível carregar os arquivos remotos", "no_duplicates_found": "Nenhuma duplicidade foi encontrada.", "no_exif_info_available": "Sem informações exif disponíveis", "no_explore_results_message": "Envie mais fotos para explorar sua coleção.", "no_favorites_message": "Adicione aos favoritos para encontrar suas melhores fotos e vídeos rapidamente", "no_libraries_message": "Crie uma biblioteca externa para ver suas fotos e vídeos", + "no_local_assets_found": "Nenhum arquivo local foi encontrado com este checksum", "no_locked_photos_message": "Fotos e vídeos na pasta com senha são ocultos e não serão exibidos enquanto explora ou pesquisa na biblioteca.", "no_name": "Sem Nome", "no_notifications": "Nenhuma notificação", "no_people_found": "Nenhuma pessoa encontrada", "no_places": "Sem lugares", + "no_remote_assets_found": "Nenhum arquivo remoto foi encontrado com este checksum", "no_results": "Sem resultados", "no_results_description": "Tente um sinônimo ou uma palavra-chave mais geral", "no_shared_albums_message": "Crie um álbum para compartilhar fotos e vídeos com pessoas em sua rede", "no_uploads_in_progress": "Nenhum envio em progresso", + "not_available": "N/A", "not_in_any_album": "Fora de álbum", "not_selected": "Não selecionado", "note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar o rótulo de armazenamento a arquivos enviados anteriormente, execute o", @@ -1588,6 +1609,7 @@ "regenerating_thumbnails": "Regenerando miniaturas", "remote": "Remoto", "remote_assets": "Arquivos Remotos", + "remote_media_summary": "Resumo das mídias remotas", "remove": "Remover", "remove_assets_album_confirmation": "Tem certeza de que deseja remover {count, plural, one {# arquivo} other {# arquivos}} do álbum?", "remove_assets_shared_link_confirmation": "Tem certeza de que deseja remover {count, plural, one {# arquivo} other {# arquivos}} desse link compartilhado?", @@ -1863,6 +1885,7 @@ "show_slideshow_transition": "Usar transições no modo de apresentação", "show_supporter_badge": "Insígnia de apoiador", "show_supporter_badge_description": "Mostrar uma insígnia de apoiador", + "show_text_search_menu": "Mostrar menu de pesquisa por texto", "shuffle": "Aleatório", "sidebar": "Barra lateral", "sidebar_display_description": "Exibir um link para a visualização na barra lateral", @@ -2095,5 +2118,6 @@ "yes": "Sim", "you_dont_have_any_shared_links": "Não há links compartilhados", "your_wifi_name": "Nome do seu Wi-Fi", - "zoom_image": "Ampliar imagem" + "zoom_image": "Ampliar imagem", + "zoom_to_bounds": "Ampliar para preencher" } diff --git a/i18n/ro.json b/i18n/ro.json index fc2ca444c6..637460ae34 100644 --- a/i18n/ro.json +++ b/i18n/ro.json @@ -123,6 +123,11 @@ "logging_enable_description": "Activează înregistrarea log-urilor", "logging_level_description": "Dacă setarea este activată, înregistrează evenimentele cu nivelul de utilizat.", "logging_settings": "Înregistrare", + "machine_learning_availability_checks": "Verificări disponibilitate", + "machine_learning_availability_checks_description": "Detectează automat si preferă serverele cu învațare automată", + "machine_learning_availability_checks_enabled": "Activează verificare disponibilitate", + "machine_learning_availability_checks_interval": "Interval verificare", + "machine_learning_availability_checks_interval_description": "Interval in milisecunde între verificările de disponibilitate", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Numele unui model CLIP listat aici. Rețineți că trebuie să rulați din nou funcția „Smart Search” pentru toate imaginile la schimbarea unui model.", "machine_learning_duplicate_detection": "Detectare Duplicate", @@ -387,8 +392,6 @@ "admin_password": "Parolă Administrator", "administration": "Administrare", "advanced": "Avansat", - "advanced_settings_beta_timeline_subtitle": "Încearcă noua experiență în aplicație", - "advanced_settings_beta_timeline_title": "Cronologie beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Utilizați această opțiune pentru a filtra conținutul media în timpul sincronizării pe baza unor criterii alternative. Încercați numai dacă întâmpinați probleme cu aplicația la detectarea tuturor albumelor.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Utilizați filtrul alternativ de sincronizare a albumelor de pe dispozitiv", "advanced_settings_log_level_title": "Nivel log: {level}", @@ -425,6 +428,7 @@ "album_remove_user_confirmation": "Ești sigur că dorești eliminarea {user}?", "album_search_not_found": "Nu s-au găsit albume care să corespundă căutării dumneavoastră", "album_share_no_users": "Se pare că ai partajat acest album cu toți utilizatorii sau nu ai niciun utilizator cu care să-l partajezi.", + "album_summary": "Rezumat album", "album_updated": "Album actualizat", "album_updated_setting_description": "Primiți o notificare prin e-mail când un album partajat are elemente noi", "album_user_left": "A părăsit {album}", @@ -482,7 +486,7 @@ "asset_description_updated": "Descrierea resursei a fost actualizată", "asset_filename_is_offline": "Resursa {filename} este offline", "asset_has_unassigned_faces": "Resursa are fețe neatribuite", - "asset_hashing": "Calculare amprentă digitală", + "asset_hashing": "Calculare amprentă digitală…", "asset_list_group_by_sub_title": "Grupare după", "asset_list_layout_settings_dynamic_layout_title": "Aspect dinamic", "asset_list_layout_settings_group_automatically": "Automat", @@ -496,6 +500,8 @@ "asset_restored_successfully": "Date restaurate cu succes", "asset_skipped": "Sărit", "asset_skipped_in_trash": "În coșul de gunoi", + "asset_trashed": "Resursă ștearsă", + "asset_troubleshoot": "Depanare resursă", "asset_uploaded": "Încărcat", "asset_uploading": "Se incarcă…", "asset_viewer_settings_subtitle": "Gestionați setările de vizualizare a galeriei", @@ -528,6 +534,7 @@ "autoplay_slideshow": "Derulare slideshow automat", "back": "Înapoi", "back_close_deselect": "Înapoi, închidere sau deselectare", + "background_backup_running_error": "Procesul de backup în fundal este activ, nu se poate porni backup manual", "background_location_permission": "Permisiune locație în fundal", "background_location_permission_content": "Pentru a putea schimba rețeaua activă în fundal, Immich are nevoie de acces *permanent* la locația precisă pentru a citi numele rețelei Wi-Fi", "backup": "Backup", diff --git a/i18n/ru.json b/i18n/ru.json index 287f0288bd..26d379d68e 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -7,7 +7,7 @@ "action_common_update": "Обновить", "actions": "Действия", "active": "Выполняется", - "activity": "Активность", + "activity": "Действия", "activity_changed": "Активность {enabled, select, true {включена} other {отключена}}", "add": "Добавить", "add_a_description": "Добавить описание", @@ -26,8 +26,8 @@ "add_tag": "Добавить тег", "add_to": "Добавить в…", "add_to_album": "Добавить в альбом", - "add_to_album_bottom_sheet_added": "Добавлено в {album}", - "add_to_album_bottom_sheet_already_exists": "Уже в {album}", + "add_to_album_bottom_sheet_added": "Добавлено в альбом {album}", + "add_to_album_bottom_sheet_already_exists": "Уже в альбоме {album}", "add_to_album_toggle": "Переключить выделение для альбома {album}", "add_to_albums": "Добавить в альбомы", "add_to_albums_count": "Добавить в альбомы ({count})", @@ -65,9 +65,9 @@ "confirm_reprocess_all_faces": "Вы уверены, что хотите повторно определить все лица? Будут также удалены имена со всех лиц.", "confirm_user_password_reset": "Вы действительно хотите сбросить пароль пользователя {user}?", "confirm_user_pin_code_reset": "Вы действительно хотите сбросить PIN-код пользователя {user}?", - "create_job": "Создать задание", + "create_job": "Создать задачу", "cron_expression": "Расписание (выражение планировщика cron)", - "cron_expression_description": "Частота и время выполнения задания в формате планировщика cron. Воспользуйтесь при необходимости визуальным редактором Crontab Guru", + "cron_expression_description": "Частота и время выполнения задачи в формате планировщика cron. Воспользуйтесь при необходимости визуальным редактором Crontab Guru", "cron_expression_presets": "Расписание (предустановленные варианты)", "disable_login": "Отключить вход", "duplicate_detection_job_description": "Запускает определение похожих изображений при помощи машинного зрения (зависит от умного поиска)", @@ -100,11 +100,11 @@ "image_thumbnail_description": "Маленькая миниатюра с удаленными метаданными, используемая при просмотре групп фотографий, таких как основная временная шкала", "image_thumbnail_quality_description": "Качество миниатюр от 1 до 100. Чем выше качество, тем лучше, но при этом создаются файлы большего размера и может снизиться скорость отклика приложения.", "image_thumbnail_title": "Настройки миниатюр", - "job_concurrency": "Параллельная обработка задания - {job}", - "job_created": "Задание создано", + "job_concurrency": "Число параллельных потоков задачи {job}", + "job_created": "Задача создана", "job_not_concurrency_safe": "Эта задача не обеспечивает безопасность параллельности выполнения.", - "job_settings": "Настройки заданий", - "job_settings_description": "Управление параллельной обработкой заданий", + "job_settings": "Настройки задач", + "job_settings_description": "Управление параллельностью выполнения задач", "job_status": "Состояние выполнения задач", "jobs_delayed": "{jobCount, plural, one {# отложена} other {# отложено}}", "jobs_failed": "{jobCount, plural, other {# не удалось выполнить}}", @@ -123,20 +123,27 @@ "logging_enable_description": "Включить ведение журнала", "logging_level_description": "Если включено, выберите желаемый уровень журналирования.", "logging_settings": "Ведение журнала", + "machine_learning_availability_checks": "Проверка доступности", + "machine_learning_availability_checks_description": "Автоматически определять и использовать доступные серверы машинного обучения", + "machine_learning_availability_checks_enabled": "Включить проверку доступности", + "machine_learning_availability_checks_interval": "Интервал проверки", + "machine_learning_availability_checks_interval_description": "Интервал в миллисекундах между проверками", + "machine_learning_availability_checks_timeout": "Тайм-аут запроса", + "machine_learning_availability_checks_timeout_description": "Время ожидания ответа сервера в миллисекундах для определения доступности", "machine_learning_clip_model": "CLIP модель", - "machine_learning_clip_model_description": "Названия моделей CLIP размещены здесь. Обратите внимание, что при изменении модели необходимо заново запустить задачу «Интеллектуальный поиск» для всех изображений.", + "machine_learning_clip_model_description": "Названия доступных CLIP моделей размещены здесь.\nПри изменении модели необходимо заново запустить задачу «Интеллектуальный поиск» для всех объектов.", "machine_learning_duplicate_detection": "Поиск дубликатов", "machine_learning_duplicate_detection_enabled": "Включить обнаружение дубликатов", - "machine_learning_duplicate_detection_enabled_description": "Если этот параметр отключен, абсолютно идентичные файлы всё равно будут удалены из дубликатов.", - "machine_learning_duplicate_detection_setting_description": "Используйте встраивания CLIP для поиска вероятных дубликатов", - "machine_learning_enabled": "Включите машинное обучение", - "machine_learning_enabled_description": "При отключении, все функции ML будут отключены независимо от следующих параметров.", + "machine_learning_duplicate_detection_enabled_description": "Если этот параметр отключён, абсолютно идентичные файлы всё равно не будут загружаться.", + "machine_learning_duplicate_detection_setting_description": "Использование CLIP моделей для выявления возможных дубликатов", + "machine_learning_enabled": "Включить машинное обучение", + "machine_learning_enabled_description": "При выключении будут отключены все функции ML независимо от следующих параметров.", "machine_learning_facial_recognition": "Распознавание лиц", "machine_learning_facial_recognition_description": "Обнаруживать, распознавать и группировать лица на изображениях", "machine_learning_facial_recognition_model": "Модель для распознавания лиц", - "machine_learning_facial_recognition_model_description": "Модели перечислены в порядке убывания размера. Большие модели работают медленнее и используют больше памяти, но дают лучшие результаты. Обратите внимание, что при смене модели необходимо повторно запустить задание распознавания лиц для всех изображений.", + "machine_learning_facial_recognition_model_description": "Модели перечислены в порядке убывания их размера. Большие модели работают медленнее и используют больше памяти, но дают лучшие результаты. При смене модели необходимо повторно запустить задачу распознавания лиц для всех изображений.", "machine_learning_facial_recognition_setting": "Включить функцию распознавания лиц", - "machine_learning_facial_recognition_setting_description": "Если отключить эту функцию, изображения не будут кодироваться для распознавания лиц и не будут заполнять раздел Люди на обзорной странице.", + "machine_learning_facial_recognition_setting_description": "При отключении этой функции изображения не будут кодироваться для распознавания лиц, и не будет заполняться раздел Люди.", "machine_learning_max_detection_distance": "Максимальное различие изображений", "machine_learning_max_detection_distance_description": "Максимальное различие между двумя изображениями, чтобы считать их дубликатами, в диапазоне 0,001-0,1. Более высокие значения позволяют обнаружить больше дубликатов, но могут привести к ложным срабатываниям.", "machine_learning_max_recognition_distance": "Порог распознавания", @@ -146,13 +153,13 @@ "machine_learning_min_recognized_faces": "Минимум распознанных лиц", "machine_learning_min_recognized_faces_description": "Минимальное количество распознанных лиц для создания человека. Увеличение этого параметра делает распознавание лиц более точным, но при этом увеличивается вероятность того, что лицо не будет присвоено человеку.", "machine_learning_settings": "Настройки машинного обучения", - "machine_learning_settings_description": "Управление функциями и настройками машинного обучения", + "machine_learning_settings_description": "Управление функциями и настройками машинного обучения (ML)", "machine_learning_smart_search": "Интеллектуальный поиск", - "machine_learning_smart_search_description": "Семантический поиск изображений с использованием вложений CLIP", + "machine_learning_smart_search_description": "Семантический (контекстный) поиск объектов с использованием CLIP моделей", "machine_learning_smart_search_enabled": "Включить интеллектуальный поиск", - "machine_learning_smart_search_enabled_description": "Если этот параметр отключен, изображения не будут кодироваться для интеллектуального поиска.", + "machine_learning_smart_search_enabled_description": "При отключении этой функции изображения не будут кодироваться для интеллектуального поиска.", "machine_learning_url_description": "URL-адрес сервера машинного обучения. Если указано несколько, запросы будут отправляться по очереди на каждый, пока от одного из них не будет получен успешный ответ. Серверы, которые не отвечают, будут временно игнорироваться до тех пор, пока не станут снова доступны.", - "manage_concurrency": "Управление параллельностью заданий", + "manage_concurrency": "Управление параллельностью", "manage_log_settings": "Управление настройками журнала", "map_dark_style": "Тёмный стиль", "map_enable_description": "Включить функции карты", @@ -170,9 +177,9 @@ "memory_cleanup_job": "Очистка воспоминаний", "memory_generate_job": "Создание воспоминаний", "metadata_extraction_job": "Извлечение метаданных", - "metadata_extraction_job_description": "Извлекает метаданные из каждого файла, такие как местоположение, лица и разрешение", + "metadata_extraction_job_description": "Извлечение метаданных из файлов, таких как местоположение, лица и разрешение", "metadata_faces_import_setting": "Включить импорт лиц", - "metadata_faces_import_setting_description": "Импорт лиц из изображений EXIF-данных и файлов sidecar", + "metadata_faces_import_setting_description": "Импорт лиц из EXIF-данных и файлов sidecar", "metadata_settings": "Настройки метаданных", "metadata_settings_description": "Управление настройками метаданных", "migration_job": "Миграция", @@ -247,7 +254,7 @@ "reset_settings_to_default": "Сброс настроек до значений по умолчанию", "reset_settings_to_recent_saved": "Не сохранённые изменения сброшены к последним сохраненным значениям", "scanning_library": "Сканирование библиотеки", - "search_jobs": "Поиск заданий…", + "search_jobs": "Поиск задач…", "send_welcome_email": "Отправить приветственное письмо", "server_external_domain_settings": "Внешний домен", "server_external_domain_settings_description": "Домен для публичных ссылок, включая http(s)://", @@ -269,7 +276,7 @@ "storage_template_migration": "Применение шаблона хранилища", "storage_template_migration_description": "Применяет текущий {template} к ранее загруженным объектам", "storage_template_migration_info": "Расширения файлов всегда будут сохраняться в нижнем регистре. Изменения в шаблоне будут применяться только к новым ресурсам. Чтобы применить шаблон к ранее загруженным ресурсам, запустите {job}.", - "storage_template_migration_job": "Задание по применению шаблона хранилища", + "storage_template_migration_job": "Задача по применению шаблона хранилища", "storage_template_more_details": "Для получения дополнительной информации об этой функции обратитесь к разделам документации Шаблон хранилища и Структура хранения файлов", "storage_template_onboarding_description_v2": "Если эта функция включена, она автоматически организует файлы на основе заданного пользователем шаблона. Для получения дополнительной информации обратитесь к документации.", "storage_template_path_length": "Примерный предел длины пути: {length, number}/{limit, number}", @@ -387,8 +394,6 @@ "admin_password": "Пароль администратора", "administration": "Управление сервером", "advanced": "Расширенные", - "advanced_settings_beta_timeline_subtitle": "Попробуйте новый функционал приложения", - "advanced_settings_beta_timeline_title": "Бета-версия временной шкалы", "advanced_settings_enable_alternate_media_filter_subtitle": "Подбор объектов для синхронизации на основе альтернативных критериев. Пробуйте включать только в том случае, если в приложении есть проблемы с обнаружением всех альбомов.", "advanced_settings_enable_alternate_media_filter_title": "[ЭКСПЕРИМЕНТАЛЬНО] Использование альтернативного способа синхронизации альбомов на устройстве", "advanced_settings_log_level_title": "Уровень логирования: {level}", @@ -403,8 +408,8 @@ "advanced_settings_sync_remote_deletions_subtitle": "Автоматически удалять или восстанавливать объекты на этом устройстве, когда это действие выполняется через веб-интерфейс", "advanced_settings_sync_remote_deletions_title": "[ЭКСПЕРИМЕНТАЛЬНО] Синхронизация удаления объектов", "advanced_settings_tile_subtitle": "Расширенные настройки", - "advanced_settings_troubleshooting_subtitle": "Включить расширенные возможности для решения проблем", - "advanced_settings_troubleshooting_title": "Решение проблем", + "advanced_settings_troubleshooting_subtitle": "Включить расширенные возможности для диагностики и решения проблем", + "advanced_settings_troubleshooting_title": "Режим диагностики", "age_months": "{months, plural, one {# месяц} many {# месяцев} other {# месяца}}", "age_year_months": "1 год {months, plural, one {# месяц} many {# месяцев} other {# месяца}}", "age_years": "{years, plural, one {# год} many {# лет} other {# года}}", @@ -420,11 +425,12 @@ "album_leave": "Покинуть альбом?", "album_leave_confirmation": "Вы уверены, что хотите покинуть {album}?", "album_name": "Название альбома", - "album_options": "Параметры альбома", + "album_options": "Действия с альбомом", "album_remove_user": "Удалить пользователя?", "album_remove_user_confirmation": "Вы уверены, что хотите удалить пользователя {user}?", "album_search_not_found": "Не найдено альбомов по вашему запросу", "album_share_no_users": "Нет доступных пользователей, с которыми можно поделиться альбомом.", + "album_summary": "Информация об альбоме", "album_updated": "Альбом обновлён", "album_updated_setting_description": "Получать уведомление по электронной почте при добавлении новых объектов в общий альбом", "album_user_left": "Вы покинули {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Объект успешно восстановлен", "asset_skipped": "Пропущено", "asset_skipped_in_trash": "В корзине", + "asset_trashed": "Объект удалён", + "asset_troubleshoot": "Данные для диагностики", "asset_uploaded": "Загружено", "asset_uploading": "Загрузка…", "asset_viewer_settings_subtitle": "Настройка параметров отображения", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Автовоспроизведение слайдшоу", "back": "Назад", "back_close_deselect": "Назад, закрыть или отменить выбор", + "background_backup_running_error": "Выполняется фоновое резервное копирование, запуск вручную пока невозможен", "background_location_permission": "Доступ к местоположению в фоне", "background_location_permission_content": "Чтобы считывать имя Wi-Fi сети в фоне, приложению *всегда* необходим доступ к точному местоположению устройства", + "background_options": "Параметры фоновых задач", "backup": "Резервное копирование", "backup_album_selection_page_albums_device": "Альбомы на устройстве ({count})", "backup_album_selection_page_albums_tap": "Нажмите, чтобы включить, дважды, чтобы исключить", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Выбор альбомов", "backup_album_selection_page_selection_info": "Выбранные альбомы", "backup_album_selection_page_total_assets": "Всего уникальных объектов", + "backup_albums_sync": "Синхронизация альбомов", "backup_all": "Все", "backup_background_service_backup_failed_message": "Не удалось выполнить резервное копирование. Повторная попытка…", "backup_background_service_connection_failed_message": "Не удалось подключиться к серверу. Повторная попытка…", @@ -654,6 +665,8 @@ "change_pin_code": "Изменить PIN-код", "change_your_password": "Изменить свой пароль", "changed_visibility_successfully": "Видимость успешно изменена", + "charging": "На зарядке", + "charging_requirement_mobile_backup": "Запускать резервное копирование только во время зарядки", "check_corrupt_asset_backup": "Проверка поврежденных резервных копий", "check_corrupt_asset_backup_button": "Проверить", "check_corrupt_asset_backup_description": "Запускайте проверку только через Wi-Fi и после создания резервной копии всех объектов. Операция может занять несколько минут.", @@ -681,8 +694,8 @@ "color": "Цвет", "color_theme": "Цветовая тема", "comment_deleted": "Комментарий удалён", - "comment_options": "Параметры комментариев", - "comments_and_likes": "Комментарии и лайки", + "comment_options": "Действия с комментарием", + "comments_and_likes": "Комментарии и отметки \"нравится\"", "comments_are_disabled": "Комментарии отключены", "common_create_new_album": "Создать новый альбом", "common_server_error": "Пожалуйста, проверьте подключение к сети и убедитесь, что ваш сервер доступен, а версии приложения и сервера — совместимы.", @@ -705,7 +718,7 @@ "control_bottom_app_bar_delete_from_immich": "Удалить из Immich", "control_bottom_app_bar_delete_from_local": "Удалить с устройства", "control_bottom_app_bar_edit_location": "Изменить место", - "control_bottom_app_bar_edit_time": "Изменить дату", + "control_bottom_app_bar_edit_time": "Изменить дату и время", "control_bottom_app_bar_share_link": "Поделиться ссылкой", "control_bottom_app_bar_share_to": "Поделиться с", "control_bottom_app_bar_trash_from_immich": "В корзину", @@ -740,6 +753,7 @@ "create_user": "Создать пользователя", "created": "Создан", "created_at": "Создан", + "creating_linked_albums": "Создание связанных альбомов...", "crop": "Обрезать", "curated_object_page_title": "Предметы", "current_device": "Текущее устройство", @@ -809,7 +823,7 @@ "discovered_devices": "Обнаруженные устройства", "dismiss_all_errors": "Сбросить все ошибки", "dismiss_error": "Сбросить ошибку", - "display_options": "Настройки отображения", + "display_options": "Дополнительно", "display_order": "Порядок отображения", "display_original_photos": "Отображение оригинальных фотографий", "display_original_photos_setting_description": "Открывать при просмотре оригинал фотографии вместо миниатюры, если исходный формат поддерживается браузером. Возможно снижение скорости отображения фотографий.", @@ -841,11 +855,11 @@ "duplicates": "Дубликаты", "duplicates_description": "Просмотрите найденные дубликаты и в каждой группе укажите, какие объекты оставить, а какие удалить", "duration": "Продолжительность", - "edit": "Редактировать", - "edit_album": "Редактировать альбом", + "edit": "Изменить", + "edit_album": "Изменить альбом", "edit_avatar": "Изменить аватар", "edit_birthday": "Изменить дату рождения", - "edit_date": "редактировать дату", + "edit_date": "Изменить дату", "edit_date_and_time": "Изменить дату и время", "edit_date_and_time_action_prompt": "Дата и время изменены у {count} объектов", "edit_date_and_time_by_offset": "Изменить дату по смещению", @@ -857,14 +871,14 @@ "edit_import_path": "Изменить путь импорта", "edit_import_paths": "Изменить путь импорта", "edit_key": "Изменить ключ", - "edit_link": "Редактировать ссылку", - "edit_location": "Редактировать местоположение", + "edit_link": "Изменить ссылку", + "edit_location": "Изменить местоположение", "edit_location_action_prompt": "Места изменены ({count} шт.)", "edit_location_dialog_title": "Местоположение", - "edit_name": "Редактировать имя", - "edit_people": "Редактировать людей", + "edit_name": "Изменить имя", + "edit_people": "Изменить людей", "edit_tag": "Изменить тег", - "edit_title": "Редактировать Заголовок", + "edit_title": "Изменить заголовок", "edit_user": "Изменить пользователя", "edited": "Отредактировано", "editor": "Редактор", @@ -878,7 +892,7 @@ "empty_trash": "Очистить корзину", "empty_trash_confirmation": "Вы действительно хотите очистить корзину? Все объекты в ней будут навсегда удалены из Immich.\nВы не сможете отменить это действие!", "enable": "Включить", - "enable_backup": "Включить резервное копирование", + "enable_backup": "Активировать", "enable_biometric_auth_description": "Введите свой PIN-код для включения биометрической аутентификации", "enabled": "Включено", "end_date": "Дата окончания", @@ -889,7 +903,9 @@ "error": "Ошибка", "error_change_sort_album": "Не удалось изменить порядок сортировки альбома", "error_delete_face": "Ошибка при удалении лица из объекта", + "error_getting_places": "Ошибка получения мест", "error_loading_image": "Ошибка при загрузке изображения", + "error_loading_partners": "Ошибка загрузки партнёров: {error}", "error_saving_image": "Ошибка: {error}", "error_tag_face_bounding_box": "Ошибка при добавлении отметки - не удалось получить координаты рамки лица", "error_title": "Ошибка - Что-то пошло не так", @@ -1002,7 +1018,7 @@ "unable_to_scan_library": "Не удалось просканировать библиотеку", "unable_to_set_feature_photo": "Не удалось установить фотографию на обложку", "unable_to_set_profile_picture": "Не удалось установить фото профиля", - "unable_to_submit_job": "Не удалось отправить задание", + "unable_to_submit_job": "Не удалось отправить задачу на выполнение", "unable_to_trash_asset": "Не удалось переместить объект в корзину", "unable_to_unlink_account": "Не удалось отсоединить учётную запись", "unable_to_unlink_motion_video": "Не удалось отсоединить движущееся видео", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "В избранном сейчас пусто", "feature_photo_updated": "Избранное фото обновлено", "features": "Дополнительные возможности", + "features_in_development": "Функции в разработке", "features_setting_description": "Управление дополнительными возможностями приложения", "file_name": "Имя файла", "file_name_or_extension": "Имя файла или расширение", @@ -1167,7 +1184,7 @@ }, "invalid_date": "Неверная дата", "invalid_date_format": "Неверный формат даты", - "invite_people": "Пригласить", + "invite_people": "Пригласить участника", "invite_to_album": "Пригласить в альбом", "ios_debug_info_fetch_ran_at": "Выборка запущена {dateTime}", "ios_debug_info_last_sync_at": "Последняя синхронизация {dateTime}", @@ -1185,7 +1202,7 @@ "language": "Язык", "language_no_results_subtitle": "Попробуйте скорректировать поисковый запрос", "language_no_results_title": "Языков не найдено", - "language_search_hint": "Поиск языков...", + "language_search_hint": "Поиск языка...", "language_setting_description": "Выберите предпочитаемый вами язык", "large_files": "Файлы наибольшего размера", "last": "Последний", @@ -1195,10 +1212,10 @@ "leave": "Покинуть", "leave_album": "Покинуть альбом", "lens_model": "Модель объектива", - "let_others_respond": "Позволять другим откликаться", + "let_others_respond": "Разрешить другим пользователям добавлять комментарии и отметки \"нравится\"", "level": "Уровень", "library": "Библиотека", - "library_options": "Опции библиотеки", + "library_options": "Действия с библиотекой", "library_page_device_albums": "Альбомы на устройстве", "library_page_new_album": "Новый альбом", "library_page_sort_asset_count": "Количество объектов", @@ -1218,6 +1235,7 @@ "local": "На устройстве", "local_asset_cast_failed": "Невозможна трансляция объектов, которые ещё не загружены на сервер", "local_assets": "Объекты на устройстве", + "local_media_summary": "Информация об объекте на устройстве", "local_network": "Локальная сеть", "local_network_sheet_info": "Приложение будет подключаться к серверу по этому адресу, когда устройство подключено к указанной Wi-Fi сети", "location_permission": "Доступ к местоположению", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Введите долготу", "lock": "Заблокировать", "locked_folder": "Личная папка", + "log_detail_title": "Детали события", "log_out": "Выйти", "log_out_all_devices": "Завершить сеансы на всех устройствах", "logged_in_as": "Авторизован как {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Пароль успешно обновлен", "logout_all_device_confirmation": "Вы действительно хотите завершить все сеансы, кроме текущего?", "logout_this_device_confirmation": "Вы действительно хотите завершить сеанс на этом устройстве?", + "logs": "Журнал событий", "longitude": "Долгота", "look": "Просмотр", "loop_videos": "Циклическое воспроизведение видео", @@ -1268,7 +1288,7 @@ "make": "Производитель", "manage_geolocation": "Управление местами съёмки", "manage_shared_links": "Управление публичными ссылками", - "manage_sharing_with_partners": "Функция совместного доступа к фото и видео, позволяющая видеть все объекты партнёров, а также предоставлять доступ к своим", + "manage_sharing_with_partners": "Функция совместного доступа к фото и видео, позволяющая видеть объекты партнёров, а также предоставлять доступ к своим", "manage_the_app_settings": "Управление настройками приложения", "manage_your_account": "Управление учётной записью", "manage_your_api_keys": "Управление API ключами для взаимодействия с другими программами", @@ -1301,6 +1321,7 @@ "mark_as_read": "Отметить как прочитанное", "marked_all_as_read": "Отмечены как прочитанные", "matches": "Совпадения", + "matching_assets": "Соответствующие объекты", "media_type": "Тип медиа", "memories": "Воспоминания", "memories_all_caught_up": "Это всё на сегодня", @@ -1312,7 +1333,7 @@ "memory_lane_title": "Воспоминание {title}", "menu": "Меню", "merge": "Объединить", - "merge_people": "Объединить людей", + "merge_people": "Объединить с другим", "merge_people_limit": "Вы можете объединять до 5 лиц за один раз", "merge_people_prompt": "Вы хотите объединить этих людей? Это действие необратимо.", "merge_people_successfully": "Лица людей успешно объединены", @@ -1324,7 +1345,7 @@ "model": "Модель", "month": "Месяц", "monthly_title_text_date_format": "MMMM y", - "more": "Больше", + "more": "Дополнительные действия", "move": "Переместить", "move_off_locked_folder": "Переместить из личной папки", "move_to_lock_folder_action_prompt": "Объекты добавлены в личную папку ({count} шт.)", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Имя или ник", "network_requirement_photos_upload": "Использовать мобильный интернет для загрузки фото", "network_requirement_videos_upload": "Использовать мобильный интернет для загрузки видео", + "network_requirements": "Требования к сети", "network_requirements_updated": "Требования к сети изменились, сброс очереди загрузки", "networking_settings": "Сеть", "networking_subtitle": "Настройка подключения к серверу", @@ -1351,6 +1373,7 @@ "new_person": "Новый человек", "new_pin_code": "Новый PIN-код", "new_pin_code_subtitle": "Это ваш первый доступ к личной папке. Создайте PIN-код для защищенного доступа к этой странице.", + "new_timeline": "Новая лента", "new_user_created": "Новый пользователь создан", "new_version_available": "ДОСТУПНА НОВАЯ ВЕРСИЯ", "newest_first": "Сначала новые", @@ -1364,20 +1387,25 @@ "no_assets_message": "НАЖМИТЕ ДЛЯ ЗАГРУЗКИ ВАШЕГО ПЕРВОГО ФОТО", "no_assets_to_show": "Медиа отсутствуют", "no_cast_devices_found": "Не найдено устройств для трансляции", + "no_checksum_local": "Контрольные суммы отсутствуют - невозможно получить объекты на устройстве", + "no_checksum_remote": "Контрольные суммы отсутствуют - невозможно получить объекты с сервера", "no_duplicates_found": "Дубликатов не обнаружено.", "no_exif_info_available": "Нет доступной информации exif", "no_explore_results_message": "Загружайте больше фотографий, чтобы наслаждаться вашей коллекцией.", "no_favorites_message": "Добавляйте объекты в избранное, чтобы быстрее находить свои лучшие фото и видео", "no_libraries_message": "Создайте внешнюю библиотеку для просмотра в Immich сторонних фотографий и видео", + "no_local_assets_found": "На устройстве не найдено объектов с такой контрольной суммой", "no_locked_photos_message": "Фото и видео, перемещенные в личную папку, скрыты и не отображаются при просмотре библиотеки.", "no_name": "Нет имени", "no_notifications": "Нет уведомлений", "no_people_found": "Никого не найдено", "no_places": "Нет мест", + "no_remote_assets_found": "На сервере не найдено объектов с такой контрольной суммой", "no_results": "Нет результатов", "no_results_description": "Попробуйте использовать синоним или более общее ключевое слово", "no_shared_albums_message": "Создайте альбом для обмена фотографиями и видеозаписями с людьми в вашей сети", "no_uploads_in_progress": "Нет активных загрузок", + "not_available": "Нет данных", "not_in_any_album": "Ни в одном альбоме", "not_selected": "Не выбрано", "note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить метку хранилища к ранее загруженным ресурсам, запустите", @@ -1410,7 +1438,7 @@ "open_in_map_view": "Открыть в режиме просмотра карты", "open_in_openstreetmap": "Открыть в OpenStreetMap", "open_the_search_filters": "Открыть фильтры поиска", - "options": "Опции", + "options": "Параметры", "or": "или", "organize_into_albums": "Распределить по альбомам", "organize_into_albums_description": "Добавить уже существующие объекты в альбомы, используя текущие настройки синхронизации", @@ -1499,6 +1527,7 @@ "port": "Порт", "preferences_settings_subtitle": "Настройка внешнего вида", "preferences_settings_title": "Параметры", + "preparing": "Подготовка", "preset": "Предустановленные варианты", "preview": "Предварительный просмотр", "previous": "Предыдущее", @@ -1560,10 +1589,11 @@ "rating_clear": "Очистить рейтинг", "rating_count": "{count, plural, one {# звезда} many {# звезд} other {# звезды}}", "rating_description": "Система оценки объектов в панели информации", - "reaction_options": "Опции реакций", + "reaction_options": "Действия с отметкой", "read_changelog": "Прочитать список изменений", "readonly_mode_disabled": "Режим «только просмотр» отключён", "readonly_mode_enabled": "Режим «только просмотр» включён", + "ready_for_upload": "Готово к загрузке", "reassign": "Переназначить", "reassigned_assets_to_existing_person": "Лица на {count, plural, one {# объекте} other {# объектах}} переназначены на {name, select, null {другого человека} other {человека с именем {name}}}", "reassigned_assets_to_new_person": "Лица на {count, plural, one {# объекте} other {# объектах}} переназначены на нового человека", @@ -1588,6 +1618,7 @@ "regenerating_thumbnails": "Восстановление миниатюр", "remote": "На сервере", "remote_assets": "Объекты на сервере", + "remote_media_summary": "Информация об объекте на сервере", "remove": "Удалить", "remove_assets_album_confirmation": "Вы действительно хотите удалить {count, plural, one {# объект} many {# объектов} other {# объекта}} из альбома?", "remove_assets_shared_link_confirmation": "Вы действительно хотите удалить {count, plural, one {# объект} many {# объектов} other {# объекта}} из публичного доступа по этой ссылке?", @@ -1653,7 +1684,7 @@ "saved_api_key": "API ключ изменён", "saved_profile": "Профиль сохранён", "saved_settings": "Настройки сохранены", - "say_something": "Скажите что-нибудь", + "say_something": "Напишите что-нибудь", "scaffold_body_error_occurred": "Возникла ошибка", "scan_all_libraries": "Сканировать все библиотеки", "scan_library": "Сканировать", @@ -1674,7 +1705,7 @@ "search_filter_camera_title": "Выберите тип камеры", "search_filter_date": "Дата", "search_filter_date_interval": "{start} — {end}", - "search_filter_date_title": "Выберите промежуток", + "search_filter_date_title": "Выберите период", "search_filter_display_option_not_in_album": "Не в альбоме", "search_filter_display_options": "Настройки отображения", "search_filter_filename": "Поиск по имени файла", @@ -1727,7 +1758,7 @@ "select_from_computer": "Выбрать с компьютера", "select_keep_all": "Выбрать все для сохранения", "select_library_owner": "Выберите владельца библиотеки", - "select_new_face": "Выбрать другое лицо", + "select_new_face": "Выбрать другого человека", "select_person_to_tag": "Выделите лицо человека, которого хотите отметить", "select_photos": "Выберите фотографии", "select_trash_all": "Выбрать все для удаления", @@ -1740,7 +1771,7 @@ "server_endpoint": "Адрес сервера", "server_info_box_app_version": "Версия приложения", "server_info_box_server_url": "URL сервера", - "server_offline": "Сервер не в сети", + "server_offline": "Оффлайн", "server_online": "Сервер в сети", "server_privacy": "Конфиденциальность сервера", "server_stats": "Статистика сервера", @@ -1827,7 +1858,7 @@ "shared_link_individual_shared": "Индивидуальный общий доступ", "shared_link_info_chip_metadata": "EXIF", "shared_link_manage_links": "Управление публичными ссылками", - "shared_link_options": "Параметры публичных ссылок", + "shared_link_options": "Действия со ссылкой", "shared_link_password_description": "Требовать пароль для доступа к этой общей ссылке", "shared_links": "Публичные ссылки", "shared_links_description": "Делитесь фотографиями и видео по ссылке", @@ -1856,13 +1887,14 @@ "show_metadata": "Показывать метаданные", "show_or_hide_info": "Показать или скрыть информацию", "show_password": "Показать пароль", - "show_person_options": "Показать опции персоны", + "show_person_options": "Действия с человеком", "show_progress_bar": "Показать Индикатор Выполнения", "show_search_options": "Показать параметры поиска", "show_shared_links": "Показать публичные ссылки", "show_slideshow_transition": "Показать слайд-шоу переход", "show_supporter_badge": "Значок поддержки", "show_supporter_badge_description": "Показать значок поддержки", + "show_text_search_menu": "Показать меню текстового поиска", "shuffle": "Перемешать", "sidebar": "Боковая панель", "sidebar_display_description": "Отображать раздел на боковой панели", @@ -1893,6 +1925,7 @@ "stacktrace": "Трассировка стека", "start": "Старт", "start_date": "Дата начала", + "start_date_before_end_date": "Дата начала должна быть меньше даты окончания", "state": "Регион", "status": "Состояние", "stop_casting": "Остановить трансляцию", @@ -1978,7 +2011,7 @@ "trash_page_select_assets_btn": "Выбранные объекты", "trash_page_title": "Корзина ({count})", "trashed_items_will_be_permanently_deleted_after": "Объекты, хранящиеся в корзине более {days, plural, one {# дня} other {# дней}}, удаляются автоматически.", - "troubleshoot": "Решение проблем", + "troubleshoot": "Диагностика", "type": "Тип", "unable_to_change_pin_code": "Ошибка при изменении PIN-кода", "unable_to_setup_pin_code": "Ошибка при создании PIN-кода", @@ -2037,7 +2070,7 @@ "user": "Пользователь", "user_has_been_deleted": "Этот пользователь был удалён.", "user_id": "ID пользователя", - "user_liked": "{user} отметил(а) {type, select, photo {это фото} video {это видео} asset {этот ресурс} other {этот альбом}}", + "user_liked": "Пользователю {user} нравится {type, select, photo {это фото} video {это видео} asset {этот объект} other {этот альбом}}", "user_pin_code_settings": "PIN-код", "user_pin_code_settings_description": "Настройка PIN-кода для доступа к личной папке", "user_privacy": "Конфиденциальность пользователя", @@ -2095,5 +2128,6 @@ "yes": "Да", "you_dont_have_any_shared_links": "У вас нет публичных ссылок", "your_wifi_name": "Имя вашей Wi-Fi сети", - "zoom_image": "Приблизить" + "zoom_image": "Изменить масштаб", + "zoom_to_bounds": "Увеличить до границ" } diff --git a/i18n/sk.json b/i18n/sk.json index 3113ce788d..35975823e7 100644 --- a/i18n/sk.json +++ b/i18n/sk.json @@ -123,6 +123,13 @@ "logging_enable_description": "Povoliť ukladanie záznamov", "logging_level_description": "Ak je povolené, akú úroveň záznamov použiť.", "logging_settings": "Ukladanie záznamov", + "machine_learning_availability_checks": "Kontroly dostupnosti", + "machine_learning_availability_checks_description": "Automaticky zistiť a uprednostniť dostupné servery strojového učenia", + "machine_learning_availability_checks_enabled": "Povoliť kontroly dostupnosti", + "machine_learning_availability_checks_interval": "Interval kontroly", + "machine_learning_availability_checks_interval_description": "Interval v milisekundách medzi kontrolami dostupnosti", + "machine_learning_availability_checks_timeout": "Časový limit požiadavky", + "machine_learning_availability_checks_timeout_description": "Časový limit v milisekundách pre kontroly dostupnosti", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Názov modelu CLIP je uvedený tu. Pamätajte, že pri zmene modelu je nutné znovu spustiť úlohu 'Inteligentné vyhľadávanie' pre všetky obrázky.", "machine_learning_duplicate_detection": "Detekcia duplikátov", @@ -387,8 +394,6 @@ "admin_password": "Administrátorské heslo", "administration": "Administrácia", "advanced": "Pokročilé", - "advanced_settings_beta_timeline_subtitle": "Vyskúšajte prostredie novej aplikácie", - "advanced_settings_beta_timeline_title": "Beta verzia časovej osi", "advanced_settings_enable_alternate_media_filter_subtitle": "Túto možnosť použite na filtrovanie médií počas synchronizácie na základe alternatívnych kritérií. Túto možnosť vyskúšajte len vtedy, ak máte problémy s detekciou všetkých albumov v aplikácii.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTÁLNE] Použiť alternatívny filter synchronizácie albumu zariadenia", "advanced_settings_log_level_title": "Úroveň ukladania záznamov: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Ste si istý, že chcete odstrániť používateľa {user}?", "album_search_not_found": "Neboli nájdené žiadne albumy zodpovedajúce vášmu hľadaniu", "album_share_no_users": "Vyzerá to, že ste tento album zdieľali so všetkými používateľmi alebo nemáte žiadneho používateľa, s ktorým by ste ho mohli zdieľať.", + "album_summary": "Súhrn albumu", "album_updated": "Album bol aktualizovaný", "album_updated_setting_description": "Obdržať e-mailové upozornenie, keď v zdieľanom albume pribudnú nové položky", "album_user_left": "Opustil {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Položky boli úspešne obnovené", "asset_skipped": "Preskočené", "asset_skipped_in_trash": "V koši", + "asset_trashed": "Položka bola vyhodená", + "asset_troubleshoot": "Riešenie problémov s položkami", "asset_uploaded": "Nahrané", "asset_uploading": "Nahráva sa…", "asset_viewer_settings_subtitle": "Spravujte nastavenia prehliadača galérie", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Automatické prehrávanie prezentácie", "back": "Späť", "back_close_deselect": "Späť, zavrieť alebo zrušiť výber", + "background_backup_running_error": "V súčasnosti prebieha zálohovanie na pozadí, nie je možné spustiť ručné zálohovanie", "background_location_permission": "Povolenie na určenie polohy na pozadí", "background_location_permission_content": "Aby bolo možné prepínať siete pri spustení na pozadí, musí mať aplikácia Immich *vždy* presný prístup k polohe, aby mohla prečítať názov siete Wi-Fi", + "background_options": "Možnosti pozadia", "backup": "Zálohovanie", "backup_album_selection_page_albums_device": "Albumy v zariadení ({count})", "backup_album_selection_page_albums_tap": "Ťuknutím na položku ju zahrniete, dvojitým ťuknutím ju vylúčite", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Vybrať albumy", "backup_album_selection_page_selection_info": "Informácie o výbere", "backup_album_selection_page_total_assets": "Celkový počet jedinečných súborov", + "backup_albums_sync": "Synchronizácia zálohovaných albumov", "backup_all": "Všetko", "backup_background_service_backup_failed_message": "Zálohovanie médií zlyhalo. Skúšam to znova…", "backup_background_service_connection_failed_message": "Nepodarilo sa pripojiť k serveru. Skúšam to znova…", @@ -654,6 +665,8 @@ "change_pin_code": "Zmeniť PIN kód", "change_your_password": "Zmeniť heslo", "changed_visibility_successfully": "Viditeľnosť bola úspešne zmenená", + "charging": "Nabíja sa", + "charging_requirement_mobile_backup": "Zálohovanie na pozadí vyžaduje, aby bolo zariadenie nabíjané", "check_corrupt_asset_backup": "Skontrolovať, či nie sú poškodené zálohy položiek", "check_corrupt_asset_backup_button": "Vykonať kontrolu", "check_corrupt_asset_backup_description": "Spustiť túto kontrolu len cez Wi-Fi a po zálohovaní všetkých položiek. Tento postup môže trvať niekoľko minút.", @@ -740,6 +753,7 @@ "create_user": "Vytvoriť používateľa", "created": "Vytvorené", "created_at": "Vytvorené", + "creating_linked_albums": "Vytváranie prepojených albumov...", "crop": "Orezať", "curated_object_page_title": "Veci", "current_device": "Súčasné zariadenie", @@ -889,7 +903,9 @@ "error": "Chyba", "error_change_sort_album": "Nepodarilo sa zmeniť poradie albumu", "error_delete_face": "Chyba pri odstraňovaní tváre z položky", + "error_getting_places": "Chyba pri získavaní polôh", "error_loading_image": "Nepodarilo sa načítať obrázok", + "error_loading_partners": "Chyba pri načítaní partnerov: {error}", "error_saving_image": "Chyba: {error}", "error_tag_face_bounding_box": "Chyba pri označovaní tváre - nemožno získať súradnice ohraničujúceho poľa", "error_title": "Chyba - niečo sa pokazilo", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Žiadne obľúbené médiá", "feature_photo_updated": "Hlavný obrázok bol aktualizovaný", "features": "Funkcie", + "features_in_development": "Funkcie vo vývoji", "features_setting_description": "Spravovať funkcie aplikácie", "file_name": "Názov súboru", "file_name_or_extension": "Názov alebo prípona súboru", @@ -1218,6 +1235,7 @@ "local": "Lokálne", "local_asset_cast_failed": "Nie je možné preniesť médium, ktoré nie je nahrané na serveri", "local_assets": "Lokálne položky", + "local_media_summary": "Súhrn lokálnych médií", "local_network": "Miestna sieť", "local_network_sheet_info": "Pri použití zadanej siete Wi-Fi sa aplikácia pripojí k serveru prostredníctvom tejto URL adresy", "location_permission": "Povolenie na určenie polohy", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Zadajte platnú zemepisnú dĺžku", "lock": "Zamknúť", "locked_folder": "Zamknutý priečinok", + "log_detail_title": "Podrobnosti o zázname", "log_out": "Odhlásiť sa", "log_out_all_devices": "Odhlásiť všetky zariadenia", "logged_in_as": "Prihlásený ako {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Aktualizácia hesla prebehla úspešne", "logout_all_device_confirmation": "Ste si istý, že sa chcete odhlásiť zo všetkých zariadení?", "logout_this_device_confirmation": "Ste si istý, že sa chcete odhlásiť z tohoto zariadenia?", + "logs": "Záznamy", "longitude": "Zemepisná dĺžka", "look": "Vzhľad", "loop_videos": "Opakovať videá", @@ -1301,6 +1321,7 @@ "mark_as_read": "Označiť ako prečítané", "marked_all_as_read": "Označené všetko ako prečítané", "matches": "Zhody", + "matching_assets": "Vyhovujúce položky", "media_type": "Typ média", "memories": "Spomienky", "memories_all_caught_up": "Na dnes to je všetko", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Meno alebo prezývka", "network_requirement_photos_upload": "Použiť mobilné dáta na zálohovanie fotografií", "network_requirement_videos_upload": "Použiť mobilné dáta na zálohovanie videí", + "network_requirements": "Požiadavky na sieť", "network_requirements_updated": "Požiadavky na sieť sa zmenili, obnovuje sa poradie zálohovania", "networking_settings": "Sieť", "networking_subtitle": "Spravovať nastavenia koncového bodu servera", @@ -1351,6 +1373,7 @@ "new_person": "Nová osoba", "new_pin_code": "Nový PIN kód", "new_pin_code_subtitle": "Toto je váš prvý prístup k zamknutému priečinku. Vytvorte si PIN kód na bezpečný prístup k tejto stránke", + "new_timeline": "Nová časová os", "new_user_created": "Nový používateľ vytvorený", "new_version_available": "JE DOSTUPNÁ NOVÁ VERZIA", "newest_first": "Najprv najnovšie", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLIKNITE A NAHRAJTE SVOJU PRVÚ FOTKU", "no_assets_to_show": "Žiadne položky", "no_cast_devices_found": "Nenašli sa žiadne zariadenia na prenos", + "no_checksum_local": "Kontrola súčtu nie je k dispozícii – nie je možné načítať lokálne položky", + "no_checksum_remote": "Kontrola súčtu nie je k dispozícii – nie je možné načítať vzdialené položky", "no_duplicates_found": "Nenašli sa žiadne duplicity.", "no_exif_info_available": "Nie sú dostupné exif údaje", "no_explore_results_message": "Nahrajte viac fotiek na objavovanie vašej zbierky.", "no_favorites_message": "Pridajte si obľúbené, aby ste rýchlo našli svoje najlepšie obrázky a videá", "no_libraries_message": "Vytvorí externú knižnicu na prezeranie fotiek a videí", + "no_local_assets_found": "Neboli nájdené žiadne lokálne položky s touto kontrolnou sumou", "no_locked_photos_message": "Fotografie a videá v zamknutom priečinku sú skryté a nezobrazujú sa pri prehľadávaní alebo vyhľadávaní v knižnici.", "no_name": "Bez mena", "no_notifications": "Žiadne oznámenia", "no_people_found": "Nenašli sa žiadni vyhovujúci ľudia", "no_places": "Bez miesta", + "no_remote_assets_found": "Neboli nájdené žiadne vzdialené položky s touto kontrolnou sumou", "no_results": "Žiadne výsledky", "no_results_description": "Skúste synonymum alebo všeobecnejší výraz", "no_shared_albums_message": "Vytvorí album na zdieľanie fotiek a videí s ľuďmi vo vašej sieti", "no_uploads_in_progress": "Žiadne prebiehajúce nahrávanie", + "not_available": "Nedostupné", "not_in_any_album": "Nie je v žiadnom albume", "not_selected": "Nevybrané", "note_apply_storage_label_to_previously_uploaded assets": "Poznámka: Ak chcete použiť Štítok úložiska na predtým nahrané médiá, spustite príkaz", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Pregenerovanie náhľadov", "remote": "Vzdialené", "remote_assets": "Vzdialené položky", + "remote_media_summary": "Súhrn vzdialených médií", "remove": "Odstrániť", "remove_assets_album_confirmation": "Naozaj chcete odstrániť {count, plural, one {# položku} few {# položky} other {# položiek}} z albumu?", "remove_assets_shared_link_confirmation": "Naozaj chcete odstrániť {count, plural, one {# položku} few {# položky} other {# položiek}} z tohoto zdieľaného odkazu?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Zobraziť prechody v prezentácii", "show_supporter_badge": "Odznak podporovateľa", "show_supporter_badge_description": "Zobraziť odznak podporovateľa", + "show_text_search_menu": "Zobraziť ponuku vyhľadávania textu", "shuffle": "Náhodné poradie", "sidebar": "Bočný panel", "sidebar_display_description": "Zobraziť odkaz na zobrazenie v bočnom paneli", @@ -1893,6 +1923,7 @@ "stacktrace": "Výpis zásobníku", "start": "Spustiť", "start_date": "Počiatočný dátum", + "start_date_before_end_date": "Dátum začiatku musí byť pred dátumom ukončenia", "state": "Štát", "status": "Stav", "stop_casting": "Zastaviť prenos", @@ -2095,5 +2126,6 @@ "yes": "Áno", "you_dont_have_any_shared_links": "Nemáte žiadne zdielané odkazy", "your_wifi_name": "Váš názov siete Wi-Fi", - "zoom_image": "Priblížiť obrázok" + "zoom_image": "Priblížiť obrázok", + "zoom_to_bounds": "Zväčšiť na okraje" } diff --git a/i18n/sl.json b/i18n/sl.json index f67a6b08b7..a4e75727ed 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -8,7 +8,7 @@ "actions": "Dejanja", "active": "Aktivno", "activity": "Aktivnost", - "activity_changed": "Aktivnost {enabled, select, true {omogočena} other {onemogočena}}", + "activity_changed": "Aktivnost je {enabled, select, true {omogočena} other {onemogočena}}", "add": "Dodaj", "add_a_description": "Dodaj opis", "add_a_location": "Dodaj lokacijo", @@ -39,15 +39,15 @@ "admin": { "add_exclusion_pattern_description": "Dodajte vzorec izključitev. Globiranje z uporabo *, ** in ? je podprto. Če želite prezreti vse datoteke v katerem koli imeniku z imenom \"Raw\", uporabite \"**/Raw/**\". Če želite prezreti vse datoteke, ki se končajo na \".tif\", uporabite \"**/*.tif\". Če želite prezreti absolutno pot, uporabite \"/pot/za/ignoriranje/**\".", "admin_user": "Skrbniški uporabnik", - "asset_offline_description": "Sredstva zunanje knjižnice ni več mogoče najti na disku in je bilo premaknjeno v koš. Če je bila datoteka premaknjena znotraj knjižnice, preverite svojo časovnico za novo ustrezno sredstvo. Če želite obnoviti to sredstvo, zagotovite, da ima Immich dostop do spodnje poti datoteke, in skenirajte knjižnico.", + "asset_offline_description": "Tega sredstva zunanje knjižnice ni več mogoče najti na disku in je bilo premaknjeno v koš. Če je bila datoteka premaknjena znotraj knjižnice, preverite svojo časovnico za novo ustrezno sredstvo. Če želite obnoviti to sredstvo, zagotovite, da ima Immich dostop do spodnje poti datoteke, in skenirajte knjižnico.", "authentication_settings": "Nastavitve preverjanja pristnosti", "authentication_settings_description": "Upravljanje gesel, OAuth in drugih nastavitev preverjanja pristnosti", "authentication_settings_disable_all": "Ali zares želite onemogočiti vse prijavne metode? Prijava bo popolnoma onemogočena.", - "authentication_settings_reenable": "Ponovno omogoči z uporabo strežniškega ukaza.", + "authentication_settings_reenable": "Za ponovno omogočanje uporabite strežniški ukaz.", "background_task_job": "Opravila v ozadju", "backup_database": "Ustvari izpis baze podatkov", "backup_database_enable_description": "Omogoči izpise baze podatkov", - "backup_keep_last_amount": "Število prejšnjih odlagališč, ki jih je treba obdržati", + "backup_keep_last_amount": "Število prejšnjih izpisov baze podatkov, ki jih je treba obdržati", "backup_onboarding_1_description": "kopijo zunaj lokacije v oblaku ali na drugi fizični lokaciji.", "backup_onboarding_2_description": "lokalne kopije na različnih napravah. To vključuje glavne datoteke in lokalno varnostno kopijo teh datotek.", "backup_onboarding_3_description": "skupno število kopij vaših podatkov, vključno z izvirnimi datotekami. To vključuje 1 kopijo zunaj lokacije in 2 lokalni kopiji.", @@ -57,7 +57,7 @@ "backup_onboarding_title": "Varnostne kopije", "backup_settings": "Nastavitve izpisa baze podatkov", "backup_settings_description": "Upravljanje nastavitev izpisa podatkovne baze.", - "cleared_jobs": "Razčiščeno opravilo za: {job}", + "cleared_jobs": "Razčiščena opravila za: {job}", "config_set_by_file": "Konfiguracija je trenutno nastavljena s konfiguracijsko datoteko", "confirm_delete_library": "Ali ste prepričani, da želite izbrisati knjižnico {library}?", "confirm_delete_library_assets": "Ali ste prepričani, da želite izbrisati to knjižnico? To bo iz Immicha izbrisalo {count, plural, one {# vsebovani vir} two {# vsebovana vira} few {# vsebovane vire} other {vseh # vsebovanih virov}} in tega ni možno razveljaviti. Datoteke bodo ostale na disku.", @@ -72,10 +72,10 @@ "disable_login": "Onemogoči prijavo", "duplicate_detection_job_description": "Zaženite strojno učenje na sredstvih, da zaznate podobne slike. Zanaša se na Pametno Iskanje", "exclusion_pattern_description": "Vzorci izključitev vam omogočajo, da prezrete datoteke in mape pri skeniranju knjižnice. To je uporabno, če imate mape z datotekami, ki jih ne želite uvoziti, na primer datoteke RAW.", - "external_library_management": "Upravljanje zunanje knjižnice", + "external_library_management": "Upravljanje zunanjih knjižnic", "face_detection": "Zaznavanje obrazov", - "face_detection_description": "Zaznajte obraze v sredstvih s pomočjo strojnega učenja. Pri videoposnetkih se upošteva samo sličica. \"Vse\" (ponovno) obdela vsa sredstva. \"Manjkajoče\" postavi v čakalno vrsto sredstva, ki še niso bila obdelana. Zaznani obrazi bodo postavljeni v čakalno vrsto za prepoznavanje obrazov, ko bo zaznavanje obrazov končano, in jih bodo združili v obstoječe ali nove osebe.", - "facial_recognition_job_description": "Združi zaznane obraze v osebe. Ta korak se izvede po končanem zaznavanju obrazov. \"Vse\" (ponovno) združuje vse obraze. \"Manjkajoče\", doda v čakalno vrsto obraze, ki nimajo dodeljene osebe.", + "face_detection_description": "Zaznavanje obrazov v sredstvih z uporabo strojnega učenja. Pri videoposnetkih se upošteva samo sličica. »Osveži« (ponovno) obdela vsa sredstva. »Ponastavi« dodatno izbriše vse trenutne podatke o obrazih. »Manjkajoča« uvrsti sredstva, ki še niso bila obdelana, v čakalno vrsto. Zaznani obrazi bodo po končanem zaznavanju obrazov uvrščeni v čakalno vrsto za prepoznavanje obrazov, pri čemer bodo združeni v obstoječe ali nove osebe.", + "facial_recognition_job_description": "Združi zaznane obraze v osebe. Ta korak se izvede po končanem zaznavanju obrazov. »Ponastavi« (ponovno) združi vse obraze. »Manjkajoča« uvrsti obraze, ki jim ni dodeljena oseba, v čakalno vrsto.", "failed_job_command": "Za opravilo {job} ukaz {command} ni uspel", "force_delete_user_warning": "OPOZORILO: S tem boste takoj odstranili uporabnika in vsa sredstva. Tega ni mogoče razveljaviti in datotek ni mogoče obnoviti.", "image_format": "Format", @@ -102,12 +102,12 @@ "image_thumbnail_title": "Nastavitve sličic", "job_concurrency": "{job} sočasnost", "job_created": "Opravilo ustvarjeno", - "job_not_concurrency_safe": "To opravilo ni sočasno-varno.", + "job_not_concurrency_safe": "To delo ni varno za sočasnost.", "job_settings": "Nastavitve opravil", "job_settings_description": "Upravljaj sočasnost opravil", "job_status": "Status opravila", - "jobs_delayed": "{jobCount, plural, other {# zadržan}}", - "jobs_failed": "{jobCount, plural, other {# neuspešen}}", + "jobs_delayed": "{jobCount, plural, other {# zadržani}}", + "jobs_failed": "{jobCount, plural, other {# neuspešni}}", "library_created": "Ustvarjena knjižnica: {library}", "library_deleted": "Knjižnica izbrisana", "library_import_path_description": "Določi mapo za uvoz. Ta mapa in njene podmape bodo pregledane za slike in video posnetke.", @@ -123,6 +123,13 @@ "logging_enable_description": "Omogoči dnevnik", "logging_level_description": "Nivo dnevnika, ko je le-ta omogočen.", "logging_settings": "Dnevnik", + "machine_learning_availability_checks": "Preverjanja razpoložljivosti", + "machine_learning_availability_checks_description": "Samodejno zaznavanje in dajanje prednosti razpoložljivim strežnikom strojnega učenja", + "machine_learning_availability_checks_enabled": "Omogoči preverjanja razpoložljivosti", + "machine_learning_availability_checks_interval": "Interval preverjanja", + "machine_learning_availability_checks_interval_description": "Interval v milisekundah med preverjanji razpoložljivosti", + "machine_learning_availability_checks_timeout": "Zahteva za časovno omejitev", + "machine_learning_availability_checks_timeout_description": "Časovna omejitev v milisekundah za preverjanje razpoložljivosti", "machine_learning_clip_model": "model CLIP", "machine_learning_clip_model_description": "Ime CLIP modela iz seznama tukaj. Vedite, da boste morali po menjavi modela ponovno zagnati opravilo za 'Pametno iskanje' za vse slike.", "machine_learning_duplicate_detection": "Zaznavanje dvojnikov", @@ -131,7 +138,7 @@ "machine_learning_duplicate_detection_setting_description": "Za iskanje verjetnih dvojnikov uporabite vdelave CLIP", "machine_learning_enabled": "Omogoči strojno učenje", "machine_learning_enabled_description": "Če je onemogočeno, bodo vse funkcije strojnega učenja onemogočene ne glede na spodnje nastavitve.", - "machine_learning_facial_recognition": "Zaznavanje obrazov", + "machine_learning_facial_recognition": "Prepoznavanje obrazov", "machine_learning_facial_recognition_description": "Zaznavanje, prepoznavanje in združevanje obrazov na slikah", "machine_learning_facial_recognition_model": "Model za prepoznavanje obraza", "machine_learning_facial_recognition_model_description": "Modeli so navedeni v padajočem vrstnem redu glede na velikost. Večji modeli so počasnejši in uporabljajo več pomnilnika, vendar dajejo boljše rezultate. Upoštevajte, da morate po spremembi modela znova zagnati opravilo zaznavanja obrazov za vse slike.", @@ -144,7 +151,7 @@ "machine_learning_min_detection_score": "Najmanjši rezultat zaznavanja", "machine_learning_min_detection_score_description": "Najmanjši rezultat zaupanja za zaznavanje obraza od 0-1. Nižje vrednosti bodo zaznale več obrazov, vendar lahko povzročijo lažne pozitivne rezultate.", "machine_learning_min_recognized_faces": "Najmanjše število prepoznanih obrazov", - "machine_learning_min_recognized_faces_description": "Najmanjše število prepoznanih obrazov za osebo, ki se ustvari. Če to povečate, postane prepoznavanje obraza natančnejše na račun večje možnosti, da obraz ni dodeljen osebi.", + "machine_learning_min_recognized_faces_description": "Najmanjše število prepoznanih obrazov za osebo, da se ustvari. Če to povečate, postane prepoznavanje obraza natančnejše na račun večje možnosti, da obraz ni dodeljen osebi.", "machine_learning_settings": "Nastavitve strojnega učenja", "machine_learning_settings_description": "Upravljajte funkcije in nastavitve strojnega učenja", "machine_learning_smart_search": "Pametno iskanje", @@ -176,41 +183,41 @@ "metadata_settings": "Nastavitve metapodatkov", "metadata_settings_description": "Upravljanje nastavitev metapodatkov", "migration_job": "Migracija", - "migration_job_description": "Preselite sličice za sredstva in obraze v najnovejšo strukturo map", + "migration_job_description": "Prenesite sličice za sredstva in obraze v najnovejšo strukturo map", "nightly_tasks_cluster_faces_setting_description": "Zaženi prepoznavanje obrazov na novo zaznanih obrazih", "nightly_tasks_cluster_new_faces_setting": "Združite nove obraze", "nightly_tasks_database_cleanup_setting": "Naloge čiščenja baze podatkov", "nightly_tasks_database_cleanup_setting_description": "Očistite stare, potekle podatke iz baze podatkov", - "nightly_tasks_generate_memories_setting": "Ustvarjajte spomine", - "nightly_tasks_generate_memories_setting_description": "Ustvarite nove spomine iz sredstev", + "nightly_tasks_generate_memories_setting": "Ustvari spomine", + "nightly_tasks_generate_memories_setting_description": "Ustvari nove spomine iz sredstev", "nightly_tasks_missing_thumbnails_setting": "Ustvari manjkajoče sličice", "nightly_tasks_missing_thumbnails_setting_description": "Sredstva brez sličic postavite v čakalno vrsto za ustvarjanje sličic", "nightly_tasks_settings": "Nastavitve nočnih opravil", "nightly_tasks_settings_description": "Upravljajte nočne naloge", "nightly_tasks_start_time_setting": "Začetni čas", "nightly_tasks_start_time_setting_description": "Čas, ko strežnik začne izvajati nočne naloge", - "nightly_tasks_sync_quota_usage_setting": "Poraba kvote za sinhronizacijo", + "nightly_tasks_sync_quota_usage_setting": "Posodobi kvoto porabljenega prostora", "nightly_tasks_sync_quota_usage_setting_description": "Posodobi kvoto shrambe uporabnikov glede na trenutno uporabo", "no_paths_added": "Ni dodanih poti", - "no_pattern_added": "Brez dodanega vzorca", + "no_pattern_added": "Nobenega dodanega vzorca", "note_apply_storage_label_previous_assets": "Opomba: Če želite oznako za shranjevanje uporabiti za predhodno naložena sredstva, zaženite", "note_cannot_be_changed_later": "OPOMBA: Tega pozneje ni mogoče spremeniti!", - "notification_email_from_address": "Iz naslova", - "notification_email_from_address_description": "E-poštni naslov pošiljatelja, na primer: \"Immich Photo Server \". Uporabite naslov, s katerega lahko pošiljate e-pošto.", + "notification_email_from_address": "Od naslova", + "notification_email_from_address_description": "Pošiljateljev e-poštni naslov, na primer: \"Immich Photo Server \". Uporabite naslov, s katerega lahko pošiljate e-pošto.", "notification_email_host_description": "Gostitelj e-poštnega strežnika (npr. smtp.immich.app)", "notification_email_ignore_certificate_errors": "Prezri napake potrdil", "notification_email_ignore_certificate_errors_description": "Prezri napake pri preverjanju potrdila TLS (ni priporočljivo)", "notification_email_password_description": "Geslo za uporabo pri preverjanju pristnosti z e-poštnim strežnikom", "notification_email_port_description": "Vrata e-poštnega strežnika (npr. 25, 465 ali 587)", - "notification_email_sent_test_email_button": "Pošljite testno e-pošto in shranite", + "notification_email_sent_test_email_button": "Pošljite testno e-pošto in shrani", "notification_email_setting_description": "Nastavitve za pošiljanje e-poštnih obvestil", "notification_email_test_email": "Pošlji testno e-pošto", - "notification_email_test_email_failed": "Pošiljanje testnega e-poštnega sporočila ni uspelo, preverite svoje vrednosti", + "notification_email_test_email_failed": "Pošiljanje testnega e-poštnega sporočila ni uspelo, preverite svoje podatke", "notification_email_test_email_sent": "Testno e-poštno sporočilo je bilo poslano na {email}. Prosimo, preverite svoj nabiralnik.", "notification_email_username_description": "Uporabniško ime za uporabo pri preverjanju pristnosti z e-poštnim strežnikom", "notification_enable_email_notifications": "Omogoči e-poštna obvestila", "notification_settings": "Nastavitve obvestil", - "notification_settings_description": "Upravljajte nastavitve obvestil, vključno z e-pošto", + "notification_settings_description": "Upravljaj z nastavitvami obvestil, vključno z e-pošto", "oauth_auto_launch": "Samodejni zagon", "oauth_auto_launch_description": "Samodejno zaženite tok prijave OAuth, ko obiščete stran za prijavo", "oauth_auto_register": "Samodejna registracija", @@ -221,7 +228,7 @@ "oauth_mobile_redirect_uri": "Mobilni preusmeritveni URI", "oauth_mobile_redirect_uri_override": "Preglasitev URI preusmeritve za mobilne naprave", "oauth_mobile_redirect_uri_override_description": "Omogoči, ko ponudnik OAuth ne dovoli mobilnega URI-ja, kot je ''{callback}''", - "oauth_role_claim": "Zahteva vloge", + "oauth_role_claim": "Zahteva za vlogo", "oauth_role_claim_description": "Samodejno dodeli skrbniški dostop na podlagi prisotnosti tega zahtevka. Zahtevek ima lahko »uporabnik« ali »skrbnik«.", "oauth_settings": "OAuth", "oauth_settings_description": "Upravljanje nastavitev prijave OAuth", @@ -241,13 +248,13 @@ "person_cleanup_job": "Čiščenje osebe", "quota_size_gib": "Velikost kvote (GiB)", "refreshing_all_libraries": "Osveževanje vseh knjižnic", - "registration": "Administratorska registracija", + "registration": "Registracija administratorja", "registration_description": "Ker ste prvi uporabnik v sistemu, boste dodeljeni kot skrbnik in ste odgovorni za skrbniška opravila, dodatne uporabnike pa boste ustvarili sami.", "require_password_change_on_login": "Od uporabnika zahtevajte spremembo gesla ob prvi prijavi", "reset_settings_to_default": "Ponastavi nastavitve na privzete", "reset_settings_to_recent_saved": "Ponastavite nastavitve na nedavno shranjene nastavitve", "scanning_library": "Pregledovanje knjižnice", - "search_jobs": "Iskanje opravil…", + "search_jobs": "Išči opravila…", "send_welcome_email": "Pošlji pozdravno e-pošto", "server_external_domain_settings": "Zunanja domena", "server_external_domain_settings_description": "Domena za javne skupne povezave, vključno s http(s)://", @@ -256,7 +263,7 @@ "server_settings": "Nastavitve strežnika", "server_settings_description": "Upravljanje nastavitev strežnika", "server_welcome_message": "Pozdravno sporočilo", - "server_welcome_message_description": "Sporočilo, ki se prikaže na strani za prijavo.", + "server_welcome_message_description": "Sporočilo prikazano na prijavni strani.", "sidecar_job": "Stranski metapodatki", "sidecar_job_description": "Odkrijte ali sinhronizirajte stranske metapodatke iz datotečnega sistema", "slideshow_duration_description": "Število sekund za prikaz posamezne slike", @@ -264,7 +271,7 @@ "storage_template_date_time_description": "Časovni žig ustvarjanja sredstva se uporablja za informacije o datumu in času", "storage_template_date_time_sample": "Vzorec časa {date}", "storage_template_enable_description": "Omogoči mehanizem predloge za shranjevanje", - "storage_template_hash_verification_enabled": "Preverjanje zgoščevanja je omogočeno", + "storage_template_hash_verification_enabled": "Omogočeno preverjanje zgoščene vrednosti", "storage_template_hash_verification_enabled_description": "Omogoči preverjanje zgoščene vrednosti, tega ne onemogočite, razen če niste prepričani o posledicah", "storage_template_migration": "Selitev predloge za shranjevanje", "storage_template_migration_description": "Uporabi trenutno {template} za predhodno naložena sredstva", @@ -283,7 +290,7 @@ "template_email_invite_album": "Predloga povabila v album", "template_email_preview": "Predogled", "template_email_settings": "E-poštne predloge", - "template_email_update_album": "Predloga posodobitve albuma", + "template_email_update_album": "Posodobi predlogo albuma", "template_email_welcome": "Predloga pozdravnega e-poštnega sporočila", "template_settings": "Predloge obvestil", "template_settings_description": "Upravljanje predlog po meri za obvestila", @@ -299,14 +306,14 @@ "transcoding_acceleration_qsv": "Hitra sinhronizacija (zahteva procesor Intel 7. generacije ali novejši)", "transcoding_acceleration_rkmpp": "RKMPP (samo na Rockchip SOC)", "transcoding_acceleration_vaapi": "VAAPI", - "transcoding_accepted_audio_codecs": "Sprejeti zvočni kodeki", - "transcoding_accepted_audio_codecs_description": "Izberite, katerih zvočnih kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", + "transcoding_accepted_audio_codecs": "Dovoljeni zvočni kodeksi", + "transcoding_accepted_audio_codecs_description": "Izberite, katerih zvočnih kodeksov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", "transcoding_accepted_containers": "Sprejeti zabojniki", "transcoding_accepted_containers_description": "Izberite, katerih formatov zabojnika ni treba ponovno muksirati v MP4. Uporablja se samo za določene politike prekodiranja.", - "transcoding_accepted_video_codecs": "Podprti video kodeki", - "transcoding_accepted_video_codecs_description": "Izberite, katerih video kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", - "transcoding_advanced_options_description": "Možnosti večini uporabnikov ne bi bilo treba spreminjati", - "transcoding_audio_codec": "Avdio kodek", + "transcoding_accepted_video_codecs": "Podprti video kodeksi", + "transcoding_accepted_video_codecs_description": "Izberite, katerih video kodeksov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", + "transcoding_advanced_options_description": "Možnosti, ki jih večini uporabnikov ne treba spreminjati", + "transcoding_audio_codec": "Zvočni kodeks", "transcoding_audio_codec_description": "Opus je najbolj kakovostna možnost, vendar ima slabšo združljivost s starimi napravami ali programsko opremo.", "transcoding_bitrate_description": "Videoposnetki, ki presegajo največjo bitno hitrost ali niso v sprejemljivem formatu", "transcoding_codecs_learn_more": "Če želite izvedeti več o tukaj uporabljeni terminologiji, glejte dokumentacijo FFmpeg za kodek H.264, kodek HEVC in VP9 kodek.", @@ -316,7 +323,7 @@ "transcoding_constant_rate_factor_description": "Raven kakovosti videa. Tipične vrednosti so 23 za H.264, 28 za HEVC, 31 za VP9 in 35 za AV1. Nižje je boljše, vendar ustvarja večje datoteke.", "transcoding_disabled_description": "Ne prekodirajte nobenih videoposnetkov, lahko prekine predvajanje na nekaterih odjemalcih", "transcoding_encoding_options": "Možnosti kodiranja", - "transcoding_encoding_options_description": "Nastavite kodeke, ločljivost, kakovost in druge možnosti za kodirane videoposnetke", + "transcoding_encoding_options_description": "Nastavite kodekse, ločljivost, kakovost in druge možnosti za kodirane videoposnetke", "transcoding_hardware_acceleration": "Strojno pospeševanje", "transcoding_hardware_acceleration_description": "Eksperimentalno: hitrejše prekodiranje, vendar se lahko kakovost pri enaki bitni hitrosti zmanjša", "transcoding_hardware_decoding": "Strojno dekodiranje", @@ -387,8 +394,6 @@ "admin_password": "Skrbniško geslo", "administration": "Administracija", "advanced": "Napredno", - "advanced_settings_beta_timeline_subtitle": "Preizkusite novo izkušnjo aplikacije", - "advanced_settings_beta_timeline_title": "Časovnica beta različice", "advanced_settings_enable_alternate_media_filter_subtitle": "Uporabite to možnost za filtriranje medijev med sinhronizacijo na podlagi alternativnih meril. To poskusite le, če imate težave z aplikacijo, ki zaznava vse albume.", "advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTALNO] Uporabite alternativni filter za sinhronizacijo albuma v napravi", "advanced_settings_log_level_title": "Nivo dnevnika: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Ali ste prepričani, da želite odstraniti {user}?", "album_search_not_found": "Ni najdenih albumov, ki bi ustrezali vašemu iskanju", "album_share_no_users": "Videti je, da ste ta album dali v skupno rabo z vsemi uporabniki ali pa nimate nobenega uporabnika, s katerim bi ga lahko delili.", + "album_summary": "Povzetek albuma", "album_updated": "Album posodobljen", "album_updated_setting_description": "Prejmite e-poštno obvestilo, ko ima album v skupni rabi nova sredstva", "album_user_left": "Zapustil {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Sredstvo uspešno obnovljeno", "asset_skipped": "Preskočeno", "asset_skipped_in_trash": "V smetnjak", + "asset_trashed": "Sredstvo je bilo premaknjeno v koš", + "asset_troubleshoot": "Odpravljanje težav s sredstvi", "asset_uploaded": "Naloženo", "asset_uploading": "Nalaganje…", "asset_viewer_settings_subtitle": "Upravljaj nastavitve pregledovalnika galerije", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Samodejno predvajanje diaprojekcije", "back": "Nazaj", "back_close_deselect": "Nazaj, zaprite ali prekličite izbiro", + "background_backup_running_error": "Varnostno kopiranje v ozadju se trenutno izvaja, ročnega varnostnega kopiranja ni mogoče zagnati", "background_location_permission": "Dovoljenje za iskanje lokacije v ozadju", "background_location_permission_content": "Ko deluje v ozadju mora imeti Immich za zamenjavo omrežij, *vedno* dostop do natančne lokacije, da lahko aplikacija prebere ime omrežja Wi-Fi", + "background_options": "Možnosti ozadja", "backup": "Varnostna kopija", "backup_album_selection_page_albums_device": "Albumi v napravi ({count})", "backup_album_selection_page_albums_tap": "Tapnite za vključitev, dvakrat tapnite za izključitev", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Izberi albume", "backup_album_selection_page_selection_info": "Informacije o izbiri", "backup_album_selection_page_total_assets": "Skupaj unikatnih sredstev", + "backup_albums_sync": "Sinhronizacija varnostnih kopij albumov", "backup_all": "Vse", "backup_background_service_backup_failed_message": "Varnostno kopiranje sredstev ni uspelo. Ponovno poskušam…", "backup_background_service_connection_failed_message": "Povezava s strežnikom ni uspela. Ponovno poskušam…", @@ -654,6 +665,8 @@ "change_pin_code": "Spremeni PIN kodo", "change_your_password": "Spremenite geslo", "changed_visibility_successfully": "Uspešno spremenjena vidnost", + "charging": "Polnjenje", + "charging_requirement_mobile_backup": "Za varnostno kopiranje v ozadju je potrebno polnjenje naprave", "check_corrupt_asset_backup": "Preverite poškodovane varnostne kopije sredstev", "check_corrupt_asset_backup_button": "Izvedi preverjanje", "check_corrupt_asset_backup_description": "To preverjanje zaženite samo prek omrežja Wi-Fi in potem, ko so vsa sredstva varnostno kopirana. Postopek lahko traja nekaj minut.", @@ -740,6 +753,7 @@ "create_user": "Ustvari uporabnika", "created": "Ustvarjeno", "created_at": "Ustvarjeno", + "creating_linked_albums": "Ustvarjanje povezanih albumov ...", "crop": "Obrezovanje", "curated_object_page_title": "Stvari", "current_device": "Trenutna naprava", @@ -889,7 +903,9 @@ "error": "Napaka", "error_change_sort_album": "Vrstnega reda albuma ni bilo mogoče spremeniti", "error_delete_face": "Napaka pri brisanju obraza iz sredstva", + "error_getting_places": "Napaka pri pridobivanju mest", "error_loading_image": "Napaka pri nalaganju slike", + "error_loading_partners": "Napaka pri nalaganju partnerjev: {error}", "error_saving_image": "Napaka: {error}", "error_tag_face_bounding_box": "Napaka pri označevanju obraza - ni mogoče pridobiti koordinat omejevalnega okvirja", "error_title": "Napaka - nekaj je šlo narobe", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Ni priljubljenih sredstev", "feature_photo_updated": "Funkcijska fotografija je posodobljena", "features": "Funkcije", + "features_in_development": "Funkcije v razvoju", "features_setting_description": "Upravljaj funkcije aplikacije", "file_name": "Ime datoteke", "file_name_or_extension": "Ime ali končnica datoteke", @@ -1218,6 +1235,7 @@ "local": "Lokalno", "local_asset_cast_failed": "Sredstva, ki niso naložena na strežnik, ni mogoče predvajati", "local_assets": "Lokalna sredstva", + "local_media_summary": "Povzetek lokalnih medijev", "local_network": "Lokalno omrežje", "local_network_sheet_info": "Aplikacija se bo povezala s strežnikom prek tega URL-ja, ko bo uporabljala navedeno omrežje Wi-Fi", "location_permission": "Dovoljenje za lokacijo", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Tukaj vnesi svojo zemljepisno dolžino", "lock": "Zaklepanje", "locked_folder": "Zaklenjena mapa", + "log_detail_title": "Podrobnosti dnevnika", "log_out": "Odjava", "log_out_all_devices": "Odjava vseh naprav", "logged_in_as": "Prijavljen kot {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Geslo je bilo uspešno posodobljeno", "logout_all_device_confirmation": "Ali ste prepričani, da želite odjaviti vse naprave?", "logout_this_device_confirmation": "Ali ste prepričani, da se želite odjaviti iz te naprave?", + "logs": "Dnevniki", "longitude": "Zemljepisna dolžina", "look": "Izgled", "loop_videos": "Zanka videoposnetkov", @@ -1301,6 +1321,7 @@ "mark_as_read": "Označi kot prebrano", "marked_all_as_read": "Označeno vse kot prebrano", "matches": "Ujemanja", + "matching_assets": "Ujemajoča se sredstva", "media_type": "Vrsta medija", "memories": "Spomini", "memories_all_caught_up": "Vse dohiteno", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Ime ali vzdevek", "network_requirement_photos_upload": "Uporaba mobilnih podatkov za varnostno kopiranje fotografij", "network_requirement_videos_upload": "Uporaba mobilnih podatkov za varnostno kopiranje videoposnetkov", + "network_requirements": "Omrežne zahteve", "network_requirements_updated": "Omrežne zahteve so se spremenile, ponastavitev čakalne vrste za varnostno kopiranje", "networking_settings": "Omrežje", "networking_subtitle": "Upravljaj nastavitve končne točke strežnika", @@ -1351,6 +1373,7 @@ "new_person": "Nova oseba", "new_pin_code": "Nova PIN koda", "new_pin_code_subtitle": "To je vaš prvi dostop do zaklenjene mape. Ustvarite PIN kodo za varen dostop do te strani", + "new_timeline": "Nova časovnica", "new_user_created": "Nov uporabnik ustvarjen", "new_version_available": "NA VOLJO JE NOVA RAZLIČICA", "newest_first": "Najprej najnovejše", @@ -1364,20 +1387,25 @@ "no_assets_message": "KLIKNITE ZA NALOŽITEV SVOJE PRVE FOTOGRAFIJE", "no_assets_to_show": "Ni sredstev za prikaz", "no_cast_devices_found": "Naprav za predvajanje ni bilo mogoče najti", + "no_checksum_local": "Kontrolna vsota ni na voljo – lokalnih sredstev ni mogoče pridobiti", + "no_checksum_remote": "Kontrolna vsota ni na voljo – oddaljenega sredstva ni mogoče pridobiti", "no_duplicates_found": "Najden ni bil noben dvojnik.", "no_exif_info_available": "Podatki o exif niso na voljo", "no_explore_results_message": "Naložite več fotografij, da raziščete svojo zbirko.", "no_favorites_message": "Dodajte priljubljene, da hitreje najdete svoje najboljše slike in videoposnetke", "no_libraries_message": "Ustvarite zunanjo knjižnico za ogled svojih fotografij in videoposnetkov", + "no_local_assets_found": "S to kontrolno vsoto ni bilo najdenih lokalnih sredstev", "no_locked_photos_message": "Fotografije in videoposnetki v zaklenjeni mapi so skriti in se ne bodo prikazali med brskanjem ali iskanjem po knjižnici.", "no_name": "Brez imena", "no_notifications": "Ni obvestil", "no_people_found": "Ni najdenih ustreznih oseb", "no_places": "Ni krajev", + "no_remote_assets_found": "S to kontrolno vsoto ni bilo najdenih oddaljenih sredstev", "no_results": "Brez rezultatov", "no_results_description": "Poskusite s sinonimom ali bolj splošno ključno besedo", "no_shared_albums_message": "Ustvarite album za skupno rabo fotografij in videoposnetkov z osebami v vašem omrežju", "no_uploads_in_progress": "Ni nalaganj v teku", + "not_available": "Ni na voljo", "not_in_any_album": "Ni v nobenem albumu", "not_selected": "Ni izbrano", "note_apply_storage_label_to_previously_uploaded assets": "Opomba: Če želite oznako za shranjevanje uporabiti za predhodno naložena sredstva, zaženite", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Obnavljanje sličic", "remote": "Oddaljeno", "remote_assets": "Oddaljena sredstva", + "remote_media_summary": "Povzetek oddaljenih medijev", "remove": "Odstrani", "remove_assets_album_confirmation": "Ali ste prepričani, da želite odstraniti {count, plural, one {# sredstvo} two {# sredstvi} few {# sredstva} other {# sredstev}} iz albuma?", "remove_assets_shared_link_confirmation": "Ali ste prepričani, da želite odstraniti {count, plural, one {# sredstvo} two {# sredstvi} few {# sredstva} other {# sredstev}} iz te skupne povezave?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Prikaži prehod diaprojekcije", "show_supporter_badge": "Značka podpornika", "show_supporter_badge_description": "Prikaži značko podpornika", + "show_text_search_menu": "Prikaži meni za iskanje po besedilu", "shuffle": "Naključno", "sidebar": "Stranska vrstica", "sidebar_display_description": "Prikaži povezavo do pogleda v stranski vrstici", @@ -1893,6 +1923,7 @@ "stacktrace": "Sled nabora", "start": "Začetek", "start_date": "Datum začetka", + "start_date_before_end_date": "Začetni datum mora biti pred končnim datumom", "state": "Dežela", "status": "Status", "stop_casting": "Ustavi predvajanje", @@ -2095,5 +2126,6 @@ "yes": "Da", "you_dont_have_any_shared_links": "Nimate nobenih skupnih povezav", "your_wifi_name": "Vaše ime Wi-Fi", - "zoom_image": "Povečava slike" + "zoom_image": "Povečava slike", + "zoom_to_bounds": "Povečaj do meja" } diff --git a/i18n/sv.json b/i18n/sv.json index 2e1d394bdd..b7c0f2100c 100644 --- a/i18n/sv.json +++ b/i18n/sv.json @@ -387,8 +387,6 @@ "admin_password": "Admin Lösenord", "administration": "Administration", "advanced": "Avancerat", - "advanced_settings_beta_timeline_subtitle": "Testa den nya appupplevelsen", - "advanced_settings_beta_timeline_title": "Tidslinje(BETA)", "advanced_settings_enable_alternate_media_filter_subtitle": "Använd det här alternativet för att filtrera media under synkronisering baserat på alternativa kriterier. Prova detta endast om du har problem med att appen inte hittar alla album.", "advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTELLT] Använd alternativ enhetsalbum-synkroniseringsfilter", "advanced_settings_log_level_title": "Loggnivå: {level}", @@ -1515,7 +1513,7 @@ "profile_drawer_client_out_of_date_minor": "Mobilappen är föråldrad. Uppdatera till senaste versionen.", "profile_drawer_client_server_up_to_date": "Klient och server är uppdaterade", "profile_drawer_github": "GitHub", - "profile_drawer_readonly_mode": "Skrivskyddat läge aktiverat. Håll in användaravatarikonen för att avsluta", + "profile_drawer_readonly_mode": "Skrivskyddat läge aktiverat. Långtryck användaravatarikonen för att avsluta.", "profile_drawer_server_out_of_date_major": "Servern har en föråldrad mjukvara. Uppdatera till senaste versionen.", "profile_drawer_server_out_of_date_minor": "Servern har en föråldrad mjukvara. Uppdatera till senaste versionen.", "profile_image_of_user": "{user} profilbild", diff --git a/i18n/ta.json b/i18n/ta.json index 96bec1f2f0..3027bea3b3 100644 --- a/i18n/ta.json +++ b/i18n/ta.json @@ -8,7 +8,7 @@ "actions": "செயல்கள்", "active": "செயல்பாட்டில்", "activity": "செயல்பாடுகள்", - "activity_changed": "செயல்பாடு {இயக்கப்பட்டது, தேர்ந்தெடு, சரி {enabled} மற்றது {disabled}}", + "activity_changed": "செயல்பாடு {enabled, select, true {இயக்கப்பட்டது} other {முடக்கப்பட்டது}}", "add": "சேர்", "add_a_description": "விவரம் சேர்", "add_a_location": "இடத்தை சேர்க்கவும்", @@ -24,7 +24,7 @@ "add_path": "பாதை (பாத்) சேர்க்கவும்", "add_photos": "புகைப்படங்களை சேர்க்கவும்", "add_tag": "குறியைச் சேர்க்க", - "add_to": "சேர்க்க…", + "add_to": "சேர்க்கவும்…", "add_to_album": "ஆல்பமில் சேர்க்க", "add_to_album_bottom_sheet_added": "{album}-இல் சேர்க்கப்பட்டது", "add_to_album_bottom_sheet_already_exists": "ஏற்கனவே {album}-இல் உள்ளது", @@ -35,7 +35,7 @@ "add_url": "URL ஐச் சேர்க்கவும்", "added_to_archive": "காப்பகத்தில் சேர்க்கப்பட்டது", "added_to_favorites": "விருப்பங்களில் (பேவரிட்ஸ்) சேர்க்கப்பட்டது", - "added_to_favorites_count": "விருப்பங்களில் (பேவரிட்ஸ்) {count} சேர்க்கப்பட்டது", + "added_to_favorites_count": "விருப்பங்களில் {count, number} சேர்க்கப்பட்டது", "admin": { "add_exclusion_pattern_description": "விலக்கு வடிவங்களைச் சேர்க்கவும். *, **, மற்றும் ? ஆதரிக்கப்படுகிறது. \"Raw\" என்ற பெயரிடப்பட்ட எந்த கோப்பகத்திலும் உள்ள எல்லா கோப்புகளையும் புறக்கணிக்க, \"**/Raw/**\" ஐப் பயன்படுத்தவும். \".tif\" இல் முடியும் எல்லா கோப்புகளையும் புறக்கணிக்க, \"**/*.tif\" ஐப் பயன்படுத்தவும். ஒரு முழுமையான பாதையை புறக்கணிக்க, \"/path/to/ignore/**\" ஐப் பயன்படுத்தவும்.", "admin_user": "நிர்வாக பயனர்", @@ -46,17 +46,17 @@ "authentication_settings_reenable": "மீண்டும் இயக்க, சர்வர் கட்டளை பயன்படுத்தவும்.", "background_task_job": "பின்னணி பணிகள்", "backup_database": "தரவுத்தள காப்புப்பிரதியை உருவாக்கு", - "backup_database_enable_description": "தரவுத்தள காப்புப்பிரதிகளை இயக்கவும்", - "backup_keep_last_amount": "வைத்திருக்க முந்தைய காப்புப்பிரதிகளின் அளவு", - "backup_onboarding_1_description": "கிளவுட் அல்லது வேறு இடத்தில் ஆஃப்சைட் நகல்.", + "backup_database_enable_description": "தரவுத்தள திணிப்புகள் இயக்கவும்", + "backup_keep_last_amount": "வைத்திருக்க முந்தைய திணிப்புகள் அளவு", + "backup_onboarding_1_description": "மேகக்கட்டத்தில் அல்லது மற்றொரு உடல் இடத்தில் ஆஃப்சைட் நகல்.", "backup_onboarding_2_description": "வெவ்வேறு சாதனங்களில் உள்ள நகல் பிரதிகள். இதில் முக்கிய கோப்புகள் மற்றும் அந்தக் கோப்புகளின் நகல் காப்புப்பிரதி ஆகியவை அடங்கும்.", "backup_onboarding_3_description": "உங்கள் தரவின் மொத்த கோப்புகள் அசல் மற்றும் நகல்கள் உட்பட. இதில் 1 வெளிப்புற நகல் மற்றும் 2 சாதனப் பிரதிகள் அடங்கும்.", "backup_onboarding_description": "உங்கள் தரவை பாதுகாப்பதற்காக ஒரு 3-2-1 காப்புப் பிரதி பரிந்துரைக்கப்படுகிறது. முழுமையான காப்பு பாதுகாப்பு தீர்விற்காக, நீங்கள் பதிவேற்றிய புகைப்படங்கள்/வீடியோக்கள் மற்றும் Immich தரவுத்தளத்தின் நகல்களையும் வைத்திருக்க வேண்டும்.", "backup_onboarding_footer": "Immich-ஐ தரவு நகல் காப்பு எடுப்பது பற்றிய மேலும் தகவலுக்கு, தயவுசெய்து ஆவணத்தை பார்க்கவும்.", "backup_onboarding_parts_title": "3-2-1 காப்புப்பிரதியில் பின்வருவன அடங்கும்:", "backup_onboarding_title": "காப்புப்பிரதிகள்", - "backup_settings": "காப்பு அமைப்புகள்", - "backup_settings_description": "தரவுத்தள காப்புப்பிரதி அமைப்புகளை நிர்வகிக்கவும்", + "backup_settings": "தரவுத்தள திணிப்பு அமைப்புகள்", + "backup_settings_description": "தரவுத்தள திணிப்பு அமைப்புகளை நிர்வகிக்கவும்", "cleared_jobs": "முடித்த வேலைகள்: {job}", "config_set_by_file": "கட்டமைப்பு, தற்போது ஒரு கட்டமைப்பு கோப்பு மூலம் அமைக்கப்பட்டுள்ளது", "confirm_delete_library": "{library} படங்கள் நூலகத்தை நிச்சயமாக நீக்க விரும்புகிறீர்களா?", @@ -86,7 +86,7 @@ "image_fullsize_quality_description": "முழு அளவிலான படத் தரம் 1-100 வரை. அதிகமான எண் சிறந்தது, ஆனால் பெரிய கோப்புகளை உருவாக்கும்.", "image_fullsize_title": "முழு அளவிலான பட அமைப்புகள்", "image_prefer_embedded_preview": "உட்பொதிந்த படத்தை முன்னிடு", - "image_prefer_embedded_preview_setting_description": "கிடைக்கும்போது பட செயலாக்கத்திற்கான உள்ளீடாக மூல புகைப்படங்களில் உட்பொதிக்கப்பட்ட மாதிரிக்காட்சிகளைப் பயன்படுத்தவும். இது சில படங்களுக்கு மிகவும் துல்லியமான வண்ணங்களை உருவாக்க முடியும், ஆனால் முன்னோட்டத்தின் தகுதி கேமரா சார்ந்தது மற்றும் படத்தில் அதிக சுருக்க கலைப்பொருட்கள் இருக்கலாம்.", + "image_prefer_embedded_preview_setting_description": "பட செயலாக்கத்திற்கான உள்ளீடாக மூல புகைப்படங்களில் உட்பொதிக்கப்பட்ட முன்னோட்டங்களை பயன்படுத்தவும், கிடைக்கும்போது. இது சில படங்களுக்கு மிகவும் துல்லியமான வண்ணங்களை உருவாக்க முடியும், ஆனால் முன்னோட்டத்தின் தகுதி கேமரா சார்ந்தது மற்றும் படத்தில் அதிக சுருக்க கலைப்பொருட்கள் இருக்கலாம்.", "image_prefer_wide_gamut": "அகன்ற வண்ணவரம்பு தேர்வு", "image_prefer_wide_gamut_setting_description": "சிறு உருவங்களுக்கு காட்சி பி 3 ஐப் பயன்படுத்தவும். இது பரந்த வண்ணங்களைக் கொண்ட படங்களின் அதிர்வுகளை சிறப்பாக பாதுகாக்கிறது, ஆனால் பழைய உலாவி பதிப்பைக் கொண்ட பழைய சாதனங்களில் படங்கள் வித்தியாசமாக தோன்றக்கூடும். வண்ண மாற்றங்களைத் தவிர்க்க SRGB படங்கள் SRGB ஆக வைக்கப்படுகின்றன.", "image_preview_description": "அகற்றப்பட்ட மெட்டாடேட்டாவுடன் நடுத்தர அளவிலான படம், ஒற்றை சொத்தைப் பார்க்கும்போது மற்றும் இயந்திர கற்றலுக்காகப் பயன்படுத்தப்படுகிறது", @@ -106,8 +106,8 @@ "job_settings": "வேலை அமைப்புகள்", "job_settings_description": "வேலை ஒத்திசைவை நிர்வகிக்கவும்", "job_status": "வேலை நிலை", - "jobs_delayed": "{JobCount, பன்மை, பிற {# தாமதமானது}}", - "jobs_failed": "{JobCount, பன்மை, பிற {# தோல்வியுற்றது}}", + "jobs_delayed": "{jobCount, plural, other {# தாமதமானது}}", + "jobs_failed": "{jobCount, plural, other {# தோல்வியுற்றது}}", "library_created": "உருவாக்கப்பட்ட புகைப்பட நூலகம்: {library}", "library_deleted": "புகைப்பட நூலகம் நீக்கப்பட்டது", "library_import_path_description": "இறக்குமதி செய்ய ஒரு கோப்புறையைக் குறிப்பிடவும். துணைக் கோப்புறைகள் உட்பட இந்தக் கோப்புறை படங்கள் மற்றும் வீடியோக்களுக்காக ஸ்கேன் செய்யப்படும்.", @@ -116,13 +116,20 @@ "library_scanning_enable_description": "நியமிக்கப்பட்ட புகைப்பட நூலக ஸ்கேனிங்கை இயக்கு", "library_settings": "வெளிப்புற புகைப்பட நூலகம்", "library_settings_description": "வெளிப்புற புகைப்பட நூலக அமைப்புகளை மேலாண்மை செய்யவும்", - "library_tasks_description": "நூலக பணிகளைச் செய்யுங்கள்", + "library_tasks_description": "புதிய மற்றும்/அல்லது மாற்றப்பட்ட சொத்துக்களுக்கு வெளிப்புற நூலகங்களை ஸ்கேன் செய்யவும்.", "library_watching_enable_description": "கோப்பு மாற்றங்களுக்கு வெளிப்புற நூலகங்களைப் பாருங்கள்", "library_watching_settings": "நூலகப் பார்ப்பது (சோதனை)", "library_watching_settings_description": "மாற்றப்பட்ட புகைப்படங்களைத் தானாகவே பார்க்கவும்", "logging_enable_description": "பதிவு செய்வதை இயக்கு", "logging_level_description": "இயக்கப்பட்டால், எந்தப் பதிவு நிலை பயன்படுத்த வேண்டும்.", "logging_settings": "பதிவு செய்தல்", + "machine_learning_availability_checks": "கிடைக்கும் காசோலைகள்", + "machine_learning_availability_checks_description": "கிடைக்கக்கூடிய இயந்திர கற்றல் சேவையகங்களை தானாக கண்டறிந்து விரும்புங்கள்", + "machine_learning_availability_checks_enabled": "கிடைக்கும் காசோலைகளை இயக்கவும்", + "machine_learning_availability_checks_interval": "இடைவெளியை சரிபார்க்கவும்", + "machine_learning_availability_checks_interval_description": "கிடைக்கும் காசோலைகளுக்கு இடையில் மில்லி விநாடிகளில் இடைவெளி", + "machine_learning_availability_checks_timeout": "நேரம் முடிந்தது", + "machine_learning_availability_checks_timeout_description": "கிடைக்கும் காசோலைகளுக்கு மில்லி விநாடிகளில் நேரம் முடிந்தது", "machine_learning_clip_model": "கிளிப் மாடல்", "machine_learning_clip_model_description": "CLIP மாடல் பெயர் இங்கே பட்டியலிடப்பட்டுள்ளது. ஒரு மாடயலை மாற்றியவுடன் அனைத்து படங்களுக்கும் 'ஸ்மார்ட் தேடல்' வேலையை மீண்டும் இயக்க வேண்டும் என்பதை நினைவில் கொள்ளவும்.", "machine_learning_duplicate_detection": "நகல் (டூப்ளிகேட்) கண்டறிதல்", @@ -151,7 +158,7 @@ "machine_learning_smart_search_description": "CLIP மாடெலைப் பயன்படுத்தி சொற்பொருளில் படங்களைத் தேடுங்கள்", "machine_learning_smart_search_enabled": "ஸ்மார்ட் தேடலை இயக்கு", "machine_learning_smart_search_enabled_description": "முடக்கப்பட்டிருந்தால், ஸ்மார்ட் தேடலுக்காக படங்கள் குறியாக்கம் செய்யப்படாது.", - "machine_learning_url_description": "இயந்திர கற்றல் சேவையகத்தின் முகவரி. ஒன்றுக்கு மேற்பட்ட முகவரி வழங்கப்பட்டால், ஒவ்வொரு சேவையகமும் வெற்றிகரமாக பதிலளிக்கும் வரை, முதல் முதல் கடைசி வரை முயற்சிக்கும்.", + "machine_learning_url_description": "இயந்திர கற்றல் சேவையகத்தின் முகவரி. ஒன்றுக்கு மேற்பட்ட முகவரி வழங்கப்பட்டால், ஒவ்வொரு சேவையகமும் ஒவ்வொன்றாக வெற்றிகரமாக பதிலளிக்கும் வரை, முதலில் இருந்து கடைசி வரை முயற்சிக்கப்படும். பதிலளிக்காத சேவையகங்கள் மீண்டும் ஆன்லைனில் வரும் வரை தற்காலிகமாகப் புறக்கணிக்கப்படும்.", "manage_concurrency": "ஒத்திசைவை நிர்வகிக்கவும்", "manage_log_settings": "பதிவு அமைப்புகளை நிர்வகிக்கவும்", "map_dark_style": "இருண்ட தீம்", @@ -196,7 +203,7 @@ "note_apply_storage_label_previous_assets": "குறிப்பு: முன்பு பதிவேற்றிய படங்களுக்கு சேமிப்பக லேபிளைப் பயன்படுத்த, இதை இயக்கவும்", "note_cannot_be_changed_later": "குறிப்பு: இதை பின்னர் மாற்ற முடியாது!", "notification_email_from_address": "முகவரியிலிருந்து", - "notification_email_from_address_description": "அனுப்புநரின் மின்னஞ்சல் முகவரி, எடுத்துக்காட்டாக: \"இம்மிச் புகைப்பட சேவையகம் \"", + "notification_email_from_address_description": "அனுப்புநரின் மின்னஞ்சல் முகவரி, எடுத்துக்காட்டாக: \"இம்மிச் புகைப்பட சேவையகம் \". மின்னஞ்சல்களை அனுப்ப அனுமதிக்கப்பட்ட முகவரியைப் பயன்படுத்துவதை உறுதிசெய்து கொள்ளுங்கள்.", "notification_email_host_description": "மின்னஞ்சல் சேவையகத்தின் ஹோஸ்ட் (எடுத்துக்காட்டாக: smtp.immich.app)", "notification_email_ignore_certificate_errors": "சான்றிதழ் பிழைகளை புறக்கணிக்கவும்", "notification_email_ignore_certificate_errors_description": "TLS சான்றிதழ் சரிபார்ப்பு பிழைகளை புறக்கணிக்கவும் (பரிந்துரைக்கப்படவில்லை)", @@ -247,7 +254,7 @@ "reset_settings_to_default": "அமைப்புகளை இயல்புநிலைக்கு மீட்டமைக்கவும்", "reset_settings_to_recent_saved": "அண்மையில் சேமிக்கப்பட்ட அமைப்புகளுக்கு அமைப்புகளை மீட்டமைக்கவும்", "scanning_library": "ச்கேனிங் நூலகம்", - "search_jobs": "வேலைகளைத் தேடுங்கள் ...", + "search_jobs": "வேலைகளைத் தேடுங்கள்…", "send_welcome_email": "வரவேற்பு மின்னஞ்சலை அனுப்பவும்", "server_external_domain_settings": "வெளிப்புற களம்", "server_external_domain_settings_description": "HTTP (கள்) உட்பட பொது பகிரப்பட்ட இணைப்புகளுக்கான டொமைன்: //", @@ -268,7 +275,7 @@ "storage_template_hash_verification_enabled_description": "ஹாஷ் சரிபார்ப்பை இயக்குகிறது, தாக்கங்கள் குறித்து உறுதியாக தெரியாவிட்டால் இதை முடக்க வேண்டாம்", "storage_template_migration": "ஸ்டோரேஜ் டெம்ப்ளேட் இடம்பெயர்வு", "storage_template_migration_description": "ஏற்கனவே பதிவேற்றிய புகைப்படங்களுக்கு தற்போதைய {template} ஐப் பயன்படுத்தவும்", - "storage_template_migration_info": "டெம்ப்ளேட் மாற்றங்கள் புதிய படங்களுக்கு மட்டுமே பொருந்தும். முன்பு பதிவேற்றிய படங்களுக்கு டெம்ப்ளேட்டைப் பயன்படுத்த, {job} ஐ இயக்கவும்.", + "storage_template_migration_info": "சேமிப்பக வார்ப்புரு அனைத்து நீட்டிப்புகளையும் சிறிய எழுத்துக்களுக்கு மாற்றும். டெம்ப்ளேட் மாற்றங்கள் புதிய படங்களுக்கு மட்டுமே பொருந்தும். முன்பு பதிவேற்றிய படங்களுக்கு டெம்ப்ளேட்டைப் பயன்படுத்த, {job} ஐ இயக்கவும்.", "storage_template_migration_job": "ஸ்டோரேஜ் டெம்ப்ளேட் இடம்பெயர்வு வேலை", "storage_template_more_details": "இந்த அம்சத்தைப் பற்றிய கூடுதல் விவரங்களுக்கு, Storage Template மற்றும் அதன் தாக்கங்கள் ஐப் பார்க்கவும்", "storage_template_onboarding_description_v2": "இயக்கப்பட்டால், இந்த அம்சம் பயனர் வரையறுக்கப்பட்ட டெம்ப்ளேட்டின் அடிப்படையில் கோப்புகளை தானாக ஒழுங்கமைக்கும். மேலும் தகவலுக்கு, ஆவணங்கள் ஐப் பார்க்கவும்.", @@ -286,7 +293,7 @@ "template_email_update_album": "ஆல்பம் வார்ப்புருவைப் புதுப்பிக்கவும்", "template_email_welcome": "மின்னஞ்சல் வார்ப்புருவை வரவேற்கிறோம்", "template_settings": "அறிவிப்பு வார்ப்புருக்கள்", - "template_settings_description": "அறிவிப்புகளுக்கு தனிப்பயன் வார்ப்புருக்கள் நிர்வகிக்கவும்.", + "template_settings_description": "அறிவிப்புகளுக்கு தனிப்பயன் வார்ப்புருக்கள் நிர்வகிக்கவும்", "theme_custom_css_settings": "தனிப்பயன் CSS", "theme_custom_css_settings_description": "CSS அம்சம் Immich வடிவமைப்பை தனிப்பயனாக்க அனுமதிக்கிறது.", "theme_settings": "தீம் அமைப்புகள்", @@ -318,7 +325,7 @@ "transcoding_encoding_options": "குறியீட்டு விருப்பங்கள்", "transcoding_encoding_options_description": "குறியிடப்பட்ட வீடியோக்களுக்கான கோடெக்குகள், தெளிவுத்திறன், தரம் மற்றும் பிற விருப்பங்களை அமைக்கவும்", "transcoding_hardware_acceleration": "வன்பொருள் முடுக்கம்", - "transcoding_hardware_acceleration_description": "சோதனை; மிக வேகமாக, ஆனால் அதே பிட்ரேட்டில் குறைந்த தகுதி இருக்கும்", + "transcoding_hardware_acceleration_description": "பரிசோதனை: வேகமான டிரான்ஸ்கோடிங் ஆனால் அதே பிட்ரேட்டில் தரத்தைக் குறைக்கலாம்.", "transcoding_hardware_decoding": "வன்பொருள் டிகோடிங்", "transcoding_hardware_decoding_setting_description": "குறியாக்கத்தை விரைவுபடுத்துவதற்கு பதிலாக இறுதி முதல் இறுதி முடுக்கம் ஆகியவற்றை செயல்படுத்துகிறது. எல்லா வீடியோக்களிலும் வேலை செய்யக்கூடாது.", "transcoding_max_b_frames": "அதிகபட்ச பி-பிரேம்கள்", @@ -362,7 +369,7 @@ "unlink_all_oauth_accounts_description": "புதிய வழங்குநருக்கு மாறுவதற்கு முன், அனைத்து OAuth கணக்குகளின் இணைப்பையும் நீக்க நினைவில் கொள்ளுங்கள்.", "unlink_all_oauth_accounts_prompt": "எல்லா OAuth கணக்குகளின் இணைப்பையும் நீக்க விரும்புகிறீர்களா? இது ஒவ்வொரு பயனருக்கும் OAuth ஐடியை மீட்டமைக்கும், மேலும் இதை திரும்பப் பெறு முடியாது.", "user_cleanup_job": "பயனர் தூய்மைப்படுத்துதல்", - "user_delete_delay": " {user} இன் கணக்கு மற்றும் சொத்துக்கள் {தாமதம், பன்மை, ஒன்று {# நாள்} மற்ற {# நாட்கள்}} இல் நிரந்தர நீக்க திட்டமிடப்படும்.", + "user_delete_delay": "{user}இன் கணக்கு மற்றும் சொத்துக்கள் {delay, plural, one {# நாள்} other {# நாள்கள்}}இல் நிரந்தர நீக்கத் திட்டமிடப்படும்.", "user_delete_delay_settings": "தாமதத்தை நீக்கு", "user_delete_delay_settings_description": "எண் of days after நீக்கும் பெறுநர் permanently நீக்கு a user's account and assets. நீக்குவதற்கு தயாராக இருக்கும் பயனர்களைச் சரிபார்க்க பயனர் நீக்குதல் வேலை நள்ளிரவில் இயங்குகிறது. இந்த அமைப்பில் மாற்றங்கள் அடுத்த மரணதண்டனையில் மதிப்பீடு செய்யப்படும்.", "user_delete_immediately": " {user} இன் கணக்கு மற்றும் சொத்துக்கள் நிரந்தர நீக்குதலுக்காக வரிசையில் நிற்கப்படும் உடனடியாக .", @@ -372,7 +379,7 @@ "user_password_has_been_reset": "பயனரின் கடவுச்சொல் மீட்டமைக்கப்பட்டுள்ளது:", "user_password_reset_description": "தயவுசெய்து தற்காலிக கடவுச்சொல்லை பயனருக்கு வழங்கவும், அவர்களின் அடுத்த உள்நுழைவில் கடவுச்சொல்லை மாற்ற வேண்டும் என்று அவர்களுக்குத் தெரிவிக்கவும்.", "user_restore_description": " {user} இன் கணக்கு மீட்டெடுக்கப்படும்.", - "user_restore_scheduled_removal": "பயனரை மீட்டமை - {தேதி, தேதி, நீண்ட} இல் திட்டமிடப்பட்ட நீக்குதல்", + "user_restore_scheduled_removal": "பயனரை மீட்டமை - {date, date, long} இல் திட்டமிடப்பட்ட நீக்குதல்", "user_settings": "பயனர் அமைப்புகள்", "user_settings_description": "பயனர் அமைப்புகளை நிர்வகிக்கவும்", "user_successfully_removed": "பயனர் {email} வெற்றிகரமாக அகற்றப்பட்டது.", @@ -387,41 +394,62 @@ "admin_password": "நிர்வாகி கடவுச்சொல்", "administration": "நிர்வாகம்", "advanced": "மேம்பட்ட", - "advanced_settings_beta_timeline_subtitle": "புதிய பயன்பாட்டு அனுபவத்தை முயற்சிக்கவும்", - "advanced_settings_beta_timeline_title": "பீட்டா காலவரிசை", "advanced_settings_enable_alternate_media_filter_subtitle": "மாற்று அளவுகோல்களின் அடிப்படையில் ஒத்திசைவின் போது மீடியாவை வடிகட்ட இந்த விருப்பத்தைப் பயன்படுத்தவும். எல்லா ஆல்பங்களையும் ஆப்ஸ் கண்டறிவதில் சிக்கல்கள் இருந்தால் மட்டுமே இதை முயற்சிக்கவும்.", "advanced_settings_enable_alternate_media_filter_title": "[பரிசோதனைக்கு உட்பட்டது] மாற்று சாதன ஆல்ப ஒத்திசைவு வடிப்பானைப் பயன்படுத்தவும்", "advanced_settings_log_level_title": "பதிவு நிலை: {level}", "advanced_settings_prefer_remote_subtitle": "சில சாதனங்கள் உள் சொத்துக்களிலிருந்து சிறுபடங்களை ஏற்றுவதில் மிகவும் மெதுவாக இருக்கும். அதற்கு பதிலாக சர்வர் படங்களை ஏற்ற இந்த அமைப்பைச் செயல்படுத்தவும்.", "advanced_settings_prefer_remote_title": "ரிமோட் படங்களுக்கு முன்னுரிமை கொடு", + "advanced_settings_proxy_headers_subtitle": "ஒவ்வொரு நெட்வொர்க் கோரிக்கையுடனும் இம்மிச் அனுப்ப வேண்டிய ப்ராக்ஸி தலைப்புகளை வரையறுக்கவும்", "advanced_settings_proxy_headers_title": "ப்ராக்ஸி தலைப்புகள்", - "advanced_settings_readonly_mode_subtitle": "புகைப்படங்களை மட்டும் பார்க்கக்கூடிய படிக்க மட்டும் பயன்முறையை இயக்குகிறது, பல படங்களைத் தேர்ந்தெடுப்பது, பகிர்தல், அனுப்புதல், நீக்குதல் போன்ற அனைத்தும் முடக்கப்பட்டுள்ளன. பிரதான திரையில் இருந்து பயனர் அவதார் வழியாக படிக்க மட்டும் என்பதை இயக்கு/முடக்கு", + "advanced_settings_readonly_mode_subtitle": "புகைப்படங்களை பார்ப்பதற்கு மட்டுமே அனுமதிக்கும் படிப்பதற்கு மட்டும் பயன்முறையை இயக்குகிறது, பல படங்களைத் தேர்ந்தெடுப்பது, பகிர்தல், அனுப்புதல், நீக்குதல் போன்ற அனைத்தும் முடக்கப்பட்டுள்ளன. பிரதான திரையில் இருந்து பயனர் அவதார் வழியாக படிக்க மட்டும் என்பதை இயக்கு/முடக்கு", "advanced_settings_readonly_mode_title": "படிக்க மட்டுமேயான பயன்முறை", + "advanced_settings_self_signed_ssl_subtitle": "சர்வர் எண்ட்பாயிண்டிற்கான SSL சான்றிதழ் சரிபார்ப்பை தவிர்க்கிறது. சுய கையொப்பமிட்ட சான்றிதழ்களுக்கு இது தேவையானது.", "advanced_settings_self_signed_ssl_title": "சுய கையொப்பமிட்ட SSL சான்றிதழ்களை அனுமதி", "advanced_settings_sync_remote_deletions_subtitle": "இணையத்தில் நடவடிக்கை எடுக்கப்படும்போது, இந்தச் சாதனத்தில் உள்ள ஒரு சொத்தை தானாகவே நீக்கவும் அல்லது மீட்டெடுக்கவும்", - "age_months": "அகவை {மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}}", - "age_year_months": "அகவை 1 அகவை, {மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}}", - "age_years": "{ஆண்டுகள், பன்மை, பிற {வயது #}}", + "advanced_settings_sync_remote_deletions_title": "தொலைநிலை நீக்குதல்களை ஒத்திசைக்கவும் [பரிசோதனைக்கு உட்பட்டது]", + "advanced_settings_tile_subtitle": "மேம்பட்ட பயனர் அமைப்புகள்", + "advanced_settings_troubleshooting_subtitle": "சரிசெய்தலுக்கு கூடுதல் அம்சங்களை இயக்கவும்", + "advanced_settings_troubleshooting_title": "சரிசெய்தல்", + "age_months": "அகவை {months, plural, one {# திங்கள்} other {# திங்கள்கள்}}", + "age_year_months": "அகவை 1 ஆண்டு, {months, plural, one {# திங்கள்} other {# திங்கள்கள்}}", + "age_years": "{years, plural, other {அகவை #}}", "album_added": "ஆல்பம் சேர்க்கப்பட்டது", "album_added_notification_setting_description": "பகிரப்பட்ட ஆல்பத்தில் நீங்கள் சேர்க்கப்படும்போது மின்னஞ்சல் அறிவிப்பைப் பெறுங்கள்", "album_cover_updated": "ஆல்பம் கவர் புதுப்பிக்கப்பட்டது", "album_delete_confirmation": "{album} ஆல்பத்தை நீக்க விரும்புகிறீர்களா?", "album_delete_confirmation_description": "இந்த ஆல்பம் பகிரப்பட்டால், மற்ற பயனர்களால் இதை அணுக முடியாது.", + "album_deleted": "ஆல்பம் நீக்கப்பட்டது", + "album_info_card_backup_album_excluded": "விலக்கப்பட்டது", + "album_info_card_backup_album_included": "சேர்க்கப்பட்டுள்ளது", "album_info_updated": "ஆல்பம் செய்தி புதுப்பிக்கப்பட்டது", "album_leave": "ஆல்பத்தை விடுங்கள்?", - "album_leave_confirmation": "நீங்கள் நிச்சயமாக {ஆல்பத்தை விட்டு வெளியேற விரும்புகிறீர்களா?", + "album_leave_confirmation": "நீங்கள் நிச்சயமாக {album}ஐ விட்டு வெளியேற விரும்புகிறீர்களா?", "album_name": "ஆல்பத்தின் பெயர்", "album_options": "ஆல்பம் விருப்பங்கள்", "album_remove_user": "பயனரை அகற்றவா?", "album_remove_user_confirmation": "{user} ஐ அகற்ற விரும்புகிறீர்களா?", + "album_search_not_found": "உங்கள் தேடலுடன் பொருந்தக்கூடிய ஆல்பங்கள் எதுவும் இல்லை", "album_share_no_users": "இந்த ஆல்பத்தை நீங்கள் எல்லா பயனர்களுடனும் பகிர்ந்து கொண்டதாகத் தெரிகிறது அல்லது பகிர்வதற்கு உங்களிடம் எந்த பயனரும் இல்லை.", + "album_summary": "ஆல்பம் சுருக்கம்", "album_updated": "ஆல்பம் புதுப்பிக்கப்பட்டது", "album_updated_setting_description": "பகிரப்பட்ட ஆல்பத்தில் புதிய சொத்துக்கள் இருக்கும்போது மின்னஞ்சல் அறிவிப்பைப் பெறுங்கள்", "album_user_left": "இடது {album}", "album_user_removed": "அகற்றப்பட்டது {user}", + "album_viewer_appbar_delete_confirm": "இந்த ஆல்பத்தை உங்கள் கணக்கிலிருந்து நீக்க விரும்புகிறீர்களா?", + "album_viewer_appbar_share_err_delete": "ஆல்பம் நீக்க முடியவில்லை", + "album_viewer_appbar_share_err_leave": "ஆல்பம் விட்டு வெளியேற முடியவில்லை", + "album_viewer_appbar_share_err_remove": "ஆல்பத்திலிருந்து சொத்துக்களை அகற்றுவதில் சிக்கல்கள் உள்ளன", + "album_viewer_appbar_share_err_title": "ஆல்பத்தின் தலைப்பை மாற்ற முடியவில்லை", + "album_viewer_appbar_share_leave": "ஆல்பத்தை விட்டு வெளியேறு", + "album_viewer_appbar_share_to": "பகிரு", + "album_viewer_page_share_add_users": "பயனர்களைச் சேர்க்கவும்", "album_with_link_access": "இணைப்பு உள்ள எவரும் இந்த ஆல்பத்தில் புகைப்படங்களையும் நபர்களையும் பார்க்கட்டும்.", "albums": "ஆல்பம்", - "albums_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} ஆல்பம்} பிற {{எண்ணிக்கை, எண்} ஆல்பங்கள்}}", + "albums_count": "{count, plural, one {{count, number} தொகுப்பு} other {{count, number} தொகுப்புகள்}}", + "albums_default_sort_order": "இயல்புநிலை ஆல்பம் வரிசையாக்கம்", + "albums_default_sort_order_description": "புதிய ஆல்பங்களை உருவாக்கும்போது ஆரம்ப சொத்து வரிசைப்படுத்தல் வரிசை.", + "albums_feature_description": "பிற பயனர்களுடன் பகிர்ந்து கொள்ளக்கூடிய சொத்துக்களின் தொகுப்புகள்.", + "albums_on_device_count": "சாதனத்தில் ஆல்பங்கள் ({count})", "all": "அனைத்தும்", "all_albums": "அனைத்து ஆல்பங்களும்", "all_people": "அனைத்து மக்களும்", @@ -430,47 +458,160 @@ "allow_edits": "திருத்தங்களை அனுமதிக்கவும்", "allow_public_user_to_download": "பொது பயனரை பதிவிறக்கம் செய்ய அனுமதிக்கவும்", "allow_public_user_to_upload": "பொது பயனரை பதிவேற்ற அனுமதிக்கவும்", + "alt_text_qr_code": "QR குறியீடு படம்", "anti_clockwise": "கடிகார எதிர்ப்பு", "api_key": "பநிஇ விசை", "api_key_description": "இந்த மதிப்பு ஒரு முறை மட்டுமே காண்பிக்கப்படும். சாளரத்தை மூடுவதற்கு முன் அதை நகலெடுக்க மறக்காதீர்கள்.", "api_key_empty": "உங்கள் பநிஇ விசை பெயர் காலியாக இருக்கக்கூடாது", "api_keys": "பநிஇ விசைகள்", + "app_bar_signout_dialog_content": "நீங்கள் நிச்சயமாக வெளியேற விரும்புகிறீர்களா?", + "app_bar_signout_dialog_ok": "ஆம்", + "app_bar_signout_dialog_title": "வெளியேறு", "app_settings": "பயன்பாட்டு அமைப்புகள்", "appears_in": "தோன்றும்", + "apply_count": "போடு ({count, number})", "archive": "காப்பகம்", + "archive_action_prompt": "{count} காப்பகத்தில் சேர்க்கப்பட்டது", "archive_or_unarchive_photo": "காப்பகம் அல்லது செயலற்ற புகைப்படம்", + "archive_page_no_archived_assets": "காப்பகப்படுத்தப்பட்ட சொத்துக்கள் எதுவும் கிடைக்கவில்லை", + "archive_page_title": "காப்பகம் ({count})", "archive_size": "காப்பக அளவு", "archive_size_description": "பதிவிறக்கங்களுக்கான காப்பக அளவை உள்ளமைக்கவும் (கிபில்)", - "archived_count": "{எண்ணிக்கை, பன்மை, பிற {காப்பகப்படுத்தப்பட்ட #}}", + "archived": "காப்பகப்படுத்தப்பட்டது", + "archived_count": "{count, plural, other {காப்பகப்படுத்தப்பட்டது #}}", "are_these_the_same_person": "இவர்கள் ஒரே நபரா?", "are_you_sure_to_do_this": "இதை நீங்கள் செய்ய விரும்புகிறீர்களா?", + "asset_action_delete_err_read_only": "சொத்து (களை) மட்டுமே படிக்க முடியாது", + "asset_action_share_err_offline": "இணைப்பில்லாத சொத்து (களை) பெற முடியாது, தவிர்க்கவும்", "asset_added_to_album": "ஆல்பத்தில் சேர்க்கப்பட்டது", - "asset_adding_to_album": "ஆல்பத்தில் சேர்க்கிறது ...", + "asset_adding_to_album": "ஆல்பத்தில் சேர்க்கிறது…", "asset_description_updated": "சொத்து விளக்கம் புதுப்பிக்கப்பட்டுள்ளது", "asset_filename_is_offline": "சொத்து {filename} ஆஃப்லைனில் உள்ளது", "asset_has_unassigned_faces": "சொத்து ஒதுக்கப்படாத முகங்களைக் கொண்டுள்ளது", - "asset_hashing": "ஏசிங் ...", + "asset_hashing": "ஏசிங்…", + "asset_list_group_by_sub_title": "குழு", + "asset_list_layout_settings_dynamic_layout_title": "மாறும் தளவமைப்பு", + "asset_list_layout_settings_group_automatically": "தானியங்கி", + "asset_list_layout_settings_group_by": "மூலம் குழு சொத்துக்கள்", + "asset_list_layout_settings_group_by_month_day": "மாதம் + நாள்", + "asset_list_layout_sub_title": "மனையமைவு", + "asset_list_settings_subtitle": "புகைப்பட கட்டம் தளவமைப்பு அமைப்புகள்", + "asset_list_settings_title": "புகைப்பட கட்டம்", "asset_offline": "சொத்து ஆஃப்லைனில்", "asset_offline_description": "இந்த வெளிப்புற சொத்து இனி வட்டில் காணப்படவில்லை. உதவிக்கு உங்கள் இம்மிச் நிர்வாகியை தொடர்பு கொள்ளவும்.", + "asset_restored_successfully": "சொத்து வெற்றிகரமாக மீட்டெடுக்கப்பட்டது", "asset_skipped": "தவிர்க்கப்பட்டது", "asset_skipped_in_trash": "குப்பையில்", + "asset_trashed": "சொத்து குப்பை", + "asset_troubleshoot": "சொத்து சரிசெய்தல்", "asset_uploaded": "பதிவேற்றப்பட்டது", - "asset_uploading": "பதிவேற்றுதல் ...", + "asset_uploading": "பதிவேற்றுதல்…", + "asset_viewer_settings_subtitle": "உங்கள் கேலரி பார்வையாளர் அமைப்புகளை நிர்வகிக்கவும்", + "asset_viewer_settings_title": "சொத்து பார்வையாளர்", "assets": "சொத்துக்கள்", - "assets_added_count": "சேர்க்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", - "assets_added_to_album_count": "ஆல்பத்தில் {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", - "assets_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", - "assets_moved_to_trash_count": "நகர்த்தப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}}", - "assets_permanently_deleted_count": "நிரந்தரமாக நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}", - "assets_removed_count": "அகற்றப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", + "assets_added_count": "சேர்க்கப்பட்டது {count, plural, one {# சொத்து} other {# சொத்துக்கள்}}", + "assets_added_to_album_count": "தொகுப்பில் {count, plural, one {# சொத்து} other {# சொத்துக்கள்}} சேர்க்கப்பட்டது", + "assets_added_to_albums_count": "Added {assetTotal, plural, one {# சொத்து} other {# சொத்துக்கள்}} to {albumTotal, plural, one {# தொகுப்பு} other {# தொகுப்புகள்}}சேர்க்கப்பட்டது", + "assets_cannot_be_added_to_album_count": "{count, plural, one {சொத்து} other {சொத்துக்கள்}} செருகேட்டில் சேர்க்க முடியாது", + "assets_cannot_be_added_to_albums": "{count, plural, one {Asset} other {Assets}} எந்தச் செருகேட்டிலும் சேர்க்க முடியாது", + "assets_count": "{count, plural, one {# சொத்து} other {# சொத்துக்கள்}}", + "assets_deleted_permanently": "{count} சொத்து (கள்) நிரந்தரமாக நீக்கப்பட்டது", + "assets_deleted_permanently_from_server": "{count} சொத்து (கள்) இம்மிச் சேவையகத்திலிருந்து நிரந்தரமாக நீக்கப்பட்டது", + "assets_downloaded_failed": "{count, plural, one {# கோப்பு பதிவிறக்கப்பட்டது - {error} கோப்பு தோல்வியடைந்தது} other {# கோப்புகள் பதிவிறக்கப்பட்டன - {error} கோப்புகள் தோல்வியடைந்தன}}", + "assets_downloaded_successfully": "{count, plural, one {# கோப்பு வெற்றிகரமாகப் பதிவிறக்கம்} other {# கோப்புகள் வெற்றிகரமாகப் பதிவிறக்கம்}}", + "assets_moved_to_trash_count": "குப்பைக்கு {count, plural, one {# சொத்து} other {# சொத்துக்கள்}} நகர்த்தப்பட்டது", + "assets_permanently_deleted_count": "{count, plural, one {# சொத்து} other {# சொத்துக்கள்}} நிரந்தரமாக நீக்கப்பட்டது", + "assets_removed_count": "{count, plural, one {# சொத்து} other {# சொத்துக்கள்}}அகற்றப்பட்டது", + "assets_removed_permanently_from_device": "{count} சொத்து (கள்) உங்கள் சாதனத்திலிருந்து நிரந்தரமாக அகற்றப்பட்டது", "assets_restore_confirmation": "உங்கள் குப்பைத் தொட்டிகள் அனைத்தையும் மீட்டெடுக்க விரும்புகிறீர்களா? இந்த செயலை நீங்கள் செயல்தவிர்க்க முடியாது! எந்தவொரு இணைப்பில்லாத சொத்துக்களையும் இந்த வழியில் மீட்டெடுக்க முடியாது என்பதை நினைவில் கொள்க.", - "assets_restored_count": "மீட்டெடுக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", - "assets_trashed_count": "குப்பைத்தொட்டியான {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", - "assets_were_part_of_album_count": "{எண்ணிக்கை, பன்மை, ஒரு {Asset was} மற்ற {Assets were}} ஏற்கனவே ஆல்பத்தின் ஒரு பகுதி", + "assets_restored_count": "{count, plural, one {# சொத்து} other {# சொத்துக்கள்}}மீட்டெடுக்கப்பட்டது", + "assets_restored_successfully": "{count} சொத்து (கள்) வெற்றிகரமாக மீட்டெடுக்கப்பட்டது", + "assets_trashed": "{count} சொத்து (கள்) குப்பை", + "assets_trashed_count": "{count, plural, one {# சொத்து} other {# சொத்துக்கள்}} குப்பையாகப்பட்டது", + "assets_trashed_from_server": "{count} சொத்து (கள்) இம்மிச் சேவையகத்திலிருந்து குப்பைத் தொட்டியில்", + "assets_were_part_of_album_count": "{count, plural, one {சொத்து} other {சொத்துக்கள்}} ஏற்கனவே தொகுப்பின் ஒரு பகுதி", + "assets_were_part_of_albums_count": "{count, plural, one {சொத்து} other {சொத்துக்கள்}} ஏற்கனவே தொகுப்புகளின் ஒரு பகுதி", "authorized_devices": "அங்கீகரிக்கப்பட்ட சாதனங்கள்", + "automatic_endpoint_switching_subtitle": "கிடைக்கும்போது நியமிக்கப்பட்ட வைஃபை மீது உள்ளூரில் இணைக்கவும், வேறு இடங்களில் மாற்று இணைப்புகளைப் பயன்படுத்தவும்", + "automatic_endpoint_switching_title": "தானியங்கி முகவரி மாறுதல்", + "autoplay_slideshow": "ஆட்டோபிளே ச்லைடுசோ", "back": "பின்", "back_close_deselect": "பின், மூடு அல்லது தேர்வுநீக்கம்", + "background_backup_running_error": "பின்னணி காப்புப்பிரதி தற்போது இயங்குகிறது, கையேடு காப்புப்பிரதியைத் தொடங்க முடியாது", + "background_location_permission": "பின்னணி இருப்பிட இசைவு", + "background_location_permission_content": "பின்னணியில் இயங்கும் போது நெட்வொர்க்குகளை மாற்ற, இம்மிச் * எப்போதும் * துல்லியமான இருப்பிட அணுகலைக் கொண்டிருக்க வேண்டும், எனவே பயன்பாடு வைஃபை நெட்வொர்க்கின் பெயரைப் படிக்க முடியும்", + "background_options": "பின்னணி விருப்பங்கள்", + "backup": "காப்புப்பிரதி", + "backup_album_selection_page_albums_device": "சாதனத்தில் ஆல்பங்கள் ({count})", + "backup_album_selection_page_albums_tap": "சேர்க்க தட்டவும், விலக்க இரட்டை தட்டவும்", + "backup_album_selection_page_assets_scatter": "சொத்துக்கள் பல ஆல்பங்களில் சிதறக்கூடும். எனவே, காப்பு செயல்பாட்டின் போது ஆல்பங்கள் சேர்க்கப்படலாம் அல்லது விலக்கப்படலாம்.", + "backup_album_selection_page_select_albums": "ஆல்பங்களைத் தேர்ந்தெடுக்கவும்", + "backup_album_selection_page_selection_info": "தேர்வு செய்தி", + "backup_album_selection_page_total_assets": "மொத்த தனித்துவமான சொத்துக்கள்", + "backup_albums_sync": "காப்புப்பிரதி ஆல்பங்கள் ஒத்திசைவு", + "backup_all": "அனைத்தும்", + "backup_background_service_backup_failed_message": "சொத்துக்களை காப்புப்பிரதி எடுக்கத் தவறிவிட்டது. மீண்டும் முயற்சிப்பது…", + "backup_background_service_connection_failed_message": "சேவையகத்துடன் இணைக்கத் தவறிவிட்டது. மீண்டும் முயற்சிப்பது…", + "backup_background_service_current_upload_notification": "பதிவேற்றுதல் {filename}", + "backup_background_service_default_notification": "புதிய சொத்துக்களைச் சரிபார்க்கிறது…", + "backup_background_service_error_title": "காப்பு பிழை", + "backup_background_service_in_progress_notification": "உங்கள் சொத்துக்களை காப்புப் பிரதி எடுக்கிறது…", + "backup_background_service_upload_failure_notification": "{filename} பதிவேற்றுவதில் தோல்வி", + "backup_controller_page_albums": "காப்புப்பிரதி ஆல்பங்கள்", + "backup_controller_page_background_app_refresh_disabled_content": "பின்னணி காப்புப்பிரதியைப் பயன்படுத்துவதற்காக அமைப்புகளில் பின்னணி பயன்பாட்டு புதுப்பிப்புகளை இயக்கவும்> பொது> பின்னணி பயன்பாட்டு புதுப்பிப்பு.", + "backup_controller_page_background_app_refresh_disabled_title": "பின்னணி பயன்பாட்டு புதுப்பிப்பு முடக்கப்பட்டது", + "backup_controller_page_background_app_refresh_enable_button_text": "அமைப்புகளுக்குச் செல்லுங்கள்", + "backup_controller_page_background_battery_info_link": "எப்படி என்று எனக்குக் காட்டு", + "backup_controller_page_background_battery_info_message": "சிறந்த பின்னணி காப்புப்பிரதி அனுபவத்திற்கு, இம்மிச்சிற்கான பின்னணி செயல்பாட்டைக் கட்டுப்படுத்தும் எந்த பேட்டரி மேம்படுத்தல்களையும் முடக்கவும். \n\nஇது சாதனம் சார்ந்ததாக இருப்பதால், உங்கள் சாதன உற்பத்தியாளருக்கு தேவையான தகவல்களைத் தேடுங்கள்.", + "backup_controller_page_background_battery_info_ok": "சரி", + "backup_controller_page_background_battery_info_title": "பேட்டரி மேம்படுத்தல்கள்", + "backup_controller_page_background_charging": "கட்டணம் வசூலிக்கும் போது மட்டுமே", + "backup_controller_page_background_configure_error": "பின்னணி சேவையை உள்ளமைக்கத் தவறிவிட்டது", + "backup_controller_page_background_delay": "புதிய சொத்துக்களை தாமதப்படுத்துங்கள்: {duration}", + "backup_controller_page_background_description": "பயன்பாட்டைத் திறக்கத் தேவையில்லாமல் எந்த புதிய சொத்துக்களையும் தானாக காப்புப் பிரதி எடுக்க பின்னணி சேவையை இயக்கவும்", + "backup_controller_page_background_is_off": "தானியங்கி பின்னணி காப்புப்பிரதி முடக்கப்பட்டுள்ளது", + "backup_controller_page_background_is_on": "தானியங்கி பின்னணி காப்புப்பிரதி இயக்கத்தில் உள்ளது", + "backup_controller_page_background_turn_off": "பின்னணி சேவையை அணைக்கவும்", + "backup_controller_page_background_turn_on": "பின்னணி சேவையை இயக்கவும்", + "backup_controller_page_background_wifi": "வைஃபை மட்டுமே", + "backup_controller_page_backup": "காப்புப்பிரதி", + "backup_controller_page_backup_selected": "தேர்ந்தெடுக்கப்பட்டது: ", + "backup_controller_page_backup_sub": "புகைப்படங்கள் மற்றும் வீடியோக்களை காப்புப் பிரதி எடுக்கவும்", + "backup_controller_page_created": "உருவாக்கப்பட்டது: {date}", + "backup_controller_page_desc_backup": "பயன்பாட்டைத் திறக்கும்போது புதிய சொத்துக்களை சேவையகத்தில் தானாக பதிவேற்ற முன்புற காப்புப்பிரதியை இயக்கவும்.", + "backup_controller_page_excluded": "விலக்கப்பட்டது: ", + "backup_controller_page_failed": "தோல்வியுற்றது ({count})", + "backup_controller_page_filename": "கோப்பு பெயர்: {filename} [{size}]", + "backup_controller_page_id": "ஐடி: {id}", + "backup_controller_page_info": "காப்புப்பிரதி செய்தி", + "backup_controller_page_none_selected": "எதுவும் தேர்ந்தெடுக்கப்படவில்லை", + "backup_controller_page_remainder": "மீதமுள்ள", + "backup_controller_page_remainder_sub": "தேர்விலிருந்து காப்புப் பிரதி எடுக்க மீதமுள்ள புகைப்படங்கள் மற்றும் வீடியோக்கள்", + "backup_controller_page_server_storage": "சேவையக சேமிப்பு", + "backup_controller_page_start_backup": "காப்புப்பிரதியைத் தொடங்கவும்", + "backup_controller_page_status_off": "தானியங்கி முன்புற காப்புப்பிரதி முடக்கப்பட்டுள்ளது", + "backup_controller_page_status_on": "தானியங்கி முன்புற காப்புப்பிரதி இயக்கத்தில் உள்ளது", + "backup_controller_page_storage_format": "{total} இல் {used} பயன்படுத்தப்பட்டது", + "backup_controller_page_to_backup": "ஆதரிக்கப்பட வேண்டிய ஆல்பங்கள்", + "backup_controller_page_total_sub": "தேர்ந்தெடுக்கப்பட்ட ஆல்பங்களிலிருந்து அனைத்து தனித்துவமான புகைப்படங்கள் மற்றும் வீடியோக்கள்", + "backup_controller_page_turn_off": "முன்புற காப்புப்பிரதியை அணைக்கவும்", + "backup_controller_page_turn_on": "முன்புற காப்புப்பிரதியை இயக்கவும்", + "backup_controller_page_uploading_file_info": "கோப்பு தகவலைப் பதிவேற்றுகிறது", + "backup_err_only_album": "ஒரே ஆல்பத்தை அகற்ற முடியாது", + "backup_info_card_assets": "சொத்துக்கள்", + "backup_manual_cancelled": "ரத்து செய்யப்பட்டது", + "backup_manual_in_progress": "ஏற்கனவே முன்னேற்றத்தில் பதிவேற்றவும். சிறிது நேரம் கழித்து முயற்சிக்கவும்", + "backup_manual_success": "செய்", + "backup_manual_title": "நிலை பதிவேற்றும் நிலை", + "backup_options": "காப்பு விருப்பங்கள்", + "backup_options_page_title": "காப்பு விருப்பங்கள்", + "backup_setting_subtitle": "பின்னணி மற்றும் முன்புற பதிவேற்ற அமைப்புகளை நிர்வகிக்கவும்", + "backup_settings_subtitle": "பதிவேற்ற அமைப்புகளை நிர்வகிக்கவும்", "backward": "பின்னோக்கு", + "biometric_auth_enabled": "பயோமெட்ரிக் ஏற்பு இயக்கப்பட்டது", + "biometric_locked_out": "நீங்கள் பயோமெட்ரிக் அங்கீகாரத்திலிருந்து பூட்டப்பட்டிருக்கிறீர்கள்", + "biometric_no_options": "பயோமெட்ரிக் விருப்பங்கள் எதுவும் கிடைக்கவில்லை", + "biometric_not_available": "இந்த சாதனத்தில் பயோமெட்ரிக் ஏற்பு கிடைக்கவில்லை", "birthdate_saved": "பிறந்த தேதி வெற்றிகரமாக சேமிக்கப்பட்டது", "birthdate_set_description": "ஒரு புகைப்படத்தின் போது இந்த நபரின் வயதைக் கணக்கிட பிறந்த தேதி பயன்படுத்தப்படுகிறது.", "blurred_background": "மங்கலான பின்னணி", @@ -481,31 +622,71 @@ "bulk_keep_duplicates_confirmation": "நீங்கள் {எண்ணிக்கை, பன்மை, ஒன்று {# நகல் சொத்து} பிற {# நகல் சொத்துக்கள்} be வைக்க விரும்புகிறீர்களா? இது எதையும் நீக்காமல் அனைத்து நகல் குழுக்களையும் தீர்க்கும்.", "bulk_trash_duplicates_confirmation": "நீங்கள் மொத்தமாக குப்பை {எண்ணிக்கை, பன்மை, ஒன்று {# நகல் சொத்து} பிற {# நகல் சொத்துக்கள்}}}} செய்ய விரும்புகிறீர்களா? இது ஒவ்வொரு குழுவின் மிகப்பெரிய சொத்தை வைத்திருக்கும் மற்றும் மற்ற அனைத்து நகல்களையும் குப்பைத் தொட்டியாக இருக்கும்.", "buy": "இம்மியை வாங்கவும்", + "cache_settings_clear_cache_button": "தெளிவான தற்காலிக சேமிப்பு", + "cache_settings_clear_cache_button_title": "பயன்பாட்டின் தற்காலிக சேமிப்பை அழிக்கிறது. கேச் மீண்டும் கட்டப்படும் வரை இது பயன்பாட்டின் செயல்திறனை கணிசமாக பாதிக்கும்.", + "cache_settings_duplicated_assets_clear_button": "தெளிவான", + "cache_settings_duplicated_assets_subtitle": "பயன்பாட்டால் பட்டியலிடப்பட்ட புறக்கணிக்கப்பட்ட புகைப்படங்கள் மற்றும் வீடியோக்கள்", + "cache_settings_duplicated_assets_title": "நகல் சொத்துக்கள் ({count})", + "cache_settings_statistics_album": "நூலக சிறு உருவங்கள்", + "cache_settings_statistics_full": "முழு படங்கள்", + "cache_settings_statistics_shared": "பகிரப்பட்ட ஆல்பம் சிறுபடம்", + "cache_settings_statistics_thumbnail": "சிறு உருவங்கள்", + "cache_settings_statistics_title": "கேச் பயன்பாடு", + "cache_settings_subtitle": "இம்மிச் மொபைல் பயன்பாட்டின் தற்காலிக சேமிப்பு நடத்தையை கட்டுப்படுத்தவும்", + "cache_settings_tile_subtitle": "உள்ளக சேமிப்பக நடத்தையை கட்டுப்படுத்தவும்", + "cache_settings_tile_title": "உள்ளக சேமிப்பு", + "cache_settings_title": "தேக்கக அமைப்புகள்", "camera": "கேமரா", "camera_brand": "கேமரா சூட்டுக்குறி", "camera_model": "கேமரா மாதிரி", "cancel": "ரத்துசெய்", "cancel_search": "தேடலை ரத்துசெய்", + "canceled": "ரத்து செய்யப்பட்டது", + "canceling": "ரத்துசெய்யும்", "cannot_merge_people": "மக்களை ஒன்றிணைக்க முடியாது", "cannot_undo_this_action": "இந்த செயலை நீங்கள் செயல்தவிர்க்க முடியாது!", "cannot_update_the_description": "விளக்கத்தை புதுப்பிக்க முடியாது", + "cast": "நடிகர்கள்", + "cast_description": "கிடைக்கக்கூடிய வார்ப்பு இடங்களை உள்ளமைக்கவும்", "change_date": "தேதியை மாற்றவும்", + "change_description": "விளக்கத்தை மாற்றவும்", + "change_display_order": "காட்சி வரிசையை மாற்றவும்", "change_expiration_time": "காலாவதி நேரத்தை மாற்றவும்", "change_location": "இருப்பிடத்தை மாற்றவும்", "change_name": "பெயரை மாற்றவும்", - "change_name_successfully": "பெயரை வெற்றிகரமாக மாற்றவும்", + "change_name_successfully": "பெயர் வெற்றிகரமாக மாற்றப்பட்டது", "change_password": "கடவுச்சொல்லை மாற்றவும்", "change_password_description": "நீங்கள் கணினியில் கையொப்பமிடுவது இதுவே முதல் முறை அல்லது உங்கள் கடவுச்சொல்லை மாற்றுவதற்கான கோரிக்கை செய்யப்பட்டுள்ளது. கீழே புதிய கடவுச்சொல்லை உள்ளிடவும்.", + "change_password_form_confirm_password": "கடவுச்சொல்லை உறுதிப்படுத்தவும்", + "change_password_form_description": "ஆய் {name}, \n\nநீங்கள் கணினியில் கையொப்பமிடுவது இதுவே முதல் முறை அல்லது உங்கள் கடவுச்சொல்லை மாற்றுவதற்கான கோரிக்கை செய்யப்பட்டுள்ளது. கீழே புதிய கடவுச்சொல்லை உள்ளிடவும்.", + "change_password_form_new_password": "புதிய கடவுச்சொல்", + "change_password_form_password_mismatch": "கடவுச்சொற்கள் பொருந்தவில்லை", + "change_password_form_reenter_new_password": "புதிய கடவுச்சொல்லை மீண்டும் உள்ளிடவும்", + "change_pin_code": "முள் குறியீட்டை மாற்றவும்", "change_your_password": "உங்கள் கடவுச்சொல்லை மாற்றவும்", "changed_visibility_successfully": "தெரிவுநிலை வெற்றிகரமாக மாற்றப்பட்டது", + "charging": "சார்சிங்", + "charging_requirement_mobile_backup": "பின்னணி காப்புப்பிரதிக்கு சாதனம் சார்ச் செய்ய வேண்டும்", + "check_corrupt_asset_backup": "ஊழல் சொத்து காப்புப்பிரதிகளை சரிபார்க்கவும்", + "check_corrupt_asset_backup_button": "காசோலை செய்யுங்கள்", + "check_corrupt_asset_backup_description": "இந்த காசோலையை வைஃபை மீது மட்டுமே இயக்கவும், அனைத்து சொத்துக்களும் காப்புப் பிரதி எடுக்கப்பட்டவுடன். செயல்முறை சில நிமிடங்கள் ஆகலாம்.", "check_logs": "பதிவுகளை சரிபார்க்கவும்", "choose_matching_people_to_merge": "ஒன்றிணைக்க பொருந்தக்கூடிய நபர்களைத் தேர்வுசெய்க", "city": "நகரம்", "clear": "தெளிவான", "clear_all": "அனைத்தையும் அழிக்கவும்", "clear_all_recent_searches": "அண்மைக் கால அனைத்து தேடல்களையும் அழிக்கவும்", + "clear_file_cache": "கோப்பு தற்காலிக சேமிப்பை அழிக்கவும்", "clear_message": "தெளிவான செய்தி", "clear_value": "தெளிவான மதிப்பு", + "client_cert_dialog_msg_confirm": "சரி", + "client_cert_enter_password": "கடவுச்சொல்லை உள்ளிடவும்", + "client_cert_import": "இறக்குமதி", + "client_cert_import_success_msg": "கிளையன்ட் சான்றிதழ் இறக்குமதி செய்யப்படுகிறது", + "client_cert_invalid_msg": "தவறான சான்றிதழ் கோப்பு அல்லது தவறான கடவுச்சொல்", + "client_cert_remove_msg": "கிளையன்ட் சான்றிதழ் அகற்றப்பட்டது", + "client_cert_subtitle": "PKCS12 (.p12, .pfx) வடிவமைப்பை மட்டுமே ஆதரிக்கிறது. சான்றிதழ் இறக்குமதி/அகற்றுதல் உள்நுழைவதற்கு முன்புதான் கிடைக்கும்", + "client_cert_title": "எச்எச்எல் கிளையன்ட் சான்றிதழ்", "clockwise": "Locklowsy", "close": "மூடு", "collapse": "சரிவு", @@ -516,14 +697,31 @@ "comment_options": "கருத்து விருப்பங்கள்", "comments_and_likes": "கருத்துகள் மற்றும் விருப்பங்கள்", "comments_are_disabled": "கருத்துகள் முடக்கப்பட்டுள்ளன", + "common_create_new_album": "புதிய ஆல்பத்தை உருவாக்கவும்", + "common_server_error": "தயவுசெய்து உங்கள் பிணைய இணைப்பைச் சரிபார்க்கவும், சேவையகம் அடையக்கூடியது மற்றும் பயன்பாடு/சேவையக பதிப்புகள் இணக்கமானவை என்பதை உறுதிப்படுத்தவும்.", + "completed": "முடிந்தது", "confirm": "உறுதிப்படுத்தவும்", "confirm_admin_password": "நிர்வாகி கடவுச்சொல்லை உறுதிப்படுத்தவும்", + "confirm_delete_face": "சொத்திலிருந்து {name} முகத்தை நீக்க விரும்புகிறீர்களா?", "confirm_delete_shared_link": "இந்த பகிரப்பட்ட இணைப்பை நீக்க விரும்புகிறீர்களா?", "confirm_keep_this_delete_others": "இந்த சொத்தைத் தவிர அடுக்கில் உள்ள மற்ற அனைத்து சொத்துகளும் நீக்கப்படும். நீங்கள் தொடர விரும்புகிறீர்களா?", + "confirm_new_pin_code": "புதிய முள் குறியீட்டை உறுதிப்படுத்தவும்", "confirm_password": "கடவுச்சொல்லை உறுதிப்படுத்தவும்", + "confirm_tag_face": "இந்த முகத்தை {பெயர் அச் எனக் குறிக்க விரும்புகிறீர்களா?", + "confirm_tag_face_unnamed": "இந்த முகத்தை குறிக்க விரும்புகிறீர்களா?", + "connected_device": "இணைக்கப்பட்ட சாதனம்", + "connected_to": "இணைக்கப்பட்டுள்ளது", "contain": "கட்டுப்படுத்தவும்", "context": "சூழல்", "continue": "தொடரவும்", + "control_bottom_app_bar_create_new_album": "புதிய ஆல்பத்தை உருவாக்கவும்", + "control_bottom_app_bar_delete_from_immich": "இம்மிச்சிலிருந்து நீக்கு", + "control_bottom_app_bar_delete_from_local": "சாதனத்திலிருந்து நீக்கு", + "control_bottom_app_bar_edit_location": "இருப்பிடத்தைத் திருத்தவும்", + "control_bottom_app_bar_edit_time": "தேதி & நேரத்தைத் திருத்தவும்", + "control_bottom_app_bar_share_link": "இணைப்பைப் பகிரவும்", + "control_bottom_app_bar_share_to": "பகிர்ந்து கொள்ளுங்கள்", + "control_bottom_app_bar_trash_from_immich": "குப்பைக்கு நகர்த்தவும்", "copied_image_to_clipboard": "இடைநிலைப்பலகைக்கு படத்தை நகலெடுத்தது.", "copied_to_clipboard": "இடைநிலைப்பலகைக்கு நகலெடுக்கப்பட்டது!", "copy_error": "நகல் பிழை", @@ -538,51 +736,91 @@ "covers": "மறையம்", "create": "உருவாக்கு", "create_album": "ஆல்பத்தை உருவாக்கவும்", + "create_album_page_untitled": "தலைப்பிடப்படாத", "create_library": "நூலகத்தை உருவாக்கவும்", "create_link": "இணைப்பை உருவாக்கவும்", "create_link_to_share": "பகிர்வுக்கு இணைப்பை உருவாக்கவும்", "create_link_to_share_description": "இணைப்பு உள்ள எவரும் தேர்ந்தெடுக்கப்பட்ட புகைப்படங்களைக் காணட்டும்)", + "create_new": "புதியதை உருவாக்கவும்", "create_new_person": "புதிய நபரை உருவாக்கவும்", "create_new_person_hint": "தேர்ந்தெடுக்கப்பட்ட சொத்துக்களை புதிய நபருக்கு ஒதுக்கவும்", "create_new_user": "புதிய பயனரை உருவாக்கவும்", + "create_shared_album_page_share_add_assets": "சொத்துக்களைச் சேர்க்கவும்", + "create_shared_album_page_share_select_photos": "புகைப்படங்களைத் தேர்ந்தெடுக்கவும்", + "create_shared_link": "பகிரப்பட்ட இணைப்பை உருவாக்கவும்", "create_tag": "குறிச்சொல்லை உருவாக்கவும்", "create_tag_description": "புதிய குறிச்சொல்லை உருவாக்கவும். உள்ளமைக்கப்பட்ட குறிச்சொற்களுக்கு, முன்னோக்கி ச்லாச்கள் உட்பட குறிச்சொல்லின் முழு பாதையையும் உள்ளிடவும்.", "create_user": "பயனரை உருவாக்கு", "created": "உருவாக்கப்பட்டது", + "created_at": "உருவாக்கப்பட்டது", + "creating_linked_albums": "இணைக்கப்பட்ட ஆல்பங்களை உருவாக்குதல் ...", + "crop": "பயிர்", + "curated_object_page_title": "விசயங்கள்", "current_device": "தற்போதைய சாதனம்", + "current_pin_code": "தற்போதைய முள் குறியீடு", + "current_server_address": "தற்போதைய சேவையக முகவரி", "custom_locale": "தனிப்பயன் இடம்", "custom_locale_description": "மொழி மற்றும் பிராந்தியத்தின் அடிப்படையில் வடிவமைப்பு தேதிகள் மற்றும் எண்கள்", + "custom_url": "தனிப்பயன் முகவரி", + "daily_title_text_date": "E, mmm dd", + "daily_title_text_date_year": "E, mmm dd, yyyy", "dark": "இருண்ட", + "dark_theme": "இருண்ட கருப்பொருளை மாற்றவும்", "date_after": "தேதி", "date_and_time": "தேதி மற்றும் நேரம்", "date_before": "முன் தேதி", + "date_format": "E, lll d, ஒய் • h: mm a", "date_of_birth_saved": "பிறந்த தேதி வெற்றிகரமாக சேமிக்கப்பட்டது", "date_range": "தேதி வரம்பு", "day": "நாள்", + "days": "நாட்கள்", "deduplicate_all": "அனைத்தையும் கழித்தல்", + "deduplication_criteria_1": "பைட்டுகளில் பட அளவு", + "deduplication_criteria_2": "EXIF தரவின் எண்ணிக்கை", + "deduplication_info": "கழித்தல் செய்தி", + "deduplication_info_description": "சொத்துக்களை தானாக முன்னெடுத்துச் செல்லவும், மொத்தமாக நகல்களை அகற்றவும், நாங்கள் பார்க்கிறோம்:", "default_locale": "இயல்புநிலை இடம்", "default_locale_description": "உங்கள் உலாவி இருப்பிடத்தின் அடிப்படையில் வடிவமைப்பு தேதிகள் மற்றும் எண்கள்", "delete": "நீக்கு", + "delete_action_confirmation_message": "இந்த சொத்தை நீக்க விரும்புகிறீர்களா? இந்த நடவடிக்கை சொத்தை சேவையகத்தின் குப்பைக்கு நகர்த்தும், மேலும் நீங்கள் அதை உள்நாட்டில் நீக்க விரும்பினால் கேட்கும்", + "delete_action_prompt": "{count} நீக்கப்பட்டது", "delete_album": "ஆல்பத்தை நீக்கு", "delete_api_key_prompt": "இந்த பநிஇ விசையை நீக்க விரும்புகிறீர்களா?", + "delete_dialog_alert": "இந்த உருப்படிகள் இம்மிச்சிலிருந்தும் உங்கள் சாதனத்திலிருந்தும் நிரந்தரமாக நீக்கப்படும்", + "delete_dialog_alert_local": "இந்த உருப்படிகள் உங்கள் சாதனத்திலிருந்து நிரந்தரமாக அகற்றப்படும், ஆனால் இன்னும் இம்மிச் சேவையகத்தில் கிடைக்கும்", + "delete_dialog_alert_local_non_backed_up": "சில உருப்படிகள் இம்மிச் வரை ஆதரிக்கப்படவில்லை, மேலும் அவை உங்கள் சாதனத்திலிருந்து நிரந்தரமாக அகற்றப்படும்", + "delete_dialog_alert_remote": "இந்த உருப்படிகள் இம்மிச் சேவையகத்திலிருந்து நிரந்தரமாக நீக்கப்படும்", + "delete_dialog_ok_force": "எப்படியும் நீக்கு", + "delete_dialog_title": "நிரந்தரமாக நீக்கு", "delete_duplicates_confirmation": "இந்த நகல்களை நிரந்தரமாக நீக்க விரும்புகிறீர்களா?", + "delete_face": "முகத்தை நீக்கு", "delete_key": "விசையை நீக்கு", "delete_library": "நூலகத்தை நீக்கு", "delete_link": "இணைப்பை நீக்கு", + "delete_local_action_prompt": "{count} உள்நாட்டில் நீக்கப்பட்டது", + "delete_local_dialog_ok_backed_up_only": "நீக்கு மட்டுமே காப்புப்பிரதி எடுக்கவும்", + "delete_local_dialog_ok_force": "எப்படியும் நீக்கு", "delete_others": "மற்றவர்களை நீக்கு", + "delete_permanently": "நிரந்தரமாக நீக்கு", + "delete_permanently_action_prompt": "{count} நிரந்தரமாக நீக்கப்பட்டது", "delete_shared_link": "பகிரப்பட்ட இணைப்பை நீக்கு", + "delete_shared_link_dialog_title": "பகிரப்பட்ட இணைப்பை நீக்கு", "delete_tag": "குறிச்சொல்லை நீக்கு", "delete_tag_confirmation_prompt": "{tagName} குறிச்சொல்லை நீக்க விரும்புகிறீர்களா?", "delete_user": "பயனரை நீக்கு", "deleted_shared_link": "பகிரப்பட்ட இணைப்பை நீக்கியது", "deletes_missing_assets": "வட்டில் இருந்து காணாமல் போன சொத்துக்களை நீக்குகிறது", "description": "விவரம்", + "description_input_hint_text": "விளக்கத்தைச் சேர்க்கவும் ...", + "description_input_submit_error": "விளக்கத்தை புதுப்பிப்பதில் பிழை, மேலும் விவரங்களுக்கு பதிவைச் சரிபார்க்கவும்", + "deselect_all": "அனைத்தையும் தேர்வு செய்யுங்கள்", "details": "விவரங்கள்", "direction": "திசை", "disabled": "முடக்கப்பட்டது", "disallow_edits": "திருத்தங்களை அனுமதிக்கவும்", "discord": "முரண்பாடு", "discover": "கண்டுபிடி", + "discovered_devices": "கண்டுபிடிக்கப்பட்ட சாதனங்கள்", "dismiss_all_errors": "அனைத்து பிழைகளையும் நிராகரிக்கவும்", "dismiss_error": "பிழையை நிராகரிக்கவும்", "display_options": "காட்சி விருப்பங்கள்", @@ -593,12 +831,26 @@ "documentation": "ஆவணப்படுத்துதல்", "done": "முடிந்தது", "download": "பதிவிறக்கம்", + "download_action_prompt": "பதிவிறக்கம் {count} சொத்துக்கள்", + "download_canceled": "பதிவிறக்கம் ரத்து செய்யப்பட்டது", + "download_complete": "முழுமையான பதிவிறக்கம்", + "download_enqueue": "Enqueuted பதிவிறக்க", + "download_error": "பிழையைப் பதிவிறக்கவும்", + "download_failed": "பதிவிறக்கம் தோல்வியடைந்தது", + "download_finished": "பதிவிறக்கம் முடிந்தது", "download_include_embedded_motion_videos": "உட்பொதிக்கப்பட்ட வீடியோக்கள்", "download_include_embedded_motion_videos_description": "மோசன் புகைப்படங்களில் உட்பொதிக்கப்பட்ட வீடியோக்களை தனி கோப்பாக சேர்க்கவும்", + "download_notfound": "பதிவிறக்கம் கிடைக்கவில்லை", + "download_paused": "இடைநிறுத்தப்பட்டது", "download_settings": "பதிவிறக்கம்", "download_settings_description": "சொத்து பதிவிறக்கம் தொடர்பான அமைப்புகளை நிர்வகிக்கவும்", + "download_started": "பதிவிறக்கம் தொடங்கியது", + "download_sucess": "வெற்றியைப் பதிவிறக்கவும்", + "download_sucess_android": "ஊடகங்கள் DCIM/IMMich க்கு பதிவிறக்கம் செய்யப்பட்டுள்ளன", + "download_waiting_to_retry": "மீண்டும் முயற்சிக்க காத்திருக்கிறது", "downloading": "பதிவிறக்குகிறது", "downloading_asset_filename": "சொத்து பதிவிறக்கம் {filename}", + "downloading_media": "ஊடகங்களைப் பதிவிறக்குகிறது", "drop_files_to_upload": "பதிவேற்ற எங்கும் கோப்புகளை விடுங்கள்", "duplicates": "நகல்கள்", "duplicates_description": "ஒவ்வொரு குழுவையும் எந்த நகல்களிலும் குறிப்பிடுவதன் மூலம் தீர்க்கவும்", @@ -606,8 +858,14 @@ "edit": "தொகு", "edit_album": "ஆல்பத்தைத் திருத்து", "edit_avatar": "அவதாரத்தைத் திருத்து", + "edit_birthday": "பிறந்தநாளைத் திருத்தவும்", "edit_date": "தேதியைத் திருத்து", "edit_date_and_time": "தேதி மற்றும் நேரத்தைத் திருத்தவும்", + "edit_date_and_time_action_prompt": "{count} தேதி மற்றும் நேரம் திருத்தப்பட்டது", + "edit_date_and_time_by_offset": "ஆஃப்செட் மூலம் தேதியை மாற்றவும்", + "edit_date_and_time_by_offset_interval": "புதிய தேதி வரம்பு: {from} - {to}", + "edit_description": "விளக்கத்தைத் திருத்து", + "edit_description_prompt": "புதிய விளக்கத்தைத் தேர்ந்தெடுக்கவும்:", "edit_exclusion_pattern": "விலக்கு முறையைத் திருத்தவும்", "edit_faces": "முகங்களைத் திருத்தவும்", "edit_import_path": "இறக்குமதி பாதையைத் திருத்து", @@ -615,6 +873,8 @@ "edit_key": "திறனைத் திருத்து", "edit_link": "இணைப்பைத் திருத்து", "edit_location": "இருப்பிடத்தைத் திருத்தவும்", + "edit_location_action_prompt": "{count} இருப்பிடம் திருத்தப்பட்டது", + "edit_location_dialog_title": "இடம்", "edit_name": "பெயரைத் திருத்து", "edit_people": "மக்களைத் திருத்தவும்", "edit_tag": "குறிச்சொல்லைத் திருத்து", @@ -627,13 +887,27 @@ "editor_crop_tool_h2_aspect_ratios": "அம்ச விகிதங்கள்", "editor_crop_tool_h2_rotation": "சுழற்சி", "email": "மின்னஞ்சல்", + "email_notifications": "மின்னஞ்சல் அறிவிப்புகள்", + "empty_folder": "இந்த கோப்புறை காலியாக உள்ளது", "empty_trash": "வெற்று குப்பை", "empty_trash_confirmation": "நீங்கள் குப்பைகளை வெறுமை செய்ய விரும்புகிறீர்களா? இது குப்பையில் உள்ள அனைத்து சொத்துக்களையும் நிரந்தரமாக இம்மிச்சிலிருந்து அகற்றும்.\n இந்த செயலை நீங்கள் செயல்தவிர்க்க முடியாது!", "enable": "இயக்கு", + "enable_backup": "காப்புப்பிரதியை இயக்கவும்", + "enable_biometric_auth_description": "பயோமெட்ரிக் அங்கீகாரத்தை இயக்க உங்கள் முள் குறியீட்டை உள்ளிடவும்", "enabled": "இயக்கப்பட்டது", "end_date": "இறுதி தேதி", + "enqueued": "Enqueuted", + "enter_wifi_name": "வைஃபை பெயரை உள்ளிடவும்", + "enter_your_pin_code": "உங்கள் முள் குறியீட்டை உள்ளிடவும்", + "enter_your_pin_code_subtitle": "பூட்டப்பட்ட கோப்புறையை அணுக உங்கள் முள் குறியீட்டை உள்ளிடவும்", "error": "பிழை", + "error_change_sort_album": "ஆல்பம் வரிசை வரிசையை மாற்றத் தவறிவிட்டது", + "error_delete_face": "சொத்தில் இருந்து முகத்தை நீக்குவதில் பிழை", + "error_getting_places": "இடங்களைப் பெறுவதில் பிழை", "error_loading_image": "படத்தை ஏற்றுவதில் பிழை", + "error_loading_partners": "கூட்டாளர்களை ஏற்றுவதில் பிழை: {error}", + "error_saving_image": "பிழை: {error}", + "error_tag_face_bounding_box": "முகத்தை குறிக்கவும் பிழை - எல்லை பெட்டி ஆயத்தொலைவுகளைப் பெற முடியாது", "error_title": "பிழை - ஏதோ தவறு நடந்தது", "errors": { "cannot_navigate_next_asset": "அடுத்த சொத்துக்கு செல்ல முடியாது", @@ -661,15 +935,19 @@ "failed_to_keep_this_delete_others": "இந்த சொத்தை வைத்து மற்ற சொத்துக்களை நீக்குவதில் தோல்வி", "failed_to_load_asset": "சொத்தை ஏற்றுவதில் தோல்வி", "failed_to_load_assets": "சொத்துக்களை ஏற்றுவதில் தோல்வி", + "failed_to_load_notifications": "அறிவிப்புகளை ஏற்றுவதில் தோல்வி", "failed_to_load_people": "மக்களை ஏற்றுவதில் தோல்வி", "failed_to_remove_product_key": "தயாரிப்பு விசையை அகற்றுவதில் தோல்வி", + "failed_to_reset_pin_code": "முள் குறியீட்டை மீட்டமைக்கத் தவறிவிட்டது", "failed_to_stack_assets": "சொத்துக்களை அடுக்கி வைப்பதில் தோல்வி", "failed_to_unstack_assets": "அன்-ச்டாக் சொத்துக்களில் தோல்வியுற்றது", + "failed_to_update_notification_status": "அறிவிப்பு நிலையைப் புதுப்பிக்கத் தவறிவிட்டது", "import_path_already_exists": "இந்த இறக்குமதி பாதை ஏற்கனவே உள்ளது.", "incorrect_email_or_password": "தவறான மின்னஞ்சல் அல்லது கடவுச்சொல்", "paths_validation_failed": "{பாதைகள், பன்மை, ஒன்று {# பாதை} மற்ற {# பாதைகள்}} தோல்வியுற்ற சரிபார்ப்பு", "profile_picture_transparent_pixels": "சுயவிவரப் படங்களுக்கு வெளிப்படையான படப்புள்ளிகள் இருக்க முடியாது. தயவுசெய்து பெரிதாக்கவும்/அல்லது படத்தை நகர்த்தவும்.", "quota_higher_than_disk_size": "வட்டு அளவை விட அதிகமாக ஒதுக்கீட்டை அமைத்துள்ளீர்கள்", + "something_went_wrong": "ஏதோ தவறு நடந்தது", "unable_to_add_album_users": "ஆல்பத்தில் பயனர்களைச் சேர்க்க முடியவில்லை", "unable_to_add_assets_to_shared_link": "பகிரப்பட்ட இணைப்புக்கு சொத்துக்களைச் சேர்க்க முடியவில்லை", "unable_to_add_comment": "கருத்து சேர்க்க முடியவில்லை", @@ -681,6 +959,7 @@ "unable_to_archive_unarchive": "{காப்பகப்படுத்த முடியவில்லை, தேர்ந்தெடுக்க முடியவில்லை, உண்மை {archive} பிற {unarchive}}", "unable_to_change_album_user_role": "ஆல்பத்தின் பயனரின் பாத்திரத்தை மாற்ற முடியவில்லை", "unable_to_change_date": "தேதியை மாற்ற முடியவில்லை", + "unable_to_change_description": "விளக்கத்தை மாற்ற முடியவில்லை", "unable_to_change_favorite": "சொத்துக்கு பிடித்ததை மாற்ற முடியவில்லை", "unable_to_change_location": "இருப்பிடத்தை மாற்ற முடியவில்லை", "unable_to_change_password": "கடவுச்சொல்லை மாற்ற முடியவில்லை", @@ -724,6 +1003,7 @@ "unable_to_remove_partner": "கூட்டாளரை அகற்ற முடியவில்லை", "unable_to_remove_reaction": "எதிர்வினையை அகற்ற முடியவில்லை", "unable_to_reset_password": "கடவுச்சொல்லை மீட்டமைக்க முடியவில்லை", + "unable_to_reset_pin_code": "முள் குறியீட்டை மீட்டமைக்க முடியவில்லை", "unable_to_resolve_duplicate": "நகல் தீர்க்க முடியவில்லை", "unable_to_restore_assets": "சொத்துக்களை மீட்டெடுக்க முடியவில்லை", "unable_to_restore_trash": "குப்பைகளை மீட்டெடுக்க முடியவில்லை", @@ -751,8 +1031,19 @@ "unable_to_update_user": "பயனரைப் புதுப்பிக்க முடியவில்லை", "unable_to_upload_file": "கோப்பைப் பதிவேற்ற முடியவில்லை" }, + "exif": "Exif", + "exif_bottom_sheet_description": "விளக்கத்தைச் சேர்க்கவும் ...", + "exif_bottom_sheet_description_error": "விளக்கத்தை புதுப்பிப்பதில் பிழை", + "exif_bottom_sheet_details": "விவரங்கள்", + "exif_bottom_sheet_location": "இடம்", + "exif_bottom_sheet_people": "மக்கள்", + "exif_bottom_sheet_person_add_person": "பெயரைச் சேர்க்கவும்", "exit_slideshow": "ச்லைடுசோவிலிருந்து வெளியேறவும்", "expand_all": "அனைத்தையும் விரிவாக்குங்கள்", + "experimental_settings_new_asset_list_subtitle": "வேலை முன்னேற்றத்தில் உள்ளது", + "experimental_settings_new_asset_list_title": "சோதனை புகைப்பட கட்டத்தை இயக்கவும்", + "experimental_settings_subtitle": "உங்கள் சொந்த ஆபத்தில் பயன்படுத்தவும்!", + "experimental_settings_title": "சோதனை", "expire_after": "பின்னர் காலாவதியாகுங்கள்", "expired": "காலாவதியான", "expires_date": "{date} காலாவதியாகிறது", @@ -760,37 +1051,74 @@ "explorer": "எக்ச்ப்ளோரர்", "export": "ஏற்றுமதி", "export_as_json": "சாதொபொகு ஆக ஏற்றுமதி", + "export_database": "ஏற்றுமதி தரவுத்தளம்", + "export_database_description": "SQLITE தரவுத்தளத்தை ஏற்றுமதி செய்யுங்கள்", "extension": "நீட்டிப்பு", "external": "வெளிப்புறம்", "external_libraries": "வெளிப்புற நூலகங்கள்", + "external_network": "வெளிப்புற பிணையம்", + "external_network_sheet_info": "விருப்பமான வைஃபை நெட்வொர்க்கில் இல்லாதபோது, பயன்பாடு சேவையகத்துடன் கீழே உள்ள முகவரி களின் முதல் வழியாக இணைக்கப்படும், இது மேலே இருந்து கீழே தொடங்குகிறது", "face_unassigned": "ஒதுக்கப்படாதது", + "failed": "தோல்வியுற்றது", + "failed_to_authenticate": "அங்கீகரிக்கத் தவறிவிட்டது", "failed_to_load_assets": "சொத்துக்களை ஏற்றுவதில் தோல்வி", + "failed_to_load_folder": "கோப்புறையை ஏற்றுவதில் தோல்வி", "favorite": "பிடித்த", + "favorite_action_prompt": "{எண்ணிக்கை the பிடித்தவைகளில் சேர்க்கப்பட்டது", "favorite_or_unfavorite_photo": "பிடித்த அல்லது சாதகமற்ற புகைப்படம்", "favorites": "பிடித்தவை", + "favorites_page_no_favorites": "பிடித்த சொத்துக்கள் எதுவும் கிடைக்கவில்லை", "feature_photo_updated": "அம்ச புகைப்படம் புதுப்பிக்கப்பட்டது", "features": "நற்பொருத்தங்கள்", + "features_in_development": "வளர்ச்சியில் நற்பொருத்தங்கள்", "features_setting_description": "பயன்பாட்டு அம்சங்களை நிர்வகிக்கவும்", "file_name": "கோப்பு பெயர்", "file_name_or_extension": "கோப்பு பெயர் அல்லது நீட்டிப்பு", "filename": "கோப்புப்பெயர்", "filetype": "பைல்டைப்", + "filter": "வடிப்பி", "filter_people": "மக்களை வடிகட்டவும்", + "filter_places": "இடங்களை வடிகட்டவும்", "find_them_fast": "தேடலுடன் பெயரால் வேகமாக அவற்றைக் கண்டறியவும்", + "first": "முதல்", "fix_incorrect_match": "தவறான போட்டியை சரிசெய்யவும்", + "folder": "கோப்புறை", + "folder_not_found": "கோப்புறை கிடைக்கவில்லை", "folders": "கோப்புறைகள்", "folders_feature_description": "கோப்பு முறைமையில் உள்ள புகைப்படங்கள் மற்றும் வீடியோக்களுக்கான கோப்புறை காட்சியை உலாவுதல்", + "forgot_pin_code_question": "உங்கள் முள் மறந்துவிட்டீர்களா?", "forward": "முன்னோக்கி", + "gcast_enabled": "கூகிள் நடிகர்கள்", + "gcast_enabled_description": "இந்த நற்பொருத்தம் வேலை செய்வதற்காக Google இலிருந்து வெளிப்புற வளங்களை ஏற்றுகிறது.", "general": "பொது", + "geolocation_instruction_location": "அதன் இருப்பிடத்தைப் பயன்படுத்த சி.பி.எச் ஆயத்தொலைவுகளுடன் ஒரு சொத்தில் சொடுக்கு செய்க அல்லது வரைபடத்திலிருந்து நேரடியாக ஒரு இடத்தைத் தேர்ந்தெடுக்கவும்", "get_help": "உதவி பெறு", + "get_wifiname_error": "வைஃபை பெயரைப் பெற முடியவில்லை. நீங்கள் தேவையான அனுமதிகளை வழங்கியுள்ளீர்கள் என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள் மற்றும் வைஃபை நெட்வொர்க்குடன் இணைக்கப்பட்டுள்ளீர்கள்", "getting_started": "தொடங்குதல்", "go_back": "திரும்பிச் செல்லுங்கள்", + "go_to_folder": "கோப்புறைக்குச் செல்லுங்கள்", "go_to_search": "தேடச் செல்லவும்", + "gps": "உலக இடம் காட்டும் அமைப்பு (இடம் காட்டி)", + "gps_missing": "சி.பி.எச் இல்லை", + "grant_permission": "இசைவு வழங்கவும்", "group_albums_by": "குழு ஆல்பங்கள் வழங்கியவர் ...", + "group_country": "நாடு மூலம் குழு", "group_no": "குழு இல்லை", "group_owner": "உரிமையாளரால் குழு", + "group_places_by": "குழு இடங்கள் ...", "group_year": "ஆண்டுக்கு குழு", + "haptic_feedback_switch": "ஆப்டிக் பின்னூட்டத்தை இயக்கவும்", + "haptic_feedback_title": "ஆப்டிக் கருத்து", "has_quota": "ஒதுக்கீடு உள்ளது", + "hash_asset": "ஆச் சொத்து", + "hashed_assets": "சொத்துக்கள்", + "hashing": "ஏசிங்", + "header_settings_add_header_tip": "தலைப்புச் சேர்க்கவும்", + "header_settings_field_validator_msg": "மதிப்பு காலியாக இருக்க முடியாது", + "header_settings_header_name_input": "தலைப்பு பெயர்", + "header_settings_header_value_input": "தலைப்பு மதிப்பு", + "headers_settings_tile_subtitle": "ஒவ்வொரு பிணைய கோரிக்கையுடனும் பயன்பாடு அனுப்ப வேண்டிய பதிலாள் தலைப்புகளை வரையறுக்கவும்", + "headers_settings_tile_title": "தனிப்பயன் பதிலாள் தலைப்புகள்", "hi_user": "ஆய் {name} ({email})", "hide_all_people": "எல்லா மக்களையும் மறைக்கவும்", "hide_gallery": "கேலரியை மறைக்கவும்", @@ -798,8 +1126,29 @@ "hide_password": "கடவுச்சொல்லை மறைக்கவும்", "hide_person": "நபரை மறைக்க", "hide_unnamed_people": "பெயரிடப்படாதவர்களை மறைக்கவும்", + "home_page_add_to_album_conflicts": "சேர்க்கப்பட்டது {ஆல்பம் {added} சொத்துக்கள் {ஆல்பம். {album} சொத்துக்கள் ஏற்கனவே ஆல்பத்தில் உள்ளன.", + "home_page_add_to_album_err_local": "ஆல்பங்களில் உள்ளக சொத்துக்களை இன்னும் சேர்க்க முடியாது, தவிர்க்கவும்", + "home_page_add_to_album_success": "சேர்க்கப்பட்டது {ஆல்பம் {added} சொத்துக்கள் {ஆல்பம்.", + "home_page_album_err_partner": "ஒரு ஆல்பத்திற்கு இன்னும் கூட்டாளர் சொத்துக்களைச் சேர்க்க முடியவில்லை, தவிர்க்கவும்", + "home_page_archive_err_local": "உள்ளக சொத்துக்களை இன்னும் காப்பகப்படுத்த முடியாது, தவிர்க்கவும்", + "home_page_archive_err_partner": "கூட்டாளர் சொத்துக்களை காப்பகப்படுத்த முடியாது, தவிர்க்கவும்", + "home_page_building_timeline": "காலவரிசையை உருவாக்குதல்", + "home_page_delete_err_partner": "கூட்டாளர் சொத்துக்களை நீக்க முடியாது, தவிர்க்கவும்", + "home_page_delete_remote_err_local": "தொலைநிலை தேர்வை நீக்கு, தவிர்ப்பதில் உள்ளக சொத்துக்கள்", + "home_page_favorite_err_local": "உள்ளக சொத்துக்களை இன்னும் பிடித்திருக்க முடியாது, தவிர்க்கவும்", + "home_page_favorite_err_partner": "இன்னும் பிடித்த கூட்டாளர் சொத்துக்களைத் தவிர்த்து, தவிர்க்க முடியாது", + "home_page_first_time_notice": "பயன்பாட்டைப் பயன்படுத்துவது இது உங்கள் முதல் முறையாக இருந்தால், தயவுசெய்து காப்புப்பிரதி ஆல்பத்தைத் தேர்வுசெய்க, இதன் மூலம் காலவரிசை அதில் உள்ள புகைப்படங்களையும் வீடியோக்களையும் விரிவுபடுத்த முடியும்", + "home_page_locked_error_local": "உள்ளக சொத்துக்களை பூட்டிய கோப்புறைக்கு நகர்த்த முடியாது, தவிர்க்கிறது", + "home_page_locked_error_partner": "பங்குதாரர் சொத்துக்களை பூட்டிய கோப்புறையில் நகர்த்த முடியாது, தவிர்க்கவும்", + "home_page_share_err_local": "இணைப்பு, ச்கிப்பிங் வழியாக உள்ளக சொத்துக்களை பகிர முடியாது", + "home_page_upload_err_limit": "ஒரு நேரத்தில் அதிகபட்சம் 30 சொத்துக்களை மட்டுமே பதிவேற்ற முடியும், தவிர்க்கவும்", "host": "விருந்தோம்பி", "hour": "மணி", + "hours": "மணி", + "id": "ஐடி", + "idle": "நிலையிக்கம்", + "ignore_icloud_photos": "ICloud புகைப்படங்களை புறக்கணிக்கவும்", + "ignore_icloud_photos_description": "ICloud இல் சேமிக்கப்படும் புகைப்படங்கள் இம்மிச் சேவையகத்தில் பதிவேற்றப்படாது", "image": "படம்", "image_alt_text_date": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {date} இல் எடுக்கப்பட்டது", "image_alt_text_date_1_person": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {{person1} இல் {date}", @@ -810,7 +1159,11 @@ "image_alt_text_date_place_1_person": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1} உடன் {date}", "image_alt_text_date_place_2_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} உடன் {person1} மற்றும் {person2} {date}", "image_alt_text_date_place_3_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1}, {person2}, மற்றும் {person3} இல் எடுக்கப்பட்டது {date}", - "image_alt_text_date_place_4_or_more_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1}, {person2}, மற்றும் {கூடுதல் கவுன்ட், எண்} மற்றவர்கள் {date}", + "image_alt_text_date_place_4_or_more_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1}, {person2}, மற்றும் {கூடுதல் அக்கவுண்ட், எண்} மற்றவர்கள் {date}", + "image_saved_successfully": "படம் சேமிக்கப்பட்டது", + "image_viewer_page_state_provider_download_started": "பதிவிறக்கம் தொடங்கியது", + "image_viewer_page_state_provider_download_success": "வெற்றியைப் பதிவிறக்கவும்", + "image_viewer_page_state_provider_share_error": "பிழை பகிர்வு", "immich_logo": "இம்மிச் லோகோ", "immich_web_interface": "இம்ரிச் வலை இடைமுகம்", "import_from_json": "சாதொபொகு இலிருந்து இறக்குமதி", @@ -821,6 +1174,7 @@ "include_shared_albums": "பகிரப்பட்ட ஆல்பங்களைச் சேர்க்கவும்", "include_shared_partner_assets": "பகிரப்பட்ட கூட்டாளர் சொத்துக்களைச் சேர்க்கவும்", "individual_share": "தனிப்பட்ட பங்கு", + "individual_shares": "தனிப்பட்ட பங்குகள்", "info": "தகவல்", "interval": { "day_at_onepm": "ஒவ்வொரு நாளும் மதியம் 1 மணிக்கு", @@ -828,8 +1182,16 @@ "night_at_midnight": "ஒவ்வொரு இரவும் நள்ளிரவில்", "night_at_twoam": "ஒவ்வொரு இரவும் அதிகாலை 2 மணிக்கு" }, + "invalid_date": "தவறான தேதி", + "invalid_date_format": "தவறான தேதி வடிவம்", "invite_people": "மக்களை அழைக்கவும்", "invite_to_album": "ஆல்பத்திற்கு அழைக்கவும்", + "ios_debug_info_fetch_ran_at": "ஓடியது {dateTime}", + "ios_debug_info_last_sync_at": "கடைசி ஒத்திசைவு {dateTime}", + "ios_debug_info_no_processes_queued": "பின்னணி செயல்முறைகள் வரிசையில் இல்லை", + "ios_debug_info_no_sync_yet": "பின்னணி ஒத்திசைவு வேலை இன்னும் இயங்கவில்லை", + "ios_debug_info_processes_queued": "{எண்ணிக்கை, பன்மை, ஒன்று {{count} பின்னணி செயல்முறை வரிசையில் வரிசைப்படுத்தப்பட்டது} பிற {{count} பின்னணி செயல்முறைகள் வரிசைப்படுத்தப்பட்டன", + "ios_debug_info_processing_ran_at": "செயலாக்கம் {dateTime}", "items_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# உருப்படி} பிற {# உருப்படிகள்}}", "jobs": "வேலைகள்", "keep": "வைத்திருங்கள்", @@ -838,16 +1200,31 @@ "kept_this_deleted_others": "இந்த சொத்தை வைத்து நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}", "keyboard_shortcuts": "விசைப்பலகை குறுக்குவழிகள்", "language": "மொழி", + "language_no_results_subtitle": "உங்கள் தேடல் காலத்தை சரிசெய்ய முயற்சிக்கவும்", + "language_no_results_title": "எந்த மொழிகளும் கிடைக்கவில்லை", + "language_search_hint": "மொழிகளைத் தேடுங்கள் ...", "language_setting_description": "உங்களுக்கு விருப்பமான மொழியைத் தேர்ந்தெடுக்கவும்", + "large_files": "பெரிய கோப்புகள்", + "last": "கடைசி", "last_seen": "கடைசியாக பார்த்தேன்", "latest_version": "அண்மைக் கால பதிப்பு", "latitude": "அகலாங்கு", "leave": "விடுப்பு", + "leave_album": "விடுப்பு ஆல்பம்", + "lens_model": "லென்ச் மாதிரி", "let_others_respond": "மற்றவர்கள் பதிலளிக்கட்டும்", "level": "நிலை", "library": "நூலகம்", "library_options": "நூலக விருப்பங்கள்", + "library_page_device_albums": "சாதனத்தில் ஆல்பங்கள்", + "library_page_new_album": "புதிய ஆல்பம்", + "library_page_sort_asset_count": "சொத்துக்களின் எண்ணிக்கை", + "library_page_sort_created": "உருவாக்கப்பட்ட தேதி", + "library_page_sort_last_modified": "கடைசியாக மாற்றப்பட்டது", + "library_page_sort_title": "ஆல்பம் தலைப்பு", + "licenses": "உரிமங்கள்", "light": "ஒளி", + "like": "போன்ற", "like_deleted": "நீக்கப்பட்டதைப் போல", "link_motion_video": "இணைப்பு இயக்க வீடியோ", "link_to_oauth": "OAUTH உடன் இணைப்பு", @@ -855,20 +1232,61 @@ "list": "பட்டியல்", "loading": "ஏற்றுகிறது", "loading_search_results_failed": "தேடல் முடிவுகளை ஏற்றுவது தோல்வியடைந்தது", + "local": "உள்ளக", + "local_asset_cast_failed": "சேவையகத்தில் பதிவேற்றப்படாத ஒரு சொத்தை அனுப்ப முடியவில்லை", + "local_assets": "உள்ளக சொத்துக்கள்", + "local_media_summary": "உள்ளக ஊடக சுருக்கம்", + "local_network": "உள்ளக பிணையம்", + "local_network_sheet_info": "குறிப்பிட்ட வைஃபை நெட்வொர்க்கைப் பயன்படுத்தும் போது பயன்பாடு இந்த முகவரி மூலம் சேவையகத்துடன் இணைக்கப்படும்", + "location_permission": "இருப்பிட இசைவு", + "location_permission_content": "ஆட்டோ-ச்விட்சிங் அம்சத்தைப் பயன்படுத்த, இம்மிக்கு துல்லியமான இருப்பிட இசைவு தேவை, எனவே இது தற்போதைய வைஃபை நெட்வொர்க்கின் பெயரைப் படிக்க முடியும்", + "location_picker_choose_on_map": "வரைபடத்தில் தேர்வு செய்யவும்", + "location_picker_latitude_error": "செல்லுபடியாகும் அட்சரேகை உள்ளிடவும்", + "location_picker_latitude_hint": "உங்கள் அட்சரேகையை இங்கே உள்ளிடவும்", + "location_picker_longitude_error": "செல்லுபடியாகும் தீர்க்கரேகையை உள்ளிடவும்", + "location_picker_longitude_hint": "உங்கள் தீர்க்கரேகையை இங்கே உள்ளிடவும்", + "lock": "பூட்டு", + "locked_folder": "பூட்டப்பட்ட கோப்புறை", + "log_detail_title": "பதிவு விவரம்", "log_out": "விடுபதிகை", "log_out_all_devices": "எல்லா சாதனங்களையும் விட்டு வெளியேறவும்", + "logged_in_as": "{user}", "logged_out_all_devices": "எல்லா சாதனங்களையும் வெளியேற்றினேன்", "logged_out_device": "உள்நுழைந்த சாதனம்", "login": "புகுபதிவு", + "login_disabled": "உள்நுழைவு முடக்கப்பட்டுள்ளது", + "login_form_api_exception": "பநிஇ விதிவிலக்கு. சேவையக முகவரி ஐ சரிபார்த்து மீண்டும் முயற்சிக்கவும்.", + "login_form_back_button_text": "பின்", + "login_form_email_hint": "youremail@email.com", + "login_form_endpoint_hint": "http: // your-server-ip: துறைமுகம்", + "login_form_endpoint_url": "சேவையக எண்ட்பாயிண்ட் முகவரி", + "login_form_err_http": "Http: // அல்லது https: // ஐக் குறிப்பிடவும்", + "login_form_err_invalid_email": "தவறான மின்னஞ்சல்", + "login_form_err_invalid_url": "தவறான முகவரி", + "login_form_err_leading_whitespace": "முன்னணி விட்ச்பேச்", + "login_form_err_trailing_whitespace": "பின்திங் வைட்ச்பேச்", + "login_form_failed_get_oauth_server_config": "OAuth ஐப் பயன்படுத்தி பதிவுசெய்தல், சேவையக முகவரி ஐ சரிபார்க்கவும்", + "login_form_failed_get_oauth_server_disable": "இந்த சேவையகத்தில் OAuth நற்பொருத்தம் கிடைக்கவில்லை", + "login_form_failed_login": "உங்களை உள்நுழைவதில் பிழை, சேவையக URL, மின்னஞ்சல் மற்றும் கடவுச்சொல்லை சரிபார்க்கவும்", + "login_form_handshake_exception": "சேவையகத்துடன் ஏண்ட்சேக் விதிவிலக்கு இருந்தது. நீங்கள் தன்வய கையொப்பமிடப்பட்ட சான்றிதழைப் பயன்படுத்துகிறீர்கள் என்றால் அமைப்புகளில் தன்வய கையொப்பமிடப்பட்ட சான்றிதழ் ஆதரவை இயக்கவும்.", + "login_form_password_hint": "கடவுச்சொல்", + "login_form_save_login": "உள்நுழைந்திருங்கள்", + "login_form_server_empty": "சேவையக முகவரி ஐ உள்ளிடவும்.", + "login_form_server_error": "சேவையகத்துடன் இணைக்க முடியவில்லை.", "login_has_been_disabled": "உள்நுழைவு முடக்கப்பட்டுள்ளது.", + "login_password_changed_error": "உங்கள் கடவுச்சொல்லைப் புதுப்பிப்பதில் பிழை ஏற்பட்டது", + "login_password_changed_success": "கடவுச்சொல் வெற்றிகரமாக புதுப்பிக்கப்பட்டது", "logout_all_device_confirmation": "எல்லா சாதனங்களையும் விட்டு வெளியேற விரும்புகிறீர்களா?", "logout_this_device_confirmation": "இந்த சாதனத்தை விட்டு வெளியேற விரும்புகிறீர்களா?", + "logs": "பதிவுகள்", "longitude": "நெட்டாங்கு", "look": "பார்", "loop_videos": "லூப் வீடியோக்கள்", "loop_videos_description": "விரிவான பார்வையாளரில் ஒரு வீடியோவை தானாக வளையப்படுத்தவும்.", - "main_branch_warning": "நீங்கள் மேம்பாட்டு பதிப்பைப் பயன்படுத்துகிறீர்கள்; வெளியீட்டு பதிப்பைப் பயன்படுத்த நாங்கள் கடுமையாக பரிந்துரைக்கிறோம்!", + "main_branch_warning": "நீங்கள் ஒரு மேம்பாட்டு பதிப்பைப் பயன்படுத்துகிறீர்கள்; வெளியீட்டு பதிப்பைப் பயன்படுத்த நாங்கள் கடுமையாக பரிந்துரைக்கிறோம்!", + "main_menu": "பட்டியல் விளையாடுங்கள்", "make": "உருவாக்கு", + "manage_geolocation": "இருப்பிடத்தை நிர்வகிக்கவும்", "manage_shared_links": "பகிரப்பட்ட இணைப்புகளை நிர்வகிக்கவும்", "manage_sharing_with_partners": "கூட்டாளர்களுடன் பகிர்வை நிர்வகிக்கவும்", "manage_the_app_settings": "பயன்பாட்டு அமைப்புகளை நிர்வகிக்கவும்", @@ -877,13 +1295,40 @@ "manage_your_devices": "உங்கள் உள்நுழைந்த சாதனங்களை நிர்வகிக்கவும்", "manage_your_oauth_connection": "உங்கள் OAuth இணைப்பை நிர்வகிக்கவும்", "map": "வரைபடம்", + "map_assets_in_bounds": "{எண்ணிக்கை, பன்மை, = 0 {No photos in this area} ஒன்று {# புகைப்படம்} மற்ற {# புகைப்படங்கள்}}", + "map_cannot_get_user_location": "பயனரின் இருப்பிடத்தைப் பெற முடியாது", + "map_location_dialog_yes": "ஆம்", + "map_location_picker_page_use_location": "இந்த இருப்பிடத்தைப் பயன்படுத்தவும்", + "map_location_service_disabled_content": "உங்கள் தற்போதைய இருப்பிடத்திலிருந்து சொத்துக்களைக் காட்ட இருப்பிட பணி இயக்கப்பட வேண்டும். இப்போது அதை இயக்க விரும்புகிறீர்களா?", + "map_location_service_disabled_title": "இருப்பிட பணி முடக்கப்பட்டது", "map_marker_for_images": "{city}, {country}", "map_marker_with_image": "படத்துடன் வரைபட மார்க்கர்", + "map_no_location_permission_content": "உங்கள் தற்போதைய இருப்பிடத்திலிருந்து சொத்துக்களைக் காட்ட இருப்பிட இசைவு தேவை. இப்போது அதை அனுமதிக்க விரும்புகிறீர்களா?", + "map_no_location_permission_title": "இருப்பிட இசைவு மறுக்கப்பட்டது", "map_settings": "வரைபட அமைப்புகள்", + "map_settings_dark_mode": "இருண்ட முறை", + "map_settings_date_range_option_day": "கடந்த 24 மணி நேரம்", + "map_settings_date_range_option_days": "கடந்த {days} நாட்கள்", + "map_settings_date_range_option_year": "கடந்த ஆண்டு", + "map_settings_date_range_option_years": "கடந்த {years} ஆண்டுகள்", + "map_settings_dialog_title": "வரைபட அமைப்புகள்", + "map_settings_include_show_archived": "காப்பகப்படுத்தப்பட்டவர்", + "map_settings_include_show_partners": "கூட்டாளர்களைச் சேர்க்கவும்", + "map_settings_only_show_favorites": "பிடித்ததை மட்டும் காட்டு", + "map_settings_theme_settings": "வரைபட கருப்பொருள்", + "map_zoom_to_see_photos": "புகைப்படங்களைக் காண பெரிதாக்கவும்", + "mark_all_as_read": "அனைத்தையும் படித்தபடி குறிக்கவும்", + "mark_as_read": "படித்தபடி குறி", + "marked_all_as_read": "அனைத்தையும் வாசிப்பதாக குறிக்கப்பட்டுள்ளது", "matches": "போட்டிகள்", + "matching_assets": "பொருந்தும் சொத்துக்கள்", "media_type": "ஊடக வகை", "memories": "நினைவுகள்", + "memories_all_caught_up": "அனைவரும் பிடிபட்டனர்", + "memories_check_back_tomorrow": "மேலும் நினைவுகளுக்கு நாளை மீண்டும் பார்க்கவும்", "memories_setting_description": "உங்கள் நினைவுகளில் நீங்கள் பார்ப்பதை நிர்வகிக்கவும்", + "memories_start_over": "தொடக்க", + "memories_swipe_to_close": "மூடுவதற்கு ச்வைப் செய்யவும்", "memory": "நினைவகம்", "memory_lane_title": "நினைவக லேன் {title}", "menu": "பட்டியல்", @@ -895,19 +1340,40 @@ "merged_people_count": "ஒன்றிணைக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# நபர்} மற்ற {# மக்கள்}}", "minimize": "குறைக்கவும்", "minute": "நிமிடங்கள்", + "minutes": "நிமிடங்கள்", "missing": "இல்லை", "model": "மாதிரியுரு", "month": "மாதம்", + "monthly_title_text_date_format": "Mmmm ஒய்", "more": "மேலும்", + "move": "நகர்த்தவும்", + "move_off_locked_folder": "பூட்டப்பட்ட கோப்புறையிலிருந்து வெளியேறவும்", + "move_to_lock_folder_action_prompt": "{எண்ணிக்கை the பூட்டப்பட்ட கோப்புறையில் சேர்க்கப்பட்டுள்ளது", + "move_to_locked_folder": "பூட்டப்பட்ட கோப்புறையில் செல்லுங்கள்", + "move_to_locked_folder_confirmation": "இந்த புகைப்படங்கள் மற்றும் வீடியோ அனைத்து ஆல்பங்களிலிருந்தும் அகற்றப்படும், மேலும் பூட்டப்பட்ட கோப்புறையிலிருந்து மட்டுமே பார்க்க முடியும்", + "moved_to_archive": "நகர்த்தப்பட்டது", + "moved_to_library": "நகர்த்தப்பட்டது", "moved_to_trash": "குப்பைக்கு நகர்த்தப்பட்டது", + "multiselect_grid_edit_date_time_err_read_only": "சொத்து (களை) மட்டுமே படித்த தேதியைத் திருத்த முடியாது, தவிர்க்கவும்", + "multiselect_grid_edit_gps_err_read_only": "சொத்து (களை) மட்டுமே படிக்க, ச்கிப்பிங் ஆகியவற்றைத் திருத்த முடியாது", + "mute_memories": "முடக்கு நினைவுகள்", "my_albums": "எனது ஆல்பங்கள்", "name": "பெயர்", "name_or_nickname": "பெயர் அல்லது புனைப்பெயர்", + "network_requirement_photos_upload": "காப்புப்பிரதி புகைப்படங்களுக்கு செல்லுலார் தரவைப் பயன்படுத்தவும்", + "network_requirement_videos_upload": "காப்புப்பிரதி வீடியோக்களுக்கு செல்லுலார் தரவைப் பயன்படுத்தவும்", + "network_requirements": "பிணைய தேவைகள்", + "network_requirements_updated": "பிணையம் தேவைகள் மாற்றப்பட்டன, காப்புப்பிரதி வரிசையை மீட்டமைக்கிறது", + "networking_settings": "நெட்வொர்க்கிங்", + "networking_subtitle": "சேவையக இறுதிப்புள்ளி அமைப்புகளை நிர்வகிக்கவும்", "never": "ஒருபோதும்", "new_album": "புதிய ஆல்பம்", "new_api_key": "புதிய பநிஇ விசை", "new_password": "புதிய கடவுச்சொல்", "new_person": "புதிய நபர்", + "new_pin_code": "புதிய முள் குறியீடு", + "new_pin_code_subtitle": "பூட்டப்பட்ட கோப்புறையை அணுக இது உங்கள் முதல் முறையாகும். இந்த பக்கத்தை பாதுகாப்பாக அணுக ஒரு முள் குறியீட்டை உருவாக்கவும்", + "new_timeline": "புதிய காலவரிசை", "new_user_created": "புதிய பயனர் உருவாக்கப்பட்டது", "new_version_available": "புதிய பதிப்பு கிடைக்கிறது", "newest_first": "புதிய முதல்", @@ -919,42 +1385,68 @@ "no_albums_yet": "உங்களிடம் இதுவரை எந்த ஆல்பங்களும் இல்லை என்று தெரிகிறது.", "no_archived_assets_message": "உங்கள் புகைப்படக் காட்சியில் இருந்து அவற்றை மறைக்க புகைப்படங்கள் மற்றும் வீடியோக்களை காப்பகப்படுத்தவும்", "no_assets_message": "உங்கள் முதல் புகைப்படத்தை பதிவேற்ற சொடுக்கு செய்க", + "no_assets_to_show": "காட்ட சொத்துக்கள் இல்லை", + "no_cast_devices_found": "நடிகர்கள் சாதனங்கள் எதுவும் கிடைக்கவில்லை", + "no_checksum_local": "செக்சம் எதுவும் கிடைக்கவில்லை - உள்ளக சொத்துக்களைப் பெற முடியாது", + "no_checksum_remote": "செக்சம் எதுவும் கிடைக்கவில்லை - தொலை சொத்து பெற முடியாது", "no_duplicates_found": "நகல்கள் எதுவும் காணப்படவில்லை.", "no_exif_info_available": "EXIF செய்தி எதுவும் கிடைக்கவில்லை", "no_explore_results_message": "உங்கள் தொகுப்பை ஆராய கூடுதல் புகைப்படங்களை பதிவேற்றவும்.", "no_favorites_message": "உங்கள் சிறந்த படங்கள் மற்றும் வீடியோக்களை விரைவாகக் கண்டுபிடிக்க பிடித்தவைகளைச் சேர்க்கவும்", "no_libraries_message": "உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்களைக் காண வெளிப்புற நூலகத்தை உருவாக்கவும்", + "no_local_assets_found": "இந்த செக்சம் மூலம் உள்ளக சொத்துக்கள் எதுவும் காணப்படவில்லை", + "no_locked_photos_message": "பூட்டப்பட்ட கோப்புறையில் உள்ள புகைப்படங்கள் மற்றும் வீடியோக்கள் மறைக்கப்பட்டுள்ளன, மேலும் நீங்கள் உங்கள் நூலகத்தை உலாவும்போது அல்லது தேடும்போது காண்பிக்கப்படாது.", "no_name": "பெயர் இல்லை", + "no_notifications": "அறிவிப்புகள் இல்லை", + "no_people_found": "பொருந்தக்கூடிய நபர்கள் எதுவும் கிடைக்கவில்லை", "no_places": "இடங்கள் இல்லை", + "no_remote_assets_found": "இந்த செக்சம் மூலம் தொலைநிலை சொத்துக்கள் எதுவும் காணப்படவில்லை", "no_results": "முடிவுகள் இல்லை", "no_results_description": "ஒரு ஒத்த அல்லது பொதுவான முக்கிய சொல்லை முயற்சிக்கவும்", "no_shared_albums_message": "உங்கள் நெட்வொர்க்கில் உள்ளவர்களுடன் புகைப்படங்களையும் வீடியோக்களையும் பகிர்ந்து கொள்ள ஒரு ஆல்பத்தை உருவாக்கவும்", + "no_uploads_in_progress": "பதிவேற்றங்கள் முன்னேற்றத்தில் இல்லை", + "not_available": "இதற்கில்லை", "not_in_any_album": "எந்த ஆல்பத்திலும் இல்லை", + "not_selected": "தேர்ந்தெடுக்கப்படவில்லை", "note_apply_storage_label_to_previously_uploaded assets": "குறிப்பு: முன்னர் பதிவேற்றப்பட்ட சொத்துக்களுக்கு சேமிப்பக லேபிளை பயன்படுத்த, இயக்கவும்", "notes": "குறிப்புகள்", + "nothing_here_yet": "இன்னும் இங்கே எதுவும் இல்லை", + "notification_permission_dialog_content": "அறிவிப்புகளை இயக்க, அமைப்புகளுக்குச் சென்று இசைவு என்பதைத் தேர்ந்தெடுக்கவும்.", + "notification_permission_list_tile_content": "அறிவிப்புகளை இயக்க இசைவு வழங்கவும்.", + "notification_permission_list_tile_enable_button": "அறிவிப்புகளை இயக்கவும்", + "notification_permission_list_tile_title": "அறிவிப்பு இசைவு", "notification_toggle_setting_description": "மின்னஞ்சல் அறிவிப்புகளை இயக்கவும்", "notifications": "அறிவிப்புகள்", "notifications_setting_description": "அறிவிப்புகளை நிர்வகிக்கவும்", "oauth": "Oauth", "official_immich_resources": "உத்தியோகபூர்வ இம்மா வளங்கள்", "offline": "இணையமில்லாமல்", + "offset": "ஈடுசெய்யும்", "ok": "சரி", "oldest_first": "முதலில் பழமையானது", + "on_this_device": "இந்த சாதனத்தில்", "onboarding": "ஆன் போர்டிங்", - "onboarding_privacy_description": "பின்வரும் (விரும்பினால்) நற்பொருத்தங்கள் வெளிப்புற சேவைகளை நம்பியுள்ளன, மேலும் நிர்வாக அமைப்புகளில் எந்த நேரத்திலும் முடக்கப்படலாம்.", + "onboarding_locale_description": "உங்களுக்கு விருப்பமான மொழியைத் தேர்ந்தெடுக்கவும். இதை உங்கள் அமைப்புகளில் பின்னர் மாற்றலாம்.", + "onboarding_privacy_description": "பின்வரும் (விரும்பினால்) நற்பொருத்தங்கள் வெளிப்புற சேவைகளை நம்பியுள்ளன, மேலும் அமைப்புகளில் எந்த நேரத்திலும் முடக்கப்படலாம்.", + "onboarding_server_welcome_description": "சில பொதுவான அமைப்புகளுடன் உங்கள் நிகழ்வை அமைப்போம்.", "onboarding_theme_description": "உங்கள் உதாரணத்திற்கு வண்ண கருப்பொருளைத் தேர்வுசெய்க. இதை உங்கள் அமைப்புகளில் பின்னர் மாற்றலாம்.", + "onboarding_user_welcome_description": "நீங்கள் தொடங்குவோம்!", "onboarding_welcome_user": "வரவேற்கிறோம், {user}", "online": "ஆன்லைனில்", "only_favorites": "பிடித்தவை மட்டுமே", + "open": "திற", "open_in_map_view": "வரைபடக் காட்சியில் திறந்திருக்கும்", "open_in_openstreetmap": "OpenStreetMap இல் திறந்திருக்கும்", "open_the_search_filters": "தேடல் வடிப்பான்களைத் திறக்கவும்", "options": "விருப்பங்கள்", "or": "அல்லது", + "organize_into_albums": "ஆல்பங்களாக ஒழுங்கமைக்கவும்", + "organize_into_albums_description": "தற்போதைய ஒத்திசைவு அமைப்புகளைப் பயன்படுத்தி ஏற்கனவே உள்ள புகைப்படங்களை ஆல்பங்களில் வைக்கவும்", "organize_your_library": "உங்கள் நூலகத்தை ஒழுங்கமைக்கவும்", "original": "அசல்", "other": "மற்றொன்று", "other_devices": "பிற சாதனங்கள்", + "other_entities": "பிற நிறுவனங்கள்", "other_variables": "பிற மாறிகள்", "owned": "சொந்தமானது", "owner": "உரிமையாளர்", @@ -962,6 +1454,14 @@ "partner_can_access": "{partner} அணுகலாம்", "partner_can_access_assets": "காப்பகப்படுத்தப்பட்ட மற்றும் நீக்கப்பட்டவை தவிர உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்கள் அனைத்தும்", "partner_can_access_location": "உங்கள் புகைப்படங்கள் எடுக்கப்பட்ட இடம்", + "partner_list_user_photos": "{பயனரின் புகைப்படங்கள்", + "partner_list_view_all": "அனைத்தையும் காண்க", + "partner_page_empty_message": "உங்கள் புகைப்படங்கள் இன்னும் எந்த கூட்டாளருடனும் பகிரப்படவில்லை.", + "partner_page_no_more_users": "சேர்க்க இனி பயனர்கள் இல்லை", + "partner_page_partner_add_failed": "கூட்டாளரைச் சேர்க்கத் தவறிவிட்டது", + "partner_page_select_partner": "கூட்டாளரைத் தேர்ந்தெடுக்கவும்", + "partner_page_shared_to_title": "பகிரப்பட்டது", + "partner_page_stop_sharing_content": "{கூட்டாளர் your இனி உங்கள் புகைப்படங்களை அணுக முடியாது.", "partner_sharing": "கூட்டாளர் பகிர்வு", "partners": "கூட்டாளர்கள்", "password": "கடவுச்சொல்", @@ -987,10 +1487,24 @@ "permanent_deletion_warning_setting_description": "சொத்துக்களை நிரந்தரமாக நீக்கும்போது ஒரு எச்சரிக்கையைக் காட்டுங்கள்", "permanently_delete": "நிரந்தரமாக நீக்கு", "permanently_delete_assets_count": "நிரந்தரமாக நீக்கு {எண்ணிக்கை, பன்மை, ஒன்று {asset} மற்ற {assets}}", - "permanently_delete_assets_prompt": "நீங்கள் நிச்சயமாக {எண்ணிக்கை, பன்மை, ஒன்று {இந்த சொத்து?} மற்ற {இந்த # சொத்துக்கள்? } அவர்களின்}} ஆல்பம் (கள்) இலிருந்து.", + "permanently_delete_assets_prompt": "நீங்கள் நிச்சயமாக {எண்ணிக்கை, பன்மை, ஒன்று {இந்த சொத்து?} மற்ற {இந்த # சொத்துக்கள்?", "permanently_deleted_asset": "நிரந்தரமாக நீக்கப்பட்ட சொத்து", "permanently_deleted_assets_count": "நிரந்தரமாக நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}", + "permission": "இசைவு", + "permission_empty": "உங்கள் இசைவு காலியாக இருக்கக்கூடாது", + "permission_onboarding_back": "பின்", + "permission_onboarding_continue_anyway": "எப்படியும் தொடரவும்", + "permission_onboarding_get_started": "தொடங்கவும்", + "permission_onboarding_go_to_settings": "அமைப்புகளுக்குச் செல்லுங்கள்", + "permission_onboarding_permission_denied": "இசைவு மறுக்கப்பட்டது. இம்மிச்சைப் பயன்படுத்த, அமைப்புகளில் புகைப்படம் மற்றும் வீடியோ அனுமதிகளை வழங்கவும்.", + "permission_onboarding_permission_granted": "இசைவு வழங்கப்பட்டது! நீங்கள் அனைவரும் அமைக்கப்பட்டிருக்கிறீர்கள்.", + "permission_onboarding_permission_limited": "இசைவு லிமிடெட். உங்கள் முழு கேலரி சேகரிப்பையும் நிர்வகிக்கவும் நிர்வகிக்கவும், அமைப்புகளில் புகைப்படம் மற்றும் வீடியோ அனுமதிகளை வழங்கவும்.", + "permission_onboarding_request": "உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்களைக் காண இம்மிச்சுக்கு இசைவு தேவை.", "person": "ஆள்", + "person_age_months": "{மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}} பழையது", + "person_age_year_months": "1 ஆண்டு, {மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}} பழையது", + "person_age_years": "{ஆண்டுகள், பன்மை, பிற {# ஆண்டுகள்}} பழையது", + "person_birthdate": "{date} இல் பிறந்தார்", "person_hidden": "{name} {மறைக்கப்பட்ட, தேர்ந்தெடு, உண்மை {(மறைக்கப்பட்ட)} பிற {}}", "photo_shared_all_users": "உங்கள் புகைப்படங்களை எல்லா பயனர்களுடனும் பகிர்ந்து கொண்டதாகத் தெரிகிறது அல்லது பகிர்வதற்கு உங்களிடம் எந்த பயனரும் இல்லை.", "photos": "புகைப்படங்கள்", @@ -998,20 +1512,40 @@ "photos_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} புகைப்படம்} பிற {{எண்ணிக்கை, எண்} புகைப்படங்கள்}}", "photos_from_previous_years": "முந்தைய ஆண்டுகளின் புகைப்படங்கள்", "pick_a_location": "ஒரு இடத்தைத் தேர்ந்தெடுங்கள்", + "pin_code_changed_successfully": "முள் குறியீட்டை வெற்றிகரமாக மாற்றியது", + "pin_code_reset_successfully": "முள் குறியீட்டை வெற்றிகரமாக மீட்டமைக்கவும்", + "pin_code_setup_successfully": "முள் குறியீட்டை வெற்றிகரமாக அமைக்கவும்", + "pin_verification": "குறியீடு சரிபார்ப்பு", "place": "இடம்", "places": "இடங்கள்", + "places_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} இடம்} பிற {{எண்ணிக்கை, எண்} இடங்கள்}}", "play": "விளையாடுங்கள்", "play_memories": "பிளேமெமரிகள்", "play_motion_photo": "இயக்க புகைப்படத்தை விளையாடுங்கள்", "play_or_pause_video": "வீடியோவை இயக்கவும் அல்லது இடைநிறுத்தவும்", + "please_auth_to_access": "அணுகலை அங்கீகரிக்கவும்", "port": "துறைமுகம்", + "preferences_settings_subtitle": "பயன்பாட்டின் விருப்பங்களை நிர்வகிக்கவும்", + "preferences_settings_title": "விருப்பத்தேர்வுகள்", "preset": "முன்னமைவு", "preview": "முன்னோட்டம்", "previous": "முந்தைய", "previous_memory": "முந்தைய நினைவகம்", - "previous_or_next_photo": "முந்தைய அல்லது அடுத்த புகைப்படம்", + "previous_or_next_day": "நாள் முன்னோக்கி/பின்புறம்", + "previous_or_next_month": "மாதம் முன்னோக்கி/பின்", + "previous_or_next_photo": "புகைப்படம் முன்னோக்கி/பின்", + "previous_or_next_year": "ஆண்டு முன்னோக்கி/பின்புறம்", "primary": "முதன்மை", "privacy": "தனியுரிமை", + "profile": "சுயவிவரம்", + "profile_drawer_app_logs": "பதிவுகள்", + "profile_drawer_client_out_of_date_major": "மொபைல் பயன்பாடு காலாவதியானது. அண்மைக் கால முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.", + "profile_drawer_client_out_of_date_minor": "மொபைல் பயன்பாடு காலாவதியானது. அண்மைக் கால சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.", + "profile_drawer_client_server_up_to_date": "வாங்கி மற்றும் சேவையகம் புதுப்பித்த நிலையில் உள்ளன", + "profile_drawer_github": "கிரப்", + "profile_drawer_readonly_mode": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது. வெளியேற பயனர் அவதார் ஐகானை நீண்ட அழுத்தவும்.", + "profile_drawer_server_out_of_date_major": "சேவையகம் காலாவதியானது. அண்மைக் கால முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.", + "profile_drawer_server_out_of_date_minor": "சேவையகம் காலாவதியானது. அண்மைக் கால சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.", "profile_image_of_user": "{பயனரின் சுயவிவரப் படம்", "profile_picture_set": "சுயவிவரப் பட தொகுப்பு.", "public_album": "பொது ஆல்பம்", @@ -1036,7 +1570,7 @@ "purchase_lifetime_description": "வாழ்நாள் கொள்முதல்", "purchase_option_title": "விருப்பங்களை வாங்கவும்", "purchase_panel_info_1": "இம்மியை உருவாக்குவதற்கு நிறைய நேரமும் முயற்சியும் தேவைப்படுகிறது, மேலும் முழுநேர பொறியியலாளர்கள் அதை எங்களால் முடிந்தவரை சிறப்பாகச் செய்ய வேலை செய்கிறார்கள். எங்கள் நோக்கம் திறந்த மூல மென்பொருள் மற்றும் நெறிமுறை வணிக நடைமுறைகள் டெவலப்பர்களுக்கான நிலையான வருமான ஆதாரமாக மாறுவதும், சுரண்டல் முகில் சேவைகளுக்கு உண்மையான மாற்றுகளுடன் தனியுரிமை-மரியாதைக்குரிய சுற்றுச்சூழல் அமைப்பை உருவாக்குவதும் ஆகும்.", - "purchase_panel_info_2": "பேவால்களைச் சேர்க்காமல் இருப்பதில் நாங்கள் கடமைப்பட்டுள்ளதால், இந்த கொள்முதல் இம்மிச்சில் கூடுதல் அம்சங்களை உங்களுக்கு வழங்காது. இம்மிச்சின் தற்போதைய வளர்ச்சியை ஆதரிக்க உங்களைப் போன்ற பயனர்களை நாங்கள் நம்பியுள்ளோம்.", + "purchase_panel_info_2": "பேவால்களைச் சேர்க்காமல் இருப்பதில் நாங்கள் உறுதியாக இருப்பதால், இந்த கொள்முதல் இம்மிச்சில் கூடுதல் அம்சங்களை உங்களுக்கு வழங்காது. இம்மிச்சின் தற்போதைய வளர்ச்சியை ஆதரிக்க உங்களைப் போன்ற பயனர்களை நாங்கள் நம்பியுள்ளோம்.", "purchase_panel_title": "திட்டத்தை ஆதரிக்கவும்", "purchase_per_server": "ஒரு சேவையகத்திற்கு", "purchase_per_user": "ஒரு பயனருக்கு", @@ -1048,12 +1582,16 @@ "purchase_server_description_2": "ஆதரவாளர் நிலை", "purchase_server_title": "சேவையகம்", "purchase_settings_server_activated": "சேவையக தயாரிப்பு விசை நிர்வாகியால் நிர்வகிக்கப்படுகிறது", + "query_asset_id": "வினவல் சொத்து அடையாளம்", + "queue_status": "வரிசை {count}/{total}", "rating": "நட்சத்திர மதிப்பீடு", "rating_clear": "தெளிவான மதிப்பீடு", "rating_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# நட்சத்திரம்} மற்ற {# நட்சத்திரங்கள்}}", "rating_description": "செய்தி குழுவில் EXIF மதிப்பீட்டைக் காண்பி", "reaction_options": "எதிர்வினை விருப்பங்கள்", "read_changelog": "சேஞ்ச்லாக் படிக்கவும்", + "readonly_mode_disabled": "படிக்க மட்டும் பயன்முறை முடக்கப்பட்டுள்ளது", + "readonly_mode_enabled": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது", "reassign": "மீண்டும் இணைக்கவும்", "reassigned_assets_to_existing_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} பெறுநர் {பெயருக்கு, தேர்ந்தெடுக்கவும், சுழிய {an existing person} பிற {{name}}}", "reassigned_assets_to_new_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} ஒரு புதிய நபருக்கு", @@ -1061,6 +1599,10 @@ "recent": "அண்மைக் கால", "recent-albums": "அண்மைக் கால ஆல்பங்கள்", "recent_searches": "அண்மைக் கால தேடல்கள்", + "recently_added": "அண்மைக் காலத்தில் சேர்க்கப்பட்டது", + "recently_added_page_title": "அண்மைக் காலத்தில் சேர்க்கப்பட்டது", + "recently_taken": "அண்மைக் காலத்தில் எடுக்கப்பட்டது", + "recently_taken_page_title": "அண்மைக் காலத்தில் எடுக்கப்பட்டது", "refresh": "புதுப்பிப்பு", "refresh_encoded_videos": "குறியிடப்பட்ட வீடியோக்களை புதுப்பிக்கவும்", "refresh_faces": "முகங்களைப் புதுப்பிக்கவும்", @@ -1072,6 +1614,9 @@ "refreshing_faces": "புத்துணர்ச்சியூட்டும் முகங்கள்", "refreshing_metadata": "புத்துணர்ச்சியூட்டும் மேனிலை தரவு", "regenerating_thumbnails": "சிறுபடங்களை மீண்டும் உருவாக்குகிறது", + "remote": "தொலைநிலை", + "remote_assets": "தொலை சொத்துக்கள்", + "remote_media_summary": "தொலை ஊடக சுருக்கம்", "remove": "அகற்று", "remove_assets_album_confirmation": "ஆல்பத்திலிருந்து {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} your ஐ அகற்ற விரும்புகிறீர்களா?", "remove_assets_shared_link_confirmation": "இந்த பகிரப்பட்ட இணைப்பிலிருந்து {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} your ஐ அகற்ற விரும்புகிறீர்களா?", @@ -1079,14 +1624,23 @@ "remove_custom_date_range": "தனிப்பயன் தேதி வரம்பை அகற்று", "remove_deleted_assets": "நீக்கப்பட்ட சொத்துக்களை அகற்றவும்", "remove_from_album": "ஆல்பத்திலிருந்து அகற்று", + "remove_from_album_action_prompt": "{எண்ணிக்கை the ஆல்பத்திலிருந்து அகற்றப்பட்டது", "remove_from_favorites": "பிடித்தவைகளிலிருந்து அகற்று", + "remove_from_lock_folder_action_prompt": "{எண்ணிக்கை the பூட்டப்பட்ட கோப்புறையிலிருந்து அகற்றப்பட்டது", + "remove_from_locked_folder": "பூட்டப்பட்ட கோப்புறையிலிருந்து அகற்று", + "remove_from_locked_folder_confirmation": "பூட்டப்பட்ட கோப்புறையிலிருந்து இந்த புகைப்படங்களையும் வீடியோக்களையும் நகர்த்த விரும்புகிறீர்களா? அவை உங்கள் நூலகத்தில் தெரியும்.", "remove_from_shared_link": "பகிரப்பட்ட இணைப்பிலிருந்து அகற்று", + "remove_memory": "நினைவகத்தை அகற்று", + "remove_photo_from_memory": "இந்த நினைவிலிருந்து புகைப்படத்தை அகற்று", + "remove_tag": "குறிச்சொல்லை அகற்று", "remove_url": "முகவரி ஐ அகற்று", "remove_user": "பயனரை அகற்று", "removed_api_key": "அகற்றப்பட்ட பநிஇ விசை: {name}", "removed_from_archive": "காப்பகத்திலிருந்து அகற்றப்பட்டது", "removed_from_favorites": "பிடித்தவைகளிலிருந்து அகற்றப்பட்டது", "removed_from_favorites_count": "{எண்ணிக்கை, பன்மை, பிற {பிடித்தவைகளிலிருந்து #}} அகற்றப்பட்டது", + "removed_memory": "அகற்றப்பட்ட நினைவகம்", + "removed_photo_from_memory": "நினைவிலிருந்து புகைப்படத்தை அகற்றியது", "removed_tagged_assets": "{எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} இருந்து இலிருந்து அகற்றப்பட்ட குறிச்சொல்", "rename": "மறுபெயரிடுங்கள்", "repair": "பழுது", @@ -1095,27 +1649,41 @@ "repository": "களஞ்சியம்", "require_password": "கடவுச்சொல் தேவை", "require_user_to_change_password_on_first_login": "முதல் உள்நுழைவில் கடவுச்சொல்லை மாற்ற பயனர் தேவை", + "rescan": "ரெச்கான்", "reset": "மீட்டமை", "reset_password": "கடவுச்சொல்லை மீட்டமைக்கவும்", "reset_people_visibility": "மக்களின் தெரிவுநிலையை மீட்டமைக்கவும்", + "reset_pin_code": "முள் குறியீட்டை மீட்டமைக்கவும்", + "reset_pin_code_description": "உங்கள் முள் குறியீட்டை மறந்துவிட்டால், அதை மீட்டமைக்க சேவையக நிர்வாகியை தொடர்பு கொள்ளலாம்", + "reset_pin_code_success": "முள் குறியீட்டை வெற்றிகரமாக மீட்டமைக்கவும்", + "reset_pin_code_with_password": "உங்கள் கடவுச்சொல் மூலம் உங்கள் முள் குறியீட்டை எப்போதும் மீட்டமைக்கலாம்", + "reset_sqlite": "SQLite தரவுத்தளத்தை மீட்டமைக்கவும்", + "reset_sqlite_confirmation": "SQLITE தரவுத்தளத்தை மீட்டமைக்க விரும்புகிறீர்களா? தரவை மீண்டும் ஒத்திசைக்க நீங்கள் வெளியேறி மீண்டும் உள்நுழைய வேண்டும்", + "reset_sqlite_success": "SQLITE தரவுத்தளத்தை வெற்றிகரமாக மீட்டமைக்கவும்", "reset_to_default": "இயல்புநிலைக்கு மீட்டமைக்கவும்", "resolve_duplicates": "நகல்களைத் தீர்க்கவும்", "resolved_all_duplicates": "அனைத்து நகல்களையும் தீர்க்கும்", "restore": "மீட்டமை", "restore_all": "அனைத்தையும் மீட்டெடுக்கவும்", + "restore_trash_action_prompt": "{எண்ணிக்கை the குப்பைகளிலிருந்து மீட்டெடுக்கப்பட்டது", "restore_user": "பயனரை மீட்டமைக்கவும்", "restored_asset": "மீட்டெடுக்கப்பட்ட சொத்து", "resume": "மீண்டும் தொடங்குங்கள்", + "resume_paused_jobs": "மீண்டும் தொடங்குங்கள் {எண்ணிக்கை, பன்மை, ஒன்று {# இடைநிறுத்தப்பட்ட வேலை} மற்ற {# இடைநிறுத்தப்பட்ட வேலைகள்}}", "retry_upload": "பதிவேற்ற முயற்சிக்கவும்", "review_duplicates": "நகல்களை மதிப்பாய்வு செய்யவும்", + "review_large_files": "பெரிய கோப்புகளை மதிப்பாய்வு செய்யவும்", "role": "பங்கு", "role_editor": "திருத்தி", "role_viewer": "பார்வையாளர்", + "running": "இயங்கும்", "save": "சேமி", + "save_to_gallery": "கேலரியில் சேமிக்கவும்", "saved_api_key": "சேமித்த பநிஇ விசை", "saved_profile": "சேமித்த சுயவிவரம்", "saved_settings": "சேமித்த அமைப்புகள்", "say_something": "ஏதாவது சொல்லுங்கள்", + "scaffold_body_error_occurred": "பிழை ஏற்பட்டது", "scan_all_libraries": "அனைத்து நூலகங்களையும் ச்கேன் செய்யுங்கள்", "scan_library": "ச்கேன்", "scan_settings": "அமைப்புகளை ச்கேன் செய்யுங்கள்", @@ -1123,20 +1691,53 @@ "search": "தேடல்", "search_albums": "ஆல்பங்களைத் தேடுங்கள்", "search_by_context": "சூழலால் தேடுங்கள்", + "search_by_description": "விளக்கத்தின் மூலம் தேடுங்கள்", + "search_by_description_example": "சப்பாவில் நடைபயணம்", "search_by_filename": "கோப்பு பெயர் அல்லது நீட்டிப்பு மூலம் தேடுங்கள்", "search_by_filename_example": "I.E. IMG_1234.JPG அல்லது PNG", "search_camera_make": "தேடல் கேமரா செய்யுங்கள் ...", "search_camera_model": "கேமரா மாதிரியைத் தேடுங்கள் ...", "search_city": "தேடல் நகரம் ...", "search_country": "தேடல் நாடு ...", + "search_filter_apply": "வடிகட்டியைப் பயன்படுத்துங்கள்", + "search_filter_camera_title": "கேமரா வகையைத் தேர்ந்தெடுக்கவும்", + "search_filter_date": "திகதி", + "search_filter_date_interval": "{start} பெறுநர் {end}", + "search_filter_date_title": "தேதி வரம்பைத் தேர்ந்தெடுக்கவும்", + "search_filter_display_option_not_in_album": "ஆல்பத்தில் இல்லை", + "search_filter_display_options": "காட்சி விருப்பங்கள்", + "search_filter_filename": "கோப்பு பெயர் மூலம் தேடுங்கள்", + "search_filter_location": "இடம்", + "search_filter_location_title": "இருப்பிடத்தைத் தேர்ந்தெடுக்கவும்", + "search_filter_media_type": "ஊடக வகை", + "search_filter_media_type_title": "மீடியா வகையைத் தேர்ந்தெடுக்கவும்", + "search_filter_people_title": "மக்களைத் தேர்ந்தெடுக்கவும்", + "search_for": "தேடுங்கள்", "search_for_existing_person": "இருக்கும் நபரைத் தேடுங்கள்", + "search_no_more_result": "மேலும் முடிவுகள் இல்லை", "search_no_people": "மக்கள் இல்லை", "search_no_people_named": "\"{name}\" என்று பெயரிடப்பட்டவர்கள் யாரும் இல்லை", + "search_no_result": "முடிவுகள் எதுவும் கிடைக்கவில்லை, வேறு தேடல் காலத்தை அல்லது கலவையை முயற்சிக்கவும்", "search_options": "தேடல் விருப்பங்கள்", + "search_page_categories": "வகைகள்", + "search_page_motion_photos": "இயக்க புகைப்படங்கள்", + "search_page_no_objects": "பொருள் செய்தி எதுவும் கிடைக்கவில்லை", + "search_page_no_places": "இடங்கள் செய்தி கிடைக்கவில்லை", + "search_page_screenshots": "திரைக்காட்சிகள்", + "search_page_search_photos_videos": "உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்களைத் தேடுங்கள்", + "search_page_selfies": "செல்ஃபிகள்", + "search_page_things": "விசயங்கள்", + "search_page_view_all_button": "அனைத்தையும் காண்க", + "search_page_your_activity": "உங்கள் செயல்பாடு", + "search_page_your_map": "உங்கள் வரைபடம்", "search_people": "மக்களைத் தேடுங்கள்", "search_places": "இடங்களைத் தேடுங்கள்", + "search_rating": "மதிப்பீட்டின் மூலம் தேடுங்கள் ...", + "search_result_page_new_search_hint": "புதிய தேடல்", "search_settings": "அமைப்புகளைத் தேடுங்கள்", "search_state": "தேடல் நிலை ...", + "search_suggestion_list_smart_search_hint_1": "மெட்டாடேட்டாவைத் தேட, நிகழ்வைப் பயன்படுத்த, அறிவுள்ள தேடல் இயல்புநிலையாக இயக்கப்பட்டது ", + "search_suggestion_list_smart_search_hint_2": "எம்: உங்கள் தேடல்-காலநிலை", "search_tags": "குறிச்சொற்களைத் தேடுங்கள் ...", "search_timezone": "நேர மண்டலத்தைத் தேடுங்கள் ...", "search_type": "தேடல் வகை", @@ -1144,9 +1745,11 @@ "searching_locales": "இடங்களைத் தேடுகிறது ...", "second": "இரண்டாவது", "see_all_people": "எல்லா மக்களையும் பாருங்கள்", + "select": "தேர்ந்தெடு", "select_album_cover": "ஆல்பம் அட்டையைத் தேர்ந்தெடுக்கவும்", "select_all": "அனைத்தையும் தெரிவுசெய்", "select_all_duplicates": "அனைத்து நகல்களையும் தேர்ந்தெடுக்கவும்", + "select_all_in": "{குழுவில் அனைத்தையும் தேர்ந்தெடுக்கவும்", "select_avatar_color": "அவதார் நிறத்தைத் தேர்ந்தெடுக்கவும்", "select_face": "முகத்தைத் தேர்ந்தெடுக்கவும்", "select_featured_photo": "பிரத்யேக புகைப்படத்தைத் தேர்ந்தெடுக்கவும்", @@ -1154,14 +1757,21 @@ "select_keep_all": "அனைத்தையும் வைத்திருங்கள் என்பதைத் தேர்ந்தெடுக்கவும்", "select_library_owner": "நூலக உரிமையாளரைத் தேர்ந்தெடுக்கவும்", "select_new_face": "புதிய முகத்தைத் தேர்ந்தெடுக்கவும்", + "select_person_to_tag": "குறிக்க ஒரு நபரைத் தேர்ந்தெடுக்கவும்", "select_photos": "புகைப்படங்களைத் தேர்ந்தெடுக்கவும்", "select_trash_all": "குப்பைத் தொட்டியைத் தேர்ந்தெடுக்கவும்", + "select_user_for_sharing_page_err_album": "ஆல்பத்தை உருவாக்கத் தவறிவிட்டது", "selected": "தேர்ந்தெடுக்கப்பட்டது", "selected_count": "{எண்ணிக்கை, பன்மை, பிற {# தேர்ந்தெடுக்கப்பட்ட}}", + "selected_gps_coordinates": "தேர்ந்தெடுக்கப்பட்ட சி.பி.எச் ஆயத்தொலைவுகள்", "send_message": "செய்தி அனுப்பவும்", "send_welcome_email": "வரவேற்பு மின்னஞ்சலை அனுப்பவும்", + "server_endpoint": "சேவையக இறுதிப்புள்ளி", + "server_info_box_app_version": "பயன்பாட்டு பதிப்பு", + "server_info_box_server_url": "சேவையக முகவரி", "server_offline": "சேவையகம் இணைப்பில்லாத", "server_online": "ஆன்லைனில் சேவையகம்", + "server_privacy": "சேவையக தனியுரிமை", "server_stats": "சேவையக புள்ளிவிவரங்கள்", "server_version": "சேவையக பதிப்பு", "set": "கணம்", @@ -1171,21 +1781,96 @@ "set_date_of_birth": "பிறந்த தேதியை அமைக்கவும்", "set_profile_picture": "சுயவிவரப் படத்தை அமைக்கவும்", "set_slideshow_to_fullscreen": "ச்லைடுசோவை முழுமைக்கு அமைக்கவும்", + "set_stack_primary_asset": "முதன்மை சொத்தாக அமைக்கவும்", + "setting_image_viewer_help": "விவரம் பார்வையாளர் முதலில் சிறிய சிறு உருவத்தை ஏற்றுகிறார், பின்னர் நடுத்தர அளவிலான முன்னோட்டத்தை ஏற்றுகிறார் (இயக்கப்பட்டால்), இறுதியாக அசலை ஏற்றுகிறது (இயக்கப்பட்டால்).", + "setting_image_viewer_original_subtitle": "அசல் முழு தெளிவுத்திறன் படத்தை ஏற்றவும் (பெரியது!). தரவு பயன்பாட்டைக் குறைக்க முடக்கு (பிணையம் மற்றும் சாதன தற்காலிக சேமிப்பு இரண்டும்).", + "setting_image_viewer_original_title": "அசல் படத்தை ஏற்றவும்", + "setting_image_viewer_preview_subtitle": "நடுத்தர-தெளிவுத்திறன் படத்தை ஏற்றவும். அசலை நேரடியாக ஏற்ற முடக்கவும் அல்லது சிறுபடத்தை மட்டுமே பயன்படுத்தவும்.", + "setting_image_viewer_preview_title": "முன்னோட்டம் படத்தை ஏற்றவும்", + "setting_image_viewer_title": "படங்கள்", + "setting_languages_apply": "இடு", + "setting_languages_subtitle": "பயன்பாட்டின் மொழியை மாற்றவும்", + "setting_notifications_notify_failures_grace_period": "பின்னணி காப்புப்பிரதி தோல்விகளை அறிவிக்கவும்: {duration}", + "setting_notifications_notify_hours": "{count} மணிநேரம்", + "setting_notifications_notify_immediately": "உடனடியாக", + "setting_notifications_notify_minutes": "{count} நிமிடங்கள்", + "setting_notifications_notify_never": "ஒருபோதும்", + "setting_notifications_notify_seconds": "{count} விநாடிகள்", + "setting_notifications_single_progress_subtitle": "விரிவான பதிவேற்றும் முன்னேற்ற செய்தி ஒரு சொத்துக்கு", + "setting_notifications_single_progress_title": "பின்னணி காப்புப்பிரதி விவரம் முன்னேற்றத்தைக் காட்டு", + "setting_notifications_subtitle": "உங்கள் அறிவிப்பு விருப்பங்களை சரிசெய்யவும்", + "setting_notifications_total_progress_subtitle": "ஒட்டுமொத்த பதிவேற்ற முன்னேற்றம் (முடிந்தது/மொத்த சொத்துக்கள்)", + "setting_notifications_total_progress_title": "பின்னணி காப்புப்பிரதி மொத்த முன்னேற்றத்தைக் காட்டு", + "setting_video_viewer_looping_title": "லூப்பிங்", + "setting_video_viewer_original_video_subtitle": "சேவையகத்திலிருந்து ஒரு வீடியோவை ச்ட்ரீமிங் செய்யும் போது, ஒரு டிரான்ச்கோடு கிடைக்கும்போது கூட அசலை இயக்கவும். இடையகத்திற்கு வழிவகுக்கும். இந்த அமைப்பைப் பொருட்படுத்தாமல் உள்நாட்டில் கிடைக்கும் வீடியோக்கள் அசல் தரத்தில் இயக்கப்படுகின்றன.", + "setting_video_viewer_original_video_title": "அசல் வீடியோவை கட்டாயப்படுத்துங்கள்", "settings": "அமைப்புகள்", + "settings_require_restart": "இந்த அமைப்பைப் பயன்படுத்த இம்மியை மறுதொடக்கம் செய்யுங்கள்", "settings_saved": "அமைப்புகள் சேமிக்கப்பட்டன", + "setup_pin_code": "முள் குறியீட்டை அமைக்கவும்", "share": "பங்கு", + "share_action_prompt": "பகிரப்பட்ட {count} சொத்துக்கள்", + "share_add_photos": "புகைப்படங்களைச் சேர்க்கவும்", + "share_assets_selected": "{count} தேர்ந்தெடுக்கப்பட்டது", + "share_dialog_preparing": "தயாரித்தல் ...", + "share_link": "இணைப்பைப் பகிரவும்", "shared": "பகிரப்பட்டது", + "shared_album_activities_input_disable": "கருத்து முடக்கப்பட்டுள்ளது", + "shared_album_activity_remove_content": "இந்தச் செயல்பாட்டை நீக்க விரும்புகிறீர்களா?", + "shared_album_activity_remove_title": "செயல்பாட்டை நீக்கு", + "shared_album_section_people_action_error": "ஆல்பத்திலிருந்து வெளியேறுதல்/நீக்குதல்", + "shared_album_section_people_action_leave": "ஆல்பத்திலிருந்து பயனரை அகற்று", + "shared_album_section_people_action_remove_user": "ஆல்பத்திலிருந்து பயனரை அகற்று", + "shared_album_section_people_title": "மக்கள்", "shared_by": "பகிரப்பட்டது", "shared_by_user": "{பயனரால் பகிரப்பட்டது", "shared_by_you": "நீங்கள் பகிர்ந்து கொண்டார்", "shared_from_partner": "{partner} இலிருந்து புகைப்படங்கள்", + "shared_intent_upload_button_progress_text": "{current} / {total} பதிவேற்றப்பட்டது", + "shared_link_app_bar_title": "பகிரப்பட்ட இணைப்புகள்", + "shared_link_clipboard_copied_massage": "இடைநிலைப்பலகைக்கு நகலெடுக்கப்பட்டது", + "shared_link_clipboard_text": "இணைப்பு: {link} \nகடவுச்சொல்: {password}", + "shared_link_create_error": "பகிரப்பட்ட இணைப்பை உருவாக்கும் போது பிழை", + "shared_link_custom_url_description": "தனிப்பயன் முகவரி உடன் இந்த பகிரப்பட்ட இணைப்பை அணுகவும்", + "shared_link_edit_description_hint": "பங்கு விளக்கத்தை உள்ளிடவும்", + "shared_link_edit_expire_after_option_day": "1 நாள்", + "shared_link_edit_expire_after_option_days": "{count} நாட்கள்", + "shared_link_edit_expire_after_option_hour": "1 மணி நேரம்", + "shared_link_edit_expire_after_option_hours": "{count} மணிநேரம்", + "shared_link_edit_expire_after_option_minute": "1 மணித்துளி", + "shared_link_edit_expire_after_option_minutes": "{count} நிமிடங்கள்", + "shared_link_edit_expire_after_option_months": "{count} மாதங்கள்", + "shared_link_edit_expire_after_option_year": "{count} ஆண்டு", + "shared_link_edit_password_hint": "பகிர்வு கடவுச்சொல்லை உள்ளிடவும்", + "shared_link_edit_submit_button": "இணைப்பைப் புதுப்பிக்கவும்", + "shared_link_error_server_url_fetch": "சேவையக முகவரி ஐப் பெற முடியாது", + "shared_link_expires_day": "{count} நாள் காலாவதியாகிறது", + "shared_link_expires_days": "{count} நாட்களில் காலாவதியாகிறது", + "shared_link_expires_hour": "{count} மணிநேரத்தில் காலாவதியாகிறது", + "shared_link_expires_hours": "{count} மணிநேரத்தில் காலாவதியாகிறது", + "shared_link_expires_minute": "{count} நிமிடத்தில் காலாவதியாகிறது", + "shared_link_expires_minutes": "{count} நிமிடங்களில் காலாவதியாகிறது", + "shared_link_expires_never": "காலாவதியாகிறது", + "shared_link_expires_second": "{count} இரண்டாவதாக காலாவதியாகிறது", + "shared_link_expires_seconds": "{count} விநாடிகளில் காலாவதியாகிறது", + "shared_link_individual_shared": "தனிநபர் பகிரப்பட்டவர்", + "shared_link_info_chip_metadata": "Exif", + "shared_link_manage_links": "பகிரப்பட்ட இணைப்புகளை நிர்வகிக்கவும்", "shared_link_options": "பகிரப்பட்ட இணைப்பு விருப்பங்கள்", + "shared_link_password_description": "இந்த பகிரப்பட்ட இணைப்பை அணுக கடவுச்சொல் தேவை", "shared_links": "பகிரப்பட்ட இணைப்புகள்", + "shared_links_description": "புகைப்படங்கள் மற்றும் வீடியோக்களை இணைப்புடன் பகிரவும்", "shared_photos_and_videos_count": "{ASSETCOUNT, பன்மை, பிற {# பகிரப்பட்ட புகைப்படங்கள் மற்றும் வீடியோக்கள்.}}", + "shared_with_me": "என்னுடன் பகிரப்பட்டது", "shared_with_partner": "{கூட்டாளர் with உடன் பகிரப்பட்டது", "sharing": "பகிர்வு", "sharing_enter_password": "இந்த பக்கத்தைக் காண கடவுச்சொல்லை உள்ளிடவும்.", + "sharing_page_album": "பகிரப்பட்ட ஆல்பங்கள்", + "sharing_page_description": "உங்கள் நெட்வொர்க்கில் உள்ளவர்களுடன் புகைப்படங்களையும் வீடியோக்களையும் பகிர்ந்து கொள்ள பகிரப்பட்ட ஆல்பங்களை உருவாக்கவும்.", + "sharing_page_empty_list": "வெற்று பட்டியல்", "sharing_sidebar_description": "பக்கப்பட்டியில் பகிர்வதற்கான இணைப்பைக் காண்பி", + "sharing_silver_appbar_create_shared_album": "புதிய பகிரப்பட்ட ஆல்பம்", + "sharing_silver_appbar_share_partner": "கூட்டாளருடன் பகிர்ந்து கொள்ளுங்கள்", "shift_to_permanent_delete": "சொத்தை நிரந்தரமாக நீக்க ⇧ ஐ அழுத்தவும்", "show_album_options": "ஆல்பம் விருப்பங்களைக் காட்டு", "show_albums": "ஆல்பங்களைக் காட்டு", @@ -1203,9 +1888,11 @@ "show_person_options": "நபர் விருப்பங்களைக் காட்டு", "show_progress_bar": "முன்னேற்றப் பட்டியைக் காட்டு", "show_search_options": "தேடல் விருப்பங்களைக் காட்டு", + "show_shared_links": "பகிரப்பட்ட இணைப்புகளைக் காட்டு", "show_slideshow_transition": "ச்லைடுசோ மாற்றத்தைக் காட்டு", "show_supporter_badge": "ஆதரவாளர் ஒட்டு", "show_supporter_badge_description": "ஒரு ஆதரவாளர் பேட்சைக் காட்டு", + "show_text_search_menu": "உரை தேடல் மெனுவைக் காட்டு", "shuffle": "கலக்கு", "sidebar": "பக்கப்பட்டி", "sidebar_display_description": "பக்கப்பட்டியில் பார்வைக்கு ஒரு இணைப்பைக் காண்பி", @@ -1221,12 +1908,14 @@ "sort_created": "தேதி உருவாக்கப்பட்டது", "sort_items": "பொருட்களின் எண்ணிக்கை", "sort_modified": "தேதி மாற்றியமைக்கப்பட்டது", + "sort_newest": "புதிய புகைப்படம்", "sort_oldest": "பழமையான புகைப்படம்", "sort_people_by_similarity": "ஒற்றுமையால் மக்களை வரிசைப்படுத்துங்கள்", "sort_recent": "மிக அண்மைக் கால புகைப்படம்", "sort_title": "தலைப்பு", "source": "மூலம்", "stack": "அடுக்கு", + "stack_action_prompt": "{count} அடுக்கி வைக்கப்பட்டுள்ளது", "stack_duplicates": "அடுக்கு நகல்கள்", "stack_select_one_photo": "அடுக்குக்கு ஒரு முக்கிய புகைப்படத்தைத் தேர்ந்தெடுக்கவும்", "stack_selected_photos": "தேர்ந்தெடுக்கப்பட்ட புகைப்படங்களை அடுக்கி வைக்கவும்", @@ -1234,16 +1923,20 @@ "stacktrace": "ச்டாக் ட்ரேச்", "start": "தொடங்கு", "start_date": "தொடக்க தேதி", + "start_date_before_end_date": "தொடக்க தேதி இறுதி தேதிக்கு முன் இருக்க வேண்டும்", "state": "மாநிலம்", "status": "நிலை", + "stop_casting": "வார்ப்பதை நிறுத்துங்கள்", "stop_motion_photo": "இயக்க புகைப்படத்தை நிறுத்து", "stop_photo_sharing": "உங்கள் புகைப்படங்களைப் பகிர்வதை நிறுத்தவா?", "stop_photo_sharing_description": "{கூட்டாளர் your இனி உங்கள் புகைப்படங்களை அணுக முடியாது.", "stop_sharing_photos_with_user": "இந்த பயனருடன் உங்கள் புகைப்படங்களைப் பகிர்வதை நிறுத்துங்கள்", "storage": "சேமிப்பக இடம்", "storage_label": "சேமிப்பக சிட்டை", + "storage_quota": "சேமிப்பக ஒதுக்கீடு", "storage_usage": "{used} பயன்படுத்தப்படுகிறது", "submit": "சமர்ப்பிக்கவும்", + "success": "செய்", "suggestions": "பரிந்துரைகள்", "sunrise_on_the_beach": "கடற்கரையில் சூரிய தோன்றுகை", "support": "உதவி", @@ -1251,18 +1944,40 @@ "support_third_party_description": "உங்கள் இம்மிச் நிறுவல் மூன்றாம் தரப்பினரால் தொகுக்கப்பட்டது. நீங்கள் அனுபவிக்கும் சிக்கல்கள் அந்த தொகுப்பால் ஏற்படலாம், எனவே கீழேயுள்ள இணைப்புகளைப் பயன்படுத்தி முதல் சந்தர்ப்பத்தில் அவர்களுடன் சிக்கல்களை எழுப்புங்கள்.", "swap_merge_direction": "ஒன்றிணைக்கும் திசையை மாற்றவும்", "sync": "ஒத்திசைவு", + "sync_albums": "ஆல்பங்களை ஒத்திசைக்கவும்", + "sync_albums_manual_subtitle": "பதிவேற்றிய அனைத்து வீடியோக்களையும் புகைப்படங்களையும் தேர்ந்தெடுக்கப்பட்ட காப்பு ஆல்பங்களில் ஒத்திசைக்கவும்", + "sync_local": "உள்ளக ஒத்திசைக்கவும்", + "sync_remote": "தொலைதூரத்தை ஒத்திசைக்கவும்", + "sync_status": "நிலையை ஒத்திசைக்கவும்", + "sync_status_subtitle": "ஒத்திசைவு அமைப்பை பார்வையிடவும் மற்றும் நிர்வகிக்கவும்", + "sync_upload_album_setting_subtitle": "உங்கள் புகைப்படங்களையும் வீடியோக்களையும் இம்மிச்சில் தேர்ந்தெடுக்கப்பட்ட ஆல்பங்களுக்கு உருவாக்கி பதிவேற்றவும்", "tag": "குறிச்சொல்", "tag_assets": "குறிச்சொல் சொத்துக்கள்", "tag_created": "உருவாக்கப்பட்ட குறிச்சொல்: {tag}", "tag_feature_description": "தர்க்கரீதியான குறிச்சொல் தலைப்புகளால் தொகுக்கப்பட்ட புகைப்படங்கள் மற்றும் வீடியோக்களை உலாவுதல்", "tag_not_found_question": "குறிச்சொல்லைக் கண்டுபிடிக்க முடியவில்லையா? <இணைப்பு> புதிய குறிச்சொல்லை உருவாக்கவும். ", + "tag_people": "மக்களை குறிக்கவும்", "tag_updated": "புதுப்பிக்கப்பட்ட குறிச்சொல்: {tag}", "tagged_assets": "குறித்துள்ளார் {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}", "tags": "குறிச்சொற்கள்", + "tap_to_run_job": "வேலையை இயக்க தட்டவும்", "template": "வார்ப்புரு", "theme": "கருப்பொருள்", "theme_selection": "கருப்பொருள் தேர்வு", "theme_selection_description": "உங்கள் உலாவியின் கணினி விருப்பத்தின் அடிப்படையில் தானாகவே கருப்பொருள் ஒளி அல்லது இருட்டாக அமைக்கவும்", + "theme_setting_asset_list_storage_indicator_title": "சொத்து ஓடுகளில் சேமிப்பக குறிகாட்டியைக் காட்டு", + "theme_setting_asset_list_tiles_per_row_title": "ஒரு வரிசையில் சொத்துக்களின் எண்ணிக்கை ({count})", + "theme_setting_colorful_interface_subtitle": "பின்னணி மேற்பரப்புகளுக்கு முதன்மை வண்ணத்தைப் பயன்படுத்துங்கள்.", + "theme_setting_colorful_interface_title": "வண்ணமயமான இடைமுகம்", + "theme_setting_image_viewer_quality_subtitle": "விவரம் பட பார்வையாளரின் தரத்தை சரிசெய்யவும்", + "theme_setting_image_viewer_quality_title": "பட பார்வையாளர் தகுதி", + "theme_setting_primary_color_subtitle": "முதன்மை செயல்கள் மற்றும் உச்சரிப்புகளுக்கு ஒரு வண்ணத்தைத் தேர்ந்தெடுங்கள்.", + "theme_setting_primary_color_title": "முதன்மை நிறம்", + "theme_setting_system_primary_color_title": "கணினி நிறத்தைப் பயன்படுத்துங்கள்", + "theme_setting_system_theme_switch": "தானியங்கி (கணினி அமைப்பைப் பின்பற்றவும்)", + "theme_setting_theme_subtitle": "பயன்பாட்டின் கருப்பொருள் அமைப்பைத் தேர்வுசெய்க", + "theme_setting_three_stage_loading_subtitle": "மூன்று-நிலை ஏற்றுதல் ஏற்றுதல் செயல்திறனை அதிகரிக்கக்கூடும், ஆனால் கணிசமாக அதிக பிணைய சுமையை ஏற்படுத்துகிறது", + "theme_setting_three_stage_loading_title": "மூன்று-நிலை ஏற்றுதலை இயக்கவும்", "they_will_be_merged_together": "அவர்கள் ஒன்றாக இணைக்கப்படுவார்கள்", "third_party_resources": "மூன்றாம் தரப்பு வளங்கள்", "time_based_memories": "நேர அடிப்படையிலான நினைவுகள்", @@ -1272,41 +1987,70 @@ "to_change_password": "கடவுச்சொல்லை மாற்றவும்", "to_favorite": "பிடித்த", "to_login": "புகுபதிவு", + "to_multi_select": "பல-தேர்ந்தெடுக்கப்பட்ட", "to_parent": "பெற்றோரிடம் செல்லுங்கள்", + "to_select": "தேர்ந்தெடுக்க", "to_trash": "குப்பை", "toggle_settings": "அமைப்புகளை மாற்றவும்", "total": "மொத்தம்", "total_usage": "மொத்த பயன்பாடு", "trash": "குப்பை", + "trash_action_prompt": "{count} குப்பைக்கு நகர்த்தப்பட்டது", "trash_all": "அனைத்தையும் குப்பை", "trash_count": "குப்பை {எண்ணிக்கை, எண்}", "trash_delete_asset": "குப்பை/சொத்தை நீக்கு", + "trash_emptied": "காலியாக குப்பை", "trash_no_results_message": "குப்பைத் தொட்டிகள் மற்றும் வீடியோக்கள் இங்கே காண்பிக்கப்படும்.", + "trash_page_delete_all": "அனைத்தையும் நீக்கு", + "trash_page_empty_trash_dialog_content": "உங்கள் குப்பை சொத்துக்களை வெறுமை செய்ய விரும்புகிறீர்களா? இந்த உருப்படிகள் இம்மிச்சிலிருந்து நிரந்தரமாக அகற்றப்படும்", + "trash_page_info": "குப்பைத் தொட்டிகள் {days} நாட்களுக்குப் பிறகு நிரந்தரமாக நீக்கப்படும்", + "trash_page_no_assets": "குப்பை சொத்துக்கள் இல்லை", + "trash_page_restore_all": "அனைத்தையும் மீட்டெடுக்கவும்", + "trash_page_select_assets_btn": "சொத்துக்களைத் தேர்ந்தெடுக்கவும்", + "trash_page_title": "({count})", "trashed_items_will_be_permanently_deleted_after": "{நாட்கள், பன்மை, ஒன்று {# நாள்} பிற {# நாட்கள்}} க்குப் பிறகு குப்பைத் தொட்டிகள் நிரந்தரமாக நீக்கப்படும்.", + "troubleshoot": "சரிசெய்தல்", "type": "வகை", + "unable_to_change_pin_code": "முள் குறியீட்டை மாற்ற முடியவில்லை", + "unable_to_setup_pin_code": "முள் குறியீட்டை அமைக்க முடியவில்லை", "unarchive": "அன்கான்", + "unarchive_action_prompt": "{எண்ணிக்கை the காப்பகத்திலிருந்து அகற்றப்பட்டது", "unarchived_count": "{எண்ணிக்கை, பன்மை, பிற {அல்லாத #}}", + "undo": "செயல்தவிர்", "unfavorite": "மாறாத", + "unfavorite_action_prompt": "{எண்ணிக்கை the பிடித்தவைகளிலிருந்து அகற்றப்பட்டது", "unhide_person": "அருவருப்பான நபர்", "unknown": "தெரியவில்லை", + "unknown_country": "தெரியாத நாடு", "unknown_year": "தெரியாத ஆண்டு", "unlimited": "வரம்பற்றது", "unlink_motion_video": "இயக்க வீடியோவை இணைக்கவும்", "unlink_oauth": "OAUTH ஐ இணைக்கவும்", "unlinked_oauth_account": "இணைக்கப்படாத OAUTH கணக்கு", + "unmute_memories": "ஊடுருவல் நினைவுகள்", "unnamed_album": "பெயரிடப்படாத ஆல்பம்", "unnamed_album_delete_confirmation": "இந்த ஆல்பத்தை நீக்க விரும்புகிறீர்களா?", "unnamed_share": "பெயரிடப்படாத பங்கு", "unsaved_change": "சேமிக்கப்படாத மாற்றம்", "unselect_all": "அனைத்தையும் தேர்வு செய்யுங்கள்", "unselect_all_duplicates": "அனைத்து நகல்களையும் தேர்ந்தெடுக்கவும்", + "unselect_all_in": "{group}", "unstack": "அன்-ச்டாக்", + "unstack_action_prompt": "{count} தடையின்றி", "unstacked_assets_count": "அன்-ச்டாக் {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}", + "untagged": "அவிழ்க்கப்படாதது", "up_next": "அடுத்து", + "update_location_action_prompt": "{count} தேர்ந்தெடுக்கப்பட்ட சொத்துக்களின் இருப்பிடத்தைப் புதுப்பிக்கவும்:", + "updated_at": "புதுப்பிக்கப்பட்டது", "updated_password": "புதுப்பிக்கப்பட்ட கடவுச்சொல்", "upload": "பதிவேற்றும்", + "upload_action_prompt": "{count} பதிவேற்றுவதற்கு வரிசையில் நிற்கப்பட்டது", "upload_concurrency": "ஒத்திசைவைப் பதிவேற்றவும்", + "upload_details": "விவரங்களை பதிவேற்றவும்", + "upload_dialog_info": "தேர்ந்தெடுக்கப்பட்ட சொத்து (களை) சேவையகத்திற்கு காப்புப் பிரதி எடுக்க விரும்புகிறீர்களா?", + "upload_dialog_title": "சொத்தை பதிவேற்றவும்", "upload_errors": "பதிவேற்றம் {எண்ணிக்கை, பன்மை, ஒன்று {# பிழை} மற்ற {# பிழைகள்}} உடன் முடிக்கப்பட்டது, புதிய பதிவேற்ற சொத்துக்களைக் காண பக்கத்தைப் புதுப்பிக்கவும்.", + "upload_finished": "பதிவேற்றம் முடிந்தது", "upload_progress": "மீதமுள்ள {மீதமுள்ள, எண்} - செயலாக்கப்பட்ட {செயலாக்கப்பட்டது, எண்}/{மொத்தம், எண்}", "upload_skipped_duplicates": "{எண்ணிக்கை, பன்மை, ஒன்று {# நகல் சொத்து} பிற {# நகல் சொத்துக்கள்}}", "upload_status_duplicates": "நகல்கள்", @@ -1336,7 +2080,7 @@ "user_usage_stats_description": "கணக்கு உபயோகப் புள்ளிவிவரங்களைப் பார்க்க", "username": "பயனர்பெயர்", "users": "பயனர்கள்", - "users_added_to_album_count": "ஆல்பத்தில் {எண்ணிக்கை, பன்மை, ஒன்று{# user} மற்றவை{# users}} சேர்க்கப்பட்டது", + "users_added_to_album_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# பயனர்} மற்ற {# பயனர்கள்}} ஆல்பத்தில் சேர்க்கப்பட்டது", "utilities": "பயன்பாடுகள்", "validate": "சரிபார்க்கவும்", "validate_endpoint_error": "தயவுசெய்து ஒரு செல்லுபடியாகும் URL ஐ உள்ளிடவும்", @@ -1378,9 +2122,10 @@ "wifi_name": "வைஃபை பெயர்", "wrong_pin_code": "தவறான பின் குறியீடு", "year": "ஆண்டு", - "years_ago": "{ஆண்டுகள், பன்மை, ஒன்று {# ஆண்டு} மற்ற {# ஆண்டுகள்}}} முன்பு", + "years_ago": "{years, plural, one {# ஆண்டு} other {# ஆண்டுகள்}} முன்பு", "yes": "ஆம்", "you_dont_have_any_shared_links": "உங்களிடம் பகிரப்பட்ட இணைப்புகள் எதுவும் இல்லை", "your_wifi_name": "உங்கள் வைஃபை பெயர்", - "zoom_image": "பெரிதாக்க படம்" + "zoom_image": "பெரிதாக்க படம்", + "zoom_to_bounds": "எல்லைக்கு பெரிதாக்கு" } diff --git a/i18n/tr.json b/i18n/tr.json index 9e3486d231..835ce754c5 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -38,7 +38,7 @@ "added_to_favorites_count": "{count, number} fotoğraf favorilere eklendi", "admin": { "add_exclusion_pattern_description": "Hariç tutma desenleri ekleyin. *, ** ve ? kullanılarak Globbing (temsili yer doldurucu karakter) desteklenir. Farzedelim \"Raw\" adlı bir dizininiz var, içinde ki tüm dosyaları yoksaymak için \"**/Raw/**\" şeklinde yazabilirsiniz. \".tif\" ile biten tüm dosyaları yoksaymak için \"**/*.tif\" yazabilirsiniz. Mutlak yolu yoksaymak için \"/yoksayılacak/olan/yol/**\" şeklinde yazabilirsiniz.", - "admin_user": "Yönetici kullanıcısı", + "admin_user": "Yönetici Kullanıcı", "asset_offline_description": "Bu harici kütüphane öğesi artık diskte bulunmuyor ve çöp kutusuna taşındı. Dosya kütüphane içinde taşındıysa, yeni karşılık gelen öğe için zaman çizelgenizi kontrol edin. Bu öğeyi geri yüklemek için lütfen aşağıdaki dosya yolunun Immich tarafından erişilebilir olduğundan emin olun ve kütüphaneyi tarayın.", "authentication_settings": "Yetkilendirme Ayarları", "authentication_settings_description": "Şifre, OAuth, ve diğer yetkilendirme ayarlarını yönet", @@ -66,9 +66,9 @@ "confirm_user_password_reset": "{user} adlı kullanıcının şifresini sıfırlamak istediğinize emin misiniz?", "confirm_user_pin_code_reset": "{user} adlı kullanıcının PIN kodunu sıfırlamak istediğinize emin misiniz?", "create_job": "Görev oluştur", - "cron_expression": "Cron İfadesi", + "cron_expression": "Cron ifadesi", "cron_expression_description": "Cron formatını kullanarak tarama aralığını belirle. Daha fazla bilgi için örneğin Crontab Guru’ya bakın", - "cron_expression_presets": "Cron İfadesi Önayarları", + "cron_expression_presets": "Cron ifadesi ön ayarları", "disable_login": "Girişi devre dışı bırak", "duplicate_detection_job_description": "Benzer fotoğrafları bulmak için makine öğrenmesini çalıştır. Bu işlem Akıllı Arama'ya bağlıdır", "exclusion_pattern_description": "Kütüphaneyi tararken dosya ve klasörleri görmezden gelmek için dışlama desenlerini kullanabilirsiniz. RAW dosyaları gibi bazı dosya ve klasörleri içe aktarmak istemediğinizde bu seçeneği kullanabilirsiniz.", @@ -84,9 +84,9 @@ "image_fullsize_enabled": "Tam boyutlu görüntü üretimini etkinleştir", "image_fullsize_enabled_description": "Yerleşik önizlemeyi tercih et” seçeneği etkinleştirildiğinde, yerleşik önizlemeler dönüştürme yapılmadan doğrudan kullanılır. JPEG gibi web dostu formatlar bu ayardan etkilenmez.", "image_fullsize_quality_description": "1-100 arasında tam boyutlu görüntü kalitesi. Daha yüksek kalitelidir, ancak daha büyük dosyalar üretir.", - "image_fullsize_title": "Tam boyutlu görüntü ayarları", - "image_prefer_embedded_preview": "Gömülü önizlemeyi tercih et", - "image_prefer_embedded_preview_setting_description": "RAtoğrafları için mümkün olduğunda gömülü önizlemeyi kullan. Bu, bazı fotoğraflarda daha gerçekçi renkler n kameraya bağlıdır ve fotoğrafta normalden daha fazla görüntü bozukluklarına sebep olabilir.", + "image_fullsize_title": "Tam Boyutlu Görüntü Ayarları", + "image_prefer_embedded_preview": "Gömülü ön izlemeyi tercih et", + "image_prefer_embedded_preview_setting_description": "RAW fotoğrafları için mümkün olduğunda gömülü ön izlemeyi kullan. Bu, bazı fotoğraflarda daha gerçekçi renkler n kameraya bağlıdır ve fotoğrafta normalden daha fazla görüntü bozukluklarına sebep olabilir.", "image_prefer_wide_gamut": "Geniş renk aralığını tercih et", "image_prefer_wide_gamut_setting_description": "Önizleme görseli için P3 renk paletini tercih et. Bu, geniş renk paletli fotoğraflarda renk canlılığını daha iyi korur, fakat fotoğraflar eski tarayıcılarda ve eski cihazlarda daha farklı görünebilir. sRGB fotoğraflar renk paletini korumak için sRGB olarak tutulur.", "image_preview_description": "Orta boyutlu görüntü, meta verisi çıkarılmış, tekil bir öğe görüntülenirken ve makine öğrenimi için kullanılır", @@ -95,7 +95,7 @@ "image_quality": "Kalite", "image_resolution": "Çözünürlük", "image_resolution_description": "Daha yüksek çözünürlükle, daha fazla detayı koruyabilir ancak kodlanması daha uzun sürer, daha büyük dosya boyutlarına sahip olur ve uygulamanın yanıt verme hızını azaltabilir.", - "image_settings": "Fotoğraf ayarları", + "image_settings": "Fotoğraf Ayarları", "image_settings_description": "Oluşturulan fotoğrafların kalite ve çözünürlüklerini yönet", "image_thumbnail_description": "Meta verisi çıkarılmış küçük boyutlu küçük resim, ana zaman çizelgesi gibi fotoğraf gruplarını görüntülerken kullanılır", "image_thumbnail_quality_description": "Küçük resim kalitesi 1-100 arasında. Daha yüksek değerler daha iyidir, ancak daha büyük dosyalar üretir ve uygulamanın yanıt hızını azaltabilir.", @@ -114,7 +114,7 @@ "library_scanning": "Periyodik Tarama", "library_scanning_description": "Periyodik kütüphane taramasını yönet", "library_scanning_enable_description": "Periyodik kütüphane taramasını etkinleştir", - "library_settings": "Harici kütüphane", + "library_settings": "Harici Kütüphane", "library_settings_description": "Harici kütüphane ayarlarını yönet", "library_tasks_description": "Yeni yada değiştirilmiş öğeler için dış kütüphaneleri tara", "library_watching_enable_description": "Harici kütüphanelerdeki dosya değişikliklerini izle", @@ -122,10 +122,17 @@ "library_watching_settings_description": "Değişen dosyalar için otomatik olarak izle", "logging_enable_description": "Günlüğü aktifleştir", "logging_level_description": "Etkinleştirildiğinde hangi günlük seviyesi kullanılır.", - "logging_settings": "Günlük tutma", + "logging_settings": "Günlük Tutma", + "machine_learning_availability_checks": "Kullanılabilirlik kontrolleri", + "machine_learning_availability_checks_description": "Kullanılabilir makine öğrenimi sunucularını otomatik olarak algılayın ve tercih edin", + "machine_learning_availability_checks_enabled": "Kullanılabilirlik kontrollerini etkinleştir", + "machine_learning_availability_checks_interval": "Kontrol aralığı", + "machine_learning_availability_checks_interval_description": "Kullanılabilirlik kontrolleri arasındaki milisaniye cinsinden aralık", + "machine_learning_availability_checks_timeout": "İstek zaman aşımı", + "machine_learning_availability_checks_timeout_description": "Kullanılabilirlik kontrolleri için milisaniye cinsinden zaman aşımı", "machine_learning_clip_model": "CLIP modeli", "machine_learning_clip_model_description": "Link burada listelenen CLIP modelinin adı. Bu özelliği değiştirdikten sonra \"Akıllı Arama\" işini tüm fotoğraflar için tekrardan çalıştırmalısınız.", - "machine_learning_duplicate_detection": "Kopya fotoğraf tespiti", + "machine_learning_duplicate_detection": "Kopya Fotoğraf Tespiti", "machine_learning_duplicate_detection_enabled": "Kopya fotoğraf tespitini etkinleştir", "machine_learning_duplicate_detection_enabled_description": "Devre dışı bırakılırsa aynı öğeler yine de temizlenecek.", "machine_learning_duplicate_detection_setting_description": "Birbirinin kopyası olan varlıkları bulmak için CLIP kullan", @@ -133,9 +140,9 @@ "machine_learning_enabled_description": "Eğer devre dışı bırakılırsa bütün Makine Öğrenmesi özellikleri devre dışı bırakılacak.", "machine_learning_facial_recognition": "Yüz Tanıma", "machine_learning_facial_recognition_description": "Fotoğraflardaki yüzleri tara, tanı ve gruplandır", - "machine_learning_facial_recognition_model": "Yüz Tanıma Modeli", + "machine_learning_facial_recognition_model": "Yüz tanıma modeli", "machine_learning_facial_recognition_model_description": "Modeller, azalan boyut sırasına göre listelenmiştir. Daha büyük modeller daha yavaştır ve daha fazla bellek kullanır, ancak daha iyi sonuçlar üretir. Bir modeli değiştirdikten sonra tüm görüntüler için yüz algılama işini yeniden çalıştırmanız gerektiğini unutmayın.", - "machine_learning_facial_recognition_setting": "Yüz Tanımayı etkinleştir", + "machine_learning_facial_recognition_setting": "Yüz tanımayı etkinleştir", "machine_learning_facial_recognition_setting_description": "Devre dışı bırakıldığında fotoğraflar yüz tanıma için işlenmeyecek ve Keşfet sayfasındaki Kişiler sekmesini doldurmayacak.", "machine_learning_max_detection_distance": "Maksimum tespit uzaklığı", "machine_learning_max_detection_distance_description": "Resimleri birbirinin çifti saymak için hesap edilecek azami benzerlik ölçüsü, 0.001-0.1 aralığında. Daha yüksek değer daha hassas olup daha fazla çift tespit eder ancak çift olmayan resimleri birbirinin çifti sayabilir.", @@ -209,7 +216,7 @@ "notification_email_test_email_sent": "Test emaili {email} adresine yollandı. Lütfen gelen kutunuzu kontrol edin.", "notification_email_username_description": "Email sunucu doğrulamasında kullanılacak olan kullanıcı adı", "notification_enable_email_notifications": "Email bildirimlerini etkinleştir", - "notification_settings": "Bildirim ayarları", + "notification_settings": "Bildirim Ayarları", "notification_settings_description": "Email ve bildirim ayarlarını yönet", "oauth_auto_launch": "Otomatik başlat", "oauth_auto_launch_description": "Giriş sayfasına girildiğinde OAuth akışını otomatik olarak başlat", @@ -232,16 +239,16 @@ "oauth_storage_quota_claim_description": "Kullanıcıya depolama kotası koymak için kullanılacak değer (en: OAuth claim).", "oauth_storage_quota_default": "Varsayılan depolama kotası (GiB)", "oauth_storage_quota_default_description": "Değer (en: OAuth claim) mevcut değilse GiB cinsinden konulacak kota.", - "oauth_timeout": "İstek zaman aşımı", + "oauth_timeout": "İstek Zaman Aşımı", "oauth_timeout_description": "Milisaniye cinsinden istek zaman aşımı", "password_enable_description": "E-posta ve şifre ile giriş yapın", "password_settings": "Şifre ile Giriş", "password_settings_description": "Şifre giriş ayarlarını yönet", "paths_validated_successfully": "Tüm yollar başarıyla doğrulandı", "person_cleanup_job": "Kişi temizleme", - "quota_size_gib": "Kota boyutu (GiB)", + "quota_size_gib": "Kota Boyutu (GiB)", "refreshing_all_libraries": "Tüm kütüphaneler yenileniyor", - "registration": "Yönetici kaydı", + "registration": "Yönetici Kaydı", "registration_description": "Sistemdeki ilk kullanıcı olduğunuz için hesabınız Yönetici olarak ayarlandı. Yeni oluşturulan üyeliklerin, ve yönetici görevlerinin sorumlusu olarak atandınız.", "require_password_change_on_login": "Kullanıcının ilk girişinde şifre değiştirmesini zorunlu kıl", "reset_settings_to_default": "Ayarları varsayılana sıfırla", @@ -253,7 +260,7 @@ "server_external_domain_settings_description": "Paylaşılan fotoğraflar için domain, http(s):// dahil", "server_public_users": "Harici Kullanıcılar", "server_public_users_description": "Paylaşılan albümlere bir kullanıcı eklenirken tüm kullanıcılar (ad ve e-posta) listelenir. Devre dışı bırakıldığında, kullanıcı listesi yalnızca yönetici kullanıcılar tarafından kullanılabilir.", - "server_settings": "Sunucu ayarları", + "server_settings": "Sunucu Ayarları", "server_settings_description": "Sunucu ayarlarını yönet", "server_welcome_message": "Hoş geldin mesajı", "server_welcome_message_description": "Giriş sayfasında gösterilen mesaj.", @@ -289,7 +296,7 @@ "template_settings_description": "Bildirim şablonlarını yönet", "theme_custom_css_settings": "Özel CSS", "theme_custom_css_settings_description": "CSS (Cascading Style Sheets) kullanılarak Immich'in tasarımı değiştirilebilir.", - "theme_settings": "Tema ayarları", + "theme_settings": "Tema Ayarları", "theme_settings_description": "Immich web arayüzünün özelleştirilmesi ayarlarını yönet", "thumbnail_generation_job": "Önizlemeleri oluştur", "thumbnail_generation_job_description": "Her bir öğe için büyük, küçük ve bulanık küçük resimler ile her kişi için küçük resimler oluşturun", @@ -356,8 +363,8 @@ "trash_enabled_description": "Çöp özelliklerini etkinleştir", "trash_number_of_days": "Gün sayısı", "trash_number_of_days_description": "Öğeleri kalıcı olarak silmeden önce çöp kutusunda tutma süresi (gün)", - "trash_settings": "Çöp ayarları", - "trash_settings_description": "Çöp ayarlarını yönet", + "trash_settings": "Çöp Kutusu Ayarları", + "trash_settings_description": "Çöp kutusu ayarlarını yönet", "unlink_all_oauth_accounts": "Tüm OAuth hesaplarının bağlantısını kaldır", "unlink_all_oauth_accounts_description": "Yeni bir sağlayıcıya geçmeden önce tüm OAuth hesaplarını kaldırılmayı unutmayın.", "unlink_all_oauth_accounts_prompt": "Tüm OAuth hesaplarını kaldırmak istediğinizden emin misiniz? Bu, her kullanıcı için OAuth kimliğini sıfırlar ve geri alınamaz.", @@ -374,7 +381,7 @@ "user_restore_description": "{user} kullanıcısı geri yüklenecek.", "user_restore_scheduled_removal": "Kullanıcıyı geri yükle - {date, date, long} tarihinde planlanan kaldırma", "user_settings": "Kullanıcı Ayarları", - "user_settings_description": "Kullanıcı Ayarlarını Yönet", + "user_settings_description": "Kullanıcı ayarlarını yönet", "user_successfully_removed": "Kullanıcı {email} başarıyla kaldırıldı.", "version_check_enabled_description": "Sürüm kontrolü etkin", "version_check_implications": "Sürüm kontrol özelliği, github.com ile periyodik iletişime dayanır", @@ -387,8 +394,6 @@ "admin_password": "Yönetici Şifresi", "administration": "Yönetim", "advanced": "Gelişmiş", - "advanced_settings_beta_timeline_subtitle": "Yeni uygulama deneyimini deneyin", - "advanced_settings_beta_timeline_title": "Beta Zaman Çizelgesi", "advanced_settings_enable_alternate_media_filter_subtitle": "Eşzamanlama sırasında medyayı alternatif ölçütlere göre süzgeçten geçirmek için bu seçeneği kullanın. Uygulamanın tüm albümleri algılamasında sorun yaşıyorsanız yalnızca bu durumda deneyin.", "advanced_settings_enable_alternate_media_filter_title": "[DENEYSEL] Alternatif cihaz albüm eşzamanlama süzgeci kullanın", "advanced_settings_log_level_title": "Günlük düzeyi: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "{user} kullanıcısını kaldırmak istediğinize emin misiniz?", "album_search_not_found": "Aramanızla eşleşen albüm bulunamadı", "album_share_no_users": "Görünüşe göre bu albümü tüm kullanıcılarla paylaştınız veya paylaşacak herhangi bir başka kullanıcınız yok.", + "album_summary": "Albüm özeti", "album_updated": "Albüm güncellendi", "album_updated_setting_description": "Paylaşılan bir albüme yeni bir öğe eklendiğinde e-posta bildirimi alın", "album_user_left": "{album}den ayrıldınız", @@ -491,11 +497,13 @@ "asset_list_layout_sub_title": "Düzen", "asset_list_settings_subtitle": "Fotoğraf ızgara düzeni ayarları", "asset_list_settings_title": "Fotoğraf Izgarası", - "asset_offline": "Varlık Çevrim Dışı", + "asset_offline": "Öğe Çevrim Dışı", "asset_offline_description": "Bu harici öğe artık diskte bulunmuyor. Yardım için lütfen Immich yöneticinizle iletişime geçin.", "asset_restored_successfully": "Öğe başarıyla geri yüklendi", "asset_skipped": "Atlandı", "asset_skipped_in_trash": "Çöpte", + "asset_trashed": "Öğe çöpe atıldı", + "asset_troubleshoot": "Öğe Sorun Giderme", "asset_uploaded": "Yüklendi", "asset_uploading": "Yükleniyor…", "asset_viewer_settings_subtitle": "Galeri görüntüleyici ayarlarını düzenle", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Otomatik slayt gösterisi", "back": "Geri", "back_close_deselect": "Geri, kapat veya seçimi kaldır", + "background_backup_running_error": "Arka plan yedekleme şu anda çalışıyor, manuel yedekleme başlatılamıyor", "background_location_permission": "Arka plan konum izni", "background_location_permission_content": "Arka planda çalışırken ağ değiştirmek için Immich'in *her zaman* tam konum erişimine sahip olması gerekir, böylece uygulama Wi-Fi ağının adını okuyabilir", + "background_options": "Arka Plan Seçenekleri", "backup": "Yedekle", "backup_album_selection_page_albums_device": "Cihazdaki albümler ({count})", "backup_album_selection_page_albums_tap": "Seçmek için dokunun, hariç tutmak için çift dokunun", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Albüm seç", "backup_album_selection_page_selection_info": "Seçim Bilgileri", "backup_album_selection_page_total_assets": "Toplam eşsiz öğeler", + "backup_albums_sync": "Yedekleme albümlerinin senkronizasyonu", "backup_all": "Tümü", "backup_background_service_backup_failed_message": "Yedekleme başarısız. Tekrar deneniyor…", "backup_background_service_connection_failed_message": "Sunucuya bağlanılamadı. Tekrar deneniyor…", @@ -654,6 +665,8 @@ "change_pin_code": "PIN kodunu değiştirin", "change_your_password": "Şifreni değiştir", "changed_visibility_successfully": "Görünürlük başarıyla değiştirildi", + "charging": "Şarj oluyor", + "charging_requirement_mobile_backup": "Arka plan yedekleme için cihazın şarjda olması gerekir", "check_corrupt_asset_backup": "Bozuk öğe yedeklemelerini kontrol et", "check_corrupt_asset_backup_button": "Kontrol et", "check_corrupt_asset_backup_description": "Bu kontrolü yalnızca Wi-Fi üzerinden ve tüm öğeler yedeklendikten sonra çalıştırın. İşlem birkaç dakika sürebilir.", @@ -740,6 +753,7 @@ "create_user": "Kullanıcı oluştur", "created": "Oluşturuldu", "created_at": "Oluşturuldu", + "creating_linked_albums": "Bağlantılı albümler oluşturuluyor...", "crop": "Kes", "curated_object_page_title": "Nesneler", "current_device": "Mevcut cihaz", @@ -889,7 +903,9 @@ "error": "Hata", "error_change_sort_album": "Albüm sıralama düzeni değiştirilemedi", "error_delete_face": "Öğeden yüz silme hatası", + "error_getting_places": "Konum bilgisi alınırken hata oluştu", "error_loading_image": "Resim yüklenirken hata oluştu", + "error_loading_partners": "Ortakları yükleme hatası: {error}", "error_saving_image": "Hata: {error}", "error_tag_face_bounding_box": "Yüz etiketleme hatası – sınırlayıcı kutu koordinatları alınamadı", "error_title": "Bir Hata Oluştu - Bir şeyler ters gitti", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Favori öğe bulunamadı", "feature_photo_updated": "Öne çıkan fotoğraf güncellendi", "features": "Özellikler", + "features_in_development": "Geliştirme Aşamasındaki Özellikler", "features_setting_description": "Uygulamanın özelliklerini yönet", "file_name": "Dosya adı", "file_name_or_extension": "Dosya adı veya uzantı", @@ -1093,8 +1110,8 @@ "haptic_feedback_switch": "Dokunsal geri bildirimi aç", "haptic_feedback_title": "Dokunsal Geri Bildirim (Haptic Feedback)", "has_quota": "Kota var", - "hash_asset": "Hash varlığı", - "hashed_assets": "Hashlenmiş varlıklar", + "hash_asset": "Karma öğe", + "hashed_assets": "Karma öğeler", "hashing": "Hashleme", "header_settings_add_header_tip": "Header Ekle", "header_settings_field_validator_msg": "Değer boş olamaz", @@ -1218,6 +1235,7 @@ "local": "Yerel", "local_asset_cast_failed": "Sunucuya yüklenmemiş bir öğe yansıtılamaz", "local_assets": "Yerel Öğeler", + "local_media_summary": "Yerel Medya Özeti", "local_network": "Yerel Wi-Fi", "local_network_sheet_info": "Uygulama belirlenmiş Wi-Fi ağını kullanırken bu URL üzerinden sunucuya bağlanacaktır", "location_permission": "Konum izni", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Buraya boylam yazın", "lock": "Kilitle", "locked_folder": "Kilitli Klasör", + "log_detail_title": "Günlük Ayrıntıları", "log_out": "Oturumu kapat", "log_out_all_devices": "Tüm Cihazlarda Oturumu Kapat", "logged_in_as": "{user} olarak oturum açıldı", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Şifre başarıyla güncellendi", "logout_all_device_confirmation": "Tüm cihazlarda oturum kapatmak istediğinizden emin misiniz?", "logout_this_device_confirmation": "Bu cihazda oturum kapatmak istediğinizden emin misiniz?", + "logs": "Kayıtlar", "longitude": "Boylam", "look": "Görünüm", "loop_videos": "Videoları döngüye al", @@ -1301,6 +1321,7 @@ "mark_as_read": "Okundu olarak işaretle", "marked_all_as_read": "Tümü okundu olarak işaretlendi", "matches": "Eşleşenler", + "matching_assets": "Eşleşen Öğeler", "media_type": "Medya türü", "memories": "Anılar", "memories_all_caught_up": "Tümü görüldü", @@ -1341,6 +1362,7 @@ "name_or_nickname": "İsim veya takma isim", "network_requirement_photos_upload": "Fotoğrafları yedeklemek için mobil veriyi kullan", "network_requirement_videos_upload": "Videoları yedeklemek için mobil veriyi kullan", + "network_requirements": "Ağ Gereksinimleri", "network_requirements_updated": "Ağ durumu değişti, yedekleme kuyruğu sıfırlandı", "networking_settings": "Ağ Ayarları", "networking_subtitle": "Sunucu uç nokta ayarlarını düzenle", @@ -1351,6 +1373,7 @@ "new_person": "Yeni kişi", "new_pin_code": "Yeni PIN kodu", "new_pin_code_subtitle": "Kilitli klasöre ilk kez erişiyorsunuz. Bu sayfaya güvenli erişim için bir PIN kodu oluşturun", + "new_timeline": "Yeni Zaman Çizelgesi", "new_user_created": "Yeni kullanıcı oluşturuldu", "new_version_available": "YENİ SÜRÜM MEVCUT", "newest_first": "Önce en yeniler", @@ -1364,20 +1387,25 @@ "no_assets_message": "İLK FOTOĞRAFINIZI YÜKLEMEK İÇİN TIKLAYIN", "no_assets_to_show": "Gösterilecek öğe yok", "no_cast_devices_found": "Yansıtılacak cihaz bulunamadı", + "no_checksum_local": "Sağlama toplamı mevcut değil - yerel varlıkları alamıyor", + "no_checksum_remote": "Sağlama toplamı mevcut değil - uzak varlık alınamıyor", "no_duplicates_found": "Çift bulunamadı.", "no_exif_info_available": "EXIF bilgisi mevcut değil", "no_explore_results_message": "Koleksiyonunuzu keşfetmek için daha fazla fotoğraf yükleyin.", "no_favorites_message": "En sevdiğiniz fotoğraf ve videoları hızlıca bulmak için favorilere ekleyin", "no_libraries_message": "Fotoğraf ve videolarınızı görmek için bir harici kütüphane oluşturun", + "no_local_assets_found": "Bu sağlama toplamı ile yerel varlık bulunamadı", "no_locked_photos_message": "Kilitli klasördeki fotoğraf ve videolar gizlidir; kitaplığınızda gezinirken veya arama yaparken görünmezler.", "no_name": "İsim yok", "no_notifications": "Bildirim yok", "no_people_found": "Eşleşen kişi bulunamadı", "no_places": "Yer yok", + "no_remote_assets_found": "Bu sağlama toplamı ile uzaktaki varlık bulunamadı", "no_results": "Sonuç bulunamadı", "no_results_description": "Eş anlamlı ya da daha genel anlamlı bir kelime deneyin", "no_shared_albums_message": "Fotoğrafları ve videoları ağınızdaki kişilerle paylaşmak için bir albüm oluşturun", "no_uploads_in_progress": "Yükleme işlemi yok", + "not_available": "YOK", "not_in_any_album": "Hiçbir albümde değil", "not_selected": "Seçilmedi", "note_apply_storage_label_to_previously_uploaded assets": "Not: Daha önce yüklenen öğeler için bir depolama yolu etiketi uygulamak üzere şunu başlatın", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Küçük resimler yeniden oluşturuluyor", "remote": "Uzaktan", "remote_assets": "Uzak Öğeler", + "remote_media_summary": "Uzaktan Medya Özeti", "remove": "Kaldır", "remove_assets_album_confirmation": "{count, plural, one {# öğeyi} other {# öğeleri}} albümden çıkarmak istediğinizden emin misiniz?", "remove_assets_shared_link_confirmation": "{count, plural, one {# öğeyi} other {# öğeleri}} bu paylaşılan bağlantıdan çıkarmak istediğinizden emin misiniz?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Slayt geçişini göster", "show_supporter_badge": "Destekçi rozeti", "show_supporter_badge_description": "Destekçi rozetini göster", + "show_text_search_menu": "Metin arama menüsünü göster", "shuffle": "Karıştır", "sidebar": "Yan panel", "sidebar_display_description": "Yan panelde görünüme kısa yol göster", @@ -1893,6 +1923,7 @@ "stacktrace": "Yığın izi", "start": "Başlat", "start_date": "Başlangıç tarihi", + "start_date_before_end_date": "Başlangıç tarihi bitiş tarihinden önce olmalıdır", "state": "Eyalet/İl", "status": "Durum", "stop_casting": "Yansıtmayı durdur", @@ -1974,7 +2005,7 @@ "trash_page_empty_trash_dialog_content": "Çöp kutusuna atılmış öğeleri silmek istediğinize emin misiniz? Bu öğeler Immich'ten kalıcı olarak silinecek", "trash_page_info": "Çöp kutusuna atılan öğeler {days} gün sonra kalıcı olarak silinecektir", "trash_page_no_assets": "Çöp kutusuna atılmış öğe yok", - "trash_page_restore_all": "Tümünü geri yükle", + "trash_page_restore_all": "Tümünü Geri Yükle", "trash_page_select_assets_btn": "Öğeleri seç", "trash_page_title": "Çöp Kutusu ({count})", "trashed_items_will_be_permanently_deleted_after": "Silinen öğeler {days, plural, one {# gün} other {# gün}} sonra kalıcı olarak silinecek.", @@ -1990,16 +2021,16 @@ "unfavorite_action_prompt": "{count} Favorilerden kaldırıldı", "unhide_person": "Kişiyi göster", "unknown": "Bilinmeyen", - "unknown_country": "Bilinmeyen ülke", - "unknown_year": "Bilinmeyen YIl", + "unknown_country": "Bilinmeyen Ülke", + "unknown_year": "Bilinmeyen Yıl", "unlimited": "Sınırsız", "unlink_motion_video": "Hareketli video bağlantısını kaldır", "unlink_oauth": "OAuth bağlantısını kaldır", "unlinked_oauth_account": "Bağlantısı kaldırılmış OAuth hesabı", - "unmute_memories": "Anıların sesini aç", + "unmute_memories": "Anıların Sesini Aç", "unnamed_album": "İsimsiz Albüm", "unnamed_album_delete_confirmation": "Bu albümü silmek istediğinizden emin misiniz?", - "unnamed_share": "İsimsiz paylaşım", + "unnamed_share": "İsimsiz Paylaşım", "unsaved_change": "Kaydedilmemiş değişiklik", "unselect_all": "Tümünü seçimini kaldır", "unselect_all_duplicates": "Tüm çiftlerin seçimini kaldır", @@ -2095,5 +2126,6 @@ "yes": "Evet", "you_dont_have_any_shared_links": "Herhangi bir paylaşılan bağlantınız yok", "your_wifi_name": "Wi-Fi Adınız", - "zoom_image": "Görüntüyü yakınlaştır" + "zoom_image": "Görüntüyü yakınlaştır", + "zoom_to_bounds": "Sınırlara yakınlaştır" } diff --git a/i18n/uk.json b/i18n/uk.json index c87ef4b752..d0b29b5bae 100644 --- a/i18n/uk.json +++ b/i18n/uk.json @@ -123,6 +123,13 @@ "logging_enable_description": "Увімкнути ведення журналу", "logging_level_description": "Коли увімкнено, який рівень журналювання використовувати.", "logging_settings": "Журналювання", + "machine_learning_availability_checks": "Перевірки доступності", + "machine_learning_availability_checks_description": "Автоматично виявляти та надавати перевагу доступним серверам машинного навчання", + "machine_learning_availability_checks_enabled": "Увімкнути перевірки доступності", + "machine_learning_availability_checks_interval": "Інтервал перевірки", + "machine_learning_availability_checks_interval_description": "Інтервал у мілісекундах між перевірками доступності", + "machine_learning_availability_checks_timeout": "Тайм-аут запиту", + "machine_learning_availability_checks_timeout_description": "Тайм-аут у мілісекундах для перевірки доступності", "machine_learning_clip_model": "Модель CLIP", "machine_learning_clip_model_description": "Ім'я однієї з моделей CLIP, яка перерахована тут. Зауважте, що потрібно знову запустити завдання «Розумний пошук» для всіх зображень після зміни моделі.", "machine_learning_duplicate_detection": "Виявлення дублікатів", @@ -387,8 +394,6 @@ "admin_password": "Пароль адміністратора", "administration": "Адміністрування", "advanced": "Розширені", - "advanced_settings_beta_timeline_subtitle": "Випробуйте новий інтерфейс застосунку", - "advanced_settings_beta_timeline_title": "Бета-версія стрічки", "advanced_settings_enable_alternate_media_filter_subtitle": "Використовуйте цей варіант для фільтрації медіафайлів під час синхронізації за альтернативними критеріями. Спробуйте це, якщо у вас виникають проблеми з тим, що застосунок не виявляє всі альбоми.", "advanced_settings_enable_alternate_media_filter_title": "[ЕКСПЕРИМЕНТАЛЬНИЙ] Використовуйте альтернативний фільтр синхронізації альбомів пристрою", "advanced_settings_log_level_title": "Рівень логування: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "Ви впевнені, що хочете видалити {user}?", "album_search_not_found": "Альбомів, що відповідають вашому запиту, не знайдено", "album_share_no_users": "Схоже, ви поділилися цим альбомом з усіма користувачами або у вас немає жодного користувача, з яким можна було б поділитися.", + "album_summary": "Короткий опис альбому", "album_updated": "Альбом оновлено", "album_updated_setting_description": "Отримуйте сповіщення на електронну пошту, коли у спільному альбомі з'являються нові ресурси", "album_user_left": "Ви покинули {album}", @@ -496,6 +502,8 @@ "asset_restored_successfully": "Елемент успішно відновлено", "asset_skipped": "Пропущено", "asset_skipped_in_trash": "У кошику", + "asset_trashed": "Об'єкт видалено з кошика", + "asset_troubleshoot": "Вирішення проблем з активами", "asset_uploaded": "Завантажено", "asset_uploading": "Завантаження…", "asset_viewer_settings_subtitle": "Керуйте налаштуваннями переглядача галереї", @@ -529,8 +537,10 @@ "autoplay_slideshow": "Автоматичне відтворення слайдшоу", "back": "Назад", "back_close_deselect": "Повернутися, закрити або скасувати вибір", + "background_backup_running_error": "Наразі виконується фонове резервне копіювання, неможливо розпочати резервне копіювання вручну", "background_location_permission": "Дозвіл до місцезнаходження у фоні", "background_location_permission_content": "Щоб перемикати мережі у фоновому режимі, Immich має *завжди* мати доступ до точної геолокації, щоб зчитувати назву Wi-Fi мережі", + "background_options": "Параметри фону", "backup": "Резервне копіювання", "backup_album_selection_page_albums_device": "Альбоми на пристрої ({count})", "backup_album_selection_page_albums_tap": "Торкніться, щоб включити, двічі, щоб виключити", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "Оберіть альбоми", "backup_album_selection_page_selection_info": "Інформація про обране", "backup_album_selection_page_total_assets": "Загальна кількість унікальних елементів", + "backup_albums_sync": "Синхронізація резервних копій альбомів", "backup_all": "Усі", "backup_background_service_backup_failed_message": "Не вдалося зробити резервну копію елементів. Повторюю…", "backup_background_service_connection_failed_message": "Не вдалося зв'язатися із сервером. Повторюю…", @@ -654,6 +665,8 @@ "change_pin_code": "Змінити PIN-код", "change_your_password": "Змініть свій пароль", "changed_visibility_successfully": "Видимість успішно змінено", + "charging": "Зарядка", + "charging_requirement_mobile_backup": "Для фонового резервного копіювання пристрій повинен заряджатися", "check_corrupt_asset_backup": "Перевірити на пошкоджені резервні копії ресурсів", "check_corrupt_asset_backup_button": "Виконати перевірку", "check_corrupt_asset_backup_description": "Запустити цю перевірку лише через Wi-Fi та після того, як всі ресурси будуть завантажені на сервер. Процес може зайняти кілька хвилин.", @@ -740,6 +753,7 @@ "create_user": "Створити користувача", "created": "Створено", "created_at": "Створено", + "creating_linked_albums": "Створення пов’язаних альбомів...", "crop": "Кадрувати", "curated_object_page_title": "Речі", "current_device": "Поточний пристрій", @@ -889,7 +903,9 @@ "error": "Помилка", "error_change_sort_album": "Не вдалося змінити порядок сортування альбому", "error_delete_face": "Помилка при видаленні обличчя з елементу", + "error_getting_places": "Помилка отримання місць", "error_loading_image": "Помилка завантаження зображення", + "error_loading_partners": "Помилка завантаження партнерів: {error}", "error_saving_image": "Помилка: {error}", "error_tag_face_bounding_box": "Помилка під час позначення обличчя – не вдалося отримати координати рамки", "error_title": "Помилка: щось пішло не так", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "Немає улюблених елементів", "feature_photo_updated": "Вибране фото оновлено", "features": "Додаткові можливості", + "features_in_development": "Функції в розробці", "features_setting_description": "Керування додатковими можливостями додатка", "file_name": "Ім'я файлу", "file_name_or_extension": "Ім'я файлу або розширення", @@ -1218,6 +1235,7 @@ "local": "На пристрої", "local_asset_cast_failed": "Неможливо транслювати ресурс, який не завантажено на сервер", "local_assets": "Локальні фото та відео", + "local_media_summary": "Зведення місцевих ЗМІ", "local_network": "Локальна мережа", "local_network_sheet_info": "Застосунок підключатиметься до сервера через цей URL, коли використовується вказана Wi-Fi мережа", "location_permission": "Дозвіл до місцезнаходження", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "Вкажіть довготу", "lock": "Заблокувати", "locked_folder": "Особиста папка", + "log_detail_title": "Деталі журналу", "log_out": "Вийти", "log_out_all_devices": "Вийти з усіх пристроїв", "logged_in_as": "Вхід виконано як {user}", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "Пароль оновлено успішно", "logout_all_device_confirmation": "Ви впевнені, що хочете вийти з усіх пристроїв?", "logout_this_device_confirmation": "Ви впевнені, що хочете вийти з цього пристрою?", + "logs": "Журнали", "longitude": "Довгота", "look": "Дивитися", "loop_videos": "Циклічні відео", @@ -1301,6 +1321,7 @@ "mark_as_read": "Позначити як прочитане", "marked_all_as_read": "Позначено всі як прочитані", "matches": "Збіги", + "matching_assets": "Відповідні активи", "media_type": "Тип медіа", "memories": "Спогади", "memories_all_caught_up": "Це все на сьогодні", @@ -1341,6 +1362,7 @@ "name_or_nickname": "Ім'я або псевдонім", "network_requirement_photos_upload": "Використовувати стільникові дані для резервного копіювання фото", "network_requirement_videos_upload": "Використовувати стільникові дані для резервного копіювання відео", + "network_requirements": "Вимоги до мережі", "network_requirements_updated": "Вимоги до мережі змінилися, черга резервного копіювання очищена", "networking_settings": "Мережеві налаштування", "networking_subtitle": "Керування налаштуваннями кінцевої точки сервера", @@ -1351,6 +1373,7 @@ "new_person": "Нова людина", "new_pin_code": "Новий PIN-код", "new_pin_code_subtitle": "Ви вперше отримуєте доступ до особистої папки. Створіть PIN-код для безпечного доступу до цієї сторінки", + "new_timeline": "Нова хронологія", "new_user_created": "Створено нового користувача", "new_version_available": "ДОСТУПНА НОВА ВЕРСІЯ", "newest_first": "Спочатку нові", @@ -1364,20 +1387,25 @@ "no_assets_message": "НАТИСНІТЬ, ЩОБ ЗАВАНТАЖИТИ ВАШЕ ПЕРШЕ ФОТО", "no_assets_to_show": "Елементи відсутні", "no_cast_devices_found": "Пристрої для трансляції не знайдено", + "no_checksum_local": "Контрольна сума недоступна – неможливо отримати локальні ресурси", + "no_checksum_remote": "Контрольна сума недоступна – неможливо отримати віддалений ресурс", "no_duplicates_found": "Дублікатів не виявлено.", "no_exif_info_available": "Відсутня інформація про exif", "no_explore_results_message": "Завантажуйте більше фотографій, щоб насолоджуватися вашою колекцією.", "no_favorites_message": "Додавайте улюблені файли, щоб швидко знаходити ваші найкращі зображення та відео", "no_libraries_message": "Створіть зовнішню бібліотеку для перегляду фотографій і відео", + "no_local_assets_found": "З цією контрольною сумою не знайдено локальних ресурсів", "no_locked_photos_message": "Фото та відео в особистій папці приховані і не відображаються під час перегляду чи пошуку у вашій бібліотеці.", "no_name": "Без імені", "no_notifications": "Немає сповіщень", "no_people_found": "Людей, що відповідають запиту, не знайдено", "no_places": "Місць немає", + "no_remote_assets_found": "З цією контрольною сумою не знайдено віддалених ресурсів", "no_results": "Немає результатів", "no_results_description": "Спробуйте використовувати синонім або більш загальне ключове слово", "no_shared_albums_message": "Створіть альбом, щоб ділитися фотографіями та відео з людьми у вашій мережі", "no_uploads_in_progress": "Немає активних завантажень", + "not_available": "Немає даних", "not_in_any_album": "У жодному альбомі", "not_selected": "Не вибрано", "note_apply_storage_label_to_previously_uploaded assets": "Примітка: Щоб застосувати мітку сховища до раніше завантажених ресурсів, виконайте команду", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "Відновлення мініатюр", "remote": "На сервері", "remote_assets": "Віддалені фото та відео", + "remote_media_summary": "Зведення віддалених медіафайлів", "remove": "Вилучити", "remove_assets_album_confirmation": "Ви впевнені, що хочете видалити {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсів}} з альбому?", "remove_assets_shared_link_confirmation": "Ви впевнені, що хочете видалити {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсів}} з цього спільного посилання?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "Показати перехід слайд-шоу", "show_supporter_badge": "Значок підтримки", "show_supporter_badge_description": "Показати значок підтримки", + "show_text_search_menu": "Показати меню текстового пошуку", "shuffle": "Перемішати", "sidebar": "Бічна панель", "sidebar_display_description": "Відобразити посилання на перегляд у бічній панелі", @@ -1893,6 +1923,7 @@ "stacktrace": "Стек викликів", "start": "Старт", "start_date": "Дата початку", + "start_date_before_end_date": "Дата початку має бути раніше дати завершення", "state": "Регіон", "status": "Стан", "stop_casting": "Зупинити трансляцію", @@ -2095,5 +2126,6 @@ "yes": "Так", "you_dont_have_any_shared_links": "У вас немає спільних посилань", "your_wifi_name": "Назва вашої Wi-Fi мережі", - "zoom_image": "Збільшити зображення" + "zoom_image": "Збільшити зображення", + "zoom_to_bounds": "Збільшити масштаб до меж" } diff --git a/i18n/vi.json b/i18n/vi.json index fe25f7dab8..b9ee8cfcc9 100644 --- a/i18n/vi.json +++ b/i18n/vi.json @@ -360,8 +360,6 @@ "admin_password": "Mật khẩu Quản trị viên", "administration": "Quản trị", "advanced": "Nâng cao", - "advanced_settings_beta_timeline_subtitle": "Trải nghiệm giao diện app mới", - "advanced_settings_beta_timeline_title": "Timeline Beta", "advanced_settings_enable_alternate_media_filter_subtitle": "Dùng tùy chọn này để lọc phương tiện khi đồng bộ theo tiêu chí khác. Chỉ thử khi ứng dụng không nhận diện được tất cả các album.", "advanced_settings_enable_alternate_media_filter_title": "[THỬ NGHIỆM] Dùng bộ lọc đồng bộ album thay thế", "advanced_settings_log_level_title": "Phân loại nhật ký: {level}", diff --git a/i18n/zh_Hant.json b/i18n/zh_Hant.json index 7e273faa0b..b972639153 100644 --- a/i18n/zh_Hant.json +++ b/i18n/zh_Hant.json @@ -387,8 +387,6 @@ "admin_password": "管理員密碼", "administration": "管理", "advanced": "進階", - "advanced_settings_beta_timeline_subtitle": "試用全新的應用程式體驗", - "advanced_settings_beta_timeline_title": "測試版時間軸", "advanced_settings_enable_alternate_media_filter_subtitle": "使用此選項可在同步時依其他條件篩選媒體。僅在應用程式無法偵測到所有相簿時再嘗試使用。", "advanced_settings_enable_alternate_media_filter_title": "[實驗性] 使用替代的裝置相簿同步篩選器", "advanced_settings_log_level_title": "日誌等級:{level}", diff --git a/i18n/zh_SIMPLIFIED.json b/i18n/zh_SIMPLIFIED.json index df9ca98e85..2f8f80e15d 100644 --- a/i18n/zh_SIMPLIFIED.json +++ b/i18n/zh_SIMPLIFIED.json @@ -123,6 +123,13 @@ "logging_enable_description": "启用日志记录", "logging_level_description": "启用时,要使用的日志级别。", "logging_settings": "日志", + "machine_learning_availability_checks": "可用性检查", + "machine_learning_availability_checks_description": "自动检测并优先选择可用的机器学习服务器", + "machine_learning_availability_checks_enabled": "启用可用性检查", + "machine_learning_availability_checks_interval": "检查间隔", + "machine_learning_availability_checks_interval_description": "两次可用性检查之间的间隔(毫秒)", + "machine_learning_availability_checks_timeout": "请求超时", + "machine_learning_availability_checks_timeout_description": "用于可用性检查的超时时间(毫秒)", "machine_learning_clip_model": "CLIP 模型", "machine_learning_clip_model_description": "请于 此处查看支持的 CLIP 模型名称。注意,更换模型后需要对所有图片重新运行“智能搜索”任务。", "machine_learning_duplicate_detection": "重复项检测", @@ -387,8 +394,6 @@ "admin_password": "管理员密码", "administration": "系统管理", "advanced": "高级", - "advanced_settings_beta_timeline_subtitle": "体验全新的应用程序", - "advanced_settings_beta_timeline_title": "测试版时间线", "advanced_settings_enable_alternate_media_filter_subtitle": "使用此选项可在同步过程中根据备用条件筛选项目。仅当您在应用程序检测所有相册均遇到问题时才尝试此功能。", "advanced_settings_enable_alternate_media_filter_title": "[实验] 使用备用的设备相册同步筛选条件", "advanced_settings_log_level_title": "日志等级: {level}", @@ -425,6 +430,7 @@ "album_remove_user_confirmation": "确定要移除“{user}”吗?", "album_search_not_found": "未找到符合搜索条件的相册", "album_share_no_users": "看起来您已与所有用户共享了此相册,或者您根本没有任何用户可共享。", + "album_summary": "相册摘要", "album_updated": "相册有更新", "album_updated_setting_description": "当共享相册有新项目时接收邮件通知", "album_user_left": "离开“{album}”", @@ -496,6 +502,8 @@ "asset_restored_successfully": "已成功恢复所有项目", "asset_skipped": "已跳过", "asset_skipped_in_trash": "已回收", + "asset_trashed": "资产已被删除", + "asset_troubleshoot": "资产故障排除", "asset_uploaded": "已上传", "asset_uploading": "上传中…", "asset_viewer_settings_subtitle": "管理图库浏览器设置", @@ -529,8 +537,10 @@ "autoplay_slideshow": "自动播放幻灯片", "back": "返回", "back_close_deselect": "返回、关闭或反选", + "background_backup_running_error": "后台备份正在运行,无法启动手动备份", "background_location_permission": "后台定位权限", "background_location_permission_content": "为确保后台运行时自动切换网络,需授予 Immich *始终允许精确定位* 权限,以识别 Wi-Fi 网络名称", + "background_options": "背景选项", "backup": "备份", "backup_album_selection_page_albums_device": "设备上的相册({count})", "backup_album_selection_page_albums_tap": "单击选中,双击取消", @@ -538,6 +548,7 @@ "backup_album_selection_page_select_albums": "选择相册", "backup_album_selection_page_selection_info": "选择信息", "backup_album_selection_page_total_assets": "总计", + "backup_albums_sync": "备份相册同步", "backup_all": "全部", "backup_background_service_backup_failed_message": "备份失败,正在重试…", "backup_background_service_connection_failed_message": "连接服务器失败,正在重试…", @@ -654,6 +665,8 @@ "change_pin_code": "修改PIN码", "change_your_password": "修改您的密码", "changed_visibility_successfully": "更改可见性成功", + "charging": "充电", + "charging_requirement_mobile_backup": "后台备份需要设备处于充电状态", "check_corrupt_asset_backup": "检查备份是否损坏", "check_corrupt_asset_backup_button": "执行检查", "check_corrupt_asset_backup_description": "仅在连接到 Wi-Fi 并完成所有项目备份后执行此检查。该过程可能需要几分钟。", @@ -740,6 +753,7 @@ "create_user": "创建用户", "created": "已创建", "created_at": "已创建", + "creating_linked_albums": "正在创建相册链接…", "crop": "裁剪", "curated_object_page_title": "事物", "current_device": "当前设备", @@ -889,7 +903,9 @@ "error": "错误", "error_change_sort_album": "更改相册排序失败", "error_delete_face": "删除人脸失败", + "error_getting_places": "获取位置时出错", "error_loading_image": "加载图片时出错", + "error_loading_partners": "加载同伴时出错:{error}", "error_saving_image": "错误:{error}", "error_tag_face_bounding_box": "标记人脸出错 - 无法获取人脸框坐标", "error_title": "错误 - 好像出了问题", @@ -1054,6 +1070,7 @@ "favorites_page_no_favorites": "未找到收藏项目", "feature_photo_updated": "人物头像已更新", "features": "功能", + "features_in_development": "开发中的功能", "features_setting_description": "管理 App 功能", "file_name": "文件名", "file_name_or_extension": "文件名", @@ -1218,6 +1235,7 @@ "local": "本地", "local_asset_cast_failed": "无法投放未上传至服务器的项目", "local_assets": "本地项目", + "local_media_summary": "本地媒体摘要", "local_network": "本地网络", "local_network_sheet_info": "当使用指定的 Wi-Fi 网络时,应用程序将通过此 URL 访问服务器", "location_permission": "定位权限", @@ -1229,6 +1247,7 @@ "location_picker_longitude_hint": "请在此处输入经度", "lock": "锁定", "locked_folder": "锁定文件夹", + "log_detail_title": "日志详细信息", "log_out": "注销", "log_out_all_devices": "注销所有设备", "logged_in_as": "以 {user} 身份登录", @@ -1259,6 +1278,7 @@ "login_password_changed_success": "密码更新成功", "logout_all_device_confirmation": "确定要从所有设备注销?", "logout_this_device_confirmation": "确定要从本设备注销?", + "logs": "日志", "longitude": "经度", "look": "样式", "loop_videos": "循环视频", @@ -1293,7 +1313,7 @@ "map_settings_date_range_option_years": "{years} 年前", "map_settings_dialog_title": "地图设置", "map_settings_include_show_archived": "包括已归档项目", - "map_settings_include_show_partners": "包含伙伴", + "map_settings_include_show_partners": "包含同伴", "map_settings_only_show_favorites": "仅显示收藏的项目", "map_settings_theme_settings": "地图主题", "map_zoom_to_see_photos": "缩小以查看项目", @@ -1301,6 +1321,7 @@ "mark_as_read": "标记为已读", "marked_all_as_read": "已全部标记为已读", "matches": "匹配", + "matching_assets": "匹配资产", "media_type": "媒体类型", "memories": "回忆", "memories_all_caught_up": "已全部看完", @@ -1341,6 +1362,7 @@ "name_or_nickname": "名称或昵称", "network_requirement_photos_upload": "使用蜂窝数据备份照片", "network_requirement_videos_upload": "使用蜂窝数据备份视频", + "network_requirements": "网络要求", "network_requirements_updated": "网络要求发生变化,正在重置备份队列", "networking_settings": "网络", "networking_subtitle": "管理服务器接口设置", @@ -1351,6 +1373,7 @@ "new_person": "新人物", "new_pin_code": "新的PIN码", "new_pin_code_subtitle": "这是您第一次访问此锁定文件夹。创建一个PIN码以安全访问此页面", + "new_timeline": "新建时间轴", "new_user_created": "已创建新用户", "new_version_available": "有新版本发布啦", "newest_first": "最新优先", @@ -1364,20 +1387,25 @@ "no_assets_message": "点击上传您的第一张照片", "no_assets_to_show": "没有要显示的资产", "no_cast_devices_found": "未找到投放设备", + "no_checksum_local": "没有可用的校验和-无法获取本地资产", + "no_checksum_remote": "没有可用的校验和-无法获取远程资产", "no_duplicates_found": "未发现重复项。", "no_exif_info_available": "没有可用的 EXIF 信息", "no_explore_results_message": "上传更多照片来探索。", "no_favorites_message": "添加到收藏夹,快速查找最佳图片和视频", "no_libraries_message": "创建外部图库来查看您的照片和视频", + "no_local_assets_found": "未找到具有此校验和的本地资产", "no_locked_photos_message": "锁定文件夹中的照片和视频将被隐藏,不会在您浏览、搜索图库时出现。", "no_name": "未命名", "no_notifications": "没有通知", "no_people_found": "未找到匹配的人物", "no_places": "无位置", + "no_remote_assets_found": "未找到具有此校验和的远程资产", "no_results": "无结果", "no_results_description": "尝试使用同义词或更通用的关键词", "no_shared_albums_message": "创建相册以共享照片和视频", "no_uploads_in_progress": "没有正在进行的上传", + "not_available": "不适用", "not_in_any_album": "不在任何相册中", "not_selected": "未选择", "note_apply_storage_label_to_previously_uploaded assets": "提示:要将存储标签应用于之前上传的项目,需要运行", @@ -1588,6 +1616,7 @@ "regenerating_thumbnails": "正在重新生成缩略图", "remote": "远程", "remote_assets": "远程项目", + "remote_media_summary": "远程媒体摘要", "remove": "移除", "remove_assets_album_confirmation": "确定要从图库中移除{count, plural, one {#个项目} other {#个项目}}?", "remove_assets_shared_link_confirmation": "确定要从共享链接中移除{count, plural, one {#个项目} other {#个项目}}?", @@ -1863,6 +1892,7 @@ "show_slideshow_transition": "显示幻灯片过渡效果", "show_supporter_badge": "支持者徽章", "show_supporter_badge_description": "展示支持者徽章", + "show_text_search_menu": "显示文本搜索菜单", "shuffle": "随机", "sidebar": "侧边栏", "sidebar_display_description": "在侧边栏中显示链接", @@ -1893,6 +1923,7 @@ "stacktrace": "堆栈跟踪", "start": "开始", "start_date": "开始日期", + "start_date_before_end_date": "开始日期必须在结束日期之前", "state": "省份", "status": "状态", "stop_casting": "停止投放", @@ -2095,5 +2126,6 @@ "yes": "是", "you_dont_have_any_shared_links": "您没有任何共享链接", "your_wifi_name": "您的 Wi-Fi 名称", - "zoom_image": "缩放图像" + "zoom_image": "缩放图像", + "zoom_to_bounds": "缩放到边界" } From f7acf1886c18482cb0e0bd1ed5580b5b75f496dc Mon Sep 17 00:00:00 2001 From: bo0tzz Date: Mon, 22 Sep 2025 23:27:10 +0200 Subject: [PATCH 20/60] chore: prepare-release workflow tweaks (#21833) --- .github/workflows/merge-translations.yml | 16 ++++++++++++++++ .github/workflows/prepare-release.yml | 8 ++++++++ 2 files changed, 24 insertions(+) diff --git a/.github/workflows/merge-translations.yml b/.github/workflows/merge-translations.yml index a0329c8f73..d65567d400 100644 --- a/.github/workflows/merge-translations.yml +++ b/.github/workflows/merge-translations.yml @@ -10,6 +10,11 @@ on: required: true WEBLATE_TOKEN: required: true + inputs: + skip: + description: 'Skip translations' + required: false + type: boolean permissions: {} @@ -25,6 +30,7 @@ jobs: steps: - name: Find translation PR id: find_pr + if: ${{ inputs.skip != true }} env: GH_TOKEN: ${{ github.token }} run: | @@ -51,18 +57,21 @@ jobs: - name: Generate a token id: generate_token + if: ${{ inputs.skip != true }} uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1 with: app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} - name: Lock weblate + if: ${{ inputs.skip != true }} env: WEBLATE_TOKEN: ${{ secrets.WEBLATE_TOKEN }} run: | curl --fail-with-body -X POST -H "Authorization: Token $WEBLATE_TOKEN" "$WEBLATE_HOST/api/components/$WEBLATE_COMPONENT/lock/" -d lock=true - name: Commit translations + if: ${{ inputs.skip != true }} env: WEBLATE_TOKEN: ${{ secrets.WEBLATE_TOKEN }} run: | @@ -71,6 +80,7 @@ jobs: - name: Merge PR id: merge_pr + if: ${{ inputs.skip != true }} env: GH_TOKEN: ${{ steps.generate_token.outputs.token }} PR_NUMBER: ${{ steps.find_pr.outputs.PR_NUMBER }} @@ -83,6 +93,7 @@ jobs: gh pr merge "$PR_NUMBER" --repo "$GITHUB_REPOSITORY" --auto --squash - name: Wait for PR to merge + if: ${{ inputs.skip != true }} env: GH_TOKEN: ${{ steps.generate_token.outputs.token }} PR_NUMBER: ${{ steps.find_pr.outputs.PR_NUMBER }} @@ -106,7 +117,12 @@ jobs: exit 1 - name: Unlock weblate + if: ${{ inputs.skip != true }} env: WEBLATE_TOKEN: ${{ secrets.WEBLATE_TOKEN }} run: | curl --fail-with-body -X POST -H "Authorization: Token $WEBLATE_TOKEN" "$WEBLATE_HOST/api/components/$WEBLATE_COMPONENT/lock/" -d lock=false + + - name: Report success + run: | + echo "Workflow completed successfully (or was skipped)" diff --git a/.github/workflows/prepare-release.yml b/.github/workflows/prepare-release.yml index add68ffbd7..3d31a4a377 100644 --- a/.github/workflows/prepare-release.yml +++ b/.github/workflows/prepare-release.yml @@ -10,12 +10,17 @@ on: type: choice options: - 'false' + - major - minor - patch mobileBump: description: 'Bump mobile build number' required: false type: boolean + skipTranslations: + description: 'Skip translations' + required: false + type: boolean concurrency: group: ${{ github.workflow }}-${{ github.ref }}-root @@ -26,6 +31,8 @@ permissions: {} jobs: merge_translations: uses: ./.github/workflows/merge-translations.yml + with: + skip: ${{ inputs.skipTranslations }} permissions: pull-requests: write secrets: @@ -35,6 +42,7 @@ jobs: bump_version: runs-on: ubuntu-latest + needs: [merge_translations] outputs: ref: ${{ steps.push-tag.outputs.commit_long_sha }} permissions: {} # No job-level permissions are needed because it uses the app-token From d4b110fc4782fefc21343a5be19c6e8691a0eee9 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Tue, 23 Sep 2025 20:25:35 +0530 Subject: [PATCH 21/60] fix: migrate backup delay from old timeline (#22327) --- .../background/BackgroundWorkerApiImpl.kt | 2 +- .../background/BackgroundWorkerPreferences.kt | 66 ++++++++++--------- .../pages/common/change_experience.page.dart | 5 ++ mobile/lib/utils/migration.dart | 10 ++- 4 files changed, 49 insertions(+), 34 deletions(-) diff --git a/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerApiImpl.kt b/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerApiImpl.kt index 7e0c65eb56..78f2e9e461 100644 --- a/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerApiImpl.kt +++ b/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerApiImpl.kt @@ -47,7 +47,7 @@ class BackgroundWorkerApiImpl(context: Context) : BackgroundWorkerFgHostApi { addContentUriTrigger(MediaStore.Video.Media.INTERNAL_CONTENT_URI, true) addContentUriTrigger(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, true) setTriggerContentUpdateDelay(settings.minimumDelaySeconds, TimeUnit.SECONDS) - setTriggerContentMaxDelay(settings.minimumDelaySeconds * 10, TimeUnit.MINUTES) + setTriggerContentMaxDelay(settings.minimumDelaySeconds * 10, TimeUnit.SECONDS) setRequiresCharging(settings.requiresCharging) }.build() diff --git a/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerPreferences.kt b/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerPreferences.kt index 964ad558fd..cfceb06c1d 100644 --- a/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerPreferences.kt +++ b/mobile/android/app/src/main/kotlin/app/alextran/immich/background/BackgroundWorkerPreferences.kt @@ -5,45 +5,47 @@ import android.content.SharedPreferences import androidx.core.content.edit class BackgroundWorkerPreferences(private val ctx: Context) { - companion object { - const val SHARED_PREF_NAME = "Immich::BackgroundWorker" - private const val SHARED_PREF_MIN_DELAY_KEY = "BackgroundWorker::minDelaySeconds" - private const val SHARED_PREF_REQUIRE_CHARGING_KEY = "BackgroundWorker::requireCharging" - private const val SHARED_PREF_LOCK_KEY = "BackgroundWorker::isLocked" + companion object { + const val SHARED_PREF_NAME = "Immich::BackgroundWorker" + private const val SHARED_PREF_MIN_DELAY_KEY = "BackgroundWorker::minDelaySeconds" + private const val SHARED_PREF_REQUIRE_CHARGING_KEY = "BackgroundWorker::requireCharging" + private const val SHARED_PREF_LOCK_KEY = "BackgroundWorker::isLocked" - private const val DEFAULT_MIN_DELAY_SECONDS = 30L - private const val DEFAULT_REQUIRE_CHARGING = false - } + private const val DEFAULT_MIN_DELAY_SECONDS = 30L + private const val DEFAULT_REQUIRE_CHARGING = false + } - private val sp: SharedPreferences by lazy { - ctx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE) - } + private val sp: SharedPreferences by lazy { + ctx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE) + } - fun updateSettings(settings: BackgroundWorkerSettings) { - sp.edit { - putLong(SHARED_PREF_MIN_DELAY_KEY, settings.minimumDelaySeconds) - putBoolean(SHARED_PREF_REQUIRE_CHARGING_KEY, settings.requiresCharging) - } + fun updateSettings(settings: BackgroundWorkerSettings) { + sp.edit { + putLong(SHARED_PREF_MIN_DELAY_KEY, settings.minimumDelaySeconds) + putBoolean(SHARED_PREF_REQUIRE_CHARGING_KEY, settings.requiresCharging) } + } - fun getSettings(): BackgroundWorkerSettings { - return BackgroundWorkerSettings( - minimumDelaySeconds = sp.getLong(SHARED_PREF_MIN_DELAY_KEY, DEFAULT_MIN_DELAY_SECONDS), - requiresCharging = sp.getBoolean( - SHARED_PREF_REQUIRE_CHARGING_KEY, - DEFAULT_REQUIRE_CHARGING - ), - ) - } + fun getSettings(): BackgroundWorkerSettings { + val delaySeconds = sp.getLong(SHARED_PREF_MIN_DELAY_KEY, DEFAULT_MIN_DELAY_SECONDS) - fun setLocked(paused: Boolean) { - sp.edit { - putBoolean(SHARED_PREF_LOCK_KEY, paused) - } - } + return BackgroundWorkerSettings( + minimumDelaySeconds = if (delaySeconds >= 1000) delaySeconds / 1000 else delaySeconds, + requiresCharging = sp.getBoolean( + SHARED_PREF_REQUIRE_CHARGING_KEY, + DEFAULT_REQUIRE_CHARGING + ), + ) + } - fun isLocked(): Boolean { - return sp.getBoolean(SHARED_PREF_LOCK_KEY, true) + fun setLocked(paused: Boolean) { + sp.edit { + putBoolean(SHARED_PREF_LOCK_KEY, paused) } + } + + fun isLocked(): Boolean { + return sp.getBoolean(SHARED_PREF_LOCK_KEY, true) + } } diff --git a/mobile/lib/pages/common/change_experience.page.dart b/mobile/lib/pages/common/change_experience.page.dart index 2e78b79232..2cc3dede1e 100644 --- a/mobile/lib/pages/common/change_experience.page.dart +++ b/mobile/lib/pages/common/change_experience.page.dart @@ -18,6 +18,7 @@ import 'package:immich_mobile/providers/infrastructure/db.provider.dart'; import 'package:immich_mobile/providers/infrastructure/platform.provider.dart'; import 'package:immich_mobile/providers/infrastructure/readonly_mode.provider.dart'; import 'package:immich_mobile/providers/websocket.provider.dart'; +import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:immich_mobile/services/background.service.dart'; import 'package:immich_mobile/utils/migration.dart'; import 'package:logging/logging.dart'; @@ -93,6 +94,10 @@ class _ChangeExperiencePageState extends ConsumerState { await ref.read(driftProvider).reset(); await Store.put(StoreKey.shouldResetSync, true); + final delay = Store.get(StoreKey.backupTriggerDelay, AppSettingsEnum.backupTriggerDelay.defaultValue); + if (delay >= 1000) { + await Store.put(StoreKey.backupTriggerDelay, (delay / 1000).toInt()); + } final permission = await ref.read(galleryPermissionNotifier.notifier).requestGalleryPermission(); if (permission.isGranted) { diff --git a/mobile/lib/utils/migration.dart b/mobile/lib/utils/migration.dart index 1be8647e3d..2ed6d9549f 100644 --- a/mobile/lib/utils/migration.dart +++ b/mobile/lib/utils/migration.dart @@ -22,13 +22,14 @@ import 'package:immich_mobile/infrastructure/entities/store.entity.drift.dart'; import 'package:immich_mobile/infrastructure/entities/user.entity.dart'; import 'package:immich_mobile/infrastructure/repositories/db.repository.dart'; import 'package:immich_mobile/infrastructure/repositories/sync_stream.repository.dart'; +import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:immich_mobile/utils/debug_print.dart'; import 'package:immich_mobile/utils/diff.dart'; import 'package:isar/isar.dart'; // ignore: import_rule_photo_manager import 'package:photo_manager/photo_manager.dart'; -const int targetVersion = 16; +const int targetVersion = 17; Future migrateDatabaseIfNeeded(Isar db, Drift drift) async { final hasVersion = Store.tryGet(StoreKey.version) != null; @@ -64,6 +65,13 @@ Future migrateDatabaseIfNeeded(Isar db, Drift drift) async { await handleBetaMigration(version, await _isNewInstallation(db, drift), SyncStreamRepository(drift)); + if (version < 17 && Store.isBetaTimelineEnabled) { + final delay = Store.get(StoreKey.backupTriggerDelay, AppSettingsEnum.backupTriggerDelay.defaultValue); + if (delay >= 1000) { + await Store.put(StoreKey.backupTriggerDelay, (delay / 1000).toInt()); + } + } + if (targetVersion >= 12) { await Store.put(StoreKey.version, targetVersion); return; From 5de76dbaee86b0f2b64346b304bdd684d74766b1 Mon Sep 17 00:00:00 2001 From: "Weblate (bot)" Date: Tue, 23 Sep 2025 20:20:27 +0200 Subject: [PATCH 22/60] chore(web): update translations (#22288) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Translate-URL: https://hosted.weblate.org/projects/immich/immich/ar/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/da/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/el/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/hi/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/id/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ja/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lt/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ms/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nb_NO/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ta/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/tr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_SIMPLIFIED/ Translation: Immich/immich Co-authored-by: Andreas Johansen Co-authored-by: Ankur Mishra Co-authored-by: Aqil Iskandar Co-authored-by: DevServs Co-authored-by: Hudio Hizari Co-authored-by: Indrek Haav Co-authored-by: Javier Villanueva García Co-authored-by: Jonas Merkel Co-authored-by: Jozef Gaal Co-authored-by: Lluís Forns Co-authored-by: MaBeniu Co-authored-by: Marcelo Popper Costa Co-authored-by: Marcos lobo Co-authored-by: Matjaž T Co-authored-by: Michael Papadopoulos Co-authored-by: Mohammed Alezi Co-authored-by: Mārtiņš Bruņenieks Co-authored-by: Oleks Povar Co-authored-by: Petri Hämäläinen Co-authored-by: Phil Jope Co-authored-by: PontusÖsterlindh Co-authored-by: Prasanth Baskar Co-authored-by: Remco Co-authored-by: Rimas Raguliūnas Co-authored-by: Shawn Co-authored-by: TV Box Co-authored-by: Tage Lauritsen Co-authored-by: Taiki M Co-authored-by: User 123456789 Co-authored-by: anton garcias Co-authored-by: gablilli Co-authored-by: kylo32 Co-authored-by: pyccl Co-authored-by: vzvl Co-authored-by: Àlex Bravo Co-authored-by: Максим Горпиніч --- i18n/ar.json | 1 + i18n/ca.json | 24 ++++++++++++++------ i18n/da.json | 40 +++++++++++++++++++++++++++++++-- i18n/de.json | 10 +++++---- i18n/el.json | 7 ++++++ i18n/es.json | 18 +++++++-------- i18n/et.json | 2 ++ i18n/fi.json | 1 + i18n/hi.json | 5 +++-- i18n/id.json | 44 ++++++++++++++++++++++++++++++++++-- i18n/it.json | 15 +++++++++++++ i18n/ja.json | 30 ++++++++++++++++++++++++- i18n/lt.json | 21 +++++++++++------ i18n/lv.json | 1 + i18n/ms.json | 6 +++++ i18n/nb_NO.json | 4 +++- i18n/nl.json | 22 +++++++++++++++--- i18n/pl.json | 12 +++++----- i18n/pt.json | 7 ++++++ i18n/pt_BR.json | 10 +++++++++ i18n/ru.json | 10 ++++----- i18n/sk.json | 2 ++ i18n/sl.json | 14 +++++++----- i18n/sv.json | 50 +++++++++++++++++++++++++++++++++++------ i18n/ta.json | 24 +++++++++++--------- i18n/tr.json | 24 +++++++++++--------- i18n/uk.json | 20 +++++++++-------- i18n/zh_SIMPLIFIED.json | 2 ++ 28 files changed, 334 insertions(+), 92 deletions(-) diff --git a/i18n/ar.json b/i18n/ar.json index ec3745546f..3a2e9204f8 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -123,6 +123,7 @@ "logging_enable_description": "تفعيل تسجيل الأحداث", "logging_level_description": "عند التفعيل، أي مستوى تسجيل سيستخدم.", "logging_settings": "تسجيل الاحداث", + "machine_learning_availability_checks": "تحقق من التوفر", "machine_learning_clip_model": "نموذج CLIP", "machine_learning_clip_model_description": "اسم نموذج CLIP مدرجٌ هنا. يرجى ملاحظة أنه يجب إعادة تشغيل وظيفة \"البحث الذكي\" لجميع الصور بعد تغيير النموذج.", "machine_learning_duplicate_detection": "كشف التكرار", diff --git a/i18n/ca.json b/i18n/ca.json index cdedff97ea..2eb795a0d4 100644 --- a/i18n/ca.json +++ b/i18n/ca.json @@ -84,10 +84,10 @@ "image_fullsize_enabled": "Activa la generació d'imatges a tamany complet", "image_fullsize_enabled_description": "Genera imatges a tamany complet per formats no compatibles amb la web. Quan \"Prefereix vista prèvia incrustada\" està activat, les vistes prèvies incrustades s'utilitzen directament sense conversió. No afecta els formats compatibles amb la web com JPEG.", "image_fullsize_quality_description": "De 1 a 100, qualitat de l'imatge a tamany complet. Un valor més alt és millor, però resulta en fitxers de major tamany.", - "image_fullsize_title": "Configuració d'imatges a tamany complet", + "image_fullsize_title": "Configuració de les imatges a tamany complet", "image_prefer_embedded_preview": "Prefereix vista prèvia incrustada", "image_prefer_embedded_preview_setting_description": "Empra vista prèvia incrustada en les fotografies RAW com a entrada per al processament d'imatge, quan sigui possible. Aquesta acció pot produir colors més acurats en algunes imatges, però la qualitat de la vista prèvia depèn de la càmera i la imatge pot tenir més artefactes de compressió.", - "image_prefer_wide_gamut": "Prefereix àmplia gamma", + "image_prefer_wide_gamut": "Prefereix la gamma àmplia", "image_prefer_wide_gamut_setting_description": "Uitlitza Display P3 per a les miniatures. Això preserva més bé la vitalitat de les imatges amb espais de color àmplis, però les imatges es poden veure diferent en aparells antics amb una versió antiga del navegador. Les imatges sRGB romandran com a sRGB per a evitar canvis de color.", "image_preview_description": "Imatge de mida mitjana amb metadades eliminades, que s'utilitza quan es visualitza un sol recurs i per a l'aprenentatge automàtic", "image_preview_quality_description": "Vista prèvia de la qualitat de l'1 al 100. Més alt és millor, però produeix fitxers més grans i pot reduir la capacitat de resposta de l'aplicació. Establir un valor baix pot afectar la qualitat de l'aprenentatge automàtic.", @@ -95,11 +95,11 @@ "image_quality": "Qualitat", "image_resolution": "Resolució", "image_resolution_description": "Les resolucions més altes poden conservar més detalls però triguen més a codificar-se, tenen mides de fitxer més grans i poden reduir la capacitat de resposta de l'aplicació.", - "image_settings": "Configuració d'imatges", + "image_settings": "Configuració de les imatges", "image_settings_description": "Gestiona la qualitat i resolució de les imatges generades", "image_thumbnail_description": "Miniatura petita amb metadades eliminades, que s'utilitza quan es visualitzen grups de fotos com la línia de temps principal", "image_thumbnail_quality_description": "Qualitat de miniatura d'1 a 100. Més alt és millor, però produeix fitxers més grans i pot reduir la capacitat de resposta de l'aplicació.", - "image_thumbnail_title": "Configuració de miniatures", + "image_thumbnail_title": "Configuració de les miniatures", "job_concurrency": "{job} simultàniament", "job_created": "Tasca creada", "job_not_concurrency_safe": "Aquesta tasca no és segura per a la conconcurrència.", @@ -123,6 +123,13 @@ "logging_enable_description": "Habilitar el registrament", "logging_level_description": "Quan està habilitat, quin nivell de registre es vol emprar.", "logging_settings": "Registre", + "machine_learning_availability_checks": "Comprovacions de disponibilitat", + "machine_learning_availability_checks_description": "Detectar i preferir automàticament els servidors d'aprenentatge automàtic disponibles", + "machine_learning_availability_checks_enabled": "Habilita les comprovacions de disponibilitat", + "machine_learning_availability_checks_interval": "Interval de comprovació", + "machine_learning_availability_checks_interval_description": "Interval en mil·lisegons entre comprovacions de disponibilitat", + "machine_learning_availability_checks_timeout": "Temps d'espera de la sol·licitud", + "machine_learning_availability_checks_timeout_description": "Temps d'espera en mil·lisegons per a les comprovacions de disponibilitat", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "El nom d'un model CLIP que apareix a aquí. Tingues en compte que has de tornar a executar la cerca intel·ligent per a totes les imatges quan es canvia de model.", "machine_learning_duplicate_detection": "Detecció de duplicats", @@ -496,6 +503,7 @@ "asset_skipped": "Saltat", "asset_skipped_in_trash": "A la paperera", "asset_trashed": "Recurs a la paperera", + "asset_troubleshoot": "Diagnòstic de l'element", "asset_uploaded": "Carregat", "asset_uploading": "S'està carregant…", "asset_viewer_settings_subtitle": "Gestiona la configuració del visualitzador de la galeria", @@ -532,6 +540,7 @@ "background_backup_running_error": "La còpia de seguretat en segon pla s'està executant actualment, no es pot iniciar la còpia de seguretat manual", "background_location_permission": "Permís d'ubicació en segon pla", "background_location_permission_content": "Per canviar de xarxa quan s'executa en segon pla, Immich ha de *sempre* tenir accés a la ubicació precisa perquè l'aplicació pugui llegir el nom de la xarxa Wi-Fi", + "background_options": "Opcions en segon pla", "backup": "Còpia", "backup_album_selection_page_albums_device": "Àlbums al dispositiu ({count})", "backup_album_selection_page_albums_tap": "Un toc per incloure, doble toc per excloure", @@ -655,6 +664,7 @@ "change_pin_code": "Canviar el codi PIN", "change_your_password": "Canvia la teva contrasenya", "changed_visibility_successfully": "Visibilitat canviada amb èxit", + "charging": "Carregant", "check_corrupt_asset_backup": "Comprovar les còpies de seguretat corruptes", "check_corrupt_asset_backup_button": "Realitzar comprovació", "check_corrupt_asset_backup_description": "Executeu aquesta comprovació només mitjançant Wi-Fi i un cop s'hagi fet una còpia de seguretat de tots els actius. El procediment pot trigar uns minuts.", @@ -880,7 +890,7 @@ "empty_trash": "Buidar la paperera", "empty_trash_confirmation": "Esteu segur que voleu buidar la paperera? Això eliminarà tots els recursos a la paperera permanentment d'Immich.\nNo podeu desfer aquesta acció!", "enable": "Activar", - "enable_backup": "Habilitar Còpia de Seguretat", + "enable_backup": "Còpia de Seguretat", "enable_biometric_auth_description": "Introduïu el codi PIN per a habilitar l'autenticació biomètrica", "enabled": "Activat", "end_date": "Data final", @@ -1517,9 +1527,9 @@ "profile_drawer_app_logs": "Registres", "profile_drawer_client_out_of_date_major": "L'aplicació mòbil està desactualitzada. Si us plau, actualitzeu a l'última versió major.", "profile_drawer_client_out_of_date_minor": "L'aplicació mòbil està desactualitzada. Si us plau, actualitzeu a l'última versió menor.", - "profile_drawer_client_server_up_to_date": "El Client i el Servidor estan actualitzats", + "profile_drawer_client_server_up_to_date": "El client i el servidor estan actualitzats", "profile_drawer_github": "GitHub", - "profile_drawer_readonly_mode": "Manera de només lectura activada. Feu doble click a la icona de l'avatar de l'usuari per sortir.", + "profile_drawer_readonly_mode": "Mode només lectura. Feu pulsació llarga a la icona de l'avatar d'usuari per sortir.", "profile_drawer_server_out_of_date_major": "El servidor està desactualitzat. Si us plau, actualitzeu a l'última versió major.", "profile_drawer_server_out_of_date_minor": "El servidor està desactualitzat. Si us plau, actualitzeu a l'última versió menor.", "profile_image_of_user": "Imatge de perfil de {user}", diff --git a/i18n/da.json b/i18n/da.json index 9c25a293bc..61891e7ef8 100644 --- a/i18n/da.json +++ b/i18n/da.json @@ -123,6 +123,13 @@ "logging_enable_description": "Aktiver logning", "logging_level_description": "Når slået til, hvilket logniveau, der skal bruges.", "logging_settings": "Logning", + "machine_learning_availability_checks": "Tilgængelighedstjek", + "machine_learning_availability_checks_description": "Opdag og foretræk automatisk tilgængelige maskinlæringsservere", + "machine_learning_availability_checks_enabled": "Aktivér tilgængelighedstjek", + "machine_learning_availability_checks_interval": "Kontroller interval", + "machine_learning_availability_checks_interval_description": "Interval i millisekunder mellem tilgængelighedstjeks", + "machine_learning_availability_checks_timeout": "Timeout på anmodning", + "machine_learning_availability_checks_timeout_description": "Timeout i millisekunder på tilgængelighedstjeks", "machine_learning_clip_model": "CLIP-model", "machine_learning_clip_model_description": "Navnet på CLIP-modellen på listen her. Bemærk at du skal genkøre \"Smart Søgning\"-jobbet for alle billeder, hvis du skifter model.", "machine_learning_duplicate_detection": "Dubletdetektion", @@ -423,6 +430,7 @@ "album_remove_user_confirmation": "Er du sikker på at du vil fjerne {user}?", "album_search_not_found": "Ingen album fundet som matcher din søgning", "album_share_no_users": "Det ser ud til at du har delt denne album med alle brugere, eller du har ikke nogen brugere til at dele med.", + "album_summary": "Albumoversigt", "album_updated": "Album opdateret", "album_updated_setting_description": "Modtag en emailnotifikation når et delt album får nye mediefiler", "album_user_left": "Forlod {album}", @@ -494,6 +502,8 @@ "asset_restored_successfully": "Elementet blev gendannet succesfuldt", "asset_skipped": "Sprunget over", "asset_skipped_in_trash": "I skraldespand", + "asset_trashed": "Objekt kasseret", + "asset_troubleshoot": "Fejlsøg på objekt", "asset_uploaded": "Uploadet", "asset_uploading": "Uploader…", "asset_viewer_settings_subtitle": "Administrer indstillinger for gallerifremviser", @@ -527,8 +537,10 @@ "autoplay_slideshow": "Afspil slideshow automatisk", "back": "Tilbage", "back_close_deselect": "Tilbage, luk eller fravælg", + "background_backup_running_error": "Backup kører lige nu i baggrund; kan ikke starte manuel backup", "background_location_permission": "Tilladelse til baggrundsplacering", "background_location_permission_content": "For at skifte netværk, når appen kører i baggrunden, skal Immich *altid* have præcis placeringsadgang, så appen kan læse WiFi-netværkets navn", + "background_options": "Baggrundsmuligheder", "backup": "Sikkerhedskopier", "backup_album_selection_page_albums_device": "Albummer på enheden ({count})", "backup_album_selection_page_albums_tap": "Tryk en gang for at inkludere, tryk to gange for at ekskludere", @@ -536,6 +548,7 @@ "backup_album_selection_page_select_albums": "Vælg albummer", "backup_album_selection_page_selection_info": "Oplysninger om valgte", "backup_album_selection_page_total_assets": "Samlede unikke elementer", + "backup_albums_sync": "Synkronisering af backupalbums", "backup_all": "Alt", "backup_background_service_backup_failed_message": "Sikkerhedskopiering af elementer fejlede. Forsøger igen…", "backup_background_service_connection_failed_message": "Forbindelsen til serveren blev tabt. Forsøger igen…", @@ -633,7 +646,7 @@ "cannot_merge_people": "Kan ikke sammenflette personer", "cannot_undo_this_action": "Du kan ikke fortryde denne handling!", "cannot_update_the_description": "Kan ikke opdatere beskrivelsen", - "cast": "Cast", + "cast": "Caste", "cast_description": "Konfigurer tilgængelige cast destinationer", "change_date": "Ændr dato", "change_description": "Beskrivelse af ændringer", @@ -652,6 +665,8 @@ "change_pin_code": "Skift PIN kode", "change_your_password": "Skift dit kodeord", "changed_visibility_successfully": "Synlighed blev ændret", + "charging": "Lader", + "charging_requirement_mobile_backup": "Baggrundsbackup kræver, at enheden er tilsluttet oplader", "check_corrupt_asset_backup": "Tjek for korrupte sikkerhedskopier af elementer", "check_corrupt_asset_backup_button": "Foretag kontrol", "check_corrupt_asset_backup_description": "Kør kun denne kontrol via Wi-Fi, og når alle elementer er blevet sikkerhedskopieret. Proceduren kan tage et par minutter.", @@ -738,6 +753,7 @@ "create_user": "Opret bruger", "created": "Oprettet", "created_at": "Oprettet", + "creating_linked_albums": "Opretter sammenkædede albums...", "crop": "Beskær", "curated_object_page_title": "Ting", "current_device": "Nuværende enhed", @@ -887,7 +903,9 @@ "error": "Fejl", "error_change_sort_album": "Ændring af sorteringsrækkefølgen mislykkedes", "error_delete_face": "Fejl ved sletning af ansigt fra mediefil", + "error_getting_places": "Fejl ved hentning af steder", "error_loading_image": "Fejl ved indlæsning af billede", + "error_loading_partners": "Fejl ved indlæsning af partnere: {error}", "error_saving_image": "Fejl: {error}", "error_tag_face_bounding_box": "Fejl ved tagging af ansigt - kan ikke finde koordinator for afgrænsningskasse", "error_title": "Fejl - Noget gik galt", @@ -1052,6 +1070,7 @@ "favorites_page_no_favorites": "Ingen favoritter blev fundet", "feature_photo_updated": "Forsidebillede uploadet", "features": "Funktioner", + "features_in_development": "Funktioner under udvikling", "features_setting_description": "Administrer app-funktioner", "file_name": "Filnavn", "file_name_or_extension": "Filnavn eller filtype", @@ -1216,6 +1235,7 @@ "local": "Lokal", "local_asset_cast_failed": "Kan ikke caste et aktiv, der ikke er uploadet til serveren", "local_assets": "Lokale objekter", + "local_media_summary": "Opsummering af lokale media", "local_network": "Lokalt netværk", "local_network_sheet_info": "Appen vil oprette forbindelse til serveren via denne URL, når du bruger det angivne WiFi-netværk", "location_permission": "Tilladelse til placering", @@ -1227,6 +1247,7 @@ "location_picker_longitude_hint": "Indtast din længdegrad her", "lock": "Lås", "locked_folder": "Låst mappe", + "log_detail_title": "Logdetaljer", "log_out": "Log ud", "log_out_all_devices": "Log ud af alle enheder", "logged_in_as": "Logget ind som {user}", @@ -1257,6 +1278,7 @@ "login_password_changed_success": "Kodeordet blev opdateret", "logout_all_device_confirmation": "Er du sikker på, at du vil logge ud af alle enheder?", "logout_this_device_confirmation": "Er du sikker på, at du vil logge denne enhed ud?", + "logs": "Logs", "longitude": "Længdegrad", "look": "Kig", "loop_videos": "Gentag videoer", @@ -1299,6 +1321,7 @@ "mark_as_read": "Marker som læst", "marked_all_as_read": "Markerede alle som læst", "matches": "Parringer", + "matching_assets": "Matchende objekter", "media_type": "Medietype", "memories": "Minder", "memories_all_caught_up": "Ajour", @@ -1339,6 +1362,7 @@ "name_or_nickname": "Navn eller kælenavn", "network_requirement_photos_upload": "Benyt mobildatanettet for at sikkerhedskopiere dine fotos", "network_requirement_videos_upload": "Benyt mobildatanettet for at sikkerhedskopiere dine videoer", + "network_requirements": "Netværkskrav", "network_requirements_updated": "Netværkskravene er ændret, backup-køen nulstilles", "networking_settings": "Netværk", "networking_subtitle": "Administrer serverens endepunktindstillinger", @@ -1349,6 +1373,7 @@ "new_person": "Ny person", "new_pin_code": "Ny PIN kode", "new_pin_code_subtitle": "Dette er første gang du tilgår den låste mappe. Lav en PIN kode for sikkert at tilgå denne side", + "new_timeline": "Ny tidslinje", "new_user_created": "Ny bruger oprettet", "new_version_available": "NY VERSION TILGÆNGELIG", "newest_first": "Nyeste først", @@ -1362,20 +1387,25 @@ "no_assets_message": "KLIK FOR AT UPLOADE DIT FØRSTE BILLEDE", "no_assets_to_show": "Ingen elementer at vise", "no_cast_devices_found": "Ingen Cast-enheder fundet", + "no_checksum_local": "Ingen checksum tilgængelig – kan ikke hente lokale objekter", + "no_checksum_remote": "Ingen checksum tilgængelig – kan ikke hente eksterne objekter", "no_duplicates_found": "Ingen duplikater fundet.", "no_exif_info_available": "Ingen tilgængelig exif information", "no_explore_results_message": "Upload flere billeder for at udforske din samling.", "no_favorites_message": "Tilføj favoritter for hurtigt at finde dine bedst billeder og videoer", "no_libraries_message": "Opret et eksternt bibliotek for at se dine billeder og videoer", + "no_local_assets_found": "Ingen lokale objekter fundet med denne checksum", "no_locked_photos_message": "Billeder og videoer i den låste mappe er skjulte og vil ikke blive vist i dit bibliotek.", "no_name": "Intet navn", "no_notifications": "Ingen notifikationer", "no_people_found": "Ingen tilsvarende personer fundet", "no_places": "Ingen steder", + "no_remote_assets_found": "Ingen eksterne objekter fundet med denne checksum", "no_results": "Ingen resultater", "no_results_description": "Prøv et synonym eller et mere generelt søgeord", "no_shared_albums_message": "Opret et album for at dele billeder og videoer med personer i dit netværk", "no_uploads_in_progress": "Ingen upload i gang", + "not_available": "ikke tilgængelig", "not_in_any_album": "Ikke i noget album", "not_selected": "Ikke valgt", "note_apply_storage_label_to_previously_uploaded assets": "Bemærk: For at anvende Lagringsmærkat på tidligere uploadede medier, kør", @@ -1497,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Administrer app-præferencer", "preferences_settings_title": "Præferencer", + "preparing": "Forberedelse", "preset": "Forudindstilling", "preview": "Forhåndsvisning", "previous": "Forrige", @@ -1562,6 +1593,7 @@ "read_changelog": "Læs ændringslog", "readonly_mode_disabled": "Skrivebeskyttet tilstand deaktiveret", "readonly_mode_enabled": "Skrivebeskyttet tilstand aktiveret", + "ready_for_upload": "Klar til upload", "reassign": "Gentildel", "reassigned_assets_to_existing_person": "{count, plural, one {# mediefil} other {# mediefiler}} er blevet gentildelt til {name, select, null {en eksisterende person} other {{name}}}", "reassigned_assets_to_new_person": "Gentildelt {count, plural, one {# aktiv} other {# aktiver}} til en ny person", @@ -1586,6 +1618,7 @@ "regenerating_thumbnails": "Regenererer forhåndsvisninger", "remote": "Eksternt", "remote_assets": "Eksterne objekter", + "remote_media_summary": "Oversigt over eksterne media", "remove": "Fjern", "remove_assets_album_confirmation": "Er du sikker på, at du vil fjerne {count, plural, one {# aktiv} other {# aktiver}} fra albummet?", "remove_assets_shared_link_confirmation": "Er du sikker på, at du vil fjerne {count, plural, one {# aktiv} other {# aktiver}} fra dette delte link?", @@ -1861,6 +1894,7 @@ "show_slideshow_transition": "Vis overgang til diasshow", "show_supporter_badge": "Supportermærke", "show_supporter_badge_description": "Vis et supportermærke", + "show_text_search_menu": "Vis tekstsøgningsmenu", "shuffle": "Bland", "sidebar": "Sidebjælke", "sidebar_display_description": "Vis et link til visningen i sidebjælken", @@ -1891,6 +1925,7 @@ "stacktrace": "Stacktrace", "start": "Start", "start_date": "Startdato", + "start_date_before_end_date": "Startdato skal ligge før slutdato", "state": "Stat", "status": "Status", "stop_casting": "Stop støbning", @@ -2093,5 +2128,6 @@ "yes": "Ja", "you_dont_have_any_shared_links": "Du har ikke nogen delte links", "your_wifi_name": "Dit Wi-Fi navn", - "zoom_image": "Zoom billede" + "zoom_image": "Zoom billede", + "zoom_to_bounds": "Zoom til grænserne" } diff --git a/i18n/de.json b/i18n/de.json index cef8a5b4d5..a9deba04fa 100644 --- a/i18n/de.json +++ b/i18n/de.json @@ -1360,8 +1360,8 @@ "my_albums": "Meine Alben", "name": "Name", "name_or_nickname": "Name oder Nickname", - "network_requirement_photos_upload": "Mobiles Datennetz verwenden, um Fotos zu sichern", - "network_requirement_videos_upload": "Mobiles Datennetz verwenden, um Videos zu sichern", + "network_requirement_photos_upload": "Mobile Daten verwenden, um Fotos zu sichern", + "network_requirement_videos_upload": "Mobile Daten verwenden, um Videos zu sichern", "network_requirements": "Anforderungen ans Netzwerk", "network_requirements_updated": "Netzwerk-Abhängigkeiten haben sich geändert, Backup-Warteschlange wird zurückgesetzt", "networking_settings": "Netzwerk", @@ -1503,7 +1503,7 @@ "person": "Person", "person_age_months": "{months, plural, one {# month} other {# months}} alt", "person_age_year_months": "1 Jahr, {months, plural, one {# month} other {# months}} alt", - "person_age_years": "{years, plural, other {# years}} alt", + "person_age_years": "{years, plural, one {# Jahr} other {# Jahre}} alt", "person_birthdate": "Geboren am {date}", "person_hidden": "{name}{hidden, select, true { (verborgen)} other {}}", "photo_shared_all_users": "Es sieht so aus, als hättest du deine Fotos mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.", @@ -1527,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "App-Einstellungen verwalten", "preferences_settings_title": "Voreinstellungen", + "preparing": "Vorbereiten", "preset": "Voreinstellung", "preview": "Vorschau", "previous": "Vorherige", @@ -1569,7 +1570,7 @@ "purchase_license_subtitle": "Kaufe Immich, um die fortlaufende Entwicklung zu unterstützen", "purchase_lifetime_description": "Lebenslange Gültigkeit", "purchase_option_title": "KAUFOPTIONEN", - "purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe, und wir haben Vollzeit-Entwickler, die daran arbeiten es möglichst perfekt zu machen. Unser Ziel ist es, dass Open-Source-Software und moralische Geschäftsmethoden zu einer nachhaltigen Einkommensquelle für Entwickler werden und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten geschaffen wird.", + "purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe und wir haben Vollzeit-Entwickler, die daran arbeiten Immich möglichst perfekt zu machen. Unser Ziel ist es, Open-Source-Software und ethische Geschäftspraktiken zu einer verlässlichen Einkommensquelle für Entwickler zu machen und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten zu schaffen.", "purchase_panel_info_2": "Weil wir uns dagegen entschieden haben, eine Bezahlschranke einzusetzen, wird dieser Kauf keine zusätzlichen Funktionen in Immich freischalten. Wir verlassen uns auf Nutzende wie dich, um die Entwicklung von Immich zu unterstützen.", "purchase_panel_title": "Das Projekt unterstützen", "purchase_per_server": "Pro Server", @@ -1592,6 +1593,7 @@ "read_changelog": "Changelog lesen", "readonly_mode_disabled": "Schreibgeschützter Modus deaktiviert", "readonly_mode_enabled": "Schreibgeschützter Modus aktiviert", + "ready_for_upload": "Bereit zum Hochladen", "reassign": "Neu zuweisen", "reassigned_assets_to_existing_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} {name, select, null {einer vorhandenen Person} other {{name}}} zugewiesen", "reassigned_assets_to_new_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} einer neuen Person zugewiesen", diff --git a/i18n/el.json b/i18n/el.json index a8eeb59740..cb6708d711 100644 --- a/i18n/el.json +++ b/i18n/el.json @@ -123,6 +123,13 @@ "logging_enable_description": "Ενεργοποίηση καταγραφής συμβάντων", "logging_level_description": "Το επίπεδο καταγραφής συμβάντων που θα εφαρμοστεί, όταν αυτή είναι ενεργοποιημένη.", "logging_settings": "Καταγραφή Συμβάντων", + "machine_learning_availability_checks": "Έλεγχοι διαθεσιμότητας", + "machine_learning_availability_checks_description": "Αυτόματος ανίχνευση και προτίμηση διαθέσιμων διακομιστών μηχανικής μάθησης", + "machine_learning_availability_checks_enabled": "Ενεργοποίηση ελέγχων διαθεσιμότητας", + "machine_learning_availability_checks_interval": "Διάστημα ελέγχου", + "machine_learning_availability_checks_interval_description": "Διάστημα σε χιλιοστά δευτερολέπτου μεταξύ των ελέγχων διαθεσιμότητας", + "machine_learning_availability_checks_timeout": "Αίτημα χρονικού ορίου λήξης", + "machine_learning_availability_checks_timeout_description": "Χρονικό όριο σε χιλιοστά δευτερολέπτου για ελέγχους διαθεσιμότητας", "machine_learning_clip_model": "Μοντέλο CLIP", "machine_learning_clip_model_description": "Το όνομα ενός μοντέλου CLIP που αναφέρεται εδώ. Σημειώστε ότι πρέπει να επανεκτελέσετε την εργασία 'Έξυπνη Αναζήτηση' για όλες τις εικόνες μετά την αλλαγή μοντέλου.", "machine_learning_duplicate_detection": "Εντοπισμός Διπλότυπων", diff --git a/i18n/es.json b/i18n/es.json index e4873051f6..40ea723ded 100644 --- a/i18n/es.json +++ b/i18n/es.json @@ -123,13 +123,13 @@ "logging_enable_description": "Habilitar registro", "logging_level_description": "Indica el nivel de registro a utilizar cuando está habilitado.", "logging_settings": "Registro", - "machine_learning_availability_checks": "Verificaciones de disponibilidad", + "machine_learning_availability_checks": "Comprobaciones de disponibilidad", "machine_learning_availability_checks_description": "Automáticamente detectar y preferir servidores de machine learning disponibles", - "machine_learning_availability_checks_enabled": "Habilitar verificaciones de disponibilidad", - "machine_learning_availability_checks_interval": "Intervalo de verificación", - "machine_learning_availability_checks_interval_description": "Intervalo en milisegundos entre las verificaciones de disponibilidad", + "machine_learning_availability_checks_enabled": "Habilitar comprobaciones de disponibilidad", + "machine_learning_availability_checks_interval": "Intervalo de comprobación", + "machine_learning_availability_checks_interval_description": "Intervalo en milisegundos entre las comprobaciones de disponibilidad", "machine_learning_availability_checks_timeout": "Tiempo de espera de solicitud", - "machine_learning_availability_checks_timeout_description": "Tiempo de espera en milisegundos para verificaciones de disponibilidad", + "machine_learning_availability_checks_timeout_description": "Tiempo de espera en milisegundos para comprobaciones de disponibilidad", "machine_learning_clip_model": "Modelo CLIP (Contrastive Language-Image Pre-Training)", "machine_learning_clip_model_description": "El nombre de un modelo CLIP listado aquí. Tendrás que relanzar el trabajo 'Búsqueda Inteligente' para todos los elementos al cambiar de modelo.", "machine_learning_duplicate_detection": "Detección de duplicados", @@ -698,7 +698,7 @@ "comments_and_likes": "Comentarios y me gusta", "comments_are_disabled": "Los comentarios están deshabilitados", "common_create_new_album": "Crear nuevo álbum", - "common_server_error": "Por favor, verifica tu conexión de red, asegúrate de que el servidor esté accesible y las versiones de la aplicación y del servidor sean compatibles.", + "common_server_error": "Por favor, comprueba tu conexión de red, asegúrate de que el servidor esté accesible y las versiones de la aplicación y del servidor sean compatibles.", "completed": "Completado", "confirm": "Confirmar", "confirm_admin_password": "Confirmar contraseña del administrador", @@ -812,7 +812,7 @@ "deletes_missing_assets": "Elimina archivos que faltan en el disco duro", "description": "Descripción", "description_input_hint_text": "Agregar descripción...", - "description_input_submit_error": "Error al actualizar la descripción, verifica el registro para obtener más detalles", + "description_input_submit_error": "Error al actualizar la descripción, comprueba el registro para obtener más detalles", "deselect_all": "Deseleccionar Todo", "details": "Detalles", "direction": "Dirección", @@ -1255,7 +1255,7 @@ "logged_out_device": "Dispositivo desconectado", "login": "Inicio de sesión", "login_disabled": "El inicio de sesión ha sido desactivado", - "login_form_api_exception": "Excepción producida por API. Por favor, verifica el URL del servidor e inténtalo de nuevo.", + "login_form_api_exception": "Excepción producida por API. Por favor, comprueba el URL del servidor e inténtalo de nuevo.", "login_form_back_button_text": "Atrás", "login_form_email_hint": "tucorreo@correo.com", "login_form_endpoint_hint": "http://tu-ip-de-servidor:puerto", @@ -1265,7 +1265,7 @@ "login_form_err_invalid_url": "URL no válida", "login_form_err_leading_whitespace": "Espacio en blanco inicial", "login_form_err_trailing_whitespace": "Espacio en blanco al final", - "login_form_failed_get_oauth_server_config": "Error al iniciar sesión con OAuth, verifica la URL del servidor", + "login_form_failed_get_oauth_server_config": "Error al iniciar sesión con OAuth, comprueba la URL del servidor", "login_form_failed_get_oauth_server_disable": "La función de OAuth no está disponible en este servidor", "login_form_failed_login": "Error al iniciar sesión, comprueba la URL del servidor, el correo electrónico y la contraseña", "login_form_handshake_exception": "Hubo una excepción de handshake con el servidor. Activa la compatibilidad con certificados autofirmados en la configuración si estás utilizando un certificado autofirmado.", diff --git a/i18n/et.json b/i18n/et.json index 3f38f32d3e..3683f142f3 100644 --- a/i18n/et.json +++ b/i18n/et.json @@ -1526,6 +1526,7 @@ "port": "Port", "preferences_settings_subtitle": "Halda rakenduse eelistusi", "preferences_settings_title": "Eelistused", + "preparing": "Ettevalmistamine", "preset": "Eelseadistus", "preview": "Eelvaade", "previous": "Eelmine", @@ -1590,6 +1591,7 @@ "read_changelog": "Vaata muudatuste ülevaadet", "readonly_mode_disabled": "Kirjutuskaitserežiim välja lülitatud", "readonly_mode_enabled": "Kirjutuskaitserežiim sisse lülitatud", + "ready_for_upload": "Valmis üleslaadimiseks", "reassign": "Määra uuesti", "reassigned_assets_to_existing_person": "{count, plural, one {# üksus} other {# üksust}} seostatud {name, select, null {olemasoleva isikuga} other {isikuga {name}}}", "reassigned_assets_to_new_person": "{count, plural, one {# üksus} other {# üksust}} seostatud uue isikuga", diff --git a/i18n/fi.json b/i18n/fi.json index b3f1542906..d2b36cf4d3 100644 --- a/i18n/fi.json +++ b/i18n/fi.json @@ -123,6 +123,7 @@ "logging_enable_description": "Ota lokikirjaus käyttöön", "logging_level_description": "Kun käytössä, mitä lokituksen tasoa käytetään.", "logging_settings": "Lokit", + "machine_learning_availability_checks": "Saatavyystarkastukset", "machine_learning_clip_model": "CLIP-malli", "machine_learning_clip_model_description": "Käytettävän CLIP-mallin nimi toimivien mallien listasta. Huomaa että sinun täytyy suorittaa \"Älykäs etsintä\"-työ uudelleen vaihdettuasi käytettävää mallia.", "machine_learning_duplicate_detection": "Kaksoiskappaleiden tunnistus", diff --git a/i18n/hi.json b/i18n/hi.json index 4c9eb7bd5d..385a85c2e2 100644 --- a/i18n/hi.json +++ b/i18n/hi.json @@ -1546,6 +1546,7 @@ "year": "वर्ष", "yes": "हाँ", "you_dont_have_any_shared_links": "आपके पास कोई साझा लिंक नहीं है", - "your_wifi_name": "Your WiFi name", - "zoom_image": "छवि ज़ूम करें" + "your_wifi_name": "आपके वाईफाई का नाम", + "zoom_image": "छवि ज़ूम करें", + "zoom_to_bounds": "सीमा तक ज़ूम करें" } diff --git a/i18n/id.json b/i18n/id.json index 40a4ddbef4..8dba86752e 100644 --- a/i18n/id.json +++ b/i18n/id.json @@ -123,6 +123,13 @@ "logging_enable_description": "Aktifkan log", "logging_level_description": "Ketika diaktifkan, tingkat log apa yang digunakan.", "logging_settings": "Penulisan log", + "machine_learning_availability_checks": "Pemeriksaan ketersediaan", + "machine_learning_availability_checks_description": "Secara otomatis mendeteksi dan memprioritaskan server machine learning yang tersedia", + "machine_learning_availability_checks_enabled": "Aktifkan pemeriksaan ketersediaan", + "machine_learning_availability_checks_interval": "Interval pemeriksaan", + "machine_learning_availability_checks_interval_description": "Interval dalam milidetik antar pemeriksaan ketersediaan", + "machine_learning_availability_checks_timeout": "Batas waktu permintaan", + "machine_learning_availability_checks_timeout_description": "Batas waktu dalam milidetik untuk pemeriksaan ketersediaan", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Nama model CLIP yang didaftarkan di sini. Anda harus menjalankan ulang tugas 'Pencarian Otomatis' untuk semua gambar ketika mengganti model.", "machine_learning_duplicate_detection": "Deteksi Duplikat", @@ -423,6 +430,7 @@ "album_remove_user_confirmation": "Apakah Anda yakin ingin mengeluarkan {user}?", "album_search_not_found": "Tidak ada album yang ditemukan sesuai pencarian Anda", "album_share_no_users": "Sepertinya Anda telah membagikan album ini dengan semua pengguna atau tidak memiliki pengguna siapa pun untuk dibagikan.", + "album_summary": "Ringkasan album", "album_updated": "Album diperbarui", "album_updated_setting_description": "Terima notifikasi surel ketika album terbagi memiliki aset baru", "album_user_left": "Keluar dari {album}", @@ -494,6 +502,8 @@ "asset_restored_successfully": "Aset telah berhasil dipulihkan", "asset_skipped": "Dilewati", "asset_skipped_in_trash": "Dalam sampah", + "asset_trashed": "Aset dibuang", + "asset_troubleshoot": "Troubleshoot Aset", "asset_uploaded": "Sudah diunggah", "asset_uploading": "Mengunggah…", "asset_viewer_settings_subtitle": "Kelola pengaturan penampil galeri Anda", @@ -527,8 +537,10 @@ "autoplay_slideshow": "Putar otomatis tayangan slide", "back": "Kembali", "back_close_deselect": "Kembali, tutup, atau batalkan pemilihan", + "background_backup_running_error": "Cadangan latar belakang sedang berjalan, tidak dapat memulai cadangan manual", "background_location_permission": "Izin lokasi latar belakang", "background_location_permission_content": "Untuk beralih jaringan saat berjalan di latar belakang, Immich harus selalu memiliki akses lokasi akurat agar aplikasi dapat membaca nama jaringan Wi-Fi", + "background_options": "Opsi Latar Belakang", "backup": "Cadangkan", "backup_album_selection_page_albums_device": "Album di perangkat ({count})", "backup_album_selection_page_albums_tap": "Sentuh untuk memilih, sentuh 2x untuk mengecualikan", @@ -536,6 +548,7 @@ "backup_album_selection_page_select_albums": "Pilih album", "backup_album_selection_page_selection_info": "Info Pilihan", "backup_album_selection_page_total_assets": "Total aset unik", + "backup_albums_sync": "Sinkronisasi cadangan album", "backup_all": "Semua", "backup_background_service_backup_failed_message": "Gagal mencadangkan aset. Mencoba lagi…", "backup_background_service_connection_failed_message": "Koneksi ke server gagal. Mencoba ulang…", @@ -652,6 +665,8 @@ "change_pin_code": "Ubah kode PIN", "change_your_password": "Ubah kata sandi Anda", "changed_visibility_successfully": "Keterlihatan berhasil diubah", + "charging": "Mengisi daya", + "charging_requirement_mobile_backup": "Cadangan latar belakang memerlukan perangkat dalam keadaan mengisi daya", "check_corrupt_asset_backup": "Periksa cadangan aset yang rusak", "check_corrupt_asset_backup_button": "Lakukan pemeriksaan", "check_corrupt_asset_backup_description": "Jalankan pemeriksaan ini hanya melalui Wi-Fi dan setelah semua aset dicadangkan. Prosedur ini mungkin memerlukan waktu beberapa menit.", @@ -738,6 +753,7 @@ "create_user": "Buat pengguna", "created": "Dibuat", "created_at": "Dibuat", + "creating_linked_albums": "Membuat album tertaut...", "crop": "Pangkas", "curated_object_page_title": "Benda", "current_device": "Perangkat saat ini", @@ -887,7 +903,9 @@ "error": "Eror", "error_change_sort_album": "Gagal mengubah urutan album", "error_delete_face": "Terjadi kesalahan menghapus wajah dari aset", + "error_getting_places": "Kesalahan saat mengambil lokasi", "error_loading_image": "Terjadi eror memuat gambar", + "error_loading_partners": "Kesalahan saat memuat partner: {error}", "error_saving_image": "Kesalahan: {error}", "error_tag_face_bounding_box": "Galat saat memberi tag wajah – tidak dapat memperoleh koordinat kotak pembatas", "error_title": "Eror - Ada yang salah", @@ -1052,6 +1070,7 @@ "favorites_page_no_favorites": "Tidak ada aset favorit", "feature_photo_updated": "Foto terfitur diperbarui", "features": "Fitur", + "features_in_development": "Fitur dalam Pengembangan", "features_setting_description": "Kelola fitur aplikasi", "file_name": "Nama berkas", "file_name_or_extension": "Nama berkas atau ekstensi", @@ -1216,6 +1235,7 @@ "local": "Lokal", "local_asset_cast_failed": "Tidak dapat melakukan cast aset yang belum diunggah ke server", "local_assets": "Aset Lokal", + "local_media_summary": "Ringkasan Media Lokal", "local_network": "Jaringan Lokal", "local_network_sheet_info": "Aplikasi akan terhubung ke server melalui URL ini saat menggunakan jaringan Wi-Fi yang ditentukan", "location_permission": "Izin lokasi", @@ -1227,6 +1247,7 @@ "location_picker_longitude_hint": "Masukkan bujur di sini", "lock": "Kunci", "locked_folder": "Folder Terkunci", + "log_detail_title": "Detail Log", "log_out": "Log keluar", "log_out_all_devices": "Keluar dari Semua Perangkat", "logged_in_as": "Masuk sebagai {user}", @@ -1257,6 +1278,7 @@ "login_password_changed_success": "Sandi berhasil diperbarui", "logout_all_device_confirmation": "Apakah Anda yakin ingin keluar dari semua perangkat?", "logout_this_device_confirmation": "Apakah Anda yakin ingin mengeluarkan perangkat ini?", + "logs": "Log", "longitude": "Bujur", "look": "Tampilan", "loop_videos": "Ulangi video", @@ -1299,6 +1321,7 @@ "mark_as_read": "Tandai sebagai telah dibaca", "marked_all_as_read": "Semua telah ditandai sebagai telah dibaca", "matches": "Cocokan", + "matching_assets": "Aset yang Cocok", "media_type": "Jenis media", "memories": "Kenangan", "memories_all_caught_up": "Semua telah dilihat", @@ -1339,6 +1362,7 @@ "name_or_nickname": "Nama atau nama panggilan", "network_requirement_photos_upload": "Gunakan data seluler untuk cadangkan foto", "network_requirement_videos_upload": "Gunakan data seluler untuk cadangkan video", + "network_requirements": "Persyaratan Jaringan", "network_requirements_updated": "Persyaratan jaringan telah berubah, antrean pencadangan diatur ulang", "networking_settings": "Jaringan", "networking_subtitle": "Kelola pengaturan Endpoint server", @@ -1349,6 +1373,7 @@ "new_person": "Orang baru", "new_pin_code": "Kode PIN baru", "new_pin_code_subtitle": "Ini adalah akses pertama Anda ke folder terkunci. Buat kode PIN untuk mengamankan akses ke halaman ini", + "new_timeline": "Linimasa Baru", "new_user_created": "Pengguna baru dibuat", "new_version_available": "VERSI BARU TERSEDIA", "newest_first": "Terkini dahulu", @@ -1362,20 +1387,25 @@ "no_assets_message": "KLIK UNTUK MENGUNGGAH FOTO PERTAMA ANDA", "no_assets_to_show": "Tidak ada aset", "no_cast_devices_found": "Tidak ada perangkat cast yang ditemukan", + "no_checksum_local": "Tidak ada checksum yang tersedia - tidak dapat mengambil aset lokal", + "no_checksum_remote": "Tidak ada checksum yang tersedia - tidak dapat mengambil aset jarak jauh", "no_duplicates_found": "Tidak ada duplikat yang ditemukan.", "no_exif_info_available": "Tidak ada info EXIF yang tersedia", "no_explore_results_message": "Unggah lebih banyak foto untuk menjelajahi koleksi Anda.", "no_favorites_message": "Tambahkan favorit untuk mencari foto dan video terbaik Anda dengan cepat", "no_libraries_message": "Buat pustaka eksternal untuk menampilkan foto dan video Anda", + "no_local_assets_found": "Tidak ada aset lokal yang ditemukan dengan checksum ini", "no_locked_photos_message": "Foto dan video di folder terkunci disembunyikan dan tidak akan muncul saat Anda menelusuri atau mencari di pustaka.", "no_name": "Tidak Ada Nama", "no_notifications": "Tidak ada notifikasi", "no_people_found": "Orang tidak ditemukan", "no_places": "Tidak ada tempat", + "no_remote_assets_found": "Tidak ada aset jarak jauh yang ditemukan dengan checksum ini", "no_results": "Tidak ada hasil", "no_results_description": "Coba sinonim atau kata kunci yang lebih umum", "no_shared_albums_message": "Buat sebuah album untuk membagikan foto dan video dengan orang-orang dalam jaringan Anda", "no_uploads_in_progress": "Tidak ada unggahan yang sedang berlangsung", + "not_available": "T/T", "not_in_any_album": "Tidak ada dalam album apa pun", "not_selected": "Belum dipilih", "note_apply_storage_label_to_previously_uploaded assets": "Catatan: Untuk menerapkan Label Penyimpanan pada aset yang sebelumnya telah diunggah, jalankan", @@ -1497,6 +1527,7 @@ "port": "Porta", "preferences_settings_subtitle": "Kelola preferensi aplikasi", "preferences_settings_title": "Preferensi", + "preparing": "Mempersiapkan", "preset": "Prasetel", "preview": "Pratinjau", "previous": "Sebelumnya", @@ -1513,7 +1544,7 @@ "profile_drawer_client_out_of_date_minor": "Versi app seluler ini sudah kedaluwarsa. Silakan perbarui ke versi minor terbaru.", "profile_drawer_client_server_up_to_date": "Klien dan server menjalankan versi terbaru", "profile_drawer_github": "GitHub", - "profile_drawer_readonly_mode": "Mode baca-saja aktif. Ketuk dua kali ikon avatar pengguna untuk keluar.", + "profile_drawer_readonly_mode": "Mode baca-saja aktif. Tekan lama ikon avatar pengguna untuk keluar.", "profile_drawer_server_out_of_date_major": "Versi server ini telah kedaluwarsa. Silakan perbarui ke versi major terbaru.", "profile_drawer_server_out_of_date_minor": "Versi server ini telah kedaluwarsa. Silakan perbarui ke versi minor terbaru.", "profile_image_of_user": "Foto profil dari {user}", @@ -1562,6 +1593,7 @@ "read_changelog": "Baca Log Perubahan", "readonly_mode_disabled": "Mode baca-saja dimatikan", "readonly_mode_enabled": "Mode baca-saja diaktifkan", + "ready_for_upload": "Siap untuk mengunggah", "reassign": "Tetapkan ulang", "reassigned_assets_to_existing_person": "Menetapkan ulang {count, plural, one {# aset} other {# aset}} kepada {name, select, null {orang yang sudah ada} other {{name}}}", "reassigned_assets_to_new_person": "Menetapkan ulang {count, plural, one {# aset} other {# aset}} kepada orang baru", @@ -1586,6 +1618,7 @@ "regenerating_thumbnails": "Membuat ulang gambar kecil", "remote": "Jarak Jauh", "remote_assets": "Aset Jarak Jauh", + "remote_media_summary": "Ringkasan Media Jarak Jauh", "remove": "Hapus", "remove_assets_album_confirmation": "Apakah Anda yakin ingin menghapus {count, plural, one {# aset} other {# aset}} dari album?", "remove_assets_shared_link_confirmation": "Apakah Anda yakin ingin menghapus {count, plural, one {# aset} other {# aset}} dari tautan terbagi ini?", @@ -1638,6 +1671,7 @@ "restore_user": "Pulihkan pengguna", "restored_asset": "Aset dipulihkan", "resume": "Lanjutkan", + "resume_paused_jobs": "Lanjutkan {count, plural, one {# pekerjaan yang dijeda} other {# pekerjaan yang dijeda}}", "retry_upload": "Ulangi pengunggahan", "review_duplicates": "Pratinjau duplikat", "review_large_files": "Meninjau berkas berukuran besar", @@ -1860,6 +1894,7 @@ "show_slideshow_transition": "Tampilkan transisi salindia", "show_supporter_badge": "Lencana suporter", "show_supporter_badge_description": "Tampilkan lencana suporter", + "show_text_search_menu": "Tampilkan menu pencarian teks", "shuffle": "Acak", "sidebar": "Bilah sisi", "sidebar_display_description": "Menampilkan tautan ke tampilan di bilah sisi", @@ -1890,6 +1925,7 @@ "stacktrace": "Jejak tumpukan", "start": "Mulai", "start_date": "Tanggal mulai", + "start_date_before_end_date": "Tanggal mulai harus sebelum tanggal akhir", "state": "Keadaan", "status": "Status", "stop_casting": "Hentikan cast", @@ -1914,6 +1950,8 @@ "sync_albums_manual_subtitle": "Melakukan sinkronisasi semua video dan foto yang telah diunggah ke album cadangan yang dipilih", "sync_local": "Sinkronkan lokal", "sync_remote": "Sinkronkan jarak jauh", + "sync_status": "Status Sinkronisasi", + "sync_status_subtitle": "Lihat dan atur sistem sinkronisasi", "sync_upload_album_setting_subtitle": "Membuat dan mengunggah foto serta video Anda ke album yang telah dipilih pada Immich", "tag": "Label", "tag_assets": "Tag aset", @@ -1973,6 +2011,7 @@ "trash_page_select_assets_btn": "Pilih aset", "trash_page_title": "Sampah ({count})", "trashed_items_will_be_permanently_deleted_after": "Item yang dibuang akan dihapus secara permanen setelah {days, plural, one {# hari} other {# hari}}.", + "troubleshoot": "Pemecahan Masalah", "type": "Jenis", "unable_to_change_pin_code": "Tidak dapat mengubah kode PIN", "unable_to_setup_pin_code": "Tidak dapat memasang kode PIN", @@ -2089,5 +2128,6 @@ "yes": "Ya", "you_dont_have_any_shared_links": "Anda tidak memiliki tautan terbagi", "your_wifi_name": "Nama Wi-Fi Anda", - "zoom_image": "Perbesar Gambar" + "zoom_image": "Perbesar Gambar", + "zoom_to_bounds": "Perbesar ke batas" } diff --git a/i18n/it.json b/i18n/it.json index 044e86c6df..39c296a0e7 100644 --- a/i18n/it.json +++ b/i18n/it.json @@ -123,6 +123,13 @@ "logging_enable_description": "Attiva il logging", "logging_level_description": "Quando attivato, che livello di log utilizzare.", "logging_settings": "Registro dei Log", + "machine_learning_availability_checks": "Verifiche di disponibilità", + "machine_learning_availability_checks_description": "Rileva automaticamente e usa i server di machine learning disponibili", + "machine_learning_availability_checks_enabled": "Attiva verifiche di disponibilità", + "machine_learning_availability_checks_interval": "Intervallo di verifica", + "machine_learning_availability_checks_interval_description": "Intervallo (ms) tra le verifiche di disponibilità", + "machine_learning_availability_checks_timeout": "Timeout richiesta", + "machine_learning_availability_checks_timeout_description": "Timeout (ms) per le verifiche di disponibilità", "machine_learning_clip_model": "Modello CLIP", "machine_learning_clip_model_description": "Il nome del modello CLIP mostrato qui. Nota che devi rieseguire il processo 'Ricerca Intelligente' per tutte le immagini al cambio del modello.", "machine_learning_duplicate_detection": "Rilevamento Duplicati", @@ -533,6 +540,7 @@ "background_backup_running_error": "Il backup in background è attualmente in esecuzione, impossibile avviare il backup manuale", "background_location_permission": "Permesso di localizzazione in background", "background_location_permission_content": "Per fare in modo che sia possibile cambiare rete quando è in esecuzione in background, Immich deve *sempre* avere accesso alla tua posizione precisa in modo da poter leggere il nome della rete Wi-Fi", + "background_options": "Opzioni sfondo", "backup": "Backup", "backup_album_selection_page_albums_device": "Album sul dispositivo ({count})", "backup_album_selection_page_albums_tap": "Tap per includere, doppio tap per escludere", @@ -540,6 +548,7 @@ "backup_album_selection_page_select_albums": "Seleziona gli album", "backup_album_selection_page_selection_info": "Informazioni sulla selezione", "backup_album_selection_page_total_assets": "Numero totale delle risorse", + "backup_albums_sync": "Sincronizzazione album di backup", "backup_all": "Tutti", "backup_background_service_backup_failed_message": "È stato impossibile fare il backup dei contenuti. Riprovo…", "backup_background_service_connection_failed_message": "Impossibile connettersi al server. Riprovo…", @@ -656,6 +665,8 @@ "change_pin_code": "Cambia il codice PIN", "change_your_password": "Modifica la tua password", "changed_visibility_successfully": "Visibilità modificata con successo", + "charging": "In carica", + "charging_requirement_mobile_backup": "Il backup in background richiede che il dispositivo sia in carica", "check_corrupt_asset_backup": "Verifica la presenza di backup di asset corrotti", "check_corrupt_asset_backup_button": "Effettua controllo", "check_corrupt_asset_backup_description": "Effettua questo controllo solo sotto rete Wi-Fi e quando tutti gli asset sono stati sottoposti a backup. La procedura potrebbe impiegare qualche minuto.", @@ -1351,6 +1362,7 @@ "name_or_nickname": "Nome o soprannome", "network_requirement_photos_upload": "Utilizza la connessione dati per il backup delle foto", "network_requirement_videos_upload": "Utilizza la connessione dati per il backup dei video", + "network_requirements": "Requisiti di rete", "network_requirements_updated": "Requisiti di rete modificati, coda di backup reimpostata", "networking_settings": "Rete", "networking_subtitle": "Gestisci le impostazioni riguardanti gli endpoint del server", @@ -1515,6 +1527,7 @@ "port": "Porta", "preferences_settings_subtitle": "Gestisci le preferenze dell'app", "preferences_settings_title": "Preferenze", + "preparing": "Preparando", "preset": "Preimpostazione", "preview": "Anteprima", "previous": "Precedente", @@ -1580,6 +1593,7 @@ "read_changelog": "Leggi Riepilogo Modifiche", "readonly_mode_disabled": "Modalità di sola lettura disabilitata", "readonly_mode_enabled": "Modalità di sola lettura abilitata", + "ready_for_upload": "Pronto per il caricamento", "reassign": "Riassegna", "reassigned_assets_to_existing_person": "{count, plural, one {Riassegnato # asset} other {Riassegnati # assets}} {name, select, null {ad una persona esistente} other {a {name}}}", "reassigned_assets_to_new_person": "{count, plural, one {Riassegnato # asset} other {Riassegnati # assets}} ad una nuova persona", @@ -1911,6 +1925,7 @@ "stacktrace": "Traccia dell'errore", "start": "Avvia", "start_date": "Data di inizio", + "start_date_before_end_date": "La data di inizio deve essere precedente alla data di fine", "state": "Provincia", "status": "Stato", "stop_casting": "Interrompi trasmissione", diff --git a/i18n/ja.json b/i18n/ja.json index ccee08fa01..b03614d65c 100644 --- a/i18n/ja.json +++ b/i18n/ja.json @@ -123,6 +123,8 @@ "logging_enable_description": "ログの有効化", "logging_level_description": "有効な場合に使用されるログ レベル。", "logging_settings": "ログ", + "machine_learning_availability_checks": "可用性の確認", + "machine_learning_availability_checks_description": "利用可能な機械学習のサーバーを自動で検知し優先的に使用します", "machine_learning_availability_checks_enabled": "可用性チェックを有効にする", "machine_learning_availability_checks_interval": "チェックの間隔", "machine_learning_availability_checks_interval_description": "可用性チェックの間隔(ミリ秒単位)", @@ -428,6 +430,7 @@ "album_remove_user_confirmation": "本当に{user}を削除しますか?", "album_search_not_found": "検索に一致するアルバムがありません", "album_share_no_users": "このアルバムを全てのユーザーと共有したか、共有するユーザーがいないようです。", + "album_summary": "アルバムのまとめ", "album_updated": "アルバム更新", "album_updated_setting_description": "共有アルバムに新しいアセットが追加されたとき通知を受け取る", "album_user_left": "{album} を去りました", @@ -499,6 +502,8 @@ "asset_restored_successfully": "復元できました", "asset_skipped": "スキップ済", "asset_skipped_in_trash": "ゴミ箱の中", + "asset_trashed": "項目が削除されました", + "asset_troubleshoot": "項目をトラブルシューㇳ", "asset_uploaded": "アップロード済", "asset_uploading": "アップロード中…", "asset_viewer_settings_subtitle": "ギャラリービューアーに関する設定", @@ -532,8 +537,10 @@ "autoplay_slideshow": "スライドショーを自動再生", "back": "戻る", "back_close_deselect": "戻る、閉じる、選択解除", + "background_backup_running_error": "バックグラウンドのバックアップがすでに行われている最中です。そのため、マニュアルでのバックアップを開始することはできません。", "background_location_permission": "バックグラウンド位置情報アクセス", "background_location_permission_content": "正常にWi-Fiの名前(SSID)を獲得するにはアプリが常に詳細な位置情報にアクセスできる必要があります", + "background_options": "バックグラウンドの動作オプション", "backup": "バックアップ", "backup_album_selection_page_albums_device": "デバイス上のアルバム({count})", "backup_album_selection_page_albums_tap": "タップで選択、ダブルタップで除外", @@ -541,6 +548,7 @@ "backup_album_selection_page_select_albums": "アルバムを選択", "backup_album_selection_page_selection_info": "選択・除外中のアルバム", "backup_album_selection_page_total_assets": "選択されたアルバムの写真と動画の数", + "backup_albums_sync": "アルバム同期状態をバックアップ", "backup_all": "すべて", "backup_background_service_backup_failed_message": "アップロードに失敗しました。リトライ中…", "backup_background_service_connection_failed_message": "サーバーに接続できません。リトライ中…", @@ -657,6 +665,8 @@ "change_pin_code": "PINコードを変更", "change_your_password": "パスワードを変更します", "changed_visibility_successfully": "非表示設定を正常に変更しました", + "charging": "充電中", + "charging_requirement_mobile_backup": "バックグラウンドでのバックアップを行うためには、デバイスが充電中である必要があります", "check_corrupt_asset_backup": "破損されている項目を探す", "check_corrupt_asset_backup_button": "チェックを行う", "check_corrupt_asset_backup_description": "写真や動画などが全てアップロードし終えてからWi-Fiに接続時のみチェックを行なってください。作業が完了するには数分かかる場合があります", @@ -743,6 +753,7 @@ "create_user": "ユーザーを作成", "created": "作成", "created_at": "作成:", + "creating_linked_albums": "リンクされたアルバムを作成中・・・", "crop": "クロップ", "curated_object_page_title": "被写体", "current_device": "現在のデバイス", @@ -892,7 +903,9 @@ "error": "エラー", "error_change_sort_album": "アルバムの表示順の変更に失敗しました", "error_delete_face": "アセットから顔の削除ができませんでした", + "error_getting_places": "場所の取得に失敗しました", "error_loading_image": "画像の読み込みエラー", + "error_loading_partners": "パートナーの読み込みに失敗しました: {error}", "error_saving_image": "エラー: {error}", "error_tag_face_bounding_box": "顔の登録に失敗しました - 顔を囲む四角形の座標取得に失敗", "error_title": "エラー - 問題が発生しました", @@ -1057,6 +1070,7 @@ "favorites_page_no_favorites": "お気に入り登録された項目がありません", "feature_photo_updated": "人物画像が更新されました", "features": "機能", + "features_in_development": "開発中の機能", "features_setting_description": "アプリの機能を管理する", "file_name": "ファイル名", "file_name_or_extension": "ファイル名または拡張子", @@ -1221,6 +1235,7 @@ "local": "ローカル", "local_asset_cast_failed": "サーバーにアップロードされていない項目はキャストできません", "local_assets": "ローカルの項目", + "local_media_summary": "ローカルメディアのまとめ", "local_network": "ローカルネットワーク", "local_network_sheet_info": "アプリは指定されたWi-Fiに繋がっている時サーバーへの接続を下記のURLで行います", "location_permission": "位置情報権限", @@ -1232,6 +1247,7 @@ "location_picker_longitude_hint": "経度を入力", "lock": "ロック", "locked_folder": "鍵付きフォルダー", + "log_detail_title": "ログの詳細", "log_out": "ログアウト", "log_out_all_devices": "全てのデバイスからログアウト", "logged_in_as": "{user}としてログイン中", @@ -1262,6 +1278,7 @@ "login_password_changed_success": "パスワードの変更に成功", "logout_all_device_confirmation": "本当に全てのデバイスからログアウトしますか?", "logout_this_device_confirmation": "本当にこのデバイスからログアウトしますか?", + "logs": "ログ", "longitude": "経度", "look": "見た目", "loop_videos": "動画をループ", @@ -1304,6 +1321,7 @@ "mark_as_read": "既読にする", "marked_all_as_read": "すべて既読にしました", "matches": "マッチ", + "matching_assets": "一致する項目", "media_type": "メディアタイプ", "memories": "メモリー", "memories_all_caught_up": "これで全部です", @@ -1344,6 +1362,7 @@ "name_or_nickname": "名前またはニックネーム", "network_requirement_photos_upload": "モバイル通信を使用して写真のバックアップを行う", "network_requirement_videos_upload": "モバイル通信を使用して動画のバックアップを行う", + "network_requirements": "ネットワークの要件", "network_requirements_updated": "ネットワークの条件が変更されたため、バックアップの順番待ちをリセットします", "networking_settings": "ネットワーク", "networking_subtitle": "サーバーエンドポイントに関する設定", @@ -1354,6 +1373,7 @@ "new_person": "新しい人物", "new_pin_code": "新しいPINコード", "new_pin_code_subtitle": "鍵付きフォルダーを利用するのが初めてのようです。PINコードを作成してください", + "new_timeline": "新たなタイムライン", "new_user_created": "新しいユーザーが作成されました", "new_version_available": "新しいバージョンが利用可能", "newest_first": "最新順", @@ -1367,20 +1387,25 @@ "no_assets_message": "クリックして最初の写真をアップロード", "no_assets_to_show": "表示する項目がありません", "no_cast_devices_found": "キャスト先のデバイスが見つかりません", + "no_checksum_local": "チェックサムが見つかりません - デバイス上の項目を取得できないようです", + "no_checksum_remote": "チェックサムが見つかりません - サーバー上の項目を取得できないようです", "no_duplicates_found": "重複は見つかりませんでした。", "no_exif_info_available": "exif情報が利用できません", "no_explore_results_message": "コレクションを探索するにはさらに写真をアップロードしてください。", "no_favorites_message": "お気に入り登録すると好きな写真や動画をすぐに見つけられます", "no_libraries_message": "あなたの写真や動画を表示するための外部ライブラリを作成しましょう", + "no_local_assets_found": "このチェックサムの項目はデバイス上に存在しません", "no_locked_photos_message": "鍵付きフォルダー内の写真や動画は通常のライブラリに表示されなくなります。", "no_name": "名前なし", "no_notifications": "通知なし", "no_people_found": "一致する人物が見つかりません", "no_places": "場所なし", + "no_remote_assets_found": "このチェックサムの項目はサーバー上に存在しません", "no_results": "結果がありません", "no_results_description": "同義語やより一般的なキーワードを試してください", "no_shared_albums_message": "アルバムを作成して写真や動画を共有しましょう", "no_uploads_in_progress": "アップロードは行われていません", + "not_available": "適用なし", "not_in_any_album": "どのアルバムにも入っていない", "not_selected": "選択なし", "note_apply_storage_label_to_previously_uploaded assets": "注意: 以前にアップロードしたアセットにストレージラベルを適用するには以下を実行してください", @@ -1593,6 +1618,7 @@ "regenerating_thumbnails": "サムネイルを再生成中", "remote": "リモート", "remote_assets": "リモートの項目", + "remote_media_summary": "サーバー上のメディアまとめ", "remove": "削除", "remove_assets_album_confirmation": "本当に{count, plural, one {#個} other {#個}}のアセットをアルバムから削除しますか?", "remove_assets_shared_link_confirmation": "本当にこの共有リンクから{count, plural, one {#個} other {#個}}のアセットを削除しますか?", @@ -1868,6 +1894,7 @@ "show_slideshow_transition": "スライドショーのトランジションを表示", "show_supporter_badge": "サポーターバッジ", "show_supporter_badge_description": "サポーターバッジを表示", + "show_text_search_menu": "テキスト検索メニューを表示", "shuffle": "ランダム", "sidebar": "サイドバー", "sidebar_display_description": "サイドバーにビューへのリンクを表示", @@ -2101,5 +2128,6 @@ "yes": "はい", "you_dont_have_any_shared_links": "共有リンクはありません", "your_wifi_name": "Wi-Fiの名前(SSID)", - "zoom_image": "画像を拡大" + "zoom_image": "画像を拡大", + "zoom_to_bounds": "画面端までズーム" } diff --git a/i18n/lt.json b/i18n/lt.json index c66b57cfa0..b849d335a4 100644 --- a/i18n/lt.json +++ b/i18n/lt.json @@ -123,6 +123,13 @@ "logging_enable_description": "Įjungti žurnalo vedimą", "logging_level_description": "Įjungus, kokį žurnalo vedimo lygį naudot.", "logging_settings": "Žurnalo vedimas", + "machine_learning_availability_checks": "Prieinamumo patikrinimai", + "machine_learning_availability_checks_description": "Automatiškai aptikti ir teikti pirmenybę prieinamiems mašininio mokymosi serveriams", + "machine_learning_availability_checks_enabled": "Įjungti prieinamumo patikrinimus", + "machine_learning_availability_checks_interval": "Patikros intervalas", + "machine_learning_availability_checks_interval_description": "Intervalas milisekundėmis tarp prieinamumo patikrinimų", + "machine_learning_availability_checks_timeout": "Užklausos laiko limitas", + "machine_learning_availability_checks_timeout_description": "Laiko limitas milisekundėmis prieinamumo patikrinimams", "machine_learning_clip_model": "CLIP modelis", "machine_learning_clip_model_description": "Pavadinimas CLIP modelio įvardintio here. Dėmesio, keičiant modelį jūs privalote iš naujo paleisti 'Išmaniosios Paieškos' užduotį visiems vaizdams.", "machine_learning_duplicate_detection": "Dublikatų aptikimas", @@ -264,8 +271,8 @@ "storage_template_date_time_description": "Elemento sukūrimo laiko žymė yra naudojama laiko informacijai", "storage_template_date_time_sample": "Pavyzdinis laikas {date}", "storage_template_enable_description": "Aktyvuoti saugyklos šabloną", - "storage_template_hash_verification_enabled": "Aktyvuoti Hash tikrinimą", - "storage_template_hash_verification_enabled_description": "Aktyvuojamas Hash tikrinimas, neišjungti nebent gerai suprantate galimas pasekmes", + "storage_template_hash_verification_enabled": "Aktyvuoti failo parašo tikrinimą", + "storage_template_hash_verification_enabled_description": "Aktyvuojamas failo parašo tikrinimas, neišjungti nebent gerai suprantate galimas pasekmes", "storage_template_migration": "Saugyklos tvarkymas pagal šabloną", "storage_template_migration_description": "Taikyti dabartinį {template} anksčiau įkeltiems duomenims", "storage_template_migration_info": "Saugyklos tvarkyklė konvertuos visus plėtinius mažosiomis raidėmis. Šablonas bus taikomas tik naujiems duomenims. Taikyti šabloną retroaktyviai anksčiau įkeltiems duomenims, paleiskite šią {job}.", @@ -481,7 +488,7 @@ "asset_description_updated": "Elemento aprašymas buvo atnaujintas", "asset_filename_is_offline": "Elementas {filename} nepasiekiamas", "asset_has_unassigned_faces": "Elementas turi nepriskirtų veidų", - "asset_hashing": "Maišoma…", + "asset_hashing": "Kuriami bylų parašai…", "asset_list_group_by_sub_title": "Grupuoti pagal", "asset_list_layout_settings_dynamic_layout_title": "Dinaminis išdėstymas", "asset_list_layout_settings_group_automatically": "Automatiškai", @@ -689,7 +696,7 @@ "comments_are_disabled": "Komentarai yra išjungti", "common_create_new_album": "Sukurti naują albumą", "common_server_error": "Prašome patikrinti tinklo prisijungimą ir įsitikinti, kad serveris pasiekiamas ir programos/serverio versija sutampa.", - "completed": "Atlikta", + "completed": "Užbaigta", "confirm": "Patvirtinti", "confirm_admin_password": "Patvirtinti administratoriaus slaptažodį", "confirm_delete_face": "Ar tikrai norite ištrinti {name} veidą iš elementų?", @@ -1100,9 +1107,9 @@ "haptic_feedback_switch": "Įjungti haptinį grįžtamąjį ryšį", "haptic_feedback_title": "Haptinis grįžtamasis ryšys", "has_quota": "Turi kvotą", - "hash_asset": "Maišymo elementas", - "hashed_assets": "Sumaišyti elementai", - "hashing": "Maišoma", + "hash_asset": "Kurti bylos parašą elementui", + "hashed_assets": "Elementai su bylų parašais", + "hashing": "Bylų parašo kūrimas", "header_settings_add_header_tip": "Pridėti antraštę", "header_settings_field_validator_msg": "Reikšmė negali būti tuščia", "header_settings_header_name_input": "Antraštės pavadinimas", diff --git a/i18n/lv.json b/i18n/lv.json index f4522a80c8..fa4981fd0e 100644 --- a/i18n/lv.json +++ b/i18n/lv.json @@ -1059,6 +1059,7 @@ "rating_description": "Rādīt EXIF vērtējumu informācijas panelī", "reaction_options": "Reakcijas iespējas", "read_changelog": "Lasīt izmaiņu sarakstu", + "ready_for_upload": "Gatavs augšupielādei", "recently_added_page_title": "Nesen Pievienotais", "refresh": "Atsvaidzināt", "refresh_faces": "Atsvaidzināt sejas", diff --git a/i18n/ms.json b/i18n/ms.json index b87c547920..c72b1ff688 100644 --- a/i18n/ms.json +++ b/i18n/ms.json @@ -14,6 +14,7 @@ "add_a_location": "Tambah lokasi", "add_a_name": "Tambah nama", "add_a_title": "Tambah tajuk", + "add_birthday": "Tambah hari jadi", "add_endpoint": "Tambah titik akhir", "add_exclusion_pattern": "Tambahkan corak pengecualian", "add_import_path": "Tambahkan laluan import", @@ -27,6 +28,8 @@ "add_to_album": "Tambah ke album", "add_to_album_bottom_sheet_added": "Dimasukkan ke {album}", "add_to_album_bottom_sheet_already_exists": "Sudah ada di {album}", + "add_to_albums": "Tambah pada album", + "add_to_albums_count": "Tambah pada album ({count})", "add_to_shared_album": "Tambah ke album yang dikongsi", "add_url": "Tambah URL", "added_to_archive": "Tambah ke arkib", @@ -44,6 +47,9 @@ "backup_database": "Buat Salinan Pangkalan Data", "backup_database_enable_description": "Dayakan salinan pangkalan data", "backup_keep_last_amount": "Jumlah salinan pangkalan data sebelumnya untuk disimpan", + "backup_onboarding_1_description": "salinan luar tapak di awan atau di lokasi fizikal lain", + "backup_onboarding_2_description": "salinan tempatan pada peranti yang berbeza. Ini termasuk fail utama dan sandaran fail tersebut secara setempat.", + "backup_onboarding_3_description": "jumlah salinan data anda, termasuk fail asal. Ini termasuk 1 salinan luar tapak dan 2 salinan tempatan.", "backup_settings": "Tetapan Salinan Pangkalan Data", "backup_settings_description": "Urus tetapan salinan pangkalan data.", "cleared_jobs": "Kerja telah dibersihkan untuk: {job}", diff --git a/i18n/nb_NO.json b/i18n/nb_NO.json index d6eb4944c2..4162170885 100644 --- a/i18n/nb_NO.json +++ b/i18n/nb_NO.json @@ -122,7 +122,7 @@ "library_watching_settings_description": "Se automatisk etter endrede filer", "logging_enable_description": "Aktiver logging", "logging_level_description": "Hvis aktivert, hvilket loggnivå som skal brukes.", - "logging_settings": "Logger", + "logging_settings": "Loggføring", "machine_learning_availability_checks": "Tilgjengelighetssjekk", "machine_learning_availability_checks_description": "Automatisk oppdag og velg tilgjengelige maskinlæring-servere", "machine_learning_availability_checks_enabled": "Aktiver tilgjengelighetssjekk", @@ -1527,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Administrer appens preferanser", "preferences_settings_title": "Innstillinger", + "preparing": "Forbereder", "preset": "Forhåndsinstilling", "preview": "Forhåndsvis", "previous": "Forrige", @@ -1592,6 +1593,7 @@ "read_changelog": "Les endringslogg", "readonly_mode_disabled": "Skrivebeskyttet modus deaktivert", "readonly_mode_enabled": "Skrivebeskyttet modus aktivert", + "ready_for_upload": "Klar for opplasting", "reassign": "Tilordne på nytt", "reassigned_assets_to_existing_person": "Flyttet {count, plural, one {# objekt} other {# objekter}} to {name, select, null {en eksisterende person} other {{name}}}", "reassigned_assets_to_new_person": "Flyttet {count, plural, one {# objekt} other {# objekter}} til en ny person", diff --git a/i18n/nl.json b/i18n/nl.json index c236401a73..0b5ae82326 100644 --- a/i18n/nl.json +++ b/i18n/nl.json @@ -123,10 +123,13 @@ "logging_enable_description": "Logboek inschakelen", "logging_level_description": "Indien ingeschakeld, welk logniveau er wordt gebruikt.", "logging_settings": "Logging", + "machine_learning_availability_checks": "Beschikbaarheid", "machine_learning_availability_checks_description": "Automatisch detecteren en selecteren van beschikbare machine learning servers", "machine_learning_availability_checks_enabled": "Activeer beschikbaarheid controles", "machine_learning_availability_checks_interval": "Controleinterval", "machine_learning_availability_checks_interval_description": "Interval in milliseconden tussen beschikbaarheid checks", + "machine_learning_availability_checks_timeout": "Verzoek time-out", + "machine_learning_availability_checks_timeout_description": "Time-out in milliseconden voor beschikbaarheidschecks", "machine_learning_clip_model": "CLIP model", "machine_learning_clip_model_description": "De naam van een CLIP-model dat hier is vermeld. Let op: je moet de 'Slim Zoeken -taak opnieuw uitvoeren voor alle afbeeldingen wanneer je een model wijzigt.", "machine_learning_duplicate_detection": "Duplicaat detectie", @@ -750,7 +753,7 @@ "create_user": "Gebruiker aanmaken", "created": "Aangemaakt", "created_at": "Aangemaakt", - "creating_linked_albums": "Gekoppelde albums worden aangemaakt", + "creating_linked_albums": "Gekoppelde albums worden aangemaakt...", "crop": "Bijsnijden", "curated_object_page_title": "Dingen", "current_device": "Huidig apparaat", @@ -846,7 +849,7 @@ "download_sucess_android": "Het bestand is gedownload naar DCIM/Immich", "download_waiting_to_retry": "Wachten om opnieuw te proberen", "downloading": "Downloaden", - "downloading_asset_filename": "Downloading asset {filename}", + "downloading_asset_filename": "Downloaden asset {filename}", "downloading_media": "Media aan het downloaden", "drop_files_to_upload": "Zet bestanden ergens neer om ze te uploaden", "duplicates": "Duplicaten", @@ -900,7 +903,9 @@ "error": "Fout", "error_change_sort_album": "Sorteervolgorde van album wijzigen mislukt", "error_delete_face": "Fout bij verwijderen van gezicht uit het item", + "error_getting_places": "Fout bij ophalen plaatsen", "error_loading_image": "Fout bij laden afbeelding", + "error_loading_partners": "Fout bij ophalen partners: {error}", "error_saving_image": "Fout: {error}", "error_tag_face_bounding_box": "Fout bij taggen van gezicht - kan coördinaten van omvattend kader niet ophalen", "error_title": "Fout - Er is iets misgegaan", @@ -1382,20 +1387,25 @@ "no_assets_message": "KLIK HIER OM JE EERSTE FOTO TE UPLOADEN", "no_assets_to_show": "Geen foto's om te laten zien", "no_cast_devices_found": "Geen cast-apparaten gevonden", + "no_checksum_local": "Geen checksum beschikbaar - kan lokale assets niet ophalen", + "no_checksum_remote": "Geen checksum beschikbaar - kan online assets niet ophalen", "no_duplicates_found": "Er zijn geen duplicaten gevonden.", "no_exif_info_available": "Geen exif info beschikbaar", "no_explore_results_message": "Upload meer foto's om je verzameling te verkennen.", "no_favorites_message": "Voeg favorieten toe om snel je beste foto's en video's te vinden", "no_libraries_message": "Maak een externe bibliotheek om je foto's en video's te bekijken", + "no_local_assets_found": "Geen lokale assets gevonden met deze checksum", "no_locked_photos_message": "Foto’s en video’s in de vergrendelde map zijn verborgen en worden niet weergegeven wanneer je door je bibliotheek bladert of zoekt.", "no_name": "Geen naam", "no_notifications": "Geen meldingen", "no_people_found": "Geen mensen gevonden", "no_places": "Geen plaatsen", + "no_remote_assets_found": "Geen online assets gevonden met deze checksum", "no_results": "Geen resultaten", "no_results_description": "Probeer een synoniem of een algemener zoekwoord", "no_shared_albums_message": "Maak een album om foto's en video's te delen met mensen in je netwerk", "no_uploads_in_progress": "Geen uploads bezig", + "not_available": "N.B.", "not_in_any_album": "Niet in een album", "not_selected": "Niet geselecteerd", "note_apply_storage_label_to_previously_uploaded assets": "Opmerking: om het opslaglabel toe te passen op eerder geüploade items, voer de volgende taak uit", @@ -1517,6 +1527,7 @@ "port": "Poort", "preferences_settings_subtitle": "Beheer de voorkeuren van de app", "preferences_settings_title": "Voorkeuren", + "preparing": "Voorbereiden", "preset": "Voorinstelling", "preview": "Voorbeeld", "previous": "Vorige", @@ -1582,6 +1593,7 @@ "read_changelog": "Lees wijzigingen", "readonly_mode_disabled": "Alleen-lezen modus uitgeschakeld", "readonly_mode_enabled": "Alleen-lezen modus ingeschakeld", + "ready_for_upload": "Klaar voor upload", "reassign": "Opnieuw toewijzen", "reassigned_assets_to_existing_person": "{count, plural, one {# item} other {# items}} opnieuw toegewezen aan {name, select, null {een bestaand persoon} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {# item} other {# items}} opnieuw toegewezen aan een nieuw persoon", @@ -1606,6 +1618,7 @@ "regenerating_thumbnails": "Thumbnails opnieuw aan het genereren", "remote": "Externe", "remote_assets": "Externe Items", + "remote_media_summary": "Online media samenvatting", "remove": "Verwijderen", "remove_assets_album_confirmation": "Weet je zeker dat je {count, plural, one {# item} other {# items}} uit het album wilt verwijderen?", "remove_assets_shared_link_confirmation": "Weet je zeker dat je {count, plural, one {# item} other {# items}} uit deze gedeelde link wilt verwijderen?", @@ -1881,6 +1894,7 @@ "show_slideshow_transition": "Diavoorstellingsovergang tonen", "show_supporter_badge": "Supportersbadge", "show_supporter_badge_description": "Toon een supportersbadge", + "show_text_search_menu": "Laat tekst zoek menu zien", "shuffle": "Willekeurig", "sidebar": "Zijbalk", "sidebar_display_description": "Toon een link naar deze pagina in de zijbalk", @@ -1911,6 +1925,7 @@ "stacktrace": "Stacktrace", "start": "Start", "start_date": "Startdatum", + "start_date_before_end_date": "Startdatum moet voor einddatum liggen", "state": "Staat", "status": "Status", "stop_casting": "Stop met casten", @@ -2113,5 +2128,6 @@ "yes": "Ja", "you_dont_have_any_shared_links": "Je hebt geen gedeelde links", "your_wifi_name": "Je WiFi-naam", - "zoom_image": "Inzoomen" + "zoom_image": "Inzoomen", + "zoom_to_bounds": "Zoom naar randen" } diff --git a/i18n/pl.json b/i18n/pl.json index f0bd407bab..04337fcebf 100644 --- a/i18n/pl.json +++ b/i18n/pl.json @@ -1527,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Zarządzaj preferencjami aplikacji", "preferences_settings_title": "Ustawienia", + "preparing": "Przygotowywanie", "preset": "Ustawienie", "preview": "Podgląd", "previous": "Poprzedni", @@ -1592,6 +1593,7 @@ "read_changelog": "Zobacz Zmiany", "readonly_mode_disabled": "Tryb tylko do odczytu wyłączony", "readonly_mode_enabled": "Tryb tylko do odczytu włączony", + "ready_for_upload": "Gotowe do przesłania", "reassign": "Przypisz ponownie", "reassigned_assets_to_existing_person": "Przypisano ponownie {count, plural, one {# zasób} other {# zasobów}} do {name, select, null {istniejącej osoby} other {{name}}}", "reassigned_assets_to_new_person": "Przypisano ponownie {count, plural, one {# zasób} other {# zasobów}} do nowej osoby", @@ -1630,8 +1632,8 @@ "remove_from_locked_folder": "Usuń z folderu zablokowanego", "remove_from_locked_folder_confirmation": "Czy na pewno chcesz przenieść te zdjęcia i filmy z folderu zablokowanego? Będą one widoczne w bibliotece.", "remove_from_shared_link": "Usuń z udostępnionego linku", - "remove_memory": "Usuń pamięć", - "remove_photo_from_memory": "Usuń zdjęcia z tej pamięci", + "remove_memory": "Usuń wspomnienie", + "remove_photo_from_memory": "Usuń zdjęcia z tych wspomnień", "remove_tag": "Usuń tag", "remove_url": "Usuń URL", "remove_user": "Usuń użytkownika", @@ -1639,15 +1641,15 @@ "removed_from_archive": "Usunięto z archiwum", "removed_from_favorites": "Usunięto z ulubionych", "removed_from_favorites_count": "{count, plural, other {Usunięto #}} z ulubionych", - "removed_memory": "Pamięć została usunięta", - "removed_photo_from_memory": "Usunięto zdjęcie z pamięci", + "removed_memory": "Wspomnienie usunięte", + "removed_photo_from_memory": "Usunięto zdjęcie ze wspomnień", "removed_tagged_assets": "Usunięto etykietę z {count, plural, one {# zasobu} other {# zasobów}}", "rename": "Zmień nazwę", "repair": "Napraw", "repair_no_results_message": "Tutaj pojawią się nieśledzone i brakujące pliki", "replace_with_upload": "Prześlij nową wersję", "repository": "Repozytorium", - "require_password": "Wymagaj hasło", + "require_password": "Wymagaj hasła", "require_user_to_change_password_on_first_login": "Zmuś użytkownika do zmiany hasła podczas następnego logowania", "rescan": "Ponowne skanowanie", "reset": "Reset", diff --git a/i18n/pt.json b/i18n/pt.json index f039505152..4859e7e9a6 100644 --- a/i18n/pt.json +++ b/i18n/pt.json @@ -123,6 +123,12 @@ "logging_enable_description": "Ativar registo", "logging_level_description": "Quando ativado, qual o nível de log a usar.", "logging_settings": "Registo", + "machine_learning_availability_checks": "Verificação de disponibilidade", + "machine_learning_availability_checks_description": "Detectar automaticamente e dar preferência aos servidores de aprendizagem automática disponíveis", + "machine_learning_availability_checks_enabled": "Activar confirmações de disponibilidade", + "machine_learning_availability_checks_interval": "Confirmação de intervalo", + "machine_learning_availability_checks_interval_description": "Intervalo, em milisegundos, entre confirmações de disponibilidade", + "machine_learning_availability_checks_timeout": "Tempo limite para requisição", "machine_learning_clip_model": "Modelo CLIP", "machine_learning_clip_model_description": "O nome do modelo CLIP definido aqui. Tome nota de que é necessário voltar a executar a tarefa de \"Pesquisa Inteligente\" para todas as imagens depois de alterar o modelo.", "machine_learning_duplicate_detection": "Deteção de Itens Duplicados", @@ -423,6 +429,7 @@ "album_remove_user_confirmation": "Tem a certeza de que quer remover {user}?", "album_search_not_found": "Nenhum álbum encontrado segundo a pesquisa", "album_share_no_users": "Parece que tem este álbum partilhado com todos os utilizadores ou que não existem utilizadores com quem o partilhar.", + "album_summary": "Resumo do álbum", "album_updated": "Álbum atualizado", "album_updated_setting_description": "Receber uma notificação por e-mail quando um álbum partilhado tiver novos ficheiros", "album_user_left": "Saíu do {album}", diff --git a/i18n/pt_BR.json b/i18n/pt_BR.json index ae5335c872..d6ead94cd6 100644 --- a/i18n/pt_BR.json +++ b/i18n/pt_BR.json @@ -123,6 +123,13 @@ "logging_enable_description": "Habilitar logs", "logging_level_description": "Quando ativado, qual nível de log usar.", "logging_settings": "Logs", + "machine_learning_availability_checks": "Verficações de disponibilidade", + "machine_learning_availability_checks_description": "Automaticamente detectar e preferir servidores de machine learning disponíveis", + "machine_learning_availability_checks_enabled": "Habilitar verificações de disponibilidade", + "machine_learning_availability_checks_interval": "Intervalo de verificação", + "machine_learning_availability_checks_interval_description": "Intervalo em milisegundos entre verificações de disponibilidade", + "machine_learning_availability_checks_timeout": "Tempo limite da solicitação", + "machine_learning_availability_checks_timeout_description": "Tempo limite em milisegundos para verificações de disponibilidade", "machine_learning_clip_model": "Modelo CLIP", "machine_learning_clip_model_description": "O nome de um modelo CLIP listado aqui. Lembre-se de executar novamente a tarefa de 'Pesquisa Inteligente' para todas as imagens após alterar o modelo.", "machine_learning_duplicate_detection": "Detecção de duplicidade", @@ -1520,6 +1527,7 @@ "port": "Porta", "preferences_settings_subtitle": "Gerenciar as preferências do aplicativo", "preferences_settings_title": "Preferências", + "preparing": "Preparando", "preset": "Predefinição", "preview": "Pré-visualizar", "previous": "Anterior", @@ -1585,6 +1593,7 @@ "read_changelog": "Ler Novidades", "readonly_mode_disabled": "Modo apenas visualização desativado", "readonly_mode_enabled": "Modo apenas visualização ativado", + "ready_for_upload": "Pronto para upload", "reassign": "Reatribuir", "reassigned_assets_to_existing_person": "{count, plural, one {# arquivo reatribuído} other {# arquivos reatribuídos}} a {name, select, null {uma pessoa} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {# arquivo reatribuído} other {# arquivos reatribuídos}} a uma nova pessoa", @@ -1916,6 +1925,7 @@ "stacktrace": "Stacktrace", "start": "Início", "start_date": "Data inicial", + "start_date_before_end_date": "A data de início deve ser antes da data final", "state": "Estado", "status": "Status", "stop_casting": "Parar transmissão", diff --git a/i18n/ru.json b/i18n/ru.json index 26d379d68e..60c271af16 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -371,7 +371,7 @@ "user_cleanup_job": "Очистка пользователя", "user_delete_delay": "Аккаунт и файлы пользователя {user} будут отложены до окончательного удаления через {delay, plural, one {# день} few {# дня} many {# дней} other {# дня}}.", "user_delete_delay_settings": "Отложенное удаление", - "user_delete_delay_settings_description": "Срок в днях, по истечение которого происходит окончательное удаление учетной записи пользователя и его ресурсов. Задача по удалению пользователей выполняется в полночь. Изменения этой настройки будут учтены при следующем запуске задачи.", + "user_delete_delay_settings_description": "Срок в днях, по истечении которого происходит окончательное удаление учётной записи пользователя и всех его объектов. Задача по удалению пользователей выполняется в полночь. Изменение этой настройки будет учтено при следующем запуске задачи.", "user_delete_immediately": "Аккаунт и файлы пользователя {user} будут немедленно поставлены в очередь для окончательного удаления.", "user_delete_immediately_checkbox": "Поместить пользователя и его файлы в очередь для немедленного удаления", "user_details": "Данные пользователя", @@ -540,7 +540,7 @@ "background_backup_running_error": "Выполняется фоновое резервное копирование, запуск вручную пока невозможен", "background_location_permission": "Доступ к местоположению в фоне", "background_location_permission_content": "Чтобы считывать имя Wi-Fi сети в фоне, приложению *всегда* необходим доступ к точному местоположению устройства", - "background_options": "Параметры фоновых задач", + "background_options": "Выполнение фоновых задач", "backup": "Резервное копирование", "backup_album_selection_page_albums_device": "Альбомы на устройстве ({count})", "backup_album_selection_page_albums_tap": "Нажмите, чтобы включить, дважды, чтобы исключить", @@ -567,7 +567,7 @@ "backup_controller_page_background_battery_info_title": "Оптимизация батареи", "backup_controller_page_background_charging": "Только во время зарядки", "backup_controller_page_background_configure_error": "Не удалось настроить фоновую службу", - "backup_controller_page_background_delay": "Отложить резервное копирование новых объектов: {duration}", + "backup_controller_page_background_delay": "Задержка перед загрузкой новых объектов: {duration}", "backup_controller_page_background_description": "Включите фоновую службу для автоматического резервного копирования любых новых объектов без необходимости открывать приложение", "backup_controller_page_background_is_off": "Автоматическое резервное копирование в фоновом режиме отключено", "backup_controller_page_background_is_on": "Автоматическое резервное копирование в фоновом режиме включено", @@ -584,7 +584,7 @@ "backup_controller_page_filename": "Имя файла: {filename} [{size}]", "backup_controller_page_id": "ID: {id}", "backup_controller_page_info": "Информация о резервном копировании", - "backup_controller_page_none_selected": "Ничего не выбрано", + "backup_controller_page_none_selected": "Не выбрано", "backup_controller_page_remainder": "Осталось", "backup_controller_page_remainder_sub": "Фото и видео для загрузки", "backup_controller_page_server_storage": "Хранилище на сервере", @@ -665,7 +665,7 @@ "change_pin_code": "Изменить PIN-код", "change_your_password": "Изменить свой пароль", "changed_visibility_successfully": "Видимость успешно изменена", - "charging": "На зарядке", + "charging": "При зарядке", "charging_requirement_mobile_backup": "Запускать резервное копирование только во время зарядки", "check_corrupt_asset_backup": "Проверка поврежденных резервных копий", "check_corrupt_asset_backup_button": "Проверить", diff --git a/i18n/sk.json b/i18n/sk.json index 35975823e7..6c009deea1 100644 --- a/i18n/sk.json +++ b/i18n/sk.json @@ -1527,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Spravovať predvoľby aplikácie", "preferences_settings_title": "Predvoľby", + "preparing": "Pripravuje sa", "preset": "Predvoľba", "preview": "Náhľad", "previous": "Predošlé", @@ -1592,6 +1593,7 @@ "read_changelog": "Prečítať zoznam zmien", "readonly_mode_disabled": "Režim iba na čítanie je vypnutý", "readonly_mode_enabled": "Režim iba na čítanie je zapnutý", + "ready_for_upload": "Pripravené na nahratie", "reassign": "Preradiť", "reassigned_assets_to_existing_person": "Opätovne {count, plural, one {priradená # položka} few {priradené # položky} other {priradených # položiek}} k {name, select, null {existujúcej osobe} other {{name}}}", "reassigned_assets_to_new_person": "Opätovne {count, plural, one {priradená # položka} few {priradené # položky} other {priradených # položiek}} novej osobe", diff --git a/i18n/sl.json b/i18n/sl.json index a4e75727ed..23701836f2 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -306,14 +306,14 @@ "transcoding_acceleration_qsv": "Hitra sinhronizacija (zahteva procesor Intel 7. generacije ali novejši)", "transcoding_acceleration_rkmpp": "RKMPP (samo na Rockchip SOC)", "transcoding_acceleration_vaapi": "VAAPI", - "transcoding_accepted_audio_codecs": "Dovoljeni zvočni kodeksi", - "transcoding_accepted_audio_codecs_description": "Izberite, katerih zvočnih kodeksov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", + "transcoding_accepted_audio_codecs": "Dovoljeni zvočni kodeki", + "transcoding_accepted_audio_codecs_description": "Izberite, katerih zvočnih kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", "transcoding_accepted_containers": "Sprejeti zabojniki", "transcoding_accepted_containers_description": "Izberite, katerih formatov zabojnika ni treba ponovno muksirati v MP4. Uporablja se samo za določene politike prekodiranja.", - "transcoding_accepted_video_codecs": "Podprti video kodeksi", - "transcoding_accepted_video_codecs_description": "Izberite, katerih video kodeksov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", + "transcoding_accepted_video_codecs": "Podprti video kodeki", + "transcoding_accepted_video_codecs_description": "Izberite, katerih video kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.", "transcoding_advanced_options_description": "Možnosti, ki jih večini uporabnikov ne treba spreminjati", - "transcoding_audio_codec": "Zvočni kodeks", + "transcoding_audio_codec": "Zvočni kodek", "transcoding_audio_codec_description": "Opus je najbolj kakovostna možnost, vendar ima slabšo združljivost s starimi napravami ali programsko opremo.", "transcoding_bitrate_description": "Videoposnetki, ki presegajo največjo bitno hitrost ali niso v sprejemljivem formatu", "transcoding_codecs_learn_more": "Če želite izvedeti več o tukaj uporabljeni terminologiji, glejte dokumentacijo FFmpeg za kodek H.264, kodek HEVC in VP9 kodek.", @@ -323,7 +323,7 @@ "transcoding_constant_rate_factor_description": "Raven kakovosti videa. Tipične vrednosti so 23 za H.264, 28 za HEVC, 31 za VP9 in 35 za AV1. Nižje je boljše, vendar ustvarja večje datoteke.", "transcoding_disabled_description": "Ne prekodirajte nobenih videoposnetkov, lahko prekine predvajanje na nekaterih odjemalcih", "transcoding_encoding_options": "Možnosti kodiranja", - "transcoding_encoding_options_description": "Nastavite kodekse, ločljivost, kakovost in druge možnosti za kodirane videoposnetke", + "transcoding_encoding_options_description": "Nastavite kodeke, ločljivost, kakovost in druge možnosti za kodirane videoposnetke", "transcoding_hardware_acceleration": "Strojno pospeševanje", "transcoding_hardware_acceleration_description": "Eksperimentalno: hitrejše prekodiranje, vendar se lahko kakovost pri enaki bitni hitrosti zmanjša", "transcoding_hardware_decoding": "Strojno dekodiranje", @@ -1527,6 +1527,7 @@ "port": "Vrata", "preferences_settings_subtitle": "Upravljaj nastavitve aplikacije", "preferences_settings_title": "Nastavitve", + "preparing": "Priprava", "preset": "Prednastavitev", "preview": "Predogled", "previous": "Prejšnj-a/-i", @@ -1592,6 +1593,7 @@ "read_changelog": "Preberi dnevnik sprememb", "readonly_mode_disabled": "Način samo za branje je onemogočen", "readonly_mode_enabled": "Način samo za branje je omogočen", + "ready_for_upload": "Pripravljeno za nalaganje", "reassign": "Prerazporedi", "reassigned_assets_to_existing_person": "Ponovno dodeljeno {count, plural, one {# sredstvo} two {# sredstvi} few {# sredstva} other {# sredstev}} za {name, select, null {an existing person} other {{name}}}", "reassigned_assets_to_new_person": "Ponovno dodeljeno {count, plural, one {# sredstvo} two {# sredstvi} few {# sredstva} other {# sredstev}} za novo osebo", diff --git a/i18n/sv.json b/i18n/sv.json index b7c0f2100c..6acee96f66 100644 --- a/i18n/sv.json +++ b/i18n/sv.json @@ -123,6 +123,13 @@ "logging_enable_description": "Aktivera loggning", "logging_level_description": "Vilken loggnivå som ska användas vid aktivering.", "logging_settings": "Loggning", + "machine_learning_availability_checks": "Tillgänglighetskontroller", + "machine_learning_availability_checks_description": "Upptäck och föredrar automatiskt tillgängliga maskininlärningsservrar", + "machine_learning_availability_checks_enabled": "Aktivera tillgänglighetskontroller", + "machine_learning_availability_checks_interval": "Kontrollera intervall", + "machine_learning_availability_checks_interval_description": "Intervall i millisekunder mellan tillgänglighetskontroller", + "machine_learning_availability_checks_timeout": "Begär timeout", + "machine_learning_availability_checks_timeout_description": "Timeout i millisekunder för tillgänglighetskontroller", "machine_learning_clip_model": "CLIP-modell", "machine_learning_clip_model_description": "Namnet på en CLIP-modell listad här . Observera att du måste köra ett \"Smart Sökning\" jobb för alla bilder när du ändrar modell.", "machine_learning_duplicate_detection": "Dubblettdetektering", @@ -423,6 +430,7 @@ "album_remove_user_confirmation": "Är du säker på att du vill ta bort {user}?", "album_search_not_found": "Inga album hittades som matchade din sökning", "album_share_no_users": "Det verkar som att du har delat det här albumet med alla användare eller så har du inte någon användare att dela med.", + "album_summary": "Albumsammanfattning", "album_updated": "Albumet uppdaterat", "album_updated_setting_description": "Få ett e-postmeddelande när ett delat album har nya tillgångar", "album_user_left": "Lämnade {album}", @@ -494,6 +502,8 @@ "asset_restored_successfully": "Objekt återställt", "asset_skipped": "Överhoppad", "asset_skipped_in_trash": "I papperskorgen", + "asset_trashed": "Tillgång kasserad", + "asset_troubleshoot": "Felsökning av tillgångar", "asset_uploaded": "Uppladdad", "asset_uploading": "Laddar upp...…", "asset_viewer_settings_subtitle": "Hantera inställningar för gallerivisare", @@ -527,8 +537,10 @@ "autoplay_slideshow": "Spela upp bildspel automatiskt", "back": "Bakåt", "back_close_deselect": "Tillbaka, stäng eller avmarkera", + "background_backup_running_error": "Bakgrundssäkerhetskopiering körs för närvarande, kan inte starta manuell säkerhetskopiering", "background_location_permission": "Tillåtelse för bakgrundsplats", "background_location_permission_content": "För att kunna byta nätverk när appen körs i bakgrunden måste Immich *alltid* ha åtkomst till exakt plats så att appen kan läsa av Wi-Fi-nätverkets namn", + "background_options": "Bakgrundsalternativ", "backup": "Säkerhetskopiera", "backup_album_selection_page_albums_device": "Album på enhet ({count})", "backup_album_selection_page_albums_tap": "Tryck en gång för att inkludera, tryck två gånger för att exkludera", @@ -536,6 +548,7 @@ "backup_album_selection_page_select_albums": "Välj album", "backup_album_selection_page_selection_info": "Info om valda objekt", "backup_album_selection_page_total_assets": "Antal unika objekt", + "backup_albums_sync": "Säkerhetskopiera album synkronisering", "backup_all": "Allt", "backup_background_service_backup_failed_message": "Säkerhetskopiering av foton och videor misslyckades. Försöker igen…", "backup_background_service_connection_failed_message": "Anslutning till servern misslyckades. Försöker igen…", @@ -652,6 +665,8 @@ "change_pin_code": "Ändra PIN-kod", "change_your_password": "Ändra ditt lösenord", "changed_visibility_successfully": "Synligheten har ändrats", + "charging": "Laddar", + "charging_requirement_mobile_backup": "Bakgrundssäkerhetskopiering kräver att enheten laddas", "check_corrupt_asset_backup": "Kontrollera om det finns korrupta säkerhetskopior av objekt", "check_corrupt_asset_backup_button": "Kontrollera", "check_corrupt_asset_backup_description": "Kör kontrollen endast över Wi-Fi och när alla objekt har säkerhetskopierats. Det kan ta några minuter.", @@ -738,6 +753,7 @@ "create_user": "Skapa användare", "created": "Skapad", "created_at": "Skapad", + "creating_linked_albums": "Skapar länkade album...", "crop": "Beskär", "curated_object_page_title": "Objekt", "current_device": "Aktuell enhet", @@ -869,7 +885,7 @@ "editor_close_without_save_prompt": "Ändringarna kommer inte att sparas", "editor_close_without_save_title": "Stäng redigeraren?", "editor_crop_tool_h2_aspect_ratios": "Bildförhållande", - "editor_crop_tool_h2_rotation": "Rotation", + "editor_crop_tool_h2_rotation": "Vridning", "email": "Epost", "email_notifications": "E-postaviseringar", "empty_folder": "Mappen är tom", @@ -887,7 +903,9 @@ "error": "Fel", "error_change_sort_album": "Kunde inte ändra sorteringsordning för album", "error_delete_face": "Fel uppstod när ansikte skulle tas bort från objektet", + "error_getting_places": "Det gick inte att hämta platser", "error_loading_image": "Fel vid bildladdning", + "error_loading_partners": "Fel vid inläsning av partner: {error}", "error_saving_image": "Fel: {error}", "error_tag_face_bounding_box": "Fel vid taggning av ansikte – kan inte hämta koordinater för begränsningsruta", "error_title": "Fel – något gick fel", @@ -1013,7 +1031,7 @@ "unable_to_update_user": "Kunde inte uppdatera användare", "unable_to_upload_file": "Det går inte att ladda upp filen" }, - "exif": "Exif", + "exif": "EXIF", "exif_bottom_sheet_description": "Lägg till beskrivning...", "exif_bottom_sheet_description_error": "Fel vid uppdatering av beskrivningen", "exif_bottom_sheet_details": "DETALJER", @@ -1052,6 +1070,7 @@ "favorites_page_no_favorites": "Inga favoritobjekt hittades", "feature_photo_updated": "Funktionsfoto uppdaterad", "features": "Funktioner", + "features_in_development": "Funktioner i utveckling", "features_setting_description": "Hantera appens funktioner", "file_name": "Filnamn", "file_name_or_extension": "Filnamn eller -tillägg", @@ -1069,7 +1088,7 @@ "folders_feature_description": "Bläddra i mappvyn för foton och videoklipp i filsystemet", "forgot_pin_code_question": "Glömt din pinkod?", "forward": "Framåt", - "gcast_enabled": "Google Cast", + "gcast_enabled": "Google-Cast", "gcast_enabled_description": "Denna funktion läser in externa resurser från Google för att fungera.", "general": "Allmänt", "geolocation_instruction_location": "Klicka på en tillgång med GPS-koordinater för att använda dess plats, eller välj en plats direkt från kartan", @@ -1211,11 +1230,12 @@ "link_to_oauth": "Länk till OAuth", "linked_oauth_account": "Länkat OAuth konto", "list": "Lista", - "loading": "Laddar", + "loading": "Inläsning", "loading_search_results_failed": "Det gick inte att läsa in sökresultat", "local": "Lokalt", "local_asset_cast_failed": "Det går inte att casta en tillgång som inte har laddats upp till servern", "local_assets": "Lokala tillgångar", + "local_media_summary": "Sammanfattning av lokala medier", "local_network": "Lokalt nätverk", "local_network_sheet_info": "Appen kommer ansluta till servern via denna URL när det specificerade WiFi-nätverket används", "location_permission": "Plats-rättighet", @@ -1227,6 +1247,7 @@ "location_picker_longitude_hint": "Ange din longitud här", "lock": "Lås", "locked_folder": "Låst Mapp", + "log_detail_title": "Loggdetalj", "log_out": "Logga ut", "log_out_all_devices": "Logga ut alla enheter", "logged_in_as": "Inloggad som {user}", @@ -1257,6 +1278,7 @@ "login_password_changed_success": "Uppdatering av lösenord lyckades", "logout_all_device_confirmation": "Är du säker på att du vill logga ut från alla enheter?", "logout_this_device_confirmation": "Är du säker på att du vill logga ut från denna enhet?", + "logs": "Loggar", "longitude": "Longitud", "look": "Titta", "loop_videos": "Loopa videor", @@ -1299,6 +1321,7 @@ "mark_as_read": "Markera som läst", "marked_all_as_read": "Markerade alla som lästa", "matches": "Matchar", + "matching_assets": "Matchande tillgångar", "media_type": "Mediatyp", "memories": "Minnen", "memories_all_caught_up": "Du är ikapp", @@ -1339,6 +1362,7 @@ "name_or_nickname": "Namn eller smeknamn", "network_requirement_photos_upload": "Använd mobildata för att säkerhetskopiera foton", "network_requirement_videos_upload": "Använd mobildata för att säkerhetskopiera videor", + "network_requirements": "Nätverkskrav", "network_requirements_updated": "Nätverkskraven har ändrats, återställer säkerhetskopieringskön", "networking_settings": "Nätverk", "networking_subtitle": "Hantera inställningar för server-endpointen", @@ -1349,6 +1373,7 @@ "new_person": "Ny person", "new_pin_code": "Ny PIN-kod", "new_pin_code_subtitle": "Det här är första gången du öppnar den låsta mappen. Skapa en PIN-kod för att säkert få åtkomst till den här sidan", + "new_timeline": "Ny tidslinje", "new_user_created": "Ny användare skapad", "new_version_available": "NY VERSION TILLGÄNGLIG", "newest_first": "Nyast först", @@ -1362,20 +1387,25 @@ "no_assets_message": "KLICKA FÖR ATT LADDA UPP DIN FÖRSTA BILD", "no_assets_to_show": "Inga objekt att visa", "no_cast_devices_found": "Inga Cast-enheter hittades", + "no_checksum_local": "Ingen kontrollsumma tillgänglig - kan inte hämta lokala tillgångar", + "no_checksum_remote": "Ingen kontrollsumma tillgänglig - kan inte hämta fjärrtillgång", "no_duplicates_found": "Inga dubbletter hittades.", "no_exif_info_available": "EXIF-information ej tillgänglig", "no_explore_results_message": "Ladda upp fler bilder för att utforska din samling.", "no_favorites_message": "Lägg till favoriter för att snabbt hitta dina bästa bilder och videor", "no_libraries_message": "Skapa ett externt bibliotek för att se dina bilder och videor", + "no_local_assets_found": "Inga lokala tillgångar hittades med denna kontrollsumma", "no_locked_photos_message": "Foton och videor i den låsta mappen är dolda och visas inte när du bläddrar eller söker i ditt bibliotek.", "no_name": "Inget namn", "no_notifications": "Inga aviseringar", "no_people_found": "Inga matchande personer hittade", "no_places": "Inga platser", + "no_remote_assets_found": "Inga fjärrtillgångar hittades med denna kontrollsumma", "no_results": "Inga resultat", "no_results_description": "Pröva en synonym eller ett annat mer allmänt sökord", "no_shared_albums_message": "Skapa ett album för att dela bilder och videor med andra personer", "no_uploads_in_progress": "Inga uppladdningar pågår", + "not_available": "N/A", "not_in_any_album": "Inte i något album", "not_selected": "Ej vald", "note_apply_storage_label_to_previously_uploaded assets": "Obs: Om du vill använda lagringsetiketten på tidigare uppladdade tillgångar kör du", @@ -1497,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Hantera appens inställningar", "preferences_settings_title": "Inställningar", + "preparing": "Förbereder", "preset": "Förinställt värde", "preview": "Förhandsvisning", "previous": "Föregående", @@ -1520,7 +1551,7 @@ "profile_picture_set": "Profilbild vald.", "public_album": "Publikt album", "public_share": "Offentlig delning", - "purchase_account_info": "Supporter", + "purchase_account_info": "Anhängare", "purchase_activated_subtitle": "Tack för att du stödjer Immich och open source-mjukvara", "purchase_activated_time": "Aktiverad {date}", "purchase_activated_title": "Aktiveringan av din nyckel lyckades", @@ -1562,6 +1593,7 @@ "read_changelog": "Läs ändringslogg", "readonly_mode_disabled": "Skrivskyddat läge inaktiverat", "readonly_mode_enabled": "Skrivskyddat läge aktiverat", + "ready_for_upload": "Redo för uppladdning", "reassign": "Omfördela", "reassigned_assets_to_existing_person": "Tilldelade om {count, plural, one {# objekt} other {# objekt}} till {name, select, null {an existing person} other {{name}}}", "reassigned_assets_to_new_person": "Tilldelade om {count, plural, one {# objekt} other {# objekt}} till en ny persson", @@ -1586,6 +1618,7 @@ "regenerating_thumbnails": "Uppdaterar miniatyrer", "remote": "Fjärrr", "remote_assets": "Fjärrtillgångar", + "remote_media_summary": "Sammanfattning av fjärrmedia", "remove": "Ta bort", "remove_assets_album_confirmation": "Är du säker på att du vill ta bort {count, plural, one {# asset} other {# assets}} från albumet?", "remove_assets_shared_link_confirmation": "Är du säker på att du vill ta bort {count, plural, one {# asset} other {# assets}} från denna delade länk?", @@ -1861,6 +1894,7 @@ "show_slideshow_transition": "Visa bildspelsövergång", "show_supporter_badge": "Supporteremblem", "show_supporter_badge_description": "Visa supporteremblem", + "show_text_search_menu": "Visa textsökningsmeny", "shuffle": "Blanda", "sidebar": "Sidopanel", "sidebar_display_description": "Visa en länk till vyn i sidofältet", @@ -1891,6 +1925,7 @@ "stacktrace": "Stapelspårning", "start": "Starta", "start_date": "Startdatum", + "start_date_before_end_date": "Startdatumet måste vara före slutdatumet", "state": "Stat", "status": "Status", "stop_casting": "Sluta casta", @@ -1907,7 +1942,7 @@ "suggestions": "Förslag", "sunrise_on_the_beach": "Soluppgång på stranden", "support": "Support", - "support_and_feedback": "Support & Feedback", + "support_and_feedback": "Support och Feedback", "support_third_party_description": "Din Immich-installation paketerades av en tredje part. Problem som du upplever kan orsakas av det paketet, så vänligen ta upp problem med dem i första hand med hjälp av länkarna nedan.", "swap_merge_direction": "Byt sammanfogningsriktning", "sync": "Synka", @@ -2093,5 +2128,6 @@ "yes": "Ja", "you_dont_have_any_shared_links": "Du har inga delade länkar", "your_wifi_name": "Ditt Wi-Fi-namn", - "zoom_image": "Zooma bild" + "zoom_image": "Zooma bild", + "zoom_to_bounds": "Zooma till gränser" } diff --git a/i18n/ta.json b/i18n/ta.json index 3027bea3b3..f8996ad44b 100644 --- a/i18n/ta.json +++ b/i18n/ta.json @@ -537,9 +537,9 @@ "autoplay_slideshow": "ஆட்டோபிளே ச்லைடுசோ", "back": "பின்", "back_close_deselect": "பின், மூடு அல்லது தேர்வுநீக்கம்", - "background_backup_running_error": "பின்னணி காப்புப்பிரதி தற்போது இயங்குகிறது, கையேடு காப்புப்பிரதியைத் தொடங்க முடியாது", + "background_backup_running_error": "பின்னணி காப்புப்பிரதி தற்போது இயங்குகிறது, கைமுறை காப்புப்பிரதியைத் தொடங்க முடியாது", "background_location_permission": "பின்னணி இருப்பிட இசைவு", - "background_location_permission_content": "பின்னணியில் இயங்கும் போது நெட்வொர்க்குகளை மாற்ற, இம்மிச் * எப்போதும் * துல்லியமான இருப்பிட அணுகலைக் கொண்டிருக்க வேண்டும், எனவே பயன்பாடு வைஃபை நெட்வொர்க்கின் பெயரைப் படிக்க முடியும்", + "background_location_permission_content": "பின்னணியில் இயங்கும் போது நெட்வொர்க்குகளை மாற்ற, இம்மிச் *எப்போதும்* துல்லியமான இருப்பிட அணுகலைக் கொண்டிருக்க வேண்டும், எனவே பயன்பாடு வைஃபை நெட்வொர்க்கின் பெயரைப் படிக்க முடியும்", "background_options": "பின்னணி விருப்பங்கள்", "backup": "காப்புப்பிரதி", "backup_album_selection_page_albums_device": "சாதனத்தில் ஆல்பங்கள் ({count})", @@ -1527,23 +1527,24 @@ "port": "துறைமுகம்", "preferences_settings_subtitle": "பயன்பாட்டின் விருப்பங்களை நிர்வகிக்கவும்", "preferences_settings_title": "விருப்பத்தேர்வுகள்", + "preparing": "தயாராகிறது", "preset": "முன்னமைவு", "preview": "முன்னோட்டம்", "previous": "முந்தைய", "previous_memory": "முந்தைய நினைவகம்", - "previous_or_next_day": "நாள் முன்னோக்கி/பின்புறம்", - "previous_or_next_month": "மாதம் முன்னோக்கி/பின்", - "previous_or_next_photo": "புகைப்படம் முன்னோக்கி/பின்", - "previous_or_next_year": "ஆண்டு முன்னோக்கி/பின்புறம்", + "previous_or_next_day": "நாள் முன்னோக்கி/பின்னோக்கி", + "previous_or_next_month": "மாதம் முன்னோக்கி/பின்னோக்கி", + "previous_or_next_photo": "புகைப்படம் முன்னோக்கி/பின்னோக்கி", + "previous_or_next_year": "ஆண்டு முன்னோக்கி/பின்னோக்கி", "primary": "முதன்மை", "privacy": "தனியுரிமை", "profile": "சுயவிவரம்", "profile_drawer_app_logs": "பதிவுகள்", - "profile_drawer_client_out_of_date_major": "மொபைல் பயன்பாடு காலாவதியானது. அண்மைக் கால முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.", - "profile_drawer_client_out_of_date_minor": "மொபைல் பயன்பாடு காலாவதியானது. அண்மைக் கால சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.", + "profile_drawer_client_out_of_date_major": "மொபைல் பயன்பாடு காலாவதியானது. தயவு செய்து சமீபத்திய முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.", + "profile_drawer_client_out_of_date_minor": "மொபைல் பயன்பாடு காலாவதியானது. தயவு செய்து சமீபத்திய சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.", "profile_drawer_client_server_up_to_date": "வாங்கி மற்றும் சேவையகம் புதுப்பித்த நிலையில் உள்ளன", - "profile_drawer_github": "கிரப்", - "profile_drawer_readonly_mode": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது. வெளியேற பயனர் அவதார் ஐகானை நீண்ட அழுத்தவும்.", + "profile_drawer_github": "கிட்ஹப்", + "profile_drawer_readonly_mode": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது. வெளியேற பயனர் அவதார் ஐகானை நீண்ட நேரம் அழுத்தவும்.", "profile_drawer_server_out_of_date_major": "சேவையகம் காலாவதியானது. அண்மைக் கால முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.", "profile_drawer_server_out_of_date_minor": "சேவையகம் காலாவதியானது. அண்மைக் கால சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.", "profile_image_of_user": "{பயனரின் சுயவிவரப் படம்", @@ -1592,7 +1593,8 @@ "read_changelog": "சேஞ்ச்லாக் படிக்கவும்", "readonly_mode_disabled": "படிக்க மட்டும் பயன்முறை முடக்கப்பட்டுள்ளது", "readonly_mode_enabled": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது", - "reassign": "மீண்டும் இணைக்கவும்", + "ready_for_upload": "பதிவேற்றத் தயார்", + "reassign": "மீண்டும் ஒதுக்கு", "reassigned_assets_to_existing_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} பெறுநர் {பெயருக்கு, தேர்ந்தெடுக்கவும், சுழிய {an existing person} பிற {{name}}}", "reassigned_assets_to_new_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} ஒரு புதிய நபருக்கு", "reassing_hint": "தேர்ந்தெடுக்கப்பட்ட சொத்துக்களை ஏற்கனவே இருக்கும் நபருக்கு ஒதுக்குங்கள்", diff --git a/i18n/tr.json b/i18n/tr.json index 835ce754c5..710d20a580 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -11,14 +11,14 @@ "activity_changed": "Etkinlik {enabled, select, true {etkin} other {devre dışı}}", "add": "Ekle", "add_a_description": "Açıklama ekle", - "add_a_location": "Konum ekle", + "add_a_location": "Bir konum ekle", "add_a_name": "İsim ekle", "add_a_title": "Başlık ekle", "add_birthday": "Doğum günü ekle", "add_endpoint": "Uç nokta ekle", "add_exclusion_pattern": "Hariç tutma deseni ekle", "add_import_path": "İçe aktarma yolu ekle", - "add_location": "Lokasyon ekle", + "add_location": "Konum ekle", "add_more_users": "Daha fazla kullanıcı ekle", "add_partner": "Partner ekle", "add_path": "Yol ekle", @@ -91,7 +91,7 @@ "image_prefer_wide_gamut_setting_description": "Önizleme görseli için P3 renk paletini tercih et. Bu, geniş renk paletli fotoğraflarda renk canlılığını daha iyi korur, fakat fotoğraflar eski tarayıcılarda ve eski cihazlarda daha farklı görünebilir. sRGB fotoğraflar renk paletini korumak için sRGB olarak tutulur.", "image_preview_description": "Orta boyutlu görüntü, meta verisi çıkarılmış, tekil bir öğe görüntülenirken ve makine öğrenimi için kullanılır", "image_preview_quality_description": "Ön izleme kalitesi 1-100 arasıdır. Yüksek değerler daha iyi kalite sağlar, ancak daha büyük dosyalar üretir ve uygulama yanıt verme hızını düşürebilir. Düşük bir değer belirlemek, makine öğrenimi kalitesini etkileyebilir.", - "image_preview_title": "Ön izleme Ayarları", + "image_preview_title": "Ön İzleme Ayarları", "image_quality": "Kalite", "image_resolution": "Çözünürlük", "image_resolution_description": "Daha yüksek çözünürlükle, daha fazla detayı koruyabilir ancak kodlanması daha uzun sürer, daha büyük dosya boyutlarına sahip olur ve uygulamanın yanıt verme hızını azaltabilir.", @@ -105,10 +105,10 @@ "job_not_concurrency_safe": "Bu işlem eşzamanlama için uygun değil.", "job_settings": "Görev Ayarları", "job_settings_description": "Aynı anda çalışacak görevleri yönet", - "job_status": "Görev Statüleri", + "job_status": "Görev Durumu", "jobs_delayed": "{jobCount, plural, other {# gecikmeli}}", "jobs_failed": "{jobCount, plural, other {# Başarısız}}", - "library_created": "{library} kütüphanesi oluşturuldu", + "library_created": "Oluşturulan kütüphane : {library}", "library_deleted": "Kütüphane silindi", "library_import_path_description": "Belirtilecek klasörü içe aktarın. Bu klasör, alt klasörler dahil olmak üzere, görüntüler ve videolar için taranacaktır.", "library_scanning": "Periyodik Tarama", @@ -120,7 +120,7 @@ "library_watching_enable_description": "Harici kütüphanelerdeki dosya değişikliklerini izle", "library_watching_settings": "Kütüphane izleme (DENEYSEL)", "library_watching_settings_description": "Değişen dosyalar için otomatik olarak izle", - "logging_enable_description": "Günlüğü aktifleştir", + "logging_enable_description": "Günlüğü etkinleştir", "logging_level_description": "Etkinleştirildiğinde hangi günlük seviyesi kullanılır.", "logging_settings": "Günlük Tutma", "machine_learning_availability_checks": "Kullanılabilirlik kontrolleri", @@ -390,7 +390,7 @@ "video_conversion_job": "Videoları dönüştür", "video_conversion_job_description": "Tarayıcılar ve cihazlarla daha geniş uyumluluk için videoları dönüştür" }, - "admin_email": "Yönetici Emaili", + "admin_email": "Yönetici E-postası", "admin_password": "Yönetici Şifresi", "administration": "Yönetim", "advanced": "Gelişmiş", @@ -1521,12 +1521,13 @@ "places_count": "{count, plural, one {{count, number} yer} other {{count, number} yer}}", "play": "Oynat", "play_memories": "Anıları oynat", - "play_motion_photo": "Hareketli fotoğrafı oynat", + "play_motion_photo": "Hareketli Fotoğrafı Oynat", "play_or_pause_video": "Videoyu oynat ya da durdur", "please_auth_to_access": "Erişim için lütfen kimliğinizi doğrulayın", "port": "Port", "preferences_settings_subtitle": "Uygulama tercihlerini düzenle", "preferences_settings_title": "Tercihler", + "preparing": "Hazırlanıyor", "preset": "Ön ayar", "preview": "Önizleme", "previous": "Önceki", @@ -1592,6 +1593,7 @@ "read_changelog": "Değişiklik günlüğünü oku", "readonly_mode_disabled": "Salt okunur mod devre dışı", "readonly_mode_enabled": "Salt okunur mod etkin", + "ready_for_upload": "Yüklemeye hazır", "reassign": "Yeniden ata", "reassigned_assets_to_existing_person": "{count, plural, one {# öğe} other {# öğeler}} {name, select, null {mevcut bir kişiye} other {{name}}} atandı", "reassigned_assets_to_new_person": "{count, plural, one {# öğe} other {# öğeler}} yeni bir kişiye atandı", @@ -2077,11 +2079,11 @@ "user_role_set": "{user}, {role} olarak ayarlandı", "user_usage_detail": "Kullanıcı kullanım detayı", "user_usage_stats": "Hesap kullanım istatistikleri", - "user_usage_stats_description": "hesap kullanım istatistiklerini göster", + "user_usage_stats_description": "Hesap kullanım istatistiklerini göster", "username": "Kullanıcı adı", "users": "Kullanıcılar", "users_added_to_album_count": "Albüme {count, plural, one {# user} other {# users}} eklendi", - "utilities": "Yardımcılar", + "utilities": "Yardımcı Uygulamalar", "validate": "Doğrula", "validate_endpoint_error": "Lütfen geçerli bir URL girin", "variables": "Değişkenler", @@ -2091,7 +2093,7 @@ "version_history": "Sürüm Geçmişi", "version_history_item": "{version}, {date} tarihinde kuruldu", "video": "Video", - "video_hover_setting": "Üzerinde durulduğunda video önizlemesi oynat", + "video_hover_setting": "Üzerinde durulduğunda video ön izlemesi oynat", "video_hover_setting_description": "Öğe üzerinde fareyle durulduğunda video küçük resmini oynatır. Bu özellik devre dışıyken, oynatma simgesine fareyle gidilerek oynatma başlatılabilir.", "videos": "Videolar", "videos_count": "{count, plural, one {# video} other {# video}}", diff --git a/i18n/uk.json b/i18n/uk.json index d0b29b5bae..f34f581315 100644 --- a/i18n/uk.json +++ b/i18n/uk.json @@ -265,7 +265,7 @@ "server_welcome_message": "Вітальне повідомлення", "server_welcome_message_description": "Повідомлення, яке відображається на сторінці входу.", "sidecar_job": "Метадані з sidecar-файлів", - "sidecar_job_description": "Виявлення або синхронізація метаданих додатків з файлової системи", + "sidecar_job_description": "Пошук або синхронізація сайдкар-метаданих з файлової системи", "slideshow_duration_description": "Кількість секунд для відображення кожного зображення", "smart_search_job_description": "Запуск машинного навчання для ресурсів для підтримки розумного пошуку", "storage_template_date_time_description": "Позначка часу створення ресурсу використовується для інформації про дату й час", @@ -347,7 +347,7 @@ "transcoding_settings": "Налаштування транскодування відео", "transcoding_settings_description": "Керування які відео транскодувати і як їх обробляти", "transcoding_target_resolution": "Роздільна здатність", - "transcoding_target_resolution_description": "Вищі роздільні здатності можуть зберігати більше деталей, але займають більше часу на кодування, мають більші розміри файлів і можуть зменшити швидкість роботи додатку.", + "transcoding_target_resolution_description": "Вищі роздільні здатності можуть зберігати більше деталей, але займають більше часу на кодування, мають більші розміри файлів і можуть зменшити швидкість роботи застосунку.", "transcoding_temporal_aq": "Тимчасове AQ", "transcoding_temporal_aq_description": "Це застосовується лише до NVENC. Підвищує якість сцен з великою деталізацією та низьким рухом. Може бути несумісним зі старими пристроями.", "transcoding_threads": "Потоки", @@ -1071,7 +1071,7 @@ "feature_photo_updated": "Вибране фото оновлено", "features": "Додаткові можливості", "features_in_development": "Функції в розробці", - "features_setting_description": "Керування додатковими можливостями додатка", + "features_setting_description": "Керування додатковими можливостями застосунку", "file_name": "Ім'я файлу", "file_name_or_extension": "Ім'я файлу або розширення", "filename": "Ім'я файлу", @@ -1137,7 +1137,7 @@ "home_page_delete_remote_err_local": "Локальні елемент(и) вже в процесі видалення з сервера, пропущено", "home_page_favorite_err_local": "Поки що не можна додати до улюблених локальні елементи, пропущено", "home_page_favorite_err_partner": "Поки що не можна додати до улюблених елементи партнера, пропущено", - "home_page_first_time_notice": "Якщо ви користуєтеся додатком вперше, будь ласка, оберіть альбом для резервного копіювання, щоб на шкалі часу з’явилися фото та відео", + "home_page_first_time_notice": "Якщо ви користуєтеся застосунком вперше, будь ласка, оберіть альбом для резервного копіювання, щоб на шкалі часу з’явилися фото та відео", "home_page_locked_error_local": "Не вдається перемістити локальні файли до особистої папки, пропускається", "home_page_locked_error_partner": "Не вдається перемістити партнерські файли до особистої папки, пропускається", "home_page_share_err_local": "Неможливо поділитися локальними елементами через посилання, пропущено", @@ -1499,7 +1499,7 @@ "permission_onboarding_permission_denied": "Доступ заборонено. Для використання Immich надайте дозволи до \"Фото та відео\" в налаштуваннях.", "permission_onboarding_permission_granted": "Доступ надано! Все готово.", "permission_onboarding_permission_limited": "Доступ обмежено. Щоби дозволити Immich створювати резервні копії та керувати всією галереєю, надайте дозволи на фото й відео в налаштуваннях.", - "permission_onboarding_request": "Додатку Immich потрібен дозвіл для перегляду ваших фото та відео.", + "permission_onboarding_request": "Застосунку Immich потрібен дозвіл для перегляду ваших фото та відео.", "person": "Людина", "person_age_months": "{months, plural, one {# місяць} other {# місяці}}", "person_age_year_months": "1 year , {months, plural, one {# місяць} other {# місяці}}", @@ -1525,8 +1525,9 @@ "play_or_pause_video": "Відтворення або призупинення відео", "please_auth_to_access": "Будь ласка, пройдіть автентифікацію", "port": "Порт", - "preferences_settings_subtitle": "Керування налаштуваннями додатку", + "preferences_settings_subtitle": "Керування налаштуваннями застосунку", "preferences_settings_title": "Параметри", + "preparing": "Підготовка", "preset": "Передвстановлення", "preview": "Прев'ю", "previous": "Попереднє", @@ -1592,6 +1593,7 @@ "read_changelog": "Прочитати зміни в оновленні", "readonly_mode_disabled": "Режим лише для читання вимкнено", "readonly_mode_enabled": "Режим лише для читання ввімкнено", + "ready_for_upload": "Готово до завантаження", "reassign": "Перепризначити", "reassigned_assets_to_existing_person": "Перепризначено {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсів}} {name, select, null {існуючій особі} other {{name}}}", "reassigned_assets_to_new_person": "Перепризначено {count, plural, one {# ресурс} other {# ресурси}} новій особі", @@ -1767,7 +1769,7 @@ "send_message": "Надіслати повідомлення", "send_welcome_email": "Надішліть вітальний лист", "server_endpoint": "Кінцева точка сервера", - "server_info_box_app_version": "Версія додатка", + "server_info_box_app_version": "Версія застосунку", "server_info_box_server_url": "URL сервера", "server_offline": "Сервер офлайн", "server_online": "Сервер онлайн", @@ -1789,7 +1791,7 @@ "setting_image_viewer_preview_title": "Завантажувати зображення попереднього перегляду", "setting_image_viewer_title": "Зображення", "setting_languages_apply": "Застосувати", - "setting_languages_subtitle": "Змінити мову додатку", + "setting_languages_subtitle": "Змінити мову застосунку", "setting_notifications_notify_failures_grace_period": "Повідомити про помилки фонового резервного копіювання: {duration}", "setting_notifications_notify_hours": "{count} годин", "setting_notifications_notify_immediately": "негайно", @@ -1975,7 +1977,7 @@ "theme_setting_primary_color_title": "Основний колір", "theme_setting_system_primary_color_title": "Використовувати колір системи", "theme_setting_system_theme_switch": "Автоматично (як у системі)", - "theme_setting_theme_subtitle": "Налаштування теми додатка", + "theme_setting_theme_subtitle": "Налаштування теми застосунку", "theme_setting_three_stage_loading_subtitle": "Триетапне завантаження може підвищити продуктивність завантаження, але спричинить значно більше навантаження на мережу", "theme_setting_three_stage_loading_title": "Увімкнути триетапне завантаження", "they_will_be_merged_together": "Вони будуть об'єднані разом", diff --git a/i18n/zh_SIMPLIFIED.json b/i18n/zh_SIMPLIFIED.json index 2f8f80e15d..5b29640d63 100644 --- a/i18n/zh_SIMPLIFIED.json +++ b/i18n/zh_SIMPLIFIED.json @@ -1527,6 +1527,7 @@ "port": "端口", "preferences_settings_subtitle": "管理应用的偏好设置", "preferences_settings_title": "偏好设置", + "preparing": "准备中", "preset": "预设", "preview": "预览", "previous": "上一个", @@ -1592,6 +1593,7 @@ "read_changelog": "阅读更新日志", "readonly_mode_disabled": "只读模式已禁用", "readonly_mode_enabled": "只读模式已启用", + "ready_for_upload": "准备上传", "reassign": "重新指派", "reassigned_assets_to_existing_person": "重新指派{count, plural, one {#个项目} other {#个项目}}到{name, select, null {已存在的人物} other {{name}}}", "reassigned_assets_to_new_person": "重新指派{count, plural, one {#个项目} other {#个项目}}到新的人物", From debc35a4d587445dc4033fd8fa114fc4ad6682cf Mon Sep 17 00:00:00 2001 From: bo0tzz Date: Tue, 23 Sep 2025 20:34:59 +0200 Subject: [PATCH 23/60] fix: set explicit ref in prepare-release (#22338) --- .github/workflows/prepare-release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/prepare-release.yml b/.github/workflows/prepare-release.yml index 3d31a4a377..835e88938f 100644 --- a/.github/workflows/prepare-release.yml +++ b/.github/workflows/prepare-release.yml @@ -59,6 +59,7 @@ jobs: with: token: ${{ steps.generate-token.outputs.token }} persist-credentials: true + ref: main - name: Install uv uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2 From f193c5a53f6448b22a708dd6e06026e675cc761b Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 23 Sep 2025 18:38:13 +0000 Subject: [PATCH 24/60] chore: version v1.143.1 --- cli/package.json | 2 +- docs/static/archived-versions.json | 4 ++++ e2e/package.json | 2 +- mobile/android/fastlane/Fastfile | 4 ++-- mobile/ios/fastlane/Fastfile | 2 +- mobile/openapi/README.md | 2 +- mobile/pubspec.yaml | 2 +- open-api/immich-openapi-specs.json | 2 +- open-api/typescript-sdk/package.json | 2 +- open-api/typescript-sdk/src/fetch-client.ts | 2 +- server/package.json | 2 +- web/package.json | 2 +- 12 files changed, 16 insertions(+), 12 deletions(-) diff --git a/cli/package.json b/cli/package.json index 93fcd040c9..ce10484d80 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@immich/cli", - "version": "2.2.91", + "version": "2.2.92", "description": "Command Line Interface (CLI) for Immich", "type": "module", "exports": "./dist/index.js", diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index 2ff41c5e9e..4c678b7faa 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -1,4 +1,8 @@ [ + { + "label": "v1.143.1", + "url": "https://v1.143.1.archive.immich.app" + }, { "label": "v1.143.0", "url": "https://v1.143.0.archive.immich.app" diff --git a/e2e/package.json b/e2e/package.json index 2078774d01..8362046578 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -1,6 +1,6 @@ { "name": "immich-e2e", - "version": "1.143.0", + "version": "1.143.1", "description": "", "main": "index.js", "type": "module", diff --git a/mobile/android/fastlane/Fastfile b/mobile/android/fastlane/Fastfile index ea034664d7..1ce506c73d 100644 --- a/mobile/android/fastlane/Fastfile +++ b/mobile/android/fastlane/Fastfile @@ -35,8 +35,8 @@ platform :android do task: 'bundle', build_type: 'Release', properties: { - "android.injected.version.code" => 3016, - "android.injected.version.name" => "1.143.0", + "android.injected.version.code" => 3017, + "android.injected.version.name" => "1.143.1", } ) upload_to_play_store(skip_upload_apk: true, skip_upload_images: true, skip_upload_screenshots: true, aab: '../build/app/outputs/bundle/release/app-release.aab') diff --git a/mobile/ios/fastlane/Fastfile b/mobile/ios/fastlane/Fastfile index b1071cc988..998f78f768 100644 --- a/mobile/ios/fastlane/Fastfile +++ b/mobile/ios/fastlane/Fastfile @@ -22,7 +22,7 @@ platform :ios do path: "./Runner.xcodeproj", ) increment_version_number( - version_number: "1.143.0" + version_number: "1.143.1" ) increment_build_number( build_number: latest_testflight_build_number + 1, diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index c33828172c..665bcb7e62 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -3,7 +3,7 @@ Immich API This Dart package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 1.143.0 +- API version: 1.143.1 - Generator version: 7.8.0 - Build package: org.openapitools.codegen.languages.DartClientCodegen diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index 9f5ca01fc1..75c992436a 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -2,7 +2,7 @@ name: immich_mobile description: Immich - selfhosted backup media file on mobile phone publish_to: 'none' -version: 1.143.0+3016 +version: 1.143.1+3017 environment: sdk: '>=3.8.0 <4.0.0' diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index ab97adf646..3071996d81 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -9858,7 +9858,7 @@ "info": { "title": "Immich", "description": "Immich API", - "version": "1.143.0", + "version": "1.143.1", "contact": {} }, "tags": [], diff --git a/open-api/typescript-sdk/package.json b/open-api/typescript-sdk/package.json index b988973763..afc8bf95e2 100644 --- a/open-api/typescript-sdk/package.json +++ b/open-api/typescript-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@immich/sdk", - "version": "1.143.0", + "version": "1.143.1", "description": "Auto-generated TypeScript SDK for the Immich API", "type": "module", "main": "./build/index.js", diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index be38e8581f..69a785d188 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1,6 +1,6 @@ /** * Immich - * 1.143.0 + * 1.143.1 * DO NOT MODIFY - This file has been generated using oazapfts. * See https://www.npmjs.com/package/oazapfts */ diff --git a/server/package.json b/server/package.json index fd5a7e1376..850431f406 100644 --- a/server/package.json +++ b/server/package.json @@ -1,6 +1,6 @@ { "name": "immich", - "version": "1.143.0", + "version": "1.143.1", "description": "", "author": "", "private": true, diff --git a/web/package.json b/web/package.json index 2cf47d1b7d..425c1027c6 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "immich-web", - "version": "1.143.0", + "version": "1.143.1", "license": "GNU Affero General Public License version 3", "type": "module", "scripts": { From 38226fd24041b2e97a0c77124cf4f946824d0a99 Mon Sep 17 00:00:00 2001 From: Mert <101130780+mertalev@users.noreply.github.com> Date: Tue, 23 Sep 2025 17:10:56 -0400 Subject: [PATCH 25/60] fix(server): update libmimalloc path (#22345) update libmimalloc path --- server/bin/start.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/bin/start.sh b/server/bin/start.sh index 15390ae158..dc34e8f0bc 100755 --- a/server/bin/start.sh +++ b/server/bin/start.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash echo "Initializing Immich $IMMICH_SOURCE_REF" -lib_path="/usr/lib/$(arch)-linux-gnu/libmimalloc.so.2" +lib_path="/usr/lib/$(arch)-linux-gnu/libmimalloc.so.3" if [ -f "$lib_path" ]; then export LD_PRELOAD="$lib_path" else From ad0b96a1e561801b5938ee533916d96d8271c683 Mon Sep 17 00:00:00 2001 From: Mert <101130780+mertalev@users.noreply.github.com> Date: Tue, 23 Sep 2025 20:47:23 -0400 Subject: [PATCH 26/60] chore(deps): bump gradle deps (#22344) bump deps --- mobile/android/build.gradle | 6 +++--- mobile/android/gradle/wrapper/gradle-wrapper.properties | 2 +- mobile/android/settings.gradle | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/mobile/android/build.gradle b/mobile/android/build.gradle index bcf3daa1c8..719c946bd6 100644 --- a/mobile/android/build.gradle +++ b/mobile/android/build.gradle @@ -1,5 +1,5 @@ allprojects { - ext.kotlin_version = '2.0.20' + ext.kotlin_version = '2.2.20' repositories { google() @@ -16,8 +16,8 @@ subprojects { if (project.plugins.hasPlugin("com.android.application") || project.plugins.hasPlugin("com.android.library")) { project.android { - compileSdkVersion 35 - buildToolsVersion "35.0.0" + compileSdkVersion 36 + buildToolsVersion "36.0.0" } } } diff --git a/mobile/android/gradle/wrapper/gradle-wrapper.properties b/mobile/android/gradle/wrapper/gradle-wrapper.properties index dedd5d1e69..ed4c299adb 100644 --- a/mobile/android/gradle/wrapper/gradle-wrapper.properties +++ b/mobile/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/mobile/android/settings.gradle b/mobile/android/settings.gradle index 29c3a7c056..fbed55a3e3 100644 --- a/mobile/android/settings.gradle +++ b/mobile/android/settings.gradle @@ -18,10 +18,10 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version '8.7.2' apply false - id "org.jetbrains.kotlin.android" version "2.0.20" apply false + id "com.android.application" version '8.11.2' apply false + id "org.jetbrains.kotlin.android" version "2.2.20" apply false id 'org.jetbrains.kotlin.plugin.serialization' version '1.9.22' apply false - id 'com.google.devtools.ksp' version '2.0.20-1.0.24' apply false + id 'com.google.devtools.ksp' version '2.2.20-2.0.3' apply false } include ":app" From 224bb46b4a9fe6d7bb84eee0fec684eb4b894042 Mon Sep 17 00:00:00 2001 From: Mert <101130780+mertalev@users.noreply.github.com> Date: Tue, 23 Sep 2025 21:06:19 -0400 Subject: [PATCH 27/60] chore(deps): bump exoplayer to 1.8.0 (#22350) bump exoplayer to 1.8.0 --- mobile/pubspec.lock | 4 ++-- mobile/pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mobile/pubspec.lock b/mobile/pubspec.lock index d0dc8e64d3..e5f972743c 100644 --- a/mobile/pubspec.lock +++ b/mobile/pubspec.lock @@ -1208,8 +1208,8 @@ packages: dependency: "direct main" description: path: "." - ref: "5459d54" - resolved-ref: "5459d54cdc1cf4d99e2193b310052f1ebb5dcf43" + ref: "893894b" + resolved-ref: "893894b98b832be8a995a8d5d4c2289d0ad2d246" url: "https://github.com/immich-app/native_video_player" source: git version: "1.3.1" diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index 75c992436a..3b6dbd310f 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -77,7 +77,7 @@ dependencies: native_video_player: git: url: https://github.com/immich-app/native_video_player - ref: '5459d54' + ref: '893894b' openapi: path: openapi isar: From 94a8bc5bce3a5467e1b4381e462227363d3a835a Mon Sep 17 00:00:00 2001 From: Aaron Liu Date: Thu, 25 Sep 2025 03:29:10 -0400 Subject: [PATCH 28/60] fix(pump-version): fix immich-ml pyproject.toml path (#22372) Since the migration to uv, this has not worked because the Python toml CLI has been looking for a pyproject.toml in the root folder. --- machine-learning/pyproject.toml | 2 +- misc/release/pump-version.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/machine-learning/pyproject.toml b/machine-learning/pyproject.toml index f0f08b20b6..07ebc83330 100644 --- a/machine-learning/pyproject.toml +++ b/machine-learning/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "immich-ml" -version = "1.129.0" +version = "1.143.1" description = "" authors = [{ name = "Hau Tran", email = "alex.tran1502@gmail.com" }] requires-python = ">=3.10,<4.0" diff --git a/misc/release/pump-version.sh b/misc/release/pump-version.sh index 35ce9a1f33..8c4c772bd9 100755 --- a/misc/release/pump-version.sh +++ b/misc/release/pump-version.sh @@ -80,7 +80,7 @@ if [ "$CURRENT_SERVER" != "$NEXT_SERVER" ]; then jq --arg version "$NEXT_SERVER" '.version = $version' e2e/package.json > e2e/package.json.tmp && mv e2e/package.json.tmp e2e/package.json pnpm install --frozen-lockfile --prefix e2e - uvx --from=toml-cli toml set --toml-path=pyproject.toml project.version "$SERVER_PUMP" + uvx --from=toml-cli toml set --toml-path=machine-learning/pyproject.toml project.version "$SERVER_PUMP" fi if [ "$CURRENT_MOBILE" != "$NEXT_MOBILE" ]; then From e7b57fc2f64eac32672f0092a4377f3fbb99ecc6 Mon Sep 17 00:00:00 2001 From: Alex Date: Thu, 25 Sep 2025 07:36:51 -0500 Subject: [PATCH 29/60] chore: post release tasks (#22339) --- mobile/ios/Runner.xcodeproj/project.pbxproj | 18 +++++++++--------- mobile/ios/Runner/Info.plist | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mobile/ios/Runner.xcodeproj/project.pbxproj b/mobile/ios/Runner.xcodeproj/project.pbxproj index 48826a20f1..cb9dbc60bd 100644 --- a/mobile/ios/Runner.xcodeproj/project.pbxproj +++ b/mobile/ios/Runner.xcodeproj/project.pbxproj @@ -705,7 +705,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -849,7 +849,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -879,7 +879,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -913,7 +913,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -956,7 +956,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -996,7 +996,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -1035,7 +1035,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; @@ -1079,7 +1079,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; @@ -1120,7 +1120,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 224; + CURRENT_PROJECT_VERSION = 226; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; diff --git a/mobile/ios/Runner/Info.plist b/mobile/ios/Runner/Info.plist index c1e6ec212d..93a10c1a79 100644 --- a/mobile/ios/Runner/Info.plist +++ b/mobile/ios/Runner/Info.plist @@ -80,7 +80,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.142.1 + 1.143.1 CFBundleSignature ???? CFBundleURLTypes @@ -107,7 +107,7 @@ CFBundleVersion - 224 + 226 FLTEnableImpeller ITSAppUsesNonExemptEncryption From 37a3784d809e41203c50a17cef8c60bef6a19608 Mon Sep 17 00:00:00 2001 From: Zack Pollard Date: Thu, 25 Sep 2025 15:54:34 +0100 Subject: [PATCH 30/60] feat: docs.immich.app (#21819) Co-authored-by: Jason Rasmussen --- .github/labeler.yml | 1 - deployment/.env | 4 + .../modules/cloudflare/docs-release/domain.tf | 4 +- deployment/modules/cloudflare/docs/domain.tf | 4 +- docs/blog/2022/11-10/release-1.36.mdx | 110 -- docs/blog/2023/06-24/update.mdx | 103 -- .../2023/07-29/images/web-shortcuts-panel.png | Bin 1932708 -> 0 bytes docs/blog/2023/07-29/update.mdx | 151 --- docs/blog/2023/2023-recap.mdx | 71 -- .../2024/immich-core-team-goes-fulltime.mdx | 75 -- docs/blog/2024/immich-licensing.mdx | 91 -- docs/blog/2024/update-july-2024.mdx | 78 -- docs/blog/authors.yml | 5 - docs/docs/FAQ.mdx | 38 +- .../docs/administration/backup-and-restore.md | 6 +- .../administration/email-notification.mdx | 2 +- docs/docs/administration/jobs-workers.md | 4 +- docs/docs/administration/oauth.md | 4 +- docs/docs/administration/server-commands.md | 2 +- docs/docs/administration/system-settings.md | 18 +- docs/docs/developer/architecture.mdx | 6 +- docs/docs/developer/devcontainers.md | 8 +- docs/docs/developer/open-api.md | 2 +- docs/docs/developer/pr-checklist.md | 4 +- docs/docs/features/automatic-backup.md | 2 +- docs/docs/features/facial-recognition.md | 2 +- docs/docs/features/libraries.md | 2 +- .../docs/features/ml-hardware-acceleration.md | 6 +- docs/docs/features/mobile-app.mdx | 4 +- docs/docs/features/monitoring.md | 4 +- docs/docs/features/reverse-geocoding.md | 2 +- docs/docs/features/sharing.md | 2 +- docs/docs/features/tags.md | 2 +- docs/docs/features/user-settings.md | 4 +- docs/docs/guides/better-facial-clusters.md | 2 +- docs/docs/guides/custom-locations.md | 2 +- docs/docs/guides/database-queries.md | 4 +- docs/docs/guides/external-library.md | 4 +- docs/docs/guides/remote-access.md | 2 +- docs/docs/guides/remote-machine-learning.md | 4 +- docs/docs/guides/template-backup-script.md | 2 +- docs/docs/install/config-file.md | 2 +- docs/docs/install/docker-compose.mdx | 2 +- docs/docs/install/environment-variables.md | 4 +- docs/docs/install/portainer.md | 2 +- docs/docs/install/post-install.mdx | 6 +- docs/docs/install/script.md | 6 +- docs/docs/install/synology.md | 4 +- docs/docs/install/truenas.md | 18 +- docs/docs/install/unraid.md | 4 +- docs/docs/install/upgrading.md | 4 +- docs/docs/overview/help.md | 2 +- docs/docs/overview/quick-start.mdx | 12 +- docs/docs/overview/support-the-project.md | 4 +- docs/docs/partials/_server-backup.md | 2 +- docs/docs/partials/_storage-template.md | 4 +- docs/docusaurus.config.js | 31 +- docs/package.json | 1 - docs/src/components/version-switcher.tsx | 27 +- docs/src/pages/cursed-knowledge.tsx | 273 ----- docs/src/pages/index.tsx | 122 +-- docs/src/pages/roadmap.tsx | 944 ------------------ docs/static/.well-known/security.txt | 5 - docs/static/_redirects | 66 +- docs/static/archived-versions.json | 173 ++-- misc/release/archive-version.js | 2 +- pnpm-lock.yaml | 869 ---------------- 67 files changed, 297 insertions(+), 3133 deletions(-) create mode 100644 deployment/.env delete mode 100644 docs/blog/2022/11-10/release-1.36.mdx delete mode 100644 docs/blog/2023/06-24/update.mdx delete mode 100644 docs/blog/2023/07-29/images/web-shortcuts-panel.png delete mode 100644 docs/blog/2023/07-29/update.mdx delete mode 100644 docs/blog/2023/2023-recap.mdx delete mode 100644 docs/blog/2024/immich-core-team-goes-fulltime.mdx delete mode 100644 docs/blog/2024/immich-licensing.mdx delete mode 100644 docs/blog/2024/update-july-2024.mdx delete mode 100644 docs/blog/authors.yml delete mode 100644 docs/src/pages/cursed-knowledge.tsx delete mode 100644 docs/src/pages/roadmap.tsx delete mode 100644 docs/static/.well-known/security.txt diff --git a/.github/labeler.yml b/.github/labeler.yml index c0c52f1d7e..d8923a3035 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -6,7 +6,6 @@ cli: documentation: - changed-files: - any-glob-to-any-file: - - docs/blob/** - docs/docs/** - docs/src/** - docs/static/** diff --git a/deployment/.env b/deployment/.env new file mode 100644 index 0000000000..f6ce050d29 --- /dev/null +++ b/deployment/.env @@ -0,0 +1,4 @@ +export CLOUDFLARE_ACCOUNT_ID="op://tf/cloudflare/account_id" +export CLOUDFLARE_API_TOKEN="op://tf/cloudflare/api_token" +export TF_STATE_POSTGRES_CONN_STR="op://tf/tf_state/postgres_conn_str" +export TF_VAR_env=$ENVIRONMENT diff --git a/deployment/modules/cloudflare/docs-release/domain.tf b/deployment/modules/cloudflare/docs-release/domain.tf index 0602045f71..3a6f479a74 100644 --- a/deployment/modules/cloudflare/docs-release/domain.tf +++ b/deployment/modules/cloudflare/docs-release/domain.tf @@ -1,11 +1,11 @@ resource "cloudflare_pages_domain" "immich_app_release_domain" { account_id = var.cloudflare_account_id project_name = data.terraform_remote_state.cloudflare_account.outputs.immich_app_archive_pages_project_name - domain = "immich.app" + domain = "docs.immich.app" } resource "cloudflare_record" "immich_app_release_domain" { - name = "immich.app" + name = "docs.immich.app" proxied = true ttl = 1 type = "CNAME" diff --git a/deployment/modules/cloudflare/docs/domain.tf b/deployment/modules/cloudflare/docs/domain.tf index a28fb4c0f8..c5f77de6b4 100644 --- a/deployment/modules/cloudflare/docs/domain.tf +++ b/deployment/modules/cloudflare/docs/domain.tf @@ -1,11 +1,11 @@ resource "cloudflare_pages_domain" "immich_app_branch_domain" { account_id = var.cloudflare_account_id project_name = local.is_release ? data.terraform_remote_state.cloudflare_account.outputs.immich_app_archive_pages_project_name : data.terraform_remote_state.cloudflare_account.outputs.immich_app_preview_pages_project_name - domain = "${var.prefix_name}.${local.deploy_domain_prefix}.immich.app" + domain = "docs.${var.prefix_name}.${local.deploy_domain_prefix}.immich.app" } resource "cloudflare_record" "immich_app_branch_subdomain" { - name = "${var.prefix_name}.${local.deploy_domain_prefix}.immich.app" + name = "docs.${var.prefix_name}.${local.deploy_domain_prefix}.immich.app" proxied = true ttl = 1 type = "CNAME" diff --git a/docs/blog/2022/11-10/release-1.36.mdx b/docs/blog/2022/11-10/release-1.36.mdx deleted file mode 100644 index 5f5643196c..0000000000 --- a/docs/blog/2022/11-10/release-1.36.mdx +++ /dev/null @@ -1,110 +0,0 @@ ---- -slug: release-1-36 -title: Release v1.36.0 -authors: [alextran] -tags: [release] -date: 2022-11-10 ---- - -Hello everyone, it is my pleasure to deliver the new release of Immich to you. The team has been working hard to bring you the new features and improvements. This release includes some big features that the community has been asking since the beginning of Immich. We hope you will enjoy it. - -Some notable features are: - -- OAuth integration -- LivePhoto support on iOS -- User config system - - - -## LivePhoto iOS Support 🎉 - -LivePhoto on iOS is now supported in Immich. - -The motion part will now be uploaded and can be played on the mobile app and the web. - -:::caution - -- The server and the app has to be on version **1.36.x** for the application to work correctly. -- Previous uploaded photos will not be updated automatically, you will have to remove and reupload them if you want to keep the LivePhoto functionality. - -::: - - - -## OAuth Integration 🎉 - -I want to borrow this chance to express my gratitude to [@EnricoBilla](https://github.com/EnricoBilla), who has been the trailblazer for this feature since the beginning days of Immich. His PR has sparked ideas, suggestions, and discussion among the team member on how to integrate this feature successfully into the app. Thank you so much for your work and your time. - -OAuth is now integrated into the system. Please follow the guide [here](https://immich.app/docs/usage/oauth) to set up your OAuth integration - -After setting up the correct environment variables in the `.env` file, as shown below - -| Key | Type | Default | Description | -| ------------------- | ------- | -------------------- | ------------------------------------------------------------------------- | -| OAUTH_ENABLED | boolean | false | Enable/disable OAuth2 | -| OAUTH_ISSUER_URL | URL | (required) | Required. Self-discovery URL for client | -| OAUTH_CLIENT_ID | string | (required) | Required. Client ID | -| OAUTH_CLIENT_SECRET | string | (required) | Required. Client Secret | -| OAUTH_SCOPE | string | openid email profile | Full list of scopes to send with the request (space delimited) | -| OAUTH_AUTO_REGISTER | boolean | true | When true, will automatically register a user the first time they sign in | -| OAUTH_BUTTON_TEXT | string | Login with OAuth | Text for the OAuth button on the web | - -```bash title="Authentik Example" -OAUTH_ENABLED=true -OAUTH_ISSUER_URL=http://10.1.15.216:9000/application/o/immich-test/ -OAUTH_CLIENT_ID=30596v8f78a4b6a97d5985c3076b6b4c4d12ddc33 -OAUTH_CLIENT_SECRET=50f1eafdec353b95b1c638db390db4ab67ef035a51212dbec2f56175e2eb272b5d572c099176e6fe116ecf47ffdd544bgdb9e2edc588307ee0339d25eeccd88 -OAUTH_BUTTON_TEXT=Login with Authentik -``` - -The web will have the option to sign in with OAuth. - - - -The mobile app will check if the server has OAuth enabled before displaying the OAuth -sign-in button. - - - -## Support - - - -If you find the project helpful and it helps you in some ways, you can support the project [one time](https://github.com/sponsors/alextran1502?frequency=one-time&sponsor=alextran1502) or [monthly](https://github.com/sponsors/alextran1502) from GitHub Sponsor - -It is a great way to let me know that you want me to continue developing and working on this project for years to come. - -## Details - -For more details, please check out the [release note](https://github.com/immich-app/immich/releases/tag/v1.36.0_55-dev) diff --git a/docs/blog/2023/06-24/update.mdx b/docs/blog/2023/06-24/update.mdx deleted file mode 100644 index 464d3e44d9..0000000000 --- a/docs/blog/2023/06-24/update.mdx +++ /dev/null @@ -1,103 +0,0 @@ ---- -title: Immich Update - June 2023 -authors: [alextran] -tags: [update] ---- - -Hello everybody, Alex here! - -I am back with another update on Immich. It has been only a month since my last update (May 18th, 2023), but it seems forever. I think the rapid releases of Immich and the amount of work make the perspective of time change in Immich’s world. We have some exciting updates that I think you will like. - -Before going into detail, on behalf of the core team, I would like to thank all of you for loving Immich and contributing to the project. Thank you for helping me make Immich an enjoyable alternative solution to Google Photos so that you have complete control of your data and privacy. I know we are still young and have a lot of work to do, but I am confident we will get there with help from the community. I appreciate all of you from the bottom of my heart! - - - -And now, to the exciting part, what is new in Immich’s world? - -- Initial support for existing gallery. -- Memory feature. -- Support XMP sidecar. -- Support more raw formats. -- Justified layout for web timeline and blurred thumbnail hash. -- Mechanism to host machine learning on a completely different machine. - -## Support for existing gallery - -I know this is the most controversial feature when it comes to Immich’s way of ingesting photos and videos. For many users, having to upload photos and videos to Immich is simply not working. We listen, discuss, and digest this feature internally more than you imagine because it is not a simple feature to tackle while keeping the performance and the user experience at the top level, which is Immich’s primary goal. - -Thankfully, we have many great contributors and developers that want to make this come true. So we came up with an initial implementation of this feature in the form of a supporting read-only gallery. - -To be concise, Immich can now read in the gallery files, register the path into the database, and then generate necessary files and put them through Immich’s machine learning pipeline so you can use all the goodness of Immich without the need to upload them. Since this is the initial implementation, some actions/behavior are not yet supported, and we aim to build toward them in future releases, namely: - -- Assets are not automatically synced and must instead be manually synced with the CLI tool. -- Only new files that are added to the gallery will be detected. -- Deleted and moved files will not be detected. - -## Memory feature - -This is considered a fun feature that the team and I wanted to build for so long, but we had to put it off because of the refactoring of the code base. The code base is now in a good enough form to circle back and add more exciting features. - -This memory feature is very much similar to GPhotos' implementation of “x years since…”. We are aiming to add more categories of memories in the future, such as “Spotlight of the day” or “Day of the Week highlights” - - - -This feature is now available on the web and will be ported to the mobile app in the near future. - -## Support XMP Sidecar - -Immich can now import/upload XMP sidecars from the CLI and use the information as the metadata of assets. - -## Support more raw formats. - -With the recent updates on the dependencies of Immich, we are now extending and hardening support for multiple raw formats. So users with DSLR or mirrorless cameras can now upload their original files to Immich and have them displayed in high-quality thumbnails on the web and mobile view. - -## Justified layout for web timeline and blurred thumbnail hash - -This is an aesthetic improvement in user experience when browsing the timeline. Photos and videos are now displayed correctly with perspective orientation, making the browsing experience more pleasurable. - -To further improve the browsing experience, we now added a blur hash to the thumbnail, so the transition is more natural with a dreamy fade in effect, similar to how our brain goes from faded to vivid memory - - - -## Hosting machine learning container on a different machine - -With more capabilities Immich is building toward, machine learning will get more powerful and therefore require more resources to run effectively. However, we understand that users might not have the best server resources where they host the Immich instance. Therefore, we changed how machine learning interacts and receives the photos and videos to run through its inference pipeline. - -The machine learning container is now a headless system that can run on any machine. As long as your Immich instance can communicate with the system running the machine learning container, it can send the files and receive the required information to make Immich powerful in terms of searching and intelligence. This helps you to utilize a more powerful machine in your home/infrastructure to perform the CPU-intensive tasks while letting Immich only handle the I/O operations for a pleasant and smooth experience. - ---- - -So, those are the highlights for the team and the community after a busy month. There are a lot more changes and improvements. I encourage you to read some release notes, starting from version [v1.57.0](https://github.com/immich-app/immich/releases/tag/v1.57.0) to now. - -Thank you, and I am asking for your support for the project. I hope to be a full-time maintainer of Immich one day to dedicate myself to the project as my life works for the community and my family. You can find the support channels below: - -- Monthly donation via [GitHub Sponsors](https://github.com/sponsors/alextran1502) -- One-time donation via [GitHub Sponsors](https://github.com/sponsors/alextran1502?frequency=one-time&sponsor=alextran1502) -- [Liberapay](https://liberapay.com/alex.tran1502/) -- [buymeacoffee](https://www.buymeacoffee.com/altran1502) -- Bitcoin: 3QVAb9dCHutquVejeNXitPqZX26Yg5kxb7 -- Give a project a star - the contributors love gazing at the stars and seeing their creations shining in the sky. - -Join our friendly [Discord](https://discord.immich.app) to talk and discuss Immich, tech, or anything - -Cheer! - -Until next time! - -Alex diff --git a/docs/blog/2023/07-29/images/web-shortcuts-panel.png b/docs/blog/2023/07-29/images/web-shortcuts-panel.png deleted file mode 100644 index 5a16c9f28910c516a80c8913f5ce3c70cc44f17e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1932708 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 AOGjYZG=6mE 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%0DI^gB;a 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%0D(bc3-Y<1RB}MaDT^ODoFs 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

IML{4kXd!;W%0U}Ld=YG)AlSKk^LY0 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∋dE(MBX;SEcelXl;zvB<=Feib7Aa40w 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

-K&H_fC?E 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

`rcpk?tH~hVM3NlKXCqtE1!Y^mI!+HJ&w^Q1* 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≈A#XZc~VX0UWTkmjnedj{={)bAV>#x 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�fn;(6hoc^QkCu}tA7B+o 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

L2@7+6h$QN}aqY9_yokd{=xKx9@u$~tPD|iZ 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%0D6eDYoQ{RmnGZOZRf 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≻~_DhZpn~5B1(yn}yi~--^zhdnJ#@ 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

vwf1*ZAEhzo^cn; zysML(bm#Xqk6@Dsjt_gx>@Iv>l!v%Tb@_ zgM;@R71n4bpo&YpcbumS> z34(u}|K=y5qA~-N#Z_-t&yxjm8*Yt7c86E3=yCxi6qFb1hj`S#M5Ej zCo;pt;|3k>RTa{Ixu7KcMHWZ*=E2kNv`L0P$HD0(NV^YPQ)TzI4o3OP+ln3Tj0`fu z+1V*xO$@Vib(NGj7T-fCMvNlCF?ncWP6TyC26vN6j(zblyUMwyxmnC!kF!zd&kj4k zj9yNt_%iJuyiiV|dVYCT)%oe<0rGx*qBH0Dm$sZf%Wzg-?(p{w$*}J+KcIRp9Dg7_ zQ?!MQ!Xl1EtK-|2Gxz@B{HsNVVep&+$M(m{^DW0VqUj{g=>aWi%{8OnEgVrsg2xJ# zhivc4$HEzvtG!0`qs+jrhBW8kuk(0DWBEP-^2V+@UJ25}g;OpmZ-WiN!P%?Qa|-Dx z&g(PoY}J>yrzW2DwTD(UpThZWX3v9xm=UR?c*a^TkK9xBNaIvB#JUf9DksV>2l4HTdB+$^%U~}*7>l1P?H!sry@2tBRQMrxRRY9`Z^ZUK2dn_0Pw-F_aJ{u=Zx-EcEm9K@qz@dH~+5ns4HsWREGfhzo}$@o&qO`?nT_ zQ=>|EjtKP9m!(u^ht5XiRLCa@5tP(tsb^rX%wAEkdzt%e$c4~WVcF30YB9=6_(?e= z1`7R*6Ya#>zG)5GlWsj&ZU+I`RJtN*`f2v}Gx-m07b%CfvMgV&jlM`uxD-;^@0{_dhkCmh_%GXF%k2tF>rg zniMX;iYZheENo6XYSw%*0`(JdZW4AqPTn1EHWJ71L!ULjwB zkD#~OH;P>-OT&+ZQ)R>;hx;=Ut&*~fnQW}89&4T-ZbR6#4P_&|?>GE1)?1V<=GX)W zGvDG^X#G_c-c_ZirvMHM9CoAw!< z|D8t$?wkpB7Us8_7#XZh562Oj>T+ZZil_=PkA`I2s};su{=}dMhKF*>XT55Q3%~u; z*#n0~aKbIKO0p|vX>*$0e$g2Ix?1LDXN!^vm_FSmtR^ZipUHyEyH!N!52*WG?&KBI z(02s5yXQXEBY?!HnXcCy&nz8FHB zIAk^B5?e{aZYq+_>nYejO4Q5KW+-XMI;`}_TlE3d7EV4Se-{$M&>RTLs*JDiy%_cL z1ZZ_KN|Xka(XK5;IX4K-by2X-b);ACei!bE#XZ5;8fA>AyVb>+Gx>THI?0WYPb1D- z9v9?mJ^u-A#}O#9VZ|r`GXEJ((9(S&8{YC!RzgaLL(q2c``BMF@|EsNzpgiqSE;g# zoUHC+SDQP6JwT`xR~~sN==p)EaUN7wcOLa=#5Jb7mJlEh{(OVt1sp~p;m-V z;u)GI)V?Aj)vmoj3k)=@&AWMTXcwAykms-?H4cT2&T^a#-)1Bkd)j8EIEj`j z>MTE4?Xwp@5|t>C4M@xI8@pg>{K=2{Yww3Ml?*R0I>6fg00f@RnAwJ(&dhQCo@s*- zRlZ752&I~`0ede|xZNs|zqe*DxPbk(Gt>B^k#p0pm7*C+=GK{Y#;e-7*j(Ct56Aa1 zl*}WP3&&@!@Xs(2*7I%hOKr2QPmA+6bPhq2Z?NJr3G5?;5fpczR~tv-$Z554HVy?c z1Ki-J8~FTwlKa|F2Z4}O*Y&4QJS@r{f1XwoJd)H!OS@5{VUmVsk3+>esuUpKNqR!0TOZqhbcc~=8$`xv@ z*Uz}@Gx4-ZY8G0;g)@;=IQazWn3{oRz|9Y6GqHt}{*R_~;6A2ol7i$@cu`Man>O>2 z+x^i0O7R2otPs^92O;dd6UtRf&}^;R$sQJ^<2FS%hrB9#fcoNGRvl$}PN@FR$;ZRlF&kZIha)NQ>W#mr5mQZf|P*F%w}iJNi|+HDCOmOw~op zBEn-j#OqH=Z|g9AhGqI=yl2qPEb`5<@FjW2P+I3kh{Z!;S0JlUk?%Ngqa~_#MRPVS zz6t2h_}WVFE7W|=N!nZ3ovM^dE<3IBGVDIj&0WlmvO1K~3FR-)VsD(}uQ)K`l|vs% zu&6E`_uH3p<{cXVn__LbHqa7vI`h=?4}`KZ`}$XG08!`o53t{jrz_Fq`Qp&vQFXs` zbH+4|k$=C2F|_g_d2~}+u5Up zrk)HlvxgbVtjol zC+shRBjQ%Q3U^XqO4JE_YZMv1{oV7-tQuU(8Fmg!!gwztY;rQf0`i6ML+{_`OVQwq zOT|bhQsosPIv7kj7{5bKdcpi!c<@rR20<_wTv!og{nJ3iC-NRHU9hEls_vz@QS0m+fPup!QHvCd=>OS7IT!f32=bx)x-01neyu@h;Vzm`<5)jxc zh*?^A$V-)!a#vadeeucs%rUV*H{$Mj$BR#q@MHh2a>X&*5v0cx?F(8@cEI>$;+QY@ ze-DZ;hzZ@d0S5=`=EDeAvWcr^2FmR_Rh1t+nZ$=4(s60_f}FcLIUG6>$DUZZv^`ZA*O<2|%7X3sRxK&*#iJ^gWGYb`1lF zT>_8xd{%!h=&E)iv5YE#9?SQBgJy~FZNkdsn)*@!nPI(2t!CnOMo9Aw^;6jp0v*Q4 zt032+#h)vrtJS9J;c|()bjYrpGNuL6@`VfmQOlKkf0fi$tb4baPD%&PO;8Yoe97bU zA^#OCad$uQcCoWB`6;EmQw4@!Ca$G}|M5)ZamsbiZ zkL)CyxHN2cw#l_^{+(%?7ti|VbOta}i8N3_%t+cTZB!>z7Ze3G&!+$AB!??pgW^s3{~7}K zPBfJHy22_Po=lFX**kbXFhD%-)62Xg{u(He1wm8mMy|%3{dPXp4|e@8SlKqZN$K~k zD1nIotp#Dzkfy}Jxm*yAq^XD6{U4TSvC~==8-qeeBX^uSCGTJFu>++6*e~?HosT5; zTQO-{p2G^MP6Nr$5gyPA#;9g}JPZzvA39g0p!!t3uxHUplL^F#fX33;IRksGSs0P+ z`W;Tp$I$1Da3JD{q`NySy2+ZtG8wbd69^y*^maT{o>q|dR2=2+KD;R7PNQB${JD65 zl|v2hT;F7nnzx|;uzdF5E-W!i2du073nn^P0SjNmg**5&2?^nYkq8=(O*3-~v1O=mxh+@+vTW3%d`wXTgq{#K-P0ES{ZS<5fIjf&EM85sa&mo_Ma{+|l|q z?@G9t%++=$=}II+X>KRlxhu?OAoUHw3|sxePa4kFpk=0ri@Ml@9uG9)0Cj;hEV!_Z zMD<4AfKusdmYw7+FHR5=D_x@-dlpMkLuI!QH%-r_rvI(u$n!|hAI^3@wl!8TCVj{_ zBXOsn2jYD+LM_|BA|?i;8Q(*;Dv|@+1ywx;lWQ4^NSo?}NJTO!ruGAaN|uG^==T!K zw0!NCYWM>x@3CW|7cO<5S-l)LE==`>cm1_1!EP&UQ7?@9XA(3)cNt0-3b{6Iu5O-;V4-8zUEsi*8`)H%XlLaEADJPvT%ppqkK)ITQ+Kr1Jf?7j@C%I6se*t-WT22s~m28!=X?B zt}%rdYMZa?ZWMk*_GhS;SKl!q?0ktspChuTM)UWUvI=@Zn3Xj zj80yD6?Wd5HJ@D&fOrorm394fxa=^Wi11r2qEd^TSl^S7=?w%hg_<6P0) zXN(e2mR=cRPb#aOlP{rT$FvRleg=ReWvxFd_QIYpiAw$-qCxr6gE}toP{F|En+O`7 znoJ|n8By?xML>fhaLlnY`bd1mF*`iiTVZvs=dH~CUUhx<)oyjY%D2h28iFPw$c(3% z&=-QY>LqJ?(0}S?1fY?>98W!3uKy6d%VJai_4kXB+(ptkwr@eS6d(8?at~c*M~Kz9 ziQU7Qyu2=!}m_gIvTbF z5hQHNdws^dRx?2GpZ>iwc_6&5;OAbvm%MF9TwU0{xAFN6g{nup^gZ!L4-H;X&$P)rfK&8uPx*u}n??(Yp+2$dw%RV`C&+>%Ky)d+P0ynU zCEZC%aS$+2Qp9Vr(1Heu*L1r=xNQK*R}T#@sM?ZWz?1ww=}>HwW{+rPjSHHJ@_n)v z+2%1HMKl8SBqN>l3!m4qJheC{pLq9a@*Cw81ginUT!;#IH z9?7wRc_2Q0lk!;mN4`+QXXF{Z<&g>ZISX#@hM$M63lKf%_bnMDs}lxE%5g$cXdPdn zJo&xMKhYns@!d-8c}r7%TehlarBE3BrZk_Wi4)9doju&e*LRntyz&~69_IzR^ETsO ztk>guK5w+gDCy3Fj=N8VKNqHX9Ei?yV)Cjb`^Jpl#rTh-^EYHF@_|=oHz@=O1-0a#t4V4Eiv>-DT&F5U z*@Dc48YjwQE14Lpe?)10I&Kq!hI#gwMt=p9)edP{Fz?uFRR2$2=l9!F(qLI!3~nm%lTfA?1e8^UA?5r*du^`NpnZ z1zUJ2pRL>MpL{NVYG~%g5$IQl?w+pzE@9S!hW9zep+@_|7f*9?Pd)Ru7)BOp9WJk( zj6C+m_&rA^{kpPWMew10LOA>P9ptpPFF_YsVp>KZVFz$B4r1rGm>B|(+AwC1@7j># z(^vME&TH%(Ir#QQBM}RN7R@7310mh5}0nYJkappY#Y6w`36 zTBA>akno8^!Uqq>+1TT+jW)F+<>@A#ou&g?{$&2eZ<6j$t@$Qy^-Ow)nfaJOerJ@{G$jMqdkw8HX@OKNeLVam|I$)>G;ny~U?MIxuFc*b6--owLh^xK4PBr|p z0x0xEptvOcGmb7#%kz6)`yZH9O+m`X+MsrYS`)NHJIqw-Fi_yppo0YE;2CAmUc-30 zV@L=C{hP=6`N45jm*RTHXjtYmd8ssQdJUEWjv@3Xdm?vj-nuhynch$Tx;vr*|9$EZ zuvU_YG7S$QZ}egN) zxPB~-zc)4>ySjH!t`a9O7L)Fvu>L82a{TU(5>cxMn`oIu+pquaNPe|Qy>}_-qo54>I`Rq>7g&soh%%8bQ$sD zFSbnO*42c04{sC*aQeXknlhUwV(N?d$&Oc5$bzX!CVCDVb(Y6icBhM!w5E^|S?Hx_D1}T%x`^2_eyoGyK*x4rf@8+1ox{U7WkmTb z?XkbUSmm<;e)jG0Pv$n`2)`112cwj)4!!1T#r>_K&UC#3Pvf5wxd~W|uP~L~Ug=U& zuaxaOI5|D^gRz@6*5MU5#l`HsXl)|WiH<$Ac|ITxv`syCAW?fRD_VqD!B2%$k#}v; zf%S46OZFwU#l0@5SegT~!?~W8qq!2)MQe}O28Pq>k9@1l(Lv;LAL86&Xyd)d)xqyF{uIpE^*J9WgSl*&zWEa%q|`TBl0=I-vOE zta)QV6n*n8X$~WFacCOV+JF6K)pHHy{aMczX+CvV--E+n%=X-dqJA!vL|RH6y(V!Z zp)<_jnO}I{n0bmGbSLHPu417WH^T%Ixien>7j?itLjGoP;XeR>^IWoz)sc}Tkoix_ z(X!JcfxO-bqIh!lYiBuXhDwvY`J(i;XjqE(f_nm07vpfP7=>jpWlk<5NW349NOq0_ z6{80fF;|T3<<`dylc!&djM%NB;SUc0_NyHIJ4PI0h7_bOf;QDl>=YByX@g%=&tWHB z&q_*$PQDX1ITs3a*8o|(`By5Z+oBnNde)PRF?=2s^+_V=Q?}n2ehUM zOR?!B+sTQ+tb+x4au8kiYn0dCdv;m*L-eKOV1<5T_qU_n_G6*p#^jRo|4xe4w*3gb zZC#G;#(7o*B5u&xY>l#;4J5_ zES);B8)>AJaiOEQM`|dO_BsDAjT?h(Z}T*;UK4$H+z}dF5#J1jqLi0)ixbNXcHsNmg9*G_Ol7S8Yu}Ah8HGLhxtf zdj^zZD{QFIA=mMfagsBGR91k$+)ofEHgjXxw{zggY|eNV3ZXiZU5!Nq%)z>PwvEW% zh`rPG$`~XJ(~5Hpm_<-Qupu9|s)AZLG8C*U>mS(h$ttJAmNqA3$1aOD21Y^R)9wRJ z-Y!8vrlv5Pg-LMLN8e{EieoghXz7yGWbjDHZ-20GwH<-Q4B-DE>n)?2{2#D!xe=Y54aGpB49!}RL;#7oX18{o=W#dAge}C+E`fZc!75o zUF10t;+JOCp;J3Pa3vZ9GU^S^x`P$z_iVEYTnu+7w!XNT%<${14*Tx5yzqZ$OC!s$ zS6y6_6h~H|ltyPYXSD^36*`9?{sa4PL#dQ=BLZ~fKlld&5he_ssy-xl?f?#V6M|^k_PdEff#yLe6a{-Rz7UB;jmS%Q3 zElzIMsxcDhj|i}lXf}+#2v6@}D5ZM#XpiuK9}N$C@qh85Hm%8@d%tcYXZD3cNU90+ zrg(aWa>T;hC)5O`d(sI??H~#ixfswOHt8aFpzXBQrkG^-Z@t!ssYvvHf_*NLDAMm` zCL$}`@Ibda4Pd9T=dCJ|u;BB+#maf`D0b~Yg0&_R@rc4@?ppsakWF85JMHcvt+yrB z$u~x|E*^^sz|AexiGg>bK6OGasc6%S0=?k_>+6)D$uc#B$(A5OUu=o>+lJi19xEtv z!yKDeyeayxgT;WXF74t|TiDY;#r<;*U><@>1DI-R8~Dw3(H*e;pxp>KAftJ39JjlE zHjzDF^vLiVMsj~#5^;DgZLU_9fhH61BP}A~S4OEgZ=X}0in43>AfIPXQ1N#$tL1zi zrs`_Dk4b|x{85$KQI|!5_atcQc83I$XzjNO7SPrf!y4tEmvor2^pK-T8h6lAT*?1s zzX6w~$epNSK`rdefJTA-qq&||M0aO5D{l`s?o&+nX~ikv%($^Po2{Psqi^inov*7B{AF!ZMJ~+w%htd}F0luiCN{Sv?;FK{`8F1B>RgNq z{zDy~m_Kk?(@&uNSa)#Yu{3_|h7@I?gP2=$9qk4=E%8jBO5T&_N`or)es=`-{Gm?H zarWsDx?~qyd(2&6J-@=(vVGglUikFq3JT{f{HkIHe!#oCPim()`d4Ff%I zf^y7tM`Rt?gT{c=jgOVB0%N}%a+KMxsxCgpiIO_C$QVD}odNLR&_`vK*|K$qx2ZVJoy0rqT7zB)VWTTTDfztm^2%_0eAYcz$bNKJbQ zMyzxg)Gt9kWHV~t%x26{D*EQ}Hh6l~M8HnNo=)6MSeKTln31LE1}+$$1~G`&(7C#- z%@5S(kCc)cSFq5PWIzZq#Zf(khamj$?E5#?X!0B$ZeC4+^LThR_Bz)O9{DYaiphCA z)?N(BU$R*+F>H-Q48;3t8RA?nY?Py)UGrx{3|{}In}N8N1Pq_i$^IaBnTqK?n*))Z$mSZhrJ_Fqc>qG>8Bd0b*M%c`M@?Ck^`<_icy9n zdaL1c_NjAEozZ7fDUD74mzJC%Z^unczuEiqle~z&{4VWI^XP-S#hWX)Q$wKz5KNwZ zkQG-1IP_y6QC3LG!It`Yr2rKoB!x2C;p2g4zxD0?RLIKMBb)u?%~u-5ANp@Nei&UN zK16QuAjjD5=nB3cEYTm_OE$O>^SUCWfyA1ACnQ|=%{=Hz;(pyi*Ogm;)u%4V)cauR zu-TqMEy5C}Wd<)~z&&K$XL4C$yMvbFEZ!E}?v0eSAv*8{1~JKW@K03z-VKH=Q#t-q zF3Py=OxUuV3-eVC!kmjH!iGj-lfds_&*be8OS_-~Ss)KLqc^ux(w-Sr;K4xelCokf z6jY(B)W1C+lBmMjy_MR=&U4KvaM9I2*�BGxsY>(b8(&Z|+{BGrfpJ5N@{614k&t zx}MEyK0~rKp9vk}HnoeZ)2qb4Ri`T#lm{s_N41eQd7@X10we;s^!59)Ga;ALr1R+5 zRIOpIPn-S-G2OK&*G<`FZ_-CE%K;6?+{H^qGamb)#( zOyt7PQAeDYw_qNX;HKCk6&cT4c%o1nlv_pEbB&cyIS|4maE|7aYZ=3KxqFAu656`V zZ*W})TPnAH;s4I~C}~KGY$n8KHuI2R0cFxOim$_uQ93=&iu~A+V+k(}SHN>x7#2H?1A#&1tkN?VR+L zMC9X4)y^vjs`2p$L;p5@?nCOEAy-!zJ|q%d>QSGyBju{{?D_Yg-E`~ceQ=A*93vp z9uql7%#*FXsg;ukDyQeJ0+UBJB_PWxw05pCEb21@SKUgDa_vCnJFg%e0sQ`*{QHEB z^O9$~*BGpfa=WQa`1xPpX!~EuFr|4H1$i;gtp#iDqcvkO*jh*0$R;zx#TT?9F=J4e2&o--%RP-V7v%5zby zQ?dRCTLN%?BQ$~>y1{z3r(4~MZXArzR974?Yt;YY-)am@*zs*HL}8hDDr)z!+!HZC z3%l!FZgCcQzfX01CyD%jcr~OXA|9ajeUWh)8Q8B(NrK|2AvIVr-l2ldh>82{P=i-I zme!>RHkAx6GbrsA8XZY2xzx9vqThB zQq)Ynr`rs;NG7H3RL}DU!p2zsWt{zLmb6IzxOPYyY@8GT5QkDPe8SlpV}AsAf7mHQ!T

RMUm)7y@8wfPlq@|*`78qI{UP@OLF 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 - ---- - -### Memories feature - -We've added the memory feature on the mobile app, so you can reminisce about your past memories. - - - -### Facial recognition improvements - -Over the past few releases, we have added many UI improvements to the facial recognition feature to help you manage the recognized people better. Some of the highlights: - -#### Choose a new feature photo for a person. - - - -#### Hide and show faces. - -You can now select irrelevant faces to hide them. The hidden faces won’t be displayed in search results and the people section in the info panel. - -#### Merge faces. - -This is useful when you have multiple faces of the same person in your photos, and you want to merge them into one. - - - -We also added a nifty mechanism that when naming a face, similar names will prompt you a merge face option for the convenience. - - - -### Improvements on multi selection behavior on the web - -We have added a new multi selection behavior on the web to help you select multiple items easier. You can now select a range of photos and videos by holding the `Shift` key. - - - -### Shortcuts for common actions on the web. - -Some of us only navigate the world and the web with a keyboard (looking at you, Vim and Emacs users). So it would take away the sacred weapon of choice to require many clicks to perform repetitive actions. So we added quick shortcuts for the following action on the web. - -Dot Env Example - -### Support viewer for 360-panorama photos. - -Photos with the EXIF property of `ProjectionType` will now have a special viewer on the web to view all the angles of the panorama. - -The thumbnail of the 360 degrees panoramas will have a special icon on the top right of the thumbnail - -Dot Env Example - -Panorama in the detail view - -Dot Env Example - ---- - -Thank you, and I am asking for your support for the project. I hope to be a full-time maintainer of Immich one day to dedicate myself to the project as my life's work for the community and my family. You can find the support channels below: - -- Monthly donation via [GitHub Sponsors](https://github.com/sponsors/alextran1502) -- One-time donation via [GitHub Sponsors](https://github.com/sponsors/alextran1502?frequency=one-time&sponsor=alextran1502) -- [Liberapay](https://liberapay.com/alex.tran1502/) -- [buymeacoffee](https://www.buymeacoffee.com/altran1502) -- Bitcoin: 3QVAb9dCHutquVejeNXitPqZX26Yg5kxb7 -- Give a project a star - the contributors love gazing at the stars and seeing their creations shining in the sky. - -Join our friendly [Discord](https://discord.immich.app) to talk and discuss Immich, tech, or anything - -Cheer! - -Until next time! - -Alex diff --git a/docs/blog/2023/2023-recap.mdx b/docs/blog/2023/2023-recap.mdx deleted file mode 100644 index e9d93a52be..0000000000 --- a/docs/blog/2023/2023-recap.mdx +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: Immich Recap 2023 -authors: [alextran] -tags: [update, recap-2023] -date: 2023-12-30T00:00 ---- - -Hi everyone, - -Alex from Immich here. - -We are entering the last few weeks of 2023, and it has been quite a year for Immich. The project has grown so much in terms of users, developers, features, maturity, and the community around it. When I started working on Immich, it was simply a challenge for myself and an opportunity to learn new technologies, crafting something fun and useful for my wife during my free time to satisfy my urge to build and create things. I never thought it would become so popular and help so many people. At the end of the day, all we have is memory. I am proud that the team and I have created something to make storing and viewing those precious memories easier without restrictions and without sacrificing our privacy. As the year closes, here’s a recap of everything the project accomplished in 2023. - -# Milestones - -- Public shared links -- Favorites page -- Immich turned 1 -- Material Design 3 on the mobile app -- Auto-link LivePhotos server-side -- iOS background backup -- Explore page -- CLIP search -- Search by metadata -- Responsive web app -- Archive page -- Asset descriptions -- 10,000 stars on GitHub -- Manage auth devices -- Map view -- Facial recognition, clustering, searching, renaming, and person management -- Partner sharing and unifying timeline between partners' users -- Custom storage label -- XMP sidecar reading -- RAW file formats -- Justified layout on the web -- Memories -- Multi-select via SHIFT -- Android Motion Photos -- 360° Photos -- Album description -- Album performance improvements (time buckets) -- Video hardware transcoding -- Slideshow mode on the web -- Configuration file -- External libraries -- Trash page -- Custom theme -- Asset Stacking -- 20,000 stars on GitHub -- Shared album activity and comments -- CLI v2 -- Down to 5 containers (from 8) - -# Fun Statistics - -- We have gone from the release version `1.41.0` to `1.90.0` at the time of writing. On average, we see a release every 7 days. -- According to GitHub's metrics, the `immich-server` container image has been pulled almost _4 million_ times. -- According to mobile app store metrics, we have 22,000 installations on Android and 6700 installation units on iOS (opt-in only). -- Immich is making around $1200/month on average from donations. (Thank you all so much!) -- We were guests on two podcasts: - - [Self-hosted](https://selfhosted.show/110) - - [The Vergecast](https://www.theverge.com/23938533/self-hosting-local-first-software-vergecast) -- There are over 4,500 members on the Discord server. -- We have over 22,000 stars on the main GitHub repository, gaining 15,000 stars since January 2023. - -Diving into the next year, the team will continue to build on the foundation we have laid out over the past year, implementing more advanced features for searching, organizing, and sharing between users. Bugs will continue to be squashed and conquered. “Shit Alex wrote'' code will continue to be replaced by beautiful, clean code from Jason, Zack, Boet, Daniel, Osorin, Mert, Fynn, Marty, Martin, and Jonathan. The team has my eternal gratitude for creating a welcoming environment for new contributors, helping, teaching, and learning from each other. I’ve realized that hardly a day has gone by where the team hasn’t been in communication about Immich related topics over the past year. - -My long-term goal is to help hone Immich into a diamond in the FOSS space, where the UI, UX, development experiences, documentation, and quality are at a high standard while remaining free for everybody to use. - -I hope you enjoy Immich and have a happy and peaceful holiday. diff --git a/docs/blog/2024/immich-core-team-goes-fulltime.mdx b/docs/blog/2024/immich-core-team-goes-fulltime.mdx deleted file mode 100644 index 0cba2b467c..0000000000 --- a/docs/blog/2024/immich-core-team-goes-fulltime.mdx +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: The Immich core team goes full-time -authors: [alextran] -tags: [update, announcement, FUTO] -date: 2024-05-01T00:00 ---- - -**Immich is joining [FUTO](https://futo.org/)!** - -Since the beginning of this adventure, my goal has always been to create a better world for my children. Memories are priceless, and privacy should not be a luxury. However, building quality open source has its challenges. Over the past two years, it has taken significant dedication, time, and effort. - -Recently, a company in Austin, Texas, called FUTO contacted the team. FUTO strives to develop quality and sustainable open software. They build software alternatives that focus on giving control to users. From their mission statement: - -“Computers should belong to you, the people. We develop and fund technology to give them back.” - -FUTO loved Immich and wanted to see if we’d consider working with them to take the project to the next level. In short, FUTO offered to: - -- Pay the core team to work on Immich full-time -- Let us keep full autonomy about the project’s direction and leadership -- Continue to license Immich under AGPL -- Keep Immich’s development direction with no paywalled features -- Keep Immich “built for the people” (no ads, data mining/selling, or alternative motives) -- Provide us with financial, technical, legal, and administrative support - -After careful deliberation, the team decided that FUTO’s vision closely aligns with our own: to build a better future by providing a polished, performant, and privacy-preserving open-source software solution for photo and video management delivered in a sustainable way. - -Immich’s future has never looked brighter, and we look forward to realizing our vision for Immich as part of FUTO. - -If you have more questions, we’ll host a Q&A live stream on May 9th at 3PM UTC (10AM CST). [You can ask questions here](https://www.live-ask.com/event/01HWP2SB99A1K8EXFBDKZ5Z9CF), and the stream will be live [here on our YouTube channel](https://youtube.com/live/cwz2iZwYpgg). - -Cheers, - -The Immich Team - ---- - -## FAQs - -### What is FUTO? - -[https://futo.org/what-is-futo/](https://futo.org/what-is-futo/) - -### Will the license change? - -No. Immich will continue to be licensed under AGPL without a CLA. - -### Will Immich continue to be free? - -Yes. The Immich source code will remain freely available under the AGPL license. - -### Is Immich getting VC funding? - -No. Venture capital implies investment in a business, often with the expectation of a future payout (exit plan). Immich is neither a business that can be acquired nor comes with a money-making exit plan. - -### I am currently supporting Immich through GitHub sponsors. What will happen to my donation? - -Effective immediately, all donations to the Immich organization will be canceled. In the future, we will offer an optional, modest payment option instead. Thank you to everyone who donated to help us get this far! - -### How is funding sustainable? - -Immich and FUTO believe a sustainable future requires a model that does not rely on users-as-a-product. To this end, FUTO advocates that users pay for good, open software. In keeping with this model, we will adopt a purchase price. This means we no longer accept donations, but — _without limiting features for those who do not pay_ — we will soon allow you to purchase Immich through a modest payment. We encourage you to pay for the high-quality software you use to foster a healthy software culture where developers build great applications without hidden motives for their users. - -### When does this change take effect? - -This change takes effect immediately. - -### What will change? - -The following things will change as Immich joins FUTO: - -- The brand, logo, and other Immich trademarks will be transferred to FUTO. -- We will stop all donations to the project. -- The core team can now dedicate our full attention to Immich -- Before the end of the year, we plan to have a roadmap for what it will take to get Immich to a stable release. -- Bugs will be squashed, and features will be delivered faster. diff --git a/docs/blog/2024/immich-licensing.mdx b/docs/blog/2024/immich-licensing.mdx deleted file mode 100644 index 773abcb666..0000000000 --- a/docs/blog/2024/immich-licensing.mdx +++ /dev/null @@ -1,91 +0,0 @@ ---- -title: Licensing announcement - Purchase a license to support Immich -authors: [alextran] -tags: [update, announcement, FUTO] -date: 2024-07-18T00:00 ---- - -Hello everybody, - -Firstly, on behalf of the Immich team, I'd like to thank everybody for your continuous support of Immich since the very first day! Your contributions, encouragement, and community engagement have helped bring Immich to its current state. The team and I are forever grateful for that. - -Since our [last announcement of the core team joining FUTO to work on Immich full-time](https://immich.app/blog/2024/immich-core-team-goes-fulltime), one of the goals of our new position is to foster a healthy relationship between the developers and the users. We believe that this enables us to create great software, establish transparent policies and build trust. - -We want to build a great software application that brings value to you and your loved ones' lives. We are not using you as a product, i.e., selling or tracking your data. We are not putting annoying ads into our software. We respect your privacy. We want to be compensated for the hard work we put in to build Immich for you. - -With those notes, we have enabled a way for you to financially support the continued development of Immich, ensuring the software can move forward and will be maintained, by offering a lifetime license of the software. We think if you like and use software, you should pay for it, but _we're never going to force anyone to pay or try to limit Immich for those who don't._ - -There are two types of license that you can choose to purchase: **Server License** and **Individual License**. - -### Server License - -This is a lifetime license costing **$99.99**. The license is applied to the whole server. You and all users that use your server are licensed. - -### Individual License - -This is a lifetime license costing **$24.99**. The license is applied to a single user, and can be used on any server they choose to connect to. - -license-social-gh - -You can purchase the license on [our page - https://buy.immich.app](https://buy.immich.app). - -Starting with release `v1.109.0` you can purchase and enter your purchased license key directly in the app. - -license-page-gh - -## Thank you - -Thank you again for your support, this will help create a strong foundation and stability for the Immich team to continue developing and maintaining the project that you love to use. - -

- -

- -
-
- -Cheers! 🎉 - -Immich team - -# FAQ - -### 1. Where can I purchase a license? - -There are several places where you can purchase the license from - -- [https://buy.immich.app](https://buy.immich.app) -- [https://pay.futo.org](https://pay.futo.org/) -- or directly from the app. - -### 2. Do I need both _Individual License_ and _Server License_? - -No, - -If you are the admin and the sole user, or your instance has less than a total of 4 users, you can buy the **Individual License** for each user. - -If your instance has more than 4 users, it is more cost-effective to buy the **Server License**, which will license all the users on your instance. - -### 3. What do I do if I don't pay? - -You can continue using Immich without any restriction. - -### 4. Will there be any paywalled features? - -No, there will never be any paywalled features. - -### 5. Where can I get support regarding payment issues? - -You can email us with your `orderId` and your email address `billing@futo.org` or on our Discord server. diff --git a/docs/blog/2024/update-july-2024.mdx b/docs/blog/2024/update-july-2024.mdx deleted file mode 100644 index cbe99177e7..0000000000 --- a/docs/blog/2024/update-july-2024.mdx +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Immich Update - July 2024 -authors: [alextran] -date: 2024-07-01T00:00 -tags: [update, v1.106.0] ---- - -Hello everybody! Alex from Immich here and I am back with another development progress update for the project. - -Summer has returned once again, and the night sky is filled with stars, thank you for **38_000 shining stars** you have sent to our [GitHub repo](https://github.com/immich-app/immich)! Since the last announcement several core contributors have started full time. Everything is going great with development, PRs get merged with _brrrrrrr_ rate, conversation exchange between team members is on a new high, we met and are working with the great engineers at FUTO. The spirit is high and we have a lot of things brewing that we think you will like. - -Let's go over some of the updates we had since the last post. - -### Container consolidation - -Reduced the number of total containers from 5 to 4 by making the microservices thread get spawned directly in the server container. Woohoo, remember when Immich had 7 containers? - -### Email notifications - -![smtp](https://github.com/immich-app/immich/assets/27055614/949cba85-d3f1-4cd3-b246-a6f5fb5d3ae8) - -We added email notifications to the app with SMTP settings that you can configure for the following events - -- A new account is created for you. -- You are added to a shared album. -- New media is added to an album. - -### Versioned docs - -You can now jump back into the past or take a peek at the unreleased version of the documentation by selecting the version on the website. - -![version-doc](https://github.com/immich-app/immich/assets/27055614/6d22898a-5093-41ad-b416-4573d7ce6e03) - -### Similarity deduplication - -With more machine learning and CLIP magic, we now have similarity deduplication built into the application where it will search for closely similar images and let you decide what to do with them; i.e keep or trash. - -![similarity-deduplication](https://github.com/immich-app/immich/assets/27055614/3cac8478-fbf7-47ea-acb6-0146901dc67e) - -### Permanent URL for asset on the web - -The detail view for an asset now has a permanent URL so you can easily share them with your loved ones. - -### Web app translations - -We now have a public Weblate project which the community can use to translate the webapp to their native languages. We are planning to port the mobile app translation to this platform as well. If you would like to contribute, you can take a look [here](https://hosted.weblate.org/projects/immich/immich/). We're already close to 50% translations -- we really appreciate everyone contributing to that! - -![web-translation](https://github.com/immich-app/immich/assets/27055614/363df2ed-656c-4584-bd82-0708a693c5bc) - -### Read-only/Editor mode on shared album - -As the owner of the album, you can choose if the shared user can edit the album or to only view the content of the album without any modification. - -![read-only-album](https://github.com/immich-app/immich/assets/27055614/c6f66375-b869-495a-9a86-3e87b316d109) - -### Better video thumbnails - -Immich now tries to find a descriptive video thumbnail instead of simply using the first frame. No more black images for thumbnails! - -### Public Roadmap - -We now have a [public roadmap](https://immich.app/roadmap), giving you a high-level overview of things the team is working on. The first goal of this roadmap is to bring Immich to a stable release, which is expected sometime later this year. Some of the highlights include - -- Auto stacking - Auto stacking of burst photos -- Basic editor - Basic photo editing capabilities -- Workflows - Automate tasks with workflows -- Fine grained access controls - Granular access controls for users and api keys -- Better background backups - Rework background backups to be more reliable -- Private/locked photos - Private assets with extra protections - -Beyond the items in the roadmap, we have _many many_ more ideas for Immich. The team and I hope that you are enjoying the application, find it helpful in your life and we have nothing but the intention of building out great software for you all! - -Have an amazing Summer or Winter for those in the southern hemisphere! :D - -Until next time, - -Cheers! -Alex diff --git a/docs/blog/authors.yml b/docs/blog/authors.yml deleted file mode 100644 index f331efa927..0000000000 --- a/docs/blog/authors.yml +++ /dev/null @@ -1,5 +0,0 @@ -alextran: - name: Alex Tran - title: Maintainer of Immich - url: https://github.com/alextran1502 - image_url: https://github.com/alextran1502.png diff --git a/docs/docs/FAQ.mdx b/docs/docs/FAQ.mdx index b2f2e85775..14ac1de298 100644 --- a/docs/docs/FAQ.mdx +++ b/docs/docs/FAQ.mdx @@ -30,11 +30,11 @@ When in doubt or if you have an edge case scenario, we encourage you to contact ### How can I reset the admin password? -The admin password can be reset by running the [reset-admin-password](/docs/administration/server-commands.md) command on the immich-server. +The admin password can be reset by running the [reset-admin-password](/administration/server-commands.md) command on the immich-server. ### How can I see a list of all users in Immich? -You can see the list of all users by running [list-users](/docs/administration/server-commands.md) Command on the Immich-server. +You can see the list of all users by running [list-users](/administration/server-commands.md) Command on the Immich-server. --- @@ -106,20 +106,20 @@ However, Immich will delete original files that have been trashed when the trash When Storage Template is off (default) Immich saves the file names in a random string (also known as random UUIDs) to prevent duplicate file names. To retrieve the original file names, you must enable the Storage Template and then run the STORAGE TEMPLATE MIGRATION job. -It is recommended to read about [Storage Template](https://immich.app/docs/administration/storage-template) before activation. +It is recommended to read about [Storage Template](/administration/storage-template) before activation. ### Can I add my existing photo library? -Yes, with an [External Library](/docs/features/libraries.md). +Yes, with an [External Library](/features/libraries.md). -### What happens to existing files after I choose a new [Storage Template](/docs/administration/storage-template.mdx)? +### What happens to existing files after I choose a new [Storage Template](/administration/storage-template.mdx)? -Template changes will only apply to _new_ assets. To retroactively apply the template to previously uploaded assets, run the Storage Migration Job, available on the [Jobs](/docs/administration/jobs-workers/#jobs) page. +Template changes will only apply to _new_ assets. To retroactively apply the template to previously uploaded assets, run the Storage Migration Job, available on the [Jobs](/administration/jobs-workers/#jobs) page. ### Why are only photos and not videos being uploaded to Immich? This often happens when using a reverse proxy in front of Immich. -Make sure to [set your reverse proxy](/docs/administration/reverse-proxy/) to allow large requests. +Make sure to [set your reverse proxy](/administration/reverse-proxy/) to allow large requests. Also, check the disk space of your reverse proxy. In some cases, proxies cache requests to disk before passing them on, and if disk space runs out, the request fails. @@ -139,7 +139,7 @@ You can _archive_ them. ### How can I backup data from Immich? -See [Backup and Restore](/docs/administration/backup-and-restore.md). +See [Backup and Restore](/administration/backup-and-restore.md). ### Does Immich support reading existing face tag metadata? @@ -225,7 +225,7 @@ volumes: ### Can I keep my existing album structure while importing assets into Immich? -Yes, by using the [Immich CLI](/docs/features/command-line-interface) along with the `--album` flag. +Yes, by using the [Immich CLI](/features/command-line-interface) along with the `--album` flag. ### Is there a way to reorder photos within an album? @@ -266,7 +266,7 @@ Immich uses CLIP models. An ML model converts each image to an "embedding", whic ### How does facial recognition work? -See [How Facial Recognition Works](/docs/features/facial-recognition#how-facial-recognition-works) for details. +See [How Facial Recognition Works](/features/facial-recognition#how-facial-recognition-works) for details. ### How can I disable machine learning? @@ -288,7 +288,7 @@ No, this is not supported. Only models listed in the [Hugging Face][huggingface] ### I want to be able to search in other languages besides English. How can I do that? -You can change to a multilingual CLIP model. See [here](/docs/features/searching#clip-models) for instructions. +You can change to a multilingual CLIP model. See [here](/features/searching#clip-models) for instructions. ### Does Immich support Facial Recognition for videos? @@ -299,7 +299,7 @@ Scanning the entire video for faces may be implemented in the future. No. :::tip -You can use [Smart Search](/docs/features/searching.md) for this to some extent. For example, if you have a Golden Retriever and a Chihuahua, type these words in the smart search and watch the results. +You can use [Smart Search](/features/searching.md) for this to some extent. For example, if you have a Golden Retriever and a Chihuahua, type these words in the smart search and watch the results. ::: ### I'm getting a lot of "faces" that aren't faces, what can I do? @@ -329,7 +329,7 @@ ls clip/ facial-recognition/ ### Why is Immich slow on low-memory systems like the Raspberry Pi? -Immich optionally uses transcoding and machine learning for several features. However, it can be too heavy to run on a Raspberry Pi. You can [mitigate](/docs/FAQ#can-i-lower-cpu-and-ram-usage) this or host Immich's machine-learning container on a [more powerful system](/docs/guides/remote-machine-learning), or [disable](/docs/FAQ#how-can-i-disable-machine-learning) machine learning entirely. +Immich optionally uses transcoding and machine learning for several features. However, it can be too heavy to run on a Raspberry Pi. You can [mitigate](/FAQ#can-i-lower-cpu-and-ram-usage) this or host Immich's machine-learning container on a [more powerful system](/guides/remote-machine-learning), or [disable](/FAQ#how-can-i-disable-machine-learning) machine learning entirely. ### Can I lower CPU and RAM usage? @@ -339,9 +339,9 @@ The initial backup is the most intensive due to the number of jobs running. The - Under Settings > Transcoding Settings > Threads, set the number of threads to a low number like 1 or 2. - Under Settings > Machine Learning Settings > Facial Recognition > Model Name, you can change the facial recognition model to `buffalo_s` instead of `buffalo_l`. The former is a smaller and faster model, albeit not as good. - For facial recognition on new images to work properly, You must re-run the Face Detection job for all images after this. -- At the container level, you can [set resource constraints](/docs/FAQ#can-i-limit-cpu-and-ram-usage) to lower usage further. +- At the container level, you can [set resource constraints](/FAQ#can-i-limit-cpu-and-ram-usage) to lower usage further. - It's recommended to only apply these constraints _after_ taking some of the measures here for best performance. -- If these changes are not enough, see [above](/docs/FAQ#how-can-i-disable-machine-learning) for instructions on how to disable machine learning. +- If these changes are not enough, see [above](/FAQ#how-can-i-disable-machine-learning) for instructions on how to disable machine learning. ### Can I limit CPU and RAM usage? @@ -383,7 +383,7 @@ Do not exaggerate with the job concurrency because you're probably thoroughly ov ### My server shows Server Status Offline | Version Unknown. What can I do? -You need to [enable WebSockets](/docs/administration/reverse-proxy/) on your reverse proxy. +You need to [enable WebSockets](/administration/reverse-proxy/) on your reverse proxy. --- @@ -391,7 +391,7 @@ You need to [enable WebSockets](/docs/administration/reverse-proxy/) on your rev ### How can I see Immich logs? -Immich components are typically deployed using docker. To see logs for deployed docker containers, you can use the [Docker CLI](https://docs.docker.com/engine/reference/commandline/cli/), specifically the `docker logs` command. For examples, see [Docker Help](/docs/guides/docker-help.md). +Immich components are typically deployed using docker. To see logs for deployed docker containers, you can use the [Docker CLI](https://docs.docker.com/engine/reference/commandline/cli/), specifically the `docker logs` command. For examples, see [Docker Help](/guides/docker-help.md). ### How can I reduce the log verbosity of Redis? @@ -435,7 +435,7 @@ cap_drop: Data for Immich comes in two forms: 1. **Metadata** stored in a Postgres database, stored in the `DB_DATA_LOCATION` folder (previously `pg_data` Docker volume). -2. **Files** (originals, thumbs, profile, etc.), stored in the `UPLOAD_LOCATION` folder, more [info](/docs/administration/backup-and-restore#asset-types-and-storage-locations). +2. **Files** (originals, thumbs, profile, etc.), stored in the `UPLOAD_LOCATION` folder, more [info](/administration/backup-and-restore#asset-types-and-storage-locations). :::warning This will destroy your database and reset your instance, meaning that you start from scratch. @@ -473,7 +473,7 @@ If it mentions SIGILL (note the lack of a K) or error code 132, it most likely m ### Why am I getting database ownership errors? If you get database errors such as `FATAL: data directory "/var/lib/postgresql/data" has wrong ownership` upon database startup, this is likely due to an issue with your filesystem. -NTFS and ex/FAT/32 filesystems are not supported. See [here](/docs/install/requirements#special-requirements-for-windows-users) for more details. +NTFS and ex/FAT/32 filesystems are not supported. See [here](/install/requirements#special-requirements-for-windows-users) for more details. ### How can I verify the integrity of my database? diff --git a/docs/docs/administration/backup-and-restore.md b/docs/docs/administration/backup-and-restore.md index deeefa5635..f9c00c7df7 100644 --- a/docs/docs/administration/backup-and-restore.md +++ b/docs/docs/administration/backup-and-restore.md @@ -3,7 +3,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -A [3-2-1 backup strategy](https://www.backblaze.com/blog/the-3-2-1-backup-strategy/) is recommended to protect your data. You should keep copies of your uploaded photos/videos as well as the Immich database for a comprehensive backup solution. This page provides an overview on how to backup the database and the location of user-uploaded pictures and videos. A template bash script that can be run as a cron job is provided [here](/docs/guides/template-backup-script.md) +A [3-2-1 backup strategy](https://www.backblaze.com/blog/the-3-2-1-backup-strategy/) is recommended to protect your data. You should keep copies of your uploaded photos/videos as well as the Immich database for a comprehensive backup solution. This page provides an overview on how to backup the database and the location of user-uploaded pictures and videos. A template bash script that can be run as a cron job is provided [here](/guides/template-backup-script.md) :::danger The instructions on this page show you how to prepare your Immich instance to be backed up, and which files to take a backup of. You still need to take care of using an actual backup tool to make a backup yourself. @@ -160,7 +160,7 @@ for more info read the [release notes](https://github.com/immich-app/immich/rele :::danger A backup of this folder does not constitute a backup of your database! - Follow the instructions listed [here](/docs/administration/backup-and-restore#database) to learn how to perform a proper backup. + Follow the instructions listed [here](/administration/backup-and-restore#database) to learn how to perform a proper backup. ::: @@ -205,7 +205,7 @@ When you turn off the storage template engine, it will leave the assets in `UPLO :::danger A backup of this folder does not constitute a backup of your database! - Follow the instructions listed [here](/docs/administration/backup-and-restore#database) to learn how to perform a proper backup. + Follow the instructions listed [here](/administration/backup-and-restore#database) to learn how to perform a proper backup. ::: diff --git a/docs/docs/administration/email-notification.mdx b/docs/docs/administration/email-notification.mdx index 2ad4fba2be..0da132161f 100644 --- a/docs/docs/administration/email-notification.mdx +++ b/docs/docs/administration/email-notification.mdx @@ -12,7 +12,7 @@ You can access the settings panel from the web at `Administration -> Settings -> Under Email, enter the required details to connect with an SMTP server. -You can use [this guide](/docs/guides/smtp-gmail) to use Gmail's SMTP server. +You can use [this guide](/guides/smtp-gmail) to use Gmail's SMTP server. ## User's notifications settings diff --git a/docs/docs/administration/jobs-workers.md b/docs/docs/administration/jobs-workers.md index 4634151b9a..75f50599a0 100644 --- a/docs/docs/administration/jobs-workers.md +++ b/docs/docs/administration/jobs-workers.md @@ -11,7 +11,7 @@ The `immich-server` container contains multiple workers: ## Split workers -If you prefer to throttle or distribute the workers, you can do this using the [environment variables](/docs/install/environment-variables) to specify which container should pick up which tasks. +If you prefer to throttle or distribute the workers, you can do this using the [environment variables](/install/environment-variables) to specify which container should pick up which tasks. For example, for a simple setup with one container for the Web/API and one for all other microservices, you can do the following: @@ -53,5 +53,5 @@ Additionally, some jobs (such as memories generation) run on a schedule, which i :::note -Some jobs ([External Libraries](/docs/features/libraries) scanning, Database Dump) are configured in their own sections in System Settings. +Some jobs ([External Libraries](/features/libraries) scanning, Database Dump) are configured in their own sections in System Settings. ::: diff --git a/docs/docs/administration/oauth.md b/docs/docs/administration/oauth.md index 55a0ce9469..47f4a96c6a 100644 --- a/docs/docs/administration/oauth.md +++ b/docs/docs/administration/oauth.md @@ -28,7 +28,7 @@ Before enabling OAuth in Immich, a new client application needs to be configured 2. Configure Redirect URIs/Origins The **Sign-in redirect URIs** should include: - - `app.immich:///oauth-callback` - for logging in with OAuth from the [Mobile App](/docs/features/mobile-app.mdx) + - `app.immich:///oauth-callback` - for logging in with OAuth from the [Mobile App](/features/mobile-app.mdx) - `http://DOMAIN:PORT/auth/login` - for logging in with OAuth from the Web Client - `http://DOMAIN:PORT/user-settings` - for manually linking OAuth in the Web Client @@ -98,7 +98,7 @@ The redirect URI for the mobile app is `app.immich:///oauth-callback`, which is 2. Whitelist the new endpoint as a valid redirect URI with your provider. 3. Specify the new endpoint as the `Mobile Redirect URI Override`, in the OAuth settings. -With these steps in place, you should be able to use OAuth from the [Mobile App](/docs/features/mobile-app.mdx) without a custom scheme redirect URI. +With these steps in place, you should be able to use OAuth from the [Mobile App](/features/mobile-app.mdx) without a custom scheme redirect URI. :::info Immich has a route (`/api/oauth/mobile-redirect`) that is already configured to forward requests to `app.immich:///oauth-callback`, and can be used for step 1. diff --git a/docs/docs/administration/server-commands.md b/docs/docs/administration/server-commands.md index a25673abf2..3838635c24 100644 --- a/docs/docs/administration/server-commands.md +++ b/docs/docs/administration/server-commands.md @@ -16,7 +16,7 @@ The `immich-server` docker image comes preinstalled with an administrative CLI ( ## How to run a command -To run a command, [connect](/docs/guides/docker-help.md#attach-to-a-container) to the `immich_server` container and then execute the command via `immich-admin `. +To run a command, [connect](/guides/docker-help.md#attach-to-a-container) to the `immich_server` container and then execute the command via `immich-admin `. ## Examples diff --git a/docs/docs/administration/system-settings.md b/docs/docs/administration/system-settings.md index f241050136..fdfdad29ea 100644 --- a/docs/docs/administration/system-settings.md +++ b/docs/docs/administration/system-settings.md @@ -12,14 +12,14 @@ Manage password, OAuth, and other authentication settings ### OAuth Authentication -Immich supports OAuth Authentication. Read more about this feature and its configuration [here](/docs/administration/oauth). +Immich supports OAuth Authentication. Read more about this feature and its configuration [here](/administration/oauth). ### Password Authentication -The administrator can choose to disable login with username and password for the entire instance. This means that **no one**, including the system administrator, will be able to log using this method. If [OAuth Authentication](/docs/administration/oauth) is also disabled, no users will be able to login using **any** method. Changing this setting does not affect existing sessions, just new login attempts. +The administrator can choose to disable login with username and password for the entire instance. This means that **no one**, including the system administrator, will be able to log using this method. If [OAuth Authentication](/administration/oauth) is also disabled, no users will be able to login using **any** method. Changing this setting does not affect existing sessions, just new login attempts. :::tip -You can always use the [Server CLI](/docs/administration/server-commands) to re-enable password login. +You can always use the [Server CLI](/administration/server-commands) to re-enable password login. ::: ## Image Settings (thumbnails and previews) @@ -108,7 +108,7 @@ If more than one URL is provided, each server will be attempted one-at-a-time un ### Smart Search -The [smart search](/docs/features/searching) settings allow you to change the [CLIP model](https://openai.com/research/clip). Larger models will typically provide [more accurate search results](https://github.com/immich-app/immich/discussions/11862) but consume more processing power and RAM. When [changing the CLIP model](/docs/FAQ#can-i-use-a-custom-clip-model) it is mandatory to re-run the Smart Search job on all images to fully apply the change. +The [smart search](/features/searching) settings allow you to change the [CLIP model](https://openai.com/research/clip). Larger models will typically provide [more accurate search results](https://github.com/immich-app/immich/discussions/11862) but consume more processing power and RAM. When [changing the CLIP model](/FAQ#can-i-use-a-custom-clip-model) it is mandatory to re-run the Smart Search job on all images to fully apply the change. :::info Internet connection Changing models requires a connection to the Internet to download the model. @@ -132,7 +132,7 @@ Editable settings: - **Max Recognition Distance** - **Min Recognized Faces** -You can learn more about these options on the [Facial Recognition page](/docs/features/facial-recognition#how-face-detection-works) +You can learn more about these options on the [Facial Recognition page](/features/facial-recognition#how-face-detection-works) :::info When changing the values in Min Detection Score, Max Recognition Distance, and Min Recognized Faces. @@ -154,15 +154,15 @@ The map can be adjusted via [OpenMapTiles](https://openmaptiles.org/styles/) for ### Reverse Geocoding Settings -Immich supports [Reverse Geocoding](/docs/features/reverse-geocoding) using data from the [GeoNames](https://www.geonames.org/) geographical database. +Immich supports [Reverse Geocoding](/features/reverse-geocoding) using data from the [GeoNames](https://www.geonames.org/) geographical database. ## Notification Settings -SMTP server setup, for user creation notifications, new albums, etc. More information can be found [here](/docs/administration/email-notification) +SMTP server setup, for user creation notifications, new albums, etc. More information can be found [here](/administration/email-notification) ## Notification Templates -Override the default notifications text with notification templates. More information can be found [here](/docs/administration/email-notification) +Override the default notifications text with notification templates. More information can be found [here](/administration/email-notification) ## Server Settings @@ -176,7 +176,7 @@ The administrator can set a custom message on the login screen (the message will ## Storage Template -Immich supports a custom [Storage Template](/docs/administration/storage-template). Learn more about this feature and its configuration [here](/docs/administration/storage-template). +Immich supports a custom [Storage Template](/administration/storage-template). Learn more about this feature and its configuration [here](/administration/storage-template). ## Theme Settings diff --git a/docs/docs/developer/architecture.mdx b/docs/docs/developer/architecture.mdx index a8d38ba5c1..42d9c1b974 100644 --- a/docs/docs/developer/architecture.mdx +++ b/docs/docs/developer/architecture.mdx @@ -44,7 +44,7 @@ The web app is a [TypeScript](https://www.typescriptlang.org/) project that uses ### CLI -The Immich CLI is an [npm](https://www.npmjs.com/) package that lets users control their Immich instance from the command line. It uses the API to perform various tasks, especially uploading assets. See the [CLI documentation](/docs/features/command-line-interface.md) for more information. +The Immich CLI is an [npm](https://www.npmjs.com/) package that lets users control their Immich instance from the command line. It uses the API to perform various tasks, especially uploading assets. See the [CLI documentation](/features/command-line-interface.md) for more information. ## Server @@ -83,11 +83,11 @@ Immich uses a [worker](https://github.com/immich-app/immich/blob/main/server/src - Smart Search - Facial Recognition - Storage Template Migration -- Sidecar (see [XMP Sidecars](/docs/features/xmp-sidecars.md)) +- Sidecar (see [XMP Sidecars](/features/xmp-sidecars.md)) - Background jobs (file deletion, user deletion) :::info -This list closely matches what is available on the [Administration > Jobs](/docs/administration/jobs-workers/#jobs) page, which provides some remote queue management capabilities. +This list closely matches what is available on the [Administration > Jobs](/administration/jobs-workers/#jobs) page, which provides some remote queue management capabilities. ::: ### Machine Learning diff --git a/docs/docs/developer/devcontainers.md b/docs/docs/developer/devcontainers.md index c7c48acf2b..0a1946e6c1 100644 --- a/docs/docs/developer/devcontainers.md +++ b/docs/docs/developer/devcontainers.md @@ -431,7 +431,7 @@ While the Dev Container focuses on server and web development, you can connect m - Server URL: `http://YOUR_IP:2283/api` - Ensure firewall allows port 2283 -3. **For full mobile development**, see the [mobile development guide](/docs/developer/setup) which covers: +3. **For full mobile development**, see the [mobile development guide](/developer/setup) which covers: - Flutter setup - Running on simulators/devices - Mobile-specific debugging @@ -474,7 +474,7 @@ Recommended minimums: ## Next Steps -- Read the [architecture overview](/docs/developer/architecture) -- Learn about [database migrations](/docs/developer/database-migrations) -- Explore [API documentation](/docs/api) +- Read the [architecture overview](/developer/architecture) +- Learn about [database migrations](/developer/database-migrations) +- Explore [API documentation](https://api.immich.app/) - Join `#immich` on [Discord](https://discord.immich.app) diff --git a/docs/docs/developer/open-api.md b/docs/docs/developer/open-api.md index 2c29c7365b..f627b2c459 100644 --- a/docs/docs/developer/open-api.md +++ b/docs/docs/developer/open-api.md @@ -1,6 +1,6 @@ # OpenAPI -Immich uses the [OpenAPI](https://swagger.io/specification/) standard to generate API documentation. To view the published docs see [here](/docs/api). +Immich uses the [OpenAPI](https://swagger.io/specification/) standard to generate API documentation. To view the published docs see [here](https://api.immich.app/). ## Generator diff --git a/docs/docs/developer/pr-checklist.md b/docs/docs/developer/pr-checklist.md index ea44367742..f855e854c4 100644 --- a/docs/docs/developer/pr-checklist.md +++ b/docs/docs/developer/pr-checklist.md @@ -53,8 +53,8 @@ You can use `dart fix --apply` and `dcm fix lib` to potentially correct some iss ## OpenAPI -The OpenAPI client libraries need to be regenerated whenever there are changes to the `immich-openapi-specs.json` file. Note that you should not modify this file directly as it is auto-generated. See [OpenAPI](/docs/developer/open-api.md) for more details. +The OpenAPI client libraries need to be regenerated whenever there are changes to the `immich-openapi-specs.json` file. Note that you should not modify this file directly as it is auto-generated. See [OpenAPI](/developer/open-api.md) for more details. ## Database Migrations -A database migration needs to be generated whenever there are changes to `server/src/infra/src/entities`. See [Database Migration](/docs/developer/database-migrations.md) for more details. +A database migration needs to be generated whenever there are changes to `server/src/infra/src/entities`. See [Database Migration](/developer/database-migrations.md) for more details. diff --git a/docs/docs/features/automatic-backup.md b/docs/docs/features/automatic-backup.md index 8fcbedaa6e..30d132cef8 100644 --- a/docs/docs/features/automatic-backup.md +++ b/docs/docs/features/automatic-backup.md @@ -16,7 +16,7 @@ If foreground backup is enabled: whenever the app is opened or resumed, it will ## Background backup -This feature is intended for everyday use. For initial bulk uploading, please use the foreground upload feature. For more information on why background upload is not working as expected, please refer to the [FAQ](/docs/FAQ#why-does-foreground-backup-stop-when-i-navigate-away-from-the-app-shouldnt-it-transfer-the-job-to-background-backup). +This feature is intended for everyday use. For initial bulk uploading, please use the foreground upload feature. For more information on why background upload is not working as expected, please refer to the [FAQ](/FAQ#why-does-foreground-backup-stop-when-i-navigate-away-from-the-app-shouldnt-it-transfer-the-job-to-background-backup). If background backup is enabled. The app will periodically check if there are any new photos or videos in the selected album(s) to be uploaded to the server. If there are, it will upload them to the cloud in the background. diff --git a/docs/docs/features/facial-recognition.md b/docs/docs/features/facial-recognition.md index f0dec55484..85712ef5f6 100644 --- a/docs/docs/features/facial-recognition.md +++ b/docs/docs/features/facial-recognition.md @@ -70,7 +70,7 @@ Navigating to Administration > Settings > Machine Learning Settings > Facial Rec :::tip It's better to only tweak the parameters here than to set them to something very different unless you're ready to test a variety of options. If you do need to set a parameter to a strict setting, relaxing other settings can be a good option to compensate, and vice versa. -You can learn how the tune the result in this [Guide](/docs/guides/better-facial-clusters) +You can learn how the tune the result in this [Guide](/guides/better-facial-clusters) ::: ### Facial recognition model diff --git a/docs/docs/features/libraries.md b/docs/docs/features/libraries.md index e68bcdc272..08f37c6821 100644 --- a/docs/docs/features/libraries.md +++ b/docs/docs/features/libraries.md @@ -103,7 +103,7 @@ The `immich-server` container will need access to the gallery. Modify your docke :::tip The `ro` flag at the end only gives read-only access to the volumes. -This will disallow the images from being deleted in the web UI, or adding metadata to the library ([XMP sidecars](/docs/features/xmp-sidecars)). +This will disallow the images from being deleted in the web UI, or adding metadata to the library ([XMP sidecars](/features/xmp-sidecars)). ::: :::info diff --git a/docs/docs/features/ml-hardware-acceleration.md b/docs/docs/features/ml-hardware-acceleration.md index a94f8c8c64..086f93a000 100644 --- a/docs/docs/features/ml-hardware-acceleration.md +++ b/docs/docs/features/ml-hardware-acceleration.md @@ -35,7 +35,7 @@ You do not need to redo any machine learning jobs after enabling hardware accele - Where and how you can get this file depends on device and vendor, but typically, the device vendor also supplies these - The `hwaccel.ml.yml` file assumes the path to it is `/usr/lib/libmali.so`, so update accordingly if it is elsewhere - The `hwaccel.ml.yml` file assumes an additional file `/lib/firmware/mali_csffw.bin`, so update accordingly if your device's driver does not require this file -- Optional: Configure your `.env` file, see [environment variables](/docs/install/environment-variables) for ARM NN specific settings +- Optional: Configure your `.env` file, see [environment variables](/install/environment-variables) for ARM NN specific settings - In particular, the `MACHINE_LEARNING_ANN_FP16_TURBO` can significantly improve performance at the cost of very slightly lower accuracy #### CUDA @@ -49,7 +49,7 @@ You do not need to redo any machine learning jobs after enabling hardware accele - The GPU must be supported by ROCm. If it isn't officially supported, you can attempt to use the `HSA_OVERRIDE_GFX_VERSION` environmental variable: `HSA_OVERRIDE_GFX_VERSION=
`. If this doesn't work, you might need to also set `HSA_USE_SVM=0`. - The ROCm image is quite large and requires at least 35GiB of free disk space. However, pulling later updates to the service through Docker will generally only amount to a few hundred megabytes as the rest will be cached. -- This backend is new and may experience some issues. For example, GPU power consumption can be higher than usual after running inference, even if the machine learning service is idle. In this case, it will only go back to normal after being idle for 5 minutes (configurable with the [MACHINE_LEARNING_MODEL_TTL](/docs/install/environment-variables) setting). +- This backend is new and may experience some issues. For example, GPU power consumption can be higher than usual after running inference, even if the machine learning service is idle. In this case, it will only go back to normal after being idle for 5 minutes (configurable with the [MACHINE_LEARNING_MODEL_TTL](/install/environment-variables) setting). #### OpenVINO @@ -64,7 +64,7 @@ You do not need to redo any machine learning jobs after enabling hardware accele - This is usually pre-installed on the device vendor's Linux images - RKNPU driver V0.9.8 or later must be available in the host server - You may confirm this by running `cat /sys/kernel/debug/rknpu/version` to check the version -- Optional: Configure your `.env` file, see [environment variables](/docs/install/environment-variables) for RKNN specific settings +- Optional: Configure your `.env` file, see [environment variables](/install/environment-variables) for RKNN specific settings - In particular, setting `MACHINE_LEARNING_RKNN_THREADS` to 2 or 3 can _dramatically_ improve performance for RK3576 and RK3588 compared to the default of 1, at the expense of multiplying the amount of RAM each model uses by that amount. ## Setup diff --git a/docs/docs/features/mobile-app.mdx b/docs/docs/features/mobile-app.mdx index cd837741f1..82a2976b41 100644 --- a/docs/docs/features/mobile-app.mdx +++ b/docs/docs/features/mobile-app.mdx @@ -28,7 +28,7 @@ The beta release channel allows users to test upcoming changes before they are o :::info -You can enable automatic backup on supported devices. For more information see [Automatic Backup](/docs/features/automatic-backup.md). +You can enable automatic backup on supported devices. For more information see [Automatic Backup](/features/automatic-backup.md). ::: ## Sync only selected photos @@ -75,7 +75,7 @@ You can sync or mirror an album from your phone to the Immich server on your acc - **User-Specific Sync:** Album synchronization is unique to each server user and does not sync between different users or partners. -- **Mobile-Only Feature:** Album synchronization is currently only available on mobile. For similar options on a computer, refer to [Libraries](/docs/features/libraries) for further details. +- **Mobile-Only Feature:** Album synchronization is currently only available on mobile. For similar options on a computer, refer to [Libraries](/features/libraries) for further details. ### Synchronizing albums from the past diff --git a/docs/docs/features/monitoring.md b/docs/docs/features/monitoring.md index c80f66902b..f087a3306f 100644 --- a/docs/docs/features/monitoring.md +++ b/docs/docs/features/monitoring.md @@ -28,7 +28,7 @@ The metrics in immich are grouped into API (endpoint calls and response times), Immich will not expose an endpoint for metrics by default. To enable this endpoint, you can add the `IMMICH_TELEMETRY_INCLUDE=all` environmental variable to your `.env` file. Note that only the server container currently use this variable. :::tip -`IMMICH_TELEMETRY_INCLUDE=all` enables all metrics. For a more granular configuration you can enumerate the telemetry metrics that should be included as a comma separated list (e.g. `IMMICH_TELEMETRY_INCLUDE=repo,api`). Alternatively, you can also exclude specific metrics with `IMMICH_TELEMETRY_EXCLUDE`. For more information refer to the [environment section](/docs/install/environment-variables.md#prometheus). +`IMMICH_TELEMETRY_INCLUDE=all` enables all metrics. For a more granular configuration you can enumerate the telemetry metrics that should be included as a comma separated list (e.g. `IMMICH_TELEMETRY_INCLUDE=repo,api`). Alternatively, you can also exclude specific metrics with `IMMICH_TELEMETRY_EXCLUDE`. For more information refer to the [environment section](/install/environment-variables.md#prometheus). ::: The next step is to configure a new or existing Prometheus instance to scrape this endpoint. The following steps assume that you do not have an existing Prometheus instance, but the steps will be similar either way. @@ -68,7 +68,7 @@ After bringing down the containers with `docker compose down` and back up with ` :::note To see exactly what metrics are made available, you can additionally add `8081:8081` (API metrics) and `8082:8082` (microservices metrics) to the immich_server container's ports. Visiting the `/metrics` endpoint for these services will show the same raw data that Prometheus collects. -To configure these ports see [`IMMICH_API_METRICS_PORT` & `IMMICH_MICROSERVICES_METRICS_PORT`](/docs/install/environment-variables/#general). +To configure these ports see [`IMMICH_API_METRICS_PORT` & `IMMICH_MICROSERVICES_METRICS_PORT`](/install/environment-variables/#general). ::: ### Usage diff --git a/docs/docs/features/reverse-geocoding.md b/docs/docs/features/reverse-geocoding.md index 399bdd9b48..b1aee74a99 100644 --- a/docs/docs/features/reverse-geocoding.md +++ b/docs/docs/features/reverse-geocoding.md @@ -8,7 +8,7 @@ During Exif Extraction, assets with latitudes and longitudes are reverse geocode ## Usage -Data from a reverse geocode is displayed in the image details, and used in [Smart Search](/docs/features/searching.md). +Data from a reverse geocode is displayed in the image details, and used in [Smart Search](/features/searching.md). diff --git a/docs/docs/features/sharing.md b/docs/docs/features/sharing.md index ff0a03beea..9ba7470407 100644 --- a/docs/docs/features/sharing.md +++ b/docs/docs/features/sharing.md @@ -24,7 +24,7 @@ After creating an album, you can access the sharing options by clicking on the s Partner sharing allows you to share your _entire_ library with other users of your choice. They can then view your library and download the assets. -You can read this guide to learn more about [partner sharing](/docs/features/partner-sharing). +You can read this guide to learn more about [partner sharing](/features/partner-sharing). ## Public sharing diff --git a/docs/docs/features/tags.md b/docs/docs/features/tags.md index a5b6752c81..79a9696d9a 100644 --- a/docs/docs/features/tags.md +++ b/docs/docs/features/tags.md @@ -1,6 +1,6 @@ # Tags -Immich supports hierarchical tags, with the ability to read existing tags from the XMP `TagsList` field and IPTC `Keywords` field. Any changes to tags made through Immich are also written back to a [sidecar](/docs/features/xmp-sidecars) file. You can re-run the metadata extraction jobs for all assets to import your existing tags. +Immich supports hierarchical tags, with the ability to read existing tags from the XMP `TagsList` field and IPTC `Keywords` field. Any changes to tags made through Immich are also written back to a [sidecar](/features/xmp-sidecars) file. You can re-run the metadata extraction jobs for all assets to import your existing tags. ## Enable tags feature diff --git a/docs/docs/features/user-settings.md b/docs/docs/features/user-settings.md index a2d0308541..402105cd43 100644 --- a/docs/docs/features/user-settings.md +++ b/docs/docs/features/user-settings.md @@ -15,9 +15,9 @@ You can access the [user settings](https://my.immich.app/user-settings) by click --- :::tip Reset Password -The admin can reset a user password through the [User Management](/docs/administration/user-management.mdx) screen. +The admin can reset a user password through the [User Management](/administration/user-management.mdx) screen. ::: :::tip Reset Admin Password -The admin password can be reset using a [Server Command](/docs/administration/server-commands.md) +The admin password can be reset using a [Server Command](/administration/server-commands.md) ::: diff --git a/docs/docs/guides/better-facial-clusters.md b/docs/docs/guides/better-facial-clusters.md index f4409b441c..40796983a5 100644 --- a/docs/docs/guides/better-facial-clusters.md +++ b/docs/docs/guides/better-facial-clusters.md @@ -10,7 +10,7 @@ This guide explains how to optimize facial recognition in systems with large ima - **Best Suited For:** Large image libraries after importing a significant number of images. - **Warning:** This method deletes all previously assigned names. -- **Tip:** **Always take a [backup](/docs/administration/backup-and-restore#database) before proceeding!** +- **Tip:** **Always take a [backup](/administration/backup-and-restore#database) before proceeding!** --- diff --git a/docs/docs/guides/custom-locations.md b/docs/docs/guides/custom-locations.md index af8ca438e7..e0274d3bd9 100644 --- a/docs/docs/guides/custom-locations.md +++ b/docs/docs/guides/custom-locations.md @@ -9,7 +9,7 @@ It is important to remember to update the backup settings after following the gu In our `.env` file, we will define the paths we want to use. Note that you don't have to define all of these: UPLOAD_LOCATION will be the base folder that files are stored in by default, with the other paths acting as overrides. ```diff title=".env" -# You can find documentation for all the supported environment variables [here](/docs/install/environment-variables) +# You can find documentation for all the supported environment variables [here](/install/environment-variables) # Custom location where your uploaded, thumbnails, and transcoded video files are stored - UPLOAD_LOCATION=./library diff --git a/docs/docs/guides/database-queries.md b/docs/docs/guides/database-queries.md index 1a5c2ed193..5cdcdc04c4 100644 --- a/docs/docs/guides/database-queries.md +++ b/docs/docs/guides/database-queries.md @@ -7,7 +7,7 @@ Keep in mind that mucking around in the database might set the Moon on fire. Avo :::tip Run `docker exec -it immich_postgres psql --dbname= --username=` to connect to the database via the container directly. -(Replace `` and `` with the values from your [`.env` file](/docs/install/environment-variables#database)). +(Replace `` and `` with the values from your [`.env` file](/install/environment-variables#database)). ::: ## Assets @@ -142,7 +142,7 @@ DELETE FROM "person" WHERE "name" = 'PersonNameHere'; SELECT "key", "value" FROM "system_metadata" WHERE "key" = 'system-config'; ``` -(Only used when not using the [config file](/docs/install/config-file)) +(Only used when not using the [config file](/install/config-file)) ### File properties diff --git a/docs/docs/guides/external-library.md b/docs/docs/guides/external-library.md index 7921843297..ef467159e7 100644 --- a/docs/docs/guides/external-library.md +++ b/docs/docs/guides/external-library.md @@ -1,13 +1,13 @@ # External Library -This guide walks you through adding an [External Library](/docs/features/libraries). +This guide walks you through adding an [External Library](/features/libraries). This guide assumes you are running Immich in Docker and that the files you wish to access are stored in a directory on the same machine. # Mount the directory into the containers. Edit `docker-compose.yml` to add one or more new mount points in the section `immich-server:` under `volumes:`. -If you want Immich to be able to delete the images in the external library or add metadata ([XMP sidecars](/docs/features/xmp-sidecars)), remove `:ro` from the end of the mount point. +If you want Immich to be able to delete the images in the external library or add metadata ([XMP sidecars](/features/xmp-sidecars)), remove `:ro` from the end of the mount point. ```diff immich-server: diff --git a/docs/docs/guides/remote-access.md b/docs/docs/guides/remote-access.md index 6f401dfc5a..518b003c3a 100644 --- a/docs/docs/guides/remote-access.md +++ b/docs/docs/guides/remote-access.md @@ -46,7 +46,7 @@ You can learn how to set up Tailscale together with Immich with the [tutorial vi A reverse proxy is a service that sits between web servers and clients. A reverse proxy can either be hosted on the server itself or remotely. Clients can connect to the reverse proxy via https, and the proxy relays data to Immich. This setup makes most sense if you have your own domain and want to access your Immich instance just like any other website, from outside your LAN. You can also use a DDNS provider like DuckDNS or no-ip if you don't have a domain. This configuration allows the Immich Android and iphone apps to connect to your server without a VPN or tailscale app on the client side. -If you're hosting your own reverse proxy, [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) is a great option. An example configuration for Nginx is provided [here](/docs/administration/reverse-proxy.md). +If you're hosting your own reverse proxy, [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) is a great option. An example configuration for Nginx is provided [here](/administration/reverse-proxy.md). You'll also need your own certificate to authenticate https connections. If you're making Immich publicly accessible, [Let's Encrypt](https://letsencrypt.org/) can provide a free certificate for your domain and is the recommended option. Alternatively, a [self-signed certificate](https://en.wikipedia.org/wiki/Self-signed_certificate) allows you to encrypt your connection to Immich, but it raises a security warning on the client's browser. diff --git a/docs/docs/guides/remote-machine-learning.md b/docs/docs/guides/remote-machine-learning.md index 72ae0e3fa1..0a8ddf2577 100644 --- a/docs/docs/guides/remote-machine-learning.md +++ b/docs/docs/guides/remote-machine-learning.md @@ -1,6 +1,6 @@ # Remote Machine Learning -To alleviate [performance issues on low-memory systems](/docs/FAQ.mdx#why-is-immich-slow-on-low-memory-systems-like-the-raspberry-pi) like the Raspberry Pi, you may also host Immich's machine learning container on a more powerful system, such as your laptop or desktop computer. The server container will send requests containing the image preview to the remote machine learning container for processing. The machine learning container does not persist this data or associate it with a particular user. +To alleviate [performance issues on low-memory systems](/FAQ.mdx#why-is-immich-slow-on-low-memory-systems-like-the-raspberry-pi) like the Raspberry Pi, you may also host Immich's machine learning container on a more powerful system, such as your laptop or desktop computer. The server container will send requests containing the image preview to the remote machine learning container for processing. The machine learning container does not persist this data or associate it with a particular user. :::info Smart Search and Face Detection will use this feature, but Facial Recognition will not. This is because Facial Recognition uses the _outputs_ of these models that have already been saved to the database. As such, its processing is between the server container and the database. @@ -14,7 +14,7 @@ Image previews are sent to the remote machine learning container. Use this optio 2. Copy the following `docker-compose.yml` to the remote server :::info -If using hardware acceleration, the [hwaccel.ml.yml](https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml) file also needs to be added and the `docker-compose.yml` needs to be configured as described in the [hardware acceleration documentation](/docs/features/ml-hardware-acceleration) +If using hardware acceleration, the [hwaccel.ml.yml](https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml) file also needs to be added and the `docker-compose.yml` needs to be configured as described in the [hardware acceleration documentation](/features/ml-hardware-acceleration) ::: ```yaml diff --git a/docs/docs/guides/template-backup-script.md b/docs/docs/guides/template-backup-script.md index 34381dd0ee..19647d4ae1 100644 --- a/docs/docs/guides/template-backup-script.md +++ b/docs/docs/guides/template-backup-script.md @@ -7,7 +7,7 @@ This script assumes you have a second hard drive connected to your server for on The database is saved to your Immich upload folder in the `database-backup` subdirectory. The database is then backed up and versioned with your assets by Borg. This ensures that the database backup is in sync with your assets in every snapshot. :::info -This script makes backups of your database along with your photo/video library. This is redundant with the [automatic database backup tool](https://immich.app/docs/administration/backup-and-restore#automatic-database-backups) built into Immich. Using this script to backup your database has two advantages over the built-in backup tool: +This script makes backups of your database along with your photo/video library. This is redundant with the [automatic database backup tool](/administration/backup-and-restore#automatic-database-dumps) built into Immich. Using this script to backup your database has two advantages over the built-in backup tool: - This script uses storage more efficiently by versioning your backups instead of making multiple copies. - The database backups are performed at the same time as the library backup, ensuring that the backups of your database and the library are always in sync. diff --git a/docs/docs/install/config-file.md b/docs/docs/install/config-file.md index 54d7c61bb3..3fb0687e4a 100644 --- a/docs/docs/install/config-file.md +++ b/docs/docs/install/config-file.md @@ -209,7 +209,7 @@ So you can just grab it from there, paste it into a file and you're pretty much ### Step 2 - Specify the file location In your `.env` file, set the variable `IMMICH_CONFIG_FILE` to the path of your config. -For more information, refer to the [Environment Variables](/docs/install/environment-variables.md) section. +For more information, refer to the [Environment Variables](/install/environment-variables.md) section. :::tip YAML-formatted config files are also supported. diff --git a/docs/docs/install/docker-compose.mdx b/docs/docs/install/docker-compose.mdx index 7a0b566f5d..46b144eb4a 100644 --- a/docs/docs/install/docker-compose.mdx +++ b/docs/docs/install/docker-compose.mdx @@ -29,4 +29,4 @@ If you get an error `can't set healthcheck.start_interval as feature require Doc ## Next Steps -Read the [Post Installation](/docs/install/post-install.mdx) steps and [upgrade instructions](/docs/install/upgrading.md). +Read the [Post Installation](/install/post-install.mdx) steps and [upgrade instructions](/install/upgrading.md). diff --git a/docs/docs/install/environment-variables.md b/docs/docs/install/environment-variables.md index 4e081c8966..e606d03dee 100644 --- a/docs/docs/install/environment-variables.md +++ b/docs/docs/install/environment-variables.md @@ -42,7 +42,7 @@ These environment variables are used by the `docker-compose.yml` file and do **N | `IMMICH_MICROSERVICES_METRICS_PORT` | Port for the OTEL metrics | `8082` | server | microservices | | `IMMICH_PROCESS_INVALID_IMAGES` | When `true`, generate thumbnails for invalid images | | server | microservices | | `IMMICH_TRUSTED_PROXIES` | List of comma-separated IPs set as trusted proxies | | server | api | -| `IMMICH_IGNORE_MOUNT_CHECK_ERRORS` | See [System Integrity](/docs/administration/system-integrity) | | server | api, microservices | +| `IMMICH_IGNORE_MOUNT_CHECK_ERRORS` | See [System Integrity](/administration/system-integrity) | | server | api, microservices | \*1: `TZ` should be set to a `TZ identifier` from [this list][tz-list]. For example, `TZ="Etc/UTC"`. `TZ` is used by `exiftool` as a fallback in case the timezone cannot be determined from the image metadata. It is also used for logfile timestamps and cron job execution. @@ -57,7 +57,7 @@ These environment variables are used by the `docker-compose.yml` file and do **N | `IMMICH_WORKERS_EXCLUDE` | Do not run these workers. Matches against default workers, or `IMMICH_WORKERS_INCLUDE` if specified. | | server | :::info -Information on the current workers can be found [here](/docs/administration/jobs-workers). +Information on the current workers can be found [here](/administration/jobs-workers). ::: ## Ports diff --git a/docs/docs/install/portainer.md b/docs/docs/install/portainer.md index 916d89a0d5..07fd255292 100644 --- a/docs/docs/install/portainer.md +++ b/docs/docs/install/portainer.md @@ -45,5 +45,5 @@ alt="Dot Env Example" 11. Click on "**Deploy the stack**". :::tip -For more information on how to use the application, please refer to the [Post Installation](/docs/install/post-install.mdx) guide. +For more information on how to use the application, please refer to the [Post Installation](/install/post-install.mdx) guide. ::: diff --git a/docs/docs/install/post-install.mdx b/docs/docs/install/post-install.mdx index 636274aaea..b30e91f3cd 100644 --- a/docs/docs/install/post-install.mdx +++ b/docs/docs/install/post-install.mdx @@ -44,6 +44,6 @@ A list of common steps to take after installing Immich include: ## Setting up optional features -- [External Libraries](/docs/features/libraries.md): Adding your existing photo library to Immich -- [Hardware Transcoding](/docs/features/hardware-transcoding.md): Speeding up video transcoding -- [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md): Speeding up various machine learning tasks in Immich +- [External Libraries](/features/libraries.md): Adding your existing photo library to Immich +- [Hardware Transcoding](/features/hardware-transcoding.md): Speeding up video transcoding +- [Hardware-Accelerated Machine Learning](/features/ml-hardware-acceleration.md): Speeding up various machine learning tasks in Immich diff --git a/docs/docs/install/script.md b/docs/docs/install/script.md index 93d1fb166c..ce05dc82d9 100644 --- a/docs/docs/install/script.md +++ b/docs/docs/install/script.md @@ -5,12 +5,12 @@ sidebar_position: 20 # Install script [Experimental] :::caution -This method is experimental and not currently recommended for production use. For production, please refer to installing with [Docker Compose](/docs/install/docker-compose.mdx). +This method is experimental and not currently recommended for production use. For production, please refer to installing with [Docker Compose](/install/docker-compose.mdx). ::: ## Requirements -Follow the [requirements page](/docs/install/requirements) to get started. +Follow the [requirements page](/install/requirements) to get started. The install script only supports Linux operating systems and requires Docker to be already installed on the system. @@ -32,5 +32,5 @@ The web application and mobile app will be available at `http:// These are used to add custom configuration options or to enable specific features. -More information on available environment variables can be found in the **[environment variables documentation](/docs/install/environment-variables/)**. +More information on available environment variables can be found in the **[environment variables documentation](/install/environment-variables/)**. :::info Some environment variables are not available for the TrueNAS Community Edition app as they can be configured through GUI options in the [Edit Immich screen](#edit-app-settings). @@ -242,7 +242,7 @@ alt="Add External Libraries with Additional Storage" className="border rounded-xl" /> -You may configure [external libraries](/docs/features/libraries) by mounting them using **Additional Storage**. +You may configure [external libraries](/features/libraries) by mounting them using **Additional Storage**. The dataset that contains your external library files must at least give **read** access to the user running Immich (Default: `apps` (UID 568), `apps` (GID 568)). If you want to be able to delete files or edit metadata in the external library using Immich, you will need to give the **modify** permission to the user running Immich. @@ -266,7 +266,7 @@ A general recommendation is to mount any external libraries to a path beginning This feature should only be used by advanced users. ::: -Immich can use multiple datasets for its storage, allowing you to manage your data more granularly, similar to the old storage configuration. This is useful if you want to separate your data into different datasets for performance or organizational reasons. There is a general guide for this [here](/docs/guides/custom-locations), but read on for the TrueNAS guide. +Immich can use multiple datasets for its storage, allowing you to manage your data more granularly, similar to the old storage configuration. This is useful if you want to separate your data into different datasets for performance or organizational reasons. There is a general guide for this [here](/guides/custom-locations), but read on for the TrueNAS guide. Each additional dataset has to give the permission **_modify_** to the user who will run Immich (Default: `apps` (UID 568), `apps` (GID 568)) As described in the [Setting up Storage Datasets](#setting-up-storage-datasets) section above, you have to create the datasets with the **Apps** preset to ensure the correct permissions are set, or you can set the permissions manually after creating the datasets. @@ -309,7 +309,7 @@ className="border rounded-xl" Both **CPU** and **Memory** are limits, not reservations. This means that Immich can use up to the specified amount of CPU threads and RAM, but it will not reserve that amount of resources at all times. The system will allocate resources as needed, and Immich will use less than the specified amount most of the time. -- Enable **GPU Configuration** options if you have a GPU or CPU with integrated graphics that you will use for [Hardware Transcoding](/docs/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md). +- Enable **GPU Configuration** options if you have a GPU or CPU with integrated graphics that you will use for [Hardware Transcoding](/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/features/ml-hardware-acceleration.md). The process for NVIDIA GPU passthrough requires additional steps. More details here: [GPU Passthrough Docs for TrueNAS Apps](https://apps.truenas.com/managing-apps/installing-apps/#gpu-passthrough) @@ -332,7 +332,7 @@ Click **Web Portal** on the **Application Info** widget, or go to the URL `http: After that, you can start using Immich to upload and manage your photos and videos. :::tip -For more information on how to use the application once installed, please refer to the [Post Install](/docs/install/post-install.mdx) guide. +For more information on how to use the application once installed, please refer to the [Post Install](/install/post-install.mdx) guide. ::: ## Edit App Settings @@ -347,7 +347,7 @@ For more information on how to use the application once installed, please refer ## Updating the App :::danger -Make sure to read the general [upgrade instructions](/docs/install/upgrading.md). +Make sure to read the general [upgrade instructions](/install/upgrading.md). ::: When updates become available, TrueNAS alerts and provides easy updates. diff --git a/docs/docs/install/unraid.md b/docs/docs/install/unraid.md index efb493f267..ca7263a1e8 100644 --- a/docs/docs/install/unraid.md +++ b/docs/docs/install/unraid.md @@ -125,13 +125,13 @@ alt="Go to Docker Tab and visit the address listed next to immich-web" :::tip -For more information on how to use the application once installed, please refer to the [Post Install](/docs/install/post-install.mdx) guide. +For more information on how to use the application once installed, please refer to the [Post Install](/install/post-install.mdx) guide. ::: ## Updating Steps :::danger -Make sure to read the general [upgrade instructions](/docs/install/upgrading.md). +Make sure to read the general [upgrade instructions](/install/upgrading.md). ::: Updating is extremely easy however it's important to be aware that containers managed via the Docker Compose Manager plugin do not integrate with Unraid's native dockerman UI, the label "_update ready_" will always be present on containers installed via the Docker Compose Manager. diff --git a/docs/docs/install/upgrading.md b/docs/docs/install/upgrading.md index d638a6f7d1..305e61af57 100644 --- a/docs/docs/install/upgrading.md +++ b/docs/docs/install/upgrading.md @@ -40,7 +40,7 @@ If you do not deploy Immich using Docker Compose and see a deprecation warning f Immich has migrated off of the deprecated pgvecto.rs database extension to its successor, [VectorChord](https://github.com/tensorchord/VectorChord), which comes with performance improvements in almost every aspect. This section will guide you on how to make this change in a Docker Compose setup. -Before making any changes, please [back up your database](/docs/administration/backup-and-restore). While every effort has been made to make this migration as smooth as possible, there’s always a chance that something can go wrong. +Before making any changes, please [back up your database](/administration/backup-and-restore). While every effort has been made to make this migration as smooth as possible, there’s always a chance that something can go wrong. After making a backup, please modify your `docker-compose.yml` file with the following information. @@ -101,7 +101,7 @@ Please don’t hesitate to contact us on [GitHub](https://github.com/immich-app/ #### I have a separate PostgreSQL instance shared with multiple services. How can I switch to VectorChord? -Please see the [standalone PostgreSQL documentation](/docs/administration/postgres-standalone#migrating-to-vectorchord) for migration instructions. The migration path will be different depending on whether you’re currently using pgvecto.rs or pgvector, as well as whether Immich has superuser DB permissions. +Please see the [standalone PostgreSQL documentation](/administration/postgres-standalone#migrating-to-vectorchord) for migration instructions. The migration path will be different depending on whether you’re currently using pgvecto.rs or pgvector, as well as whether Immich has superuser DB permissions. #### Why are so many lines removed from the `docker-compose.yml` file? Does this mean the health check is removed? diff --git a/docs/docs/overview/help.md b/docs/docs/overview/help.md index f38ecde168..e6523547fa 100644 --- a/docs/docs/overview/help.md +++ b/docs/docs/overview/help.md @@ -6,7 +6,7 @@ sidebar_position: 6 Running into an issue or have a question? Try the following: -1. Check the [FAQs](/docs/FAQ.mdx). +1. Check the [FAQs](/FAQ.mdx). 2. Read through the [Release Notes][github-releases]. 3. Search through existing [GitHub Issues][github-issues]. 4. Open a help ticket on [Discord][discord-link]. diff --git a/docs/docs/overview/quick-start.mdx b/docs/docs/overview/quick-start.mdx index 28cee15007..d80a194ad2 100644 --- a/docs/docs/overview/quick-start.mdx +++ b/docs/docs/overview/quick-start.mdx @@ -13,7 +13,7 @@ to install and use it. - A system with at least 4GB of RAM and 2 CPU cores. - [Docker](https://docs.docker.com/engine/install/) -> For a more detailed list of requirements, see the [requirements page](/docs/install/requirements). +> For a more detailed list of requirements, see the [requirements page](/install/requirements). --- @@ -61,7 +61,7 @@ import MobileAppBackup from '/docs/partials/_mobile-app-backup.md'; The backup time differs depending on how many photos are on your mobile device. Large uploads may take quite a while. -To quickly get going, you can selectively upload few photos first, by following this [guide](/docs/features/mobile-app#sync-only-selected-photos). +To quickly get going, you can selectively upload few photos first, by following this [guide](/features/mobile-app#sync-only-selected-photos). You can select the **Jobs** tab to see Immich processing your photos. @@ -72,7 +72,7 @@ You can select the **Jobs** tab to see Immich processing your photos. ## Review the database backup and restore process Immich has built-in database backups. You can refer to the -[database backup](/docs/administration/backup-and-restore) for more information. +[database backup](/administration/backup-and-restore) for more information. :::danger The database only contains metadata and user information. You must setup manual backups of the images and videos stored in `UPLOAD_LOCATION`. @@ -86,8 +86,8 @@ You may decide you'd like to install the server a different way; the Install cat You may decide you'd like to add the _rest_ of your photos from Google Photos, even those not on your mobile device, via Google Takeout. You can use [immich-go](https://github.com/simulot/immich-go) for this. -You may want to [upload photos from your own archive](/docs/features/command-line-interface). +You may want to [upload photos from your own archive](/features/command-line-interface). -You may want to incorporate a pre-existing archive of photos from an [External Library](/docs/features/libraries); there's a [guide](/docs/guides/external-library) for that. +You may want to incorporate a pre-existing archive of photos from an [External Library](/features/libraries); there's a [guide](/guides/external-library) for that. -You may want your mobile device to [back photos up to your server automatically](/docs/features/automatic-backup). +You may want your mobile device to [back photos up to your server automatically](/features/automatic-backup). diff --git a/docs/docs/overview/support-the-project.md b/docs/docs/overview/support-the-project.md index a439893a7e..ae24a3f1ce 100644 --- a/docs/docs/overview/support-the-project.md +++ b/docs/docs/overview/support-the-project.md @@ -10,11 +10,11 @@ By far the easiest way to help make Immich better it to use it and report issues ## Translations -Support the project by localizing on [Weblate](https://hosted.weblate.org/projects/immich/immich/). For more information, see the [Translations](/docs/developer/translations) section. +Support the project by localizing on [Weblate](https://hosted.weblate.org/projects/immich/immich/). For more information, see the [Translations](/developer/translations) section. ## Development -If you are a programmer or developer, take a look at Immich's [technology stack](/docs/developer/architecture.mdx) and consider fixing bugs or building new features. The team and I are always looking for new contributors. For information about how to contribute as a developer, see the [Developer](/docs/developer/architecture.mdx) section. +If you are a programmer or developer, take a look at Immich's [technology stack](/developer/architecture.mdx) and consider fixing bugs or building new features. The team and I are always looking for new contributors. For information about how to contribute as a developer, see the [Developer](/developer/architecture.mdx) section. ## Purchase Immich diff --git a/docs/docs/partials/_server-backup.md b/docs/docs/partials/_server-backup.md index b9479600aa..34c93d78a1 100644 --- a/docs/docs/partials/_server-backup.md +++ b/docs/docs/partials/_server-backup.md @@ -1,5 +1,5 @@ Now that you have imported some pictures, you should setup server backups to preserve your memories. -You can do so by following our [backup guide](/docs/administration/backup-and-restore.md). +You can do so by following our [backup guide](/administration/backup-and-restore.md). :::danger Immich is still under heavy development _and_ handles very important data. diff --git a/docs/docs/partials/_storage-template.md b/docs/docs/partials/_storage-template.md index 20e9caac43..84236e0ac1 100644 --- a/docs/docs/partials/_storage-template.md +++ b/docs/docs/partials/_storage-template.md @@ -1,7 +1,7 @@ -Immich allows the admin user to set the uploaded filename pattern at the directory and filename level as well as the [storage label for a user](/docs/administration/user-management/#set-storage-label-for-user). +Immich allows the admin user to set the uploaded filename pattern at the directory and filename level as well as the [storage label for a user](/administration/user-management/#set-storage-label-for-user). :::tip -You can read more about the differences between storage template engine on and off [here](/docs/administration/backup-and-restore#asset-types-and-storage-locations) +You can read more about the differences between storage template engine on and off [here](/administration/backup-and-restore#asset-types-and-storage-locations) ::: The admin user can set the template by using the template builder in the `Administration -> Settings -> Storage Template`. Immich provides a set of variables that you can use in constructing the template, along with additional custom text. If the template produces [multiple files with the same filename, they won't be overwritten](https://github.com/immich-app/immich/discussions/3324) as a sequence number is appended to the filename. diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index d612dda253..fa4aa7c7d1 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -42,26 +42,19 @@ const config = { ], presets: [ [ - 'docusaurus-preset-openapi', - /** @type {import('docusaurus-preset-openapi').Options} */ + 'classic', + /** @type {import('@docusaurus/preset-classic').Options} */ ({ docs: { showLastUpdateAuthor: true, showLastUpdateTime: true, + routeBasePath: '/', sidebarPath: require.resolve('./sidebars.js'), // Please change this to your repo. // Remove this to remove the "edit this page" links. editUrl: 'https://github.com/immich-app/immich/tree/main/docs/', }, - api: { - path: '../open-api/immich-openapi-specs.json', - routeBasePath: '/docs/api', - }, - // blog: { - // showReadingTime: true, - // editUrl: "https://github.com/immich-app/immich/tree/main/docs/", - // }, theme: { customCss: require.resolve('./src/css/custom.css'), }, @@ -95,17 +88,17 @@ const config = { position: 'right', }, { - to: '/docs/overview/welcome', + to: '/overview/welcome', position: 'right', label: 'Docs', }, { - to: '/roadmap', + href: 'https://immich.app/roadmap', position: 'right', label: 'Roadmap', }, { - to: '/docs/api', + href: 'https://api.immich.app/', position: 'right', label: 'API', }, @@ -140,15 +133,15 @@ const config = { items: [ { label: 'Welcome', - to: '/docs/overview/welcome', + to: '/overview/welcome', }, { label: 'Installation', - to: '/docs/install/requirements', + to: '/install/requirements', }, { label: 'Contributing', - to: '/docs/overview/support-the-project', + to: '/overview/support-the-project', }, { label: 'Privacy Policy', @@ -161,15 +154,15 @@ const config = { items: [ { label: 'Roadmap', - to: '/roadmap', + href: 'https://immich.app/roadmap', }, { label: 'API', - to: '/docs/api', + href: 'https://api.immich.app/', }, { label: 'Cursed Knowledge', - to: '/cursed-knowledge', + href: 'https://immich.app/cursed-knowledge', }, ], }, diff --git a/docs/package.json b/docs/package.json index 1a1dbcf84c..151fe42e25 100644 --- a/docs/package.json +++ b/docs/package.json @@ -25,7 +25,6 @@ "@mdx-js/react": "^3.0.0", "autoprefixer": "^10.4.17", "docusaurus-lunr-search": "^3.3.2", - "docusaurus-preset-openapi": "^0.7.5", "lunr": "^2.3.9", "postcss": "^8.4.25", "prism-react-renderer": "^2.3.1", diff --git a/docs/src/components/version-switcher.tsx b/docs/src/components/version-switcher.tsx index 5cb23891aa..739d7bd001 100644 --- a/docs/src/components/version-switcher.tsx +++ b/docs/src/components/version-switcher.tsx @@ -11,7 +11,7 @@ export default function VersionSwitcher(): JSX.Element { useEffect(() => { async function getVersions() { try { - let baseUrl = 'https://immich.app'; + let baseUrl = 'https://docs.immich.app'; if (window.location.origin === 'http://localhost:3005') { baseUrl = window.location.origin; } @@ -21,12 +21,13 @@ export default function VersionSwitcher(): JSX.Element { const archiveVersions = await response.json(); const allVersions = [ - { label: 'Next', url: 'https://main.preview.immich.app' }, - { label: 'Latest', url: 'https://immich.app' }, + { label: 'Next', url: 'https://docs.main.preview.immich.app' }, + { label: 'Latest', url: 'https://docs.immich.app' }, ...archiveVersions, - ].map(({ label, url }) => ({ + ].map(({ label, url, rootPath }) => ({ label, url: new URL(url), + rootPath, })); setVersions(allVersions); @@ -50,12 +51,18 @@ export default function VersionSwitcher(): JSX.Element { className="version-switcher-34ab39" label={activeLabel} mobile={windowSize === 'mobile'} - items={versions.map(({ label, url }) => ({ - label, - to: new URL(location.pathname + location.search + location.hash, url).href, - target: '_self', - className: label === activeLabel ? 'dropdown__link--active menu__link--active' : '', // workaround because React Router `` only supports using URL path for checking if active: https://v5.reactrouter.com/web/api/NavLink/isactive-func - }))} + items={versions.map(({ label, url, rootPath }) => { + let path = location.pathname + location.search + location.hash; + if (rootPath && !path.startsWith(rootPath)) { + path = rootPath + path; + } + return { + label, + to: new URL(path, url).href, + target: '_self', + className: label === activeLabel ? 'dropdown__link--active menu__link--active' : '', // workaround because React Router `` only supports using URL path for checking if active: https://v5.reactrouter.com/web/api/NavLink/isactive-func + }; + })} /> ) ); diff --git a/docs/src/pages/cursed-knowledge.tsx b/docs/src/pages/cursed-knowledge.tsx deleted file mode 100644 index f3dacc2ce6..0000000000 --- a/docs/src/pages/cursed-knowledge.tsx +++ /dev/null @@ -1,273 +0,0 @@ -import { - mdiBug, - mdiCalendarToday, - mdiCrosshairsOff, - mdiCrop, - mdiDatabase, - mdiLeadPencil, - mdiLockOff, - mdiLockOutline, - mdiMicrosoftWindows, - mdiSecurity, - mdiSpeedometerSlow, - mdiTrashCan, - mdiWeb, - mdiWrap, - mdiCloudKeyOutline, - mdiRegex, - mdiCodeJson, - mdiClockOutline, - mdiAccountOutline, - mdiRestart, -} from '@mdi/js'; -import Layout from '@theme/Layout'; -import React from 'react'; -import { Timeline, Item as TimelineItem } from '../components/timeline'; - -const withLanguage = (date: Date) => (language: string) => date.toLocaleDateString(language); - -type Item = Omit & { date: Date }; - -const items: Item[] = [ - { - icon: mdiClockOutline, - iconColor: 'gray', - title: 'setTimeout is cursed', - description: - 'The setTimeout method in JavaScript is cursed when used with small values because the implementation may or may not actually wait the specified time.', - link: { - url: 'https://github.com/immich-app/immich/pull/20655', - text: '#20655', - }, - date: new Date(2025, 7, 4), - }, - { - icon: mdiAccountOutline, - iconColor: '#DAB1DA', - title: 'PostgreSQL USER is cursed', - description: - 'The USER keyword in PostgreSQL is cursed because you can select from it like a table, which leads to confusion if you have a table name user as well.', - link: { - url: 'https://github.com/immich-app/immich/pull/19891', - text: '#19891', - }, - date: new Date(2025, 7, 4), - }, - { - icon: mdiRestart, - iconColor: '#8395e3', - title: 'PostgreSQL RESET is cursed', - description: - 'PostgreSQL RESET is cursed because it is impossible to RESET a PostgreSQL extension parameter if the extension has been uninstalled.', - link: { - url: 'https://github.com/immich-app/immich/pull/19363', - text: '#19363', - }, - date: new Date(2025, 5, 20), - }, - { - icon: mdiRegex, - iconColor: 'purple', - title: 'Zitadel Actions are cursed', - description: - "Zitadel is cursed because its custom scripting feature is executed with a JS engine that doesn't support regex named capture groups.", - link: { - url: 'https://github.com/dop251/goja', - text: 'Go JS engine', - }, - date: new Date(2025, 5, 4), - }, - { - icon: mdiCloudKeyOutline, - iconColor: '#0078d4', - title: 'Entra is cursed', - description: - "Microsoft Entra supports PKCE, but doesn't include it in its OpenID discovery document. This leads to clients thinking PKCE isn't available.", - link: { - url: 'https://github.com/immich-app/immich/pull/18725', - text: '#18725', - }, - date: new Date(2025, 4, 30), - }, - { - icon: mdiCrop, - iconColor: 'tomato', - title: 'Image dimensions in EXIF metadata are cursed', - description: - 'The dimensions in EXIF metadata can be different from the actual dimensions of the image, causing issues with cropping and resizing.', - link: { - url: 'https://github.com/immich-app/immich/pull/17974', - text: '#17974', - }, - date: new Date(2025, 4, 5), - }, - { - icon: mdiCodeJson, - iconColor: 'yellow', - title: 'YAML whitespace is cursed', - description: 'YAML whitespaces are often handled in unintuitive ways.', - link: { - url: 'https://github.com/immich-app/immich/pull/17309', - text: '#17309', - }, - date: new Date(2025, 3, 1), - }, - { - icon: mdiMicrosoftWindows, - iconColor: '#357EC7', - title: 'Hidden files in Windows are cursed', - description: - 'Hidden files in Windows cannot be opened with the "w" flag. That, combined with SMB option "hide dot files" leads to a lot of confusion.', - link: { - url: 'https://github.com/immich-app/immich/pull/12812', - text: '#12812', - }, - date: new Date(2024, 8, 20), - }, - { - icon: mdiWrap, - iconColor: 'gray', - title: 'Carriage returns in bash scripts are cursed', - description: 'Git can be configured to automatically convert LF to CRLF on checkout and CRLF breaks bash scripts.', - link: { - url: 'https://github.com/immich-app/immich/pull/11613', - text: '#11613', - }, - date: new Date(2024, 7, 7), - }, - { - icon: mdiLockOff, - iconColor: 'red', - title: 'Fetch inside Cloudflare Workers is cursed', - description: - 'Fetch requests in Cloudflare Workers use http by default, even if you explicitly specify https, which can often cause redirect loops.', - link: { - url: 'https://community.cloudflare.com/t/does-cloudflare-worker-allow-secure-https-connection-to-fetch-even-on-flexible-ssl/68051/5', - text: 'Cloudflare', - }, - date: new Date(2024, 7, 7), - }, - { - icon: mdiCrosshairsOff, - iconColor: 'gray', - title: 'GPS sharing on mobile is cursed', - description: - 'Some phones will silently strip GPS data from images when apps without location permission try to access them.', - link: { - url: 'https://github.com/immich-app/immich/discussions/11268', - text: '#11268', - }, - date: new Date(2024, 6, 21), - }, - { - icon: mdiLeadPencil, - iconColor: 'gold', - title: 'PostgreSQL NOTIFY is cursed', - description: - 'PostgreSQL does everything in a transaction, including NOTIFY. This means using the socket.io postgres-adapter writes to WAL every 5 seconds.', - link: { url: 'https://github.com/immich-app/immich/pull/10801', text: '#10801' }, - date: new Date(2024, 6, 3), - }, - { - icon: mdiWeb, - iconColor: 'lightskyblue', - title: 'npm scripts are cursed', - description: - 'npm scripts make a http call to the npm registry each time they run, which means they are a terrible way to execute a health check.', - link: { url: 'https://github.com/immich-app/immich/issues/10796', text: '#10796' }, - date: new Date(2024, 6, 3), - }, - { - icon: mdiSpeedometerSlow, - iconColor: 'brown', - title: '50 extra packages are cursed', - description: - 'There is a user in the JavaScript community who goes around adding "backwards compatibility" to projects. They do this by adding 50 extra package dependencies to your project, which are maintained by them.', - link: { url: 'https://github.com/immich-app/immich/pull/10690', text: '#10690' }, - date: new Date(2024, 5, 28), - }, - { - icon: mdiLockOutline, - iconColor: 'gold', - title: 'Long passwords are cursed', - description: - 'The bcrypt implementation only uses the first 72 bytes of a string. Any characters after that are ignored.', - // link: GHSA-4p64-9f7h-3432 - date: new Date(2024, 5, 25), - }, - { - icon: mdiCalendarToday, - iconColor: 'greenyellow', - title: 'JavaScript Date objects are cursed', - description: 'JavaScript date objects are 1 indexed for years and days, but 0 indexed for months.', - link: { url: 'https://github.com/immich-app/immich/pull/6787', text: '#6787' }, - date: new Date(2024, 0, 31), - }, - { - icon: mdiBug, - iconColor: 'green', - title: 'ESM imports are cursed', - description: - 'Prior to Node.js v20.8 using --experimental-vm-modules in a CommonJS project that imported an ES module that imported a CommonJS modules would create a segfault and crash Node.js', - link: { - url: 'https://github.com/immich-app/immich/pull/6719', - text: '#6179', - }, - date: new Date(2024, 0, 9), - }, - { - icon: mdiDatabase, - iconColor: 'gray', - title: 'PostgreSQL parameters are cursed', - description: `PostgresSQL has a limit of ${Number(65535).toLocaleString()} parameters, so bulk inserts can fail with large datasets.`, - link: { - url: 'https://github.com/immich-app/immich/pull/6034', - text: '#6034', - }, - date: new Date(2023, 11, 28), - }, - { - icon: mdiSecurity, - iconColor: 'gold', - title: 'Secure contexts are cursed', - description: `Some web features like the clipboard API only work in "secure contexts" (ie. https or localhost)`, - link: { - url: 'https://github.com/immich-app/immich/issues/2981', - text: '#2981', - }, - date: new Date(2023, 5, 26), - }, - { - icon: mdiTrashCan, - iconColor: 'gray', - title: 'TypeORM deletes are cursed', - description: `The remove implementation in TypeORM mutates the input, deleting the id property from the original object.`, - link: { - url: 'https://github.com/typeorm/typeorm/issues/7024#issuecomment-948519328', - text: 'typeorm#6034', - }, - date: new Date(2023, 1, 23), - }, -]; - -export default function CursedKnowledgePage(): JSX.Element { - return ( - -
-

- Cursed Knowledge -

-

- Cursed knowledge we have learned as a result of building Immich that we wish we never knew. -

-
- b.date.getTime() - a.date.getTime()) - .map((item) => ({ ...item, getDateLabel: withLanguage(item.date) }))} - /> -
-
-
- ); -} diff --git a/docs/src/pages/index.tsx b/docs/src/pages/index.tsx index 277a1d0b46..d301c8e061 100644 --- a/docs/src/pages/index.tsx +++ b/docs/src/pages/index.tsx @@ -1,123 +1,5 @@ -import React from 'react'; -import Link from '@docusaurus/Link'; -import Layout from '@theme/Layout'; -import { discordPath, discordViewBox } from '@site/src/components/svg-paths'; -import ThemedImage from '@theme/ThemedImage'; -import Icon from '@mdi/react'; - -function HomepageHeader() { - return ( -
-
- Immich logo -
-
-
- - - - -
-

- Self-hosted{' '} - - photo and - video management{' '} - - solution -

- -

- Easily back up, organize, and manage your photos on your own server. Immich helps you - browse, search and organize your photos and videos with ease, without - sacrificing your privacy. -

-
-
- - Get Started - - - - Open Demo - -
- -
- - Join our Discord -
- -
-
-
- -
-

Download the mobile app

-

- Download the Immich app and start backing up your photos and videos securely to your own server -

-
-
-
- - Get it on Google Play - -
- -
- - Download on the App Store - -
- -
- - Download APK - -
-
- -
-
- ); -} +import { Redirect } from '@docusaurus/router'; export default function Home(): JSX.Element { - return ( - - -
-

This project is available under GNU AGPL v3 license.

-

Privacy should not be a luxury

-
-
- ); + return ; } diff --git a/docs/src/pages/roadmap.tsx b/docs/src/pages/roadmap.tsx deleted file mode 100644 index e002c4d032..0000000000 --- a/docs/src/pages/roadmap.tsx +++ /dev/null @@ -1,944 +0,0 @@ -import { - mdiAccountGroup, - mdiAccountGroupOutline, - mdiAndroid, - mdiAppleIos, - mdiArchiveOutline, - mdiBash, - mdiBookSearchOutline, - mdiBookmark, - mdiCakeVariant, - mdiCameraBurst, - mdiChartBoxMultipleOutline, - mdiCheckAll, - mdiCheckboxMarked, - mdiCloudUploadOutline, - mdiCollage, - mdiContentDuplicate, - mdiCrop, - mdiDevices, - mdiEmailOutline, - mdiExpansionCard, - mdiEyeOutline, - mdiEyeRefreshOutline, - mdiFaceMan, - mdiFaceManOutline, - mdiFile, - mdiFileSearch, - mdiFlash, - mdiFolder, - mdiFolderMultiple, - mdiForum, - mdiHandshakeOutline, - mdiHeart, - mdiHistory, - mdiImage, - mdiImageAlbum, - mdiImageEdit, - mdiImageMultipleOutline, - mdiImageSearch, - mdiKeyboardSettingsOutline, - mdiLicense, - mdiLockOutline, - mdiMagnify, - mdiMagnifyScan, - mdiMap, - mdiMaterialDesign, - mdiMatrix, - mdiMerge, - mdiMonitor, - mdiMotionPlayOutline, - mdiPalette, - mdiPanVertical, - mdiPartyPopper, - mdiPencil, - mdiRaw, - mdiRocketLaunch, - mdiRotate360, - mdiScaleBalance, - mdiSecurity, - mdiServer, - mdiShare, - mdiShareAll, - mdiShareCircle, - mdiStar, - mdiStarOutline, - mdiTableKey, - mdiTag, - mdiTagMultiple, - mdiText, - mdiThemeLightDark, - mdiTrashCanOutline, - mdiVectorCombine, - mdiFolderSync, - mdiFaceRecognition, - mdiVideo, - mdiWeb, - mdiDatabaseOutline, - mdiLinkEdit, - mdiTagFaces, - mdiMovieOpenPlayOutline, - mdiCast, -} from '@mdi/js'; -import Layout from '@theme/Layout'; -import React from 'react'; -import { Item, Timeline } from '../components/timeline'; - -const releases = { - 'v1.135.0': new Date(2025, 5, 18), - 'v1.133.0': new Date(2025, 4, 21), - 'v1.130.0': new Date(2025, 2, 25), - 'v1.127.0': new Date(2025, 1, 26), - 'v1.122.0': new Date(2024, 11, 5), - 'v1.120.0': new Date(2024, 10, 6), - 'v1.114.0': new Date(2024, 8, 6), - 'v1.113.0': new Date(2024, 7, 30), - 'v1.112.0': new Date(2024, 7, 14), - 'v1.111.0': new Date(2024, 6, 26), - 'v1.110.0': new Date(2024, 5, 11), - 'v1.109.0': new Date(2024, 6, 18), - 'v1.106.1': new Date(2024, 5, 11), - 'v1.104.0': new Date(2024, 4, 13), - 'v1.103.0': new Date(2024, 3, 29), - 'v1.102.0': new Date(2024, 3, 15), - 'v1.99.0': new Date(2024, 2, 20), - 'v1.98.0': new Date(2024, 2, 7), - 'v1.95.0': new Date(2024, 1, 20), - 'v1.94.0': new Date(2024, 0, 31), - 'v1.93.0': new Date(2024, 0, 19), - 'v1.91.0': new Date(2023, 11, 15), - 'v1.90.0': new Date(2023, 11, 7), - 'v1.88.0': new Date(2023, 10, 20), - 'v1.84.0': new Date(2023, 10, 1), - 'v1.83.0': new Date(2023, 9, 28), - 'v1.82.0': new Date(2023, 9, 17), - 'v1.79.0': new Date(2023, 8, 21), - 'v1.76.0': new Date(2023, 7, 29), - 'v1.75.0': new Date(2023, 7, 26), - 'v1.72.0': new Date(2023, 7, 6), - 'v1.71.0': new Date(2023, 6, 29), - 'v1.69.0': new Date(2023, 6, 23), - 'v1.68.0': new Date(2023, 6, 20), - 'v1.67.0': new Date(2023, 6, 14), - 'v1.66.0': new Date(2023, 6, 4), - 'v1.65.0': new Date(2023, 5, 30), - 'v1.63.0': new Date(2023, 5, 24), - 'v1.61.0': new Date(2023, 5, 16), - 'v1.58.0': new Date(2023, 4, 28), - 'v1.57.0': new Date(2023, 4, 23), - 'v1.56.0': new Date(2023, 4, 18), - 'v1.55.0': new Date(2023, 4, 9), - 'v1.54.0': new Date(2023, 3, 18), - 'v1.52.0': new Date(2023, 2, 29), - 'v1.51.0': new Date(2023, 2, 20), - 'v1.48.0': new Date(2023, 1, 21), - 'v1.47.0': new Date(2023, 1, 13), - 'v1.46.0': new Date(2023, 1, 9), - 'v1.43.0': new Date(2023, 1, 3), - 'v1.41.0': new Date(2023, 0, 10), - 'v1.39.0': new Date(2022, 11, 19), - 'v1.36.0': new Date(2022, 10, 20), - 'v1.33.1': new Date(2022, 9, 26), - 'v1.32.0': new Date(2022, 9, 14), - 'v1.27.0': new Date(2022, 8, 6), - 'v1.24.0': new Date(2022, 7, 19), - 'v1.10.0': new Date(2022, 4, 29), - 'v1.7.0': new Date(2022, 3, 24), - 'v1.3.0': new Date(2022, 2, 22), - 'v1.2.0': new Date(2022, 1, 8), -} as const; - -const weirdTags = { - 'v1.41.0': 'v1.41.1_64-dev', - 'v1.39.0': 'v1.39.0_61-dev', - 'v1.36.0': 'v1.36.0_55-dev', - 'v1.33.1': 'v1.33.0_52-dev', - 'v1.32.0': 'v1.32.0_50-dev', - 'v1.27.0': 'v1.27.0_37-dev', - 'v1.24.0': 'v1.24.0_34-dev', - 'v1.10.0': 'v1.10.0_15-dev', - 'v1.7.0': 'v1.7.0_11-dev ', - 'v1.3.0': 'v1.3.0-dev ', - 'v1.2.0': 'v0.2-dev ', -}; - -const title = 'Roadmap'; -const description = 'A list of future plans and goals, as well as past achievements and milestones.'; - -const withLanguage = (date: Date) => (language: string) => date.toLocaleDateString(language); - -type Base = { icon: string; iconColor?: React.CSSProperties['color']; title: string; description: string }; -const withRelease = ({ - icon, - iconColor, - title, - description, - release: version, -}: Base & { release: keyof typeof releases }) => { - return { - icon, - iconColor: iconColor ?? 'gray', - title, - description, - link: { - url: `https://github.com/immich-app/immich/releases/tag/${weirdTags[version] ?? version}`, - text: version, - }, - getDateLabel: withLanguage(releases[version]), - }; -}; - -const roadmap: Item[] = [ - { - done: false, - icon: mdiFlash, - iconColor: 'gold', - title: 'Workflows', - description: 'Automate tasks with workflows', - getDateLabel: () => 'Planned for 2025', - }, - { - done: false, - icon: mdiImageEdit, - iconColor: 'rebeccapurple', - title: 'Basic editor', - description: 'Basic photo editing capabilities', - getDateLabel: () => 'Planned for 2025', - }, - { - done: false, - icon: mdiRocketLaunch, - iconColor: 'indianred', - title: 'Stable release', - description: 'Immich goes stable', - getDateLabel: () => 'Planned for 2025', - }, - { - done: false, - icon: mdiCloudUploadOutline, - iconColor: 'cornflowerblue', - title: 'Better background backups', - description: 'Rework background backups to be more reliable', - getDateLabel: () => 'Planned for 2025', - }, - { - done: false, - icon: mdiCameraBurst, - iconColor: 'rebeccapurple', - title: 'Auto stacking', - description: 'Auto stack burst photos', - getDateLabel: () => 'Planned for 2025', - }, -]; - -const milestones: Item[] = [ - { - icon: mdiStar, - iconColor: 'gold', - title: '70,000 Stars', - description: 'Reached 70K Stars on GitHub!', - getDateLabel: withLanguage(new Date(2025, 6, 9)), - }, - withRelease({ - icon: mdiTableKey, - iconColor: 'gray', - title: 'Fine grained access controls', - description: 'Granular access controls for api keys', - release: 'v1.135.0', - }), - withRelease({ - icon: mdiCast, - iconColor: 'aqua', - title: 'Google Cast (web and mobile)', - description: 'Cast assets to Google Cast/Chromecast compatible devices', - release: 'v1.135.0', - }), - withRelease({ - icon: mdiLockOutline, - iconColor: 'sandybrown', - title: 'Private/locked photos', - description: 'Private assets with extra protections', - release: 'v1.133.0', - }), - withRelease({ - icon: mdiFolderMultiple, - iconColor: 'brown', - title: 'Folders view in the mobile app', - description: 'Browse your photos and videos in their folder structure inside the mobile app', - release: 'v1.130.0', - }), - { - icon: mdiStar, - iconColor: 'gold', - title: '60,000 Stars', - description: 'Reached 60K Stars on GitHub!', - getDateLabel: withLanguage(new Date(2025, 2, 4)), - }, - withRelease({ - icon: mdiTagFaces, - iconColor: 'teal', - title: 'Manual face tagging', - description: - 'Manually tag or remove faces in photos and videos, even when automatic detection misses or misidentifies them.', - release: 'v1.127.0', - }), - withRelease({ - icon: mdiLinkEdit, - iconColor: 'crimson', - title: 'Automatic URL switching', - description: 'The mobile app now supports automatic switching between different server URLs', - release: 'v1.122.0', - }), - withRelease({ - icon: mdiMovieOpenPlayOutline, - iconColor: 'darksalmon', - title: 'Native video player', - description: 'HDR videos are now fully supported using the Immich native video player', - release: 'v1.122.0', - }), - withRelease({ - icon: mdiDatabaseOutline, - iconColor: 'brown', - title: 'Automatic database dumps', - description: 'Database dumps are now integrated into the Immich server', - release: 'v1.120.0', - }), - { - icon: mdiStar, - iconColor: 'gold', - title: '50,000 Stars', - description: 'Reached 50K Stars on GitHub!', - getDateLabel: withLanguage(new Date(2024, 10, 1)), - }, - withRelease({ - icon: mdiFaceRecognition, - title: 'Metadata Face Import', - description: 'Read face metadata in Digikam format during import', - release: 'v1.114.0', - }), - withRelease({ - icon: mdiTagMultiple, - iconColor: 'orange', - title: 'Tags', - description: 'Tag your photos and videos', - release: 'v1.113.0', - }), - withRelease({ - icon: mdiFolderSync, - iconColor: 'green', - title: 'Album sync (mobile)', - description: 'Sync or mirror an album from your phone to the Immich server', - release: 'v1.113.0', - }), - withRelease({ - icon: mdiFolderMultiple, - iconColor: 'brown', - title: 'Folders view', - description: 'Browse your photos and videos in their folder structure', - release: 'v1.113.0', - }), - withRelease({ - icon: mdiPalette, - title: 'Theming (mobile)', - description: 'Pick a primary color for the mobile app', - release: 'v1.112.0', - }), - withRelease({ - icon: mdiStarOutline, - iconColor: 'gold', - title: 'Star rating', - description: 'Rate your photos and videos', - release: 'v1.112.0', - }), - withRelease({ - icon: mdiCrop, - iconColor: 'royalblue', - title: 'Editor (mobile)', - description: 'Crop and rotate on mobile', - release: 'v1.111.0', - }), - withRelease({ - icon: mdiMap, - iconColor: 'green', - title: 'Deploy tiles.immich.cloud', - description: 'Dedicated tile server for Immich', - release: 'v1.111.0', - }), - { - icon: mdiStar, - iconColor: 'gold', - title: '40,000 Stars', - description: 'Reached 40K Stars on GitHub!', - getDateLabel: withLanguage(new Date(2024, 6, 21)), - }, - withRelease({ - icon: mdiShare, - title: 'Deploy my.immich.app', - description: 'Url router for immich links', - release: 'v1.109.0', - }), - withRelease({ - icon: mdiLicense, - iconColor: 'gold', - title: 'Supporter Badge', - description: 'The option to buy Immich to support its development!', - release: 'v1.109.0', - }), - withRelease({ - icon: mdiHistory, - title: 'Versioned documentation', - description: 'View documentation as it was at the time of past releases', - release: 'v1.106.1', - }), - withRelease({ - icon: mdiWeb, - iconColor: 'royalblue', - title: 'Web translations', - description: 'Translate the web application to multiple languages', - release: 'v1.106.1', - }), - withRelease({ - icon: mdiContentDuplicate, - title: 'Similar image detection', - description: "Detect duplicate assets that aren't exactly identical", - release: 'v1.106.1', - }), - withRelease({ - icon: mdiVectorCombine, - title: 'Container consolidation', - description: - 'The microservices container can be run as a worker within the server image, allowing us to remove it from the default stack.', - release: 'v1.106.1', - }), - withRelease({ - icon: mdiPencil, - iconColor: 'saddlebrown', - title: 'Read-write external libraries', - description: 'Edit, update, and delete files in external libraries', - release: 'v1.104.0', - }), - withRelease({ - icon: mdiEmailOutline, - iconColor: 'crimson', - title: 'Email notifications', - description: 'Send emails for important events', - release: 'v1.104.0', - }), - { - icon: mdiHandshakeOutline, - iconColor: 'magenta', - title: 'Immich joins FUTO!', - description: 'Joined Futo and Immich core team goes full-time', - getDateLabel: withLanguage(new Date(2024, 4, 1)), - }, - withRelease({ - icon: mdiEyeOutline, - iconColor: 'darkslategray', - title: 'Read-only albums', - description: 'Share albums with other users as read-only', - release: 'v1.103.0', - }), - withRelease({ - icon: mdiBookmark, - iconColor: 'orangered', - title: 'Permanent URLs (Web)', - description: 'Assets on the web now have permanent URLs', - release: 'v1.103.0', - }), - withRelease({ - icon: mdiStar, - iconColor: 'gold', - title: '30,000 Stars', - description: 'Reached 30K Stars on GitHub!', - release: 'v1.102.0', - }), - withRelease({ - icon: mdiChartBoxMultipleOutline, - iconColor: 'mediumvioletred', - title: 'OpenTelemetry metrics', - description: 'OpenTelemetry metrics for local evaluation and advanced debugging', - release: 'v1.99.0', - }), - withRelease({ - icon: 'immich', - title: 'New logo', - description: 'Immich got its new logo', - release: 'v1.98.0', - }), - withRelease({ - icon: mdiMagnifyScan, - title: 'Search enhancement with advanced filters', - description: 'Advanced search with filters by date, location and more', - release: 'v1.95.0', - }), - withRelease({ - icon: mdiScaleBalance, - iconColor: 'gold', - title: 'AGPL License', - description: 'Immich switches to AGPLv3 license', - release: 'v1.95.0', - }), - withRelease({ - icon: mdiEyeRefreshOutline, - title: 'Library watching', - description: 'Automatically import files in external libraries when the operating system detects changes.', - release: 'v1.94.0', - }), - withRelease({ - icon: mdiExpansionCard, - iconColor: 'green', - title: 'GPU acceleration for machine-learning', - description: 'Hardware acceleration support for Nvidia and Intel devices through CUDA and OpenVINO.', - release: 'v1.94.0', - }), - withRelease({ - icon: mdiAccountGroupOutline, - iconColor: 'gray', - title: '250 unique contributors', - description: '250 amazing people contributed to Immich', - release: 'v1.93.0', - }), - withRelease({ - icon: mdiMatrix, - title: 'Search improvement with pgvecto.rs', - description: 'Moved the search from typesense to pgvecto.rs', - release: 'v1.91.0', - }), - withRelease({ - icon: mdiPencil, - iconColor: 'saddlebrown', - title: 'Edit metadata', - description: "Edit a photo or video's date, time, hours, timezone, and GPS information", - release: 'v1.90.0', - }), - withRelease({ - icon: mdiVectorCombine, - title: 'Container consolidation', - description: - 'The serving of the web app is merged into the server image, allowing us to remove two containers from the stack.', - release: 'v1.88.0', - }), - withRelease({ - icon: mdiBash, - iconColor: 'gray', - title: 'CLI v2', - description: 'Version 2 of the Immich CLI is released, replacing the legacy v1 CLI.', - release: 'v1.88.0', - }), - withRelease({ - icon: mdiForum, - iconColor: 'dodgerblue', - title: 'Activity', - description: 'Comment a photo or a video in a shared album', - release: 'v1.84.0', - }), - withRelease({ - icon: mdiStar, - iconColor: 'gold', - title: '20,000 Stars', - description: 'Reached 20K Stars on GitHub!', - release: 'v1.83.0', - }), - withRelease({ - icon: mdiCameraBurst, - iconColor: 'rebeccapurple', - title: 'Stack assets', - description: 'Manual asset stacking for grouping and hiding related assets in the main timeline.', - release: 'v1.83.0', - }), - withRelease({ - icon: mdiPalette, - iconColor: 'magenta', - title: 'Custom theme', - description: 'Apply your custom CSS for modifying fonts, colors, and styles in the web application.', - release: 'v1.83.0', - }), - withRelease({ - icon: mdiTrashCanOutline, - iconColor: 'brown', - title: 'Trash feature', - description: 'Trash, restore from trash, and automatically empty the recycle bin after 30 days.', - release: 'v1.82.0', - }), - withRelease({ - icon: mdiBookSearchOutline, - title: 'External libraries', - description: 'Automatically import media into Immich based on imports paths and ignore patterns.', - release: 'v1.79.0', - }), - withRelease({ - icon: mdiMap, - iconColor: 'darksalmon', - title: 'Map view (mobile)', - description: 'Heat map implementation in the mobile app.', - release: 'v1.76.0', - }), - withRelease({ - icon: mdiFile, - iconColor: 'lightblue', - title: 'Configuration file', - description: 'Auto-configure an Immich installation via a configuration file.', - release: 'v1.75.0', - }), - withRelease({ - icon: mdiMonitor, - iconColor: 'darkcyan', - title: 'Slideshow mode (web)', - description: 'Start a full-screen slideshow from an Album on the web.', - release: 'v1.75.0', - }), - withRelease({ - icon: mdiServer, - iconColor: 'lightskyblue', - title: 'Hardware transcoding', - description: 'Support hardware acceleration (QuickSync, VAAPI, and Nvidia) for video transcoding.', - release: 'v1.72.0', - }), - withRelease({ - icon: mdiImageAlbum, - iconColor: 'olivedrab', - title: 'View albums via time buckets', - description: 'Upgrade albums to use time buckets, an optimized virtual viewport.', - release: 'v1.72.0', - }), - withRelease({ - icon: mdiImageAlbum, - iconColor: 'olivedrab', - title: 'Album description', - description: 'Save an album description.', - release: 'v1.72.0', - }), - withRelease({ - icon: mdiRotate360, - title: '360° Photos (web)', - description: 'View 360° Photos on the web.', - release: 'v1.71.0', - }), - withRelease({ - icon: mdiMotionPlayOutline, - title: 'Android motion photos', - description: 'Add support for Android Motion Photos.', - release: 'v1.69.0', - }), - withRelease({ - icon: mdiFaceManOutline, - iconColor: 'mistyrose', - title: 'Show/hide faces', - description: 'Add the options to show or hide faces.', - release: 'v1.68.0', - }), - withRelease({ - icon: mdiMerge, - iconColor: 'forestgreen', - title: 'Merge faces', - description: 'Add the ability to merge multiple faces together.', - release: 'v1.67.0', - }), - withRelease({ - icon: mdiImage, - iconColor: 'rebeccapurple', - title: 'Feature photo', - description: 'Add the option to change the feature photo for a person.', - release: 'v1.66.0', - }), - withRelease({ - icon: mdiKeyboardSettingsOutline, - iconColor: 'darkslategray', - title: 'Multi-select via SHIFT', - description: 'Add the option to multi-select while holding SHIFT.', - release: 'v1.66.0', - }), - withRelease({ - icon: mdiImageMultipleOutline, - iconColor: 'rebeccapurple', - title: 'Memories (mobile)', - description: 'View "On this day..." memories in the mobile app.', - release: 'v1.65.0', - }), - withRelease({ - icon: mdiFaceMan, - iconColor: 'mistyrose', - title: 'Facial recognition (mobile)', - description: 'View detected faces in the mobile app.', - release: 'v1.63.0', - }), - withRelease({ - icon: mdiImageMultipleOutline, - iconColor: 'rebeccapurple', - title: 'Memories (web)', - description: 'View pictures taken in past years on this day on the web.', - release: 'v1.61.0', - }), - withRelease({ - icon: mdiCollage, - iconColor: 'deeppink', - title: 'Justified layout (web)', - description: 'Implement justified layout (collage) on the web.', - release: 'v1.61.0', - }), - withRelease({ - icon: mdiRaw, - title: 'RAW file formats', - description: 'Support for RAW file formats.', - release: 'v1.61.0', - }), - withRelease({ - icon: mdiShareAll, - iconColor: 'darkturquoise', - title: 'Partner sharing (mobile)', - description: 'View shared partner photos in the mobile app.', - release: 'v1.58.0', - }), - withRelease({ - icon: mdiFile, - iconColor: 'lightblue', - title: 'XMP sidecar', - description: 'Attach XMP sidecar files to assets.', - release: 'v1.58.0', - }), - withRelease({ - icon: mdiFolder, - iconColor: 'brown', - title: 'Custom storage label', - description: 'Replace the user UUID in the storage template with a custom label.', - release: 'v1.57.0', - }), - withRelease({ - icon: mdiShareCircle, - title: 'Partner sharing', - description: 'Share your entire collection with another user.', - release: 'v1.56.0', - }), - withRelease({ - icon: mdiFaceMan, - iconColor: 'mistyrose', - title: 'Facial recognition', - description: 'Detect faces in pictures and cluster them together as people, which can be named.', - release: 'v1.56.0', - }), - withRelease({ - icon: mdiMap, - iconColor: 'darksalmon', - title: 'Map view (web)', - description: 'View a global map, with clusters of photos based on corresponding GPS data.', - release: 'v1.55.0', - }), - withRelease({ - icon: mdiDevices, - iconColor: 'slategray', - title: 'Manage auth devices', - description: 'Manage logged-in devices and revoke access from User Settings.', - release: 'v1.55.0', - }), - withRelease({ - icon: mdiStar, - iconColor: 'gold', - title: '10,000 Stars', - description: 'Reached 10K stars on GitHub!', - release: 'v1.54.0', - }), - withRelease({ - icon: mdiText, - title: 'Asset descriptions', - description: 'Save an asset description', - release: 'v1.54.0', - }), - withRelease({ - icon: mdiArchiveOutline, - title: 'Archiving', - description: 'Remove assets from the main timeline by archiving them.', - release: 'v1.54.0', - }), - withRelease({ - icon: mdiDevices, - iconColor: 'slategray', - title: 'Responsive web app', - description: 'Optimize the web app for small screen.', - release: 'v1.54.0', - }), - withRelease({ - icon: mdiFileSearch, - iconColor: 'brown', - title: 'Search by metadata', - description: 'Search images by filename, description, tagged people, make, model, and other metadata.', - release: 'v1.52.0', - }), - withRelease({ - icon: mdiImageSearch, - iconColor: 'rebeccapurple', - title: 'CLIP search', - description: 'Search images with free-form text like "Sunset at the beach".', - release: 'v1.51.0', - }), - withRelease({ - icon: mdiMagnify, - iconColor: 'lightblue', - title: 'Explore page', - description: 'View tagged places, object, and people.', - release: 'v1.51.0', - }), - withRelease({ - icon: mdiAppleIos, - title: 'iOS background uploads', - description: 'Automatically backup pictures in the background on iOS.', - release: 'v1.48.0', - }), - withRelease({ - icon: mdiMotionPlayOutline, - title: 'Auto-Link live photos', - description: 'Automatically link live photos, even when uploaded as separate files.', - release: 'v1.48.0', - }), - withRelease({ - icon: mdiMaterialDesign, - iconColor: 'blue', - title: 'Material design 3 (mobile)', - description: 'Upgrade the mobile app to Material Design 3.', - release: 'v1.47.0', - }), - withRelease({ - icon: mdiHeart, - iconColor: 'red', - title: 'Favorites (mobile)', - description: 'Show favorites on the mobile app.', - release: 'v1.46.0', - }), - withRelease({ - icon: mdiCakeVariant, - iconColor: 'deeppink', - title: 'Immich turns 1', - description: 'Immich is officially one year old.', - release: 'v1.43.0', - }), - withRelease({ - icon: mdiHeart, - iconColor: 'red', - title: 'Favorites page (web)', - description: 'Favorite and view favorites on the web.', - release: 'v1.43.0', - }), - withRelease({ - icon: mdiShareCircle, - title: 'Public share links', - description: 'Share photos and albums publicly via a shared link.', - release: 'v1.41.0', - }), - withRelease({ - icon: mdiFolder, - iconColor: 'lightblue', - title: 'User-defined storage structure', - description: 'Support custom storage structures.', - release: 'v1.39.0', - }), - withRelease({ - icon: mdiMotionPlayOutline, - title: 'iOS live photos', - description: 'Backup and display iOS Live Photos.', - release: 'v1.36.0', - }), - withRelease({ - icon: mdiSecurity, - iconColor: 'green', - title: 'OAuth integration', - description: 'Support OAuth2 and OIDC capable identity providers.', - release: 'v1.36.0', - }), - withRelease({ - icon: mdiWeb, - iconColor: 'royalblue', - title: 'Documentation site', - description: 'Release an official documentation website.', - release: 'v1.33.1', - }), - withRelease({ - icon: mdiThemeLightDark, - iconColor: 'slategray', - title: 'Dark mode (web)', - description: 'Dark mode on the web.', - release: 'v1.32.0', - }), - withRelease({ - icon: mdiPanVertical, - title: 'Virtual scrollbar (web)', - description: 'View the main timeline with a virtual scrollbar, allowing to jump to any point in time, instantly.', - release: 'v1.27.0', - }), - withRelease({ - icon: mdiCheckAll, - iconColor: 'green', - title: 'Checksum duplication check', - description: 'Enforce per user sha1 checksum uniqueness.', - release: 'v1.27.0', - }), - withRelease({ - icon: mdiAndroid, - iconColor: 'greenyellow', - title: 'Android background backup', - description: 'Automatic backup in the background on Android.', - release: 'v1.24.0', - }), - withRelease({ - icon: mdiAccountGroup, - iconColor: 'gray', - title: 'Admin portal', - description: 'Manage users and admin settings from the web.', - release: 'v1.10.0', - }), - withRelease({ - icon: mdiShareCircle, - title: 'Album sharing', - description: 'Share albums with other users.', - release: 'v1.7.0', - }), - withRelease({ - icon: mdiTag, - iconColor: 'coral', - title: 'Image tagging', - description: 'Tag images with custom values.', - release: 'v1.7.0', - }), - withRelease({ - icon: mdiImage, - iconColor: 'rebeccapurple', - title: 'View exif', - description: 'View metadata about assets.', - release: 'v1.3.0', - }), - withRelease({ - icon: mdiCheckboxMarked, - iconColor: 'green', - title: 'Multi select', - description: 'Select and execute actions on multiple assets at the same time.', - release: 'v1.2.0', - }), - withRelease({ - icon: mdiVideo, - iconColor: 'slategray', - title: 'Video player', - description: 'Play videos in the web and on mobile.', - release: 'v1.2.0', - }), - { - icon: mdiPartyPopper, - iconColor: 'deeppink', - title: 'First commit', - description: 'First commit on GitHub, Immich is born.', - getDateLabel: withLanguage(new Date(2022, 1, 3)), - }, -]; - -export default function MilestonePage(): JSX.Element { - return ( - -
-

- {title} -

-

{description}

-
- -
-
-
- ); -} diff --git a/docs/static/.well-known/security.txt b/docs/static/.well-known/security.txt deleted file mode 100644 index 5a8414c3e2..0000000000 --- a/docs/static/.well-known/security.txt +++ /dev/null @@ -1,5 +0,0 @@ -Policy: https://github.com/immich-app/immich/blob/main/SECURITY.md -Contact: mailto:security@immich.app -Preferred-Languages: en -Expires: 2026-05-01T23:59:00.000Z -Canonical: https://immich.app/.well-known/security.txt diff --git a/docs/static/_redirects b/docs/static/_redirects index 7b01d1e3bb..0a97d0eb6e 100644 --- a/docs/static/_redirects +++ b/docs/static/_redirects @@ -1,34 +1,32 @@ -/docs /docs/overview/welcome 307 -/docs/ /docs/overview/welcome 307 -/docs/mobile-app-beta-program /docs/features/mobile-app 307 -/docs/contribution-guidelines /docs/overview/support-the-project#contributing 307 -/docs/install /docs/install/docker-compose 307 -/docs/installation/one-step-installation /docs/install/script 307 -/docs/installation/portainer-installation /docs/install/portainer 307 -/docs/installation/recommended-installation /docs/install/docker-compose 307 -/docs/installation/unraid /docs/install/unraid 307 -/docs/installation/requirements /docs/install/requirements 307 -/docs/overview/logo-meaning /docs/overview/logo 307 -/docs/overview/technology-stack /docs/developer/architecture 307 -/docs/usage/automatic-backup /docs/features/automatic-backup 307 -/docs/usage/bulk-upload /docs/features/command-line-interface 307 -/docs/features/bulk-upload /docs/features/command-line-interface 307 -/docs/usage/oauth /docs/administration/oauth 307 -/docs/usage/post-installation /docs/install/post-install 307 -/docs/usage/update /docs/install/docker-compose#step-4---upgrading 307 -/docs/usage/server-commands /docs/administration/server-commands 307 -/docs/features/jobs /docs/administration/jobs 307 -/docs/features/oauth /docs/administration/oauth 307 -/docs/features/password-login /docs/administration/password-login 307 -/docs/features/server-commands /docs/administration/server-commands 307 -/docs/features/storage-template /docs/administration/storage-template 307 -/docs/features/user-management /docs/administration/user-management 307 -/docs/developer/contributing /docs/developer/pr-checklist 307 -/docs/guides/machine-learning /docs/guides/remote-machine-learning 307 -/docs/administration/password-login /docs/administration/system-settings 307 -/docs/features/search /docs/features/searching 307 -/docs/features/smart-search /docs/features/searching 307 -/docs/guides/api-album-sync /docs/community-projects 307 -/docs/guides/remove-offline-files /docs/community-projects 307 -/milestones /roadmap 307 -/docs/overview/introduction /docs/overview/welcome 307 +/ /overview/welcome 307 +/mobile-app-beta-program /features/mobile-app 307 +/contribution-guidelines /overview/support-the-project#contributing 307 +/install /install/docker-compose 307 +/installation/one-step-installation /install/script 307 +/installation/portainer-installation /install/portainer 307 +/installation/recommended-installation /install/docker-compose 307 +/installation/unraid /install/unraid 307 +/installation/requirements /install/requirements 307 +/overview/logo-meaning /overview/logo 307 +/overview/technology-stack /developer/architecture 307 +/usage/automatic-backup /features/automatic-backup 307 +/usage/bulk-upload /features/command-line-interface 307 +/features/bulk-upload /features/command-line-interface 307 +/usage/oauth /administration/oauth 307 +/usage/post-installation /install/post-install 307 +/usage/update /install/docker-compose#step-4---upgrading 307 +/usage/server-commands /administration/server-commands 307 +/features/jobs /administration/jobs 307 +/features/oauth /administration/oauth 307 +/features/password-login /administration/password-login 307 +/features/server-commands /administration/server-commands 307 +/features/storage-template /administration/storage-template 307 +/features/user-management /administration/user-management 307 +/developer/contributing /developer/pr-checklist 307 +/guides/machine-learning /guides/remote-machine-learning 307 +/administration/password-login /administration/system-settings 307 +/features/search /features/searching 307 +/features/smart-search /features/searching 307 +/guides/api-album-sync /community-projects 307 +/guides/remove-offline-files /community-projects 307 +/overview/introduction /overview/welcome 307 diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index 4c678b7faa..2bee40eae7 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -1,234 +1,291 @@ [ { "label": "v1.143.1", - "url": "https://v1.143.1.archive.immich.app" + "url": "https://docs.v1.143.1.archive.immich.app" }, { "label": "v1.143.0", - "url": "https://v1.143.0.archive.immich.app" + "url": "https://v1.143.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.142.1", - "url": "https://v1.142.1.archive.immich.app" + "url": "https://v1.142.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.142.0", - "url": "https://v1.142.0.archive.immich.app" + "url": "https://v1.142.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.141.1", - "url": "https://v1.141.1.archive.immich.app" + "url": "https://v1.141.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.141.0", - "url": "https://v1.141.0.archive.immich.app" + "url": "https://v1.141.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.140.1", - "url": "https://v1.140.1.archive.immich.app" + "url": "https://v1.140.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.140.0", - "url": "https://v1.140.0.archive.immich.app" + "url": "https://v1.140.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.139.4", - "url": "https://v1.139.4.archive.immich.app" + "url": "https://v1.139.4.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.139.3", - "url": "https://v1.139.3.archive.immich.app" + "url": "https://v1.139.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.139.2", - "url": "https://v1.139.2.archive.immich.app" + "url": "https://v1.139.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.138.1", - "url": "https://v1.138.1.archive.immich.app" + "url": "https://v1.138.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.138.0", - "url": "https://v1.138.0.archive.immich.app" + "url": "https://v1.138.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.137.3", - "url": "https://v1.137.3.archive.immich.app" + "url": "https://v1.137.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.137.2", - "url": "https://v1.137.2.archive.immich.app" + "url": "https://v1.137.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.137.1", - "url": "https://v1.137.1.archive.immich.app" + "url": "https://v1.137.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.137.0", - "url": "https://v1.137.0.archive.immich.app" + "url": "https://v1.137.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.136.0", - "url": "https://v1.136.0.archive.immich.app" + "url": "https://v1.136.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.135.3", - "url": "https://v1.135.3.archive.immich.app" + "url": "https://v1.135.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.135.2", - "url": "https://v1.135.2.archive.immich.app" + "url": "https://v1.135.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.135.1", - "url": "https://v1.135.1.archive.immich.app" + "url": "https://v1.135.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.135.0", - "url": "https://v1.135.0.archive.immich.app" + "url": "https://v1.135.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.134.0", - "url": "https://v1.134.0.archive.immich.app" + "url": "https://v1.134.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.133.1", - "url": "https://v1.133.1.archive.immich.app" + "url": "https://v1.133.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.133.0", - "url": "https://v1.133.0.archive.immich.app" + "url": "https://v1.133.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.132.3", - "url": "https://v1.132.3.archive.immich.app" + "url": "https://v1.132.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.131.3", - "url": "https://v1.131.3.archive.immich.app" + "url": "https://v1.131.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.130.3", - "url": "https://v1.130.3.archive.immich.app" + "url": "https://v1.130.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.129.0", - "url": "https://v1.129.0.archive.immich.app" + "url": "https://v1.129.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.128.0", - "url": "https://v1.128.0.archive.immich.app" + "url": "https://v1.128.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.127.0", - "url": "https://v1.127.0.archive.immich.app" + "url": "https://v1.127.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.126.1", - "url": "https://v1.126.1.archive.immich.app" + "url": "https://v1.126.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.125.7", - "url": "https://v1.125.7.archive.immich.app" + "url": "https://v1.125.7.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.124.2", - "url": "https://v1.124.2.archive.immich.app" + "url": "https://v1.124.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.123.0", - "url": "https://v1.123.0.archive.immich.app" + "url": "https://v1.123.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.122.3", - "url": "https://v1.122.3.archive.immich.app" + "url": "https://v1.122.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.121.0", - "url": "https://v1.121.0.archive.immich.app" + "url": "https://v1.121.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.120.2", - "url": "https://v1.120.2.archive.immich.app" + "url": "https://v1.120.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.119.1", - "url": "https://v1.119.1.archive.immich.app" + "url": "https://v1.119.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.118.2", - "url": "https://v1.118.2.archive.immich.app" + "url": "https://v1.118.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.117.0", - "url": "https://v1.117.0.archive.immich.app" + "url": "https://v1.117.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.116.2", - "url": "https://v1.116.2.archive.immich.app" + "url": "https://v1.116.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.115.0", - "url": "https://v1.115.0.archive.immich.app" + "url": "https://v1.115.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.114.0", - "url": "https://v1.114.0.archive.immich.app" + "url": "https://v1.114.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.113.1", - "url": "https://v1.113.1.archive.immich.app" + "url": "https://v1.113.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.112.1", - "url": "https://v1.112.1.archive.immich.app" + "url": "https://v1.112.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.111.0", - "url": "https://v1.111.0.archive.immich.app" + "url": "https://v1.111.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.110.0", - "url": "https://v1.110.0.archive.immich.app" + "url": "https://v1.110.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.109.2", - "url": "https://v1.109.2.archive.immich.app" + "url": "https://v1.109.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.108.0", - "url": "https://v1.108.0.archive.immich.app" + "url": "https://v1.108.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.107.2", - "url": "https://v1.107.2.archive.immich.app" + "url": "https://v1.107.2.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.106.4", - "url": "https://v1.106.4.archive.immich.app" + "url": "https://v1.106.4.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.105.1", - "url": "https://v1.105.1.archive.immich.app" + "url": "https://v1.105.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.104.0", - "url": "https://v1.104.0.archive.immich.app" + "url": "https://v1.104.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.103.1", - "url": "https://v1.103.1.archive.immich.app" + "url": "https://v1.103.1.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.102.3", - "url": "https://v1.102.3.archive.immich.app" + "url": "https://v1.102.3.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.101.0", - "url": "https://v1.101.0.archive.immich.app" + "url": "https://v1.101.0.archive.immich.app", + "rootPath": "/docs" }, { "label": "v1.100.0", - "url": "https://v1.100.0.archive.immich.app" + "url": "https://v1.100.0.archive.immich.app", + "rootPath": "/docs" } ] diff --git a/misc/release/archive-version.js b/misc/release/archive-version.js index 3ef4f58b1e..1a66963dad 100755 --- a/misc/release/archive-version.js +++ b/misc/release/archive-version.js @@ -10,7 +10,7 @@ if (!nextVersion) { const filename = './docs/static/archived-versions.json'; const oldVersions = JSON.parse(readFileSync(filename)); const newVersions = [ - { label: `v${nextVersion}`, url: `https://v${nextVersion}.archive.immich.app` }, + { label: `v${nextVersion}`, url: `https://docs.v${nextVersion}.archive.immich.app` }, ...oldVersions, ]; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7032720c81..75e1e5808d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -149,9 +149,6 @@ importers: docusaurus-lunr-search: specifier: ^3.3.2 version: 3.6.0(@docusaurus/core@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - docusaurus-preset-openapi: - specifier: ^0.7.5 - version: 0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2) lunr: specifier: ^2.3.9 version: 2.3.9 @@ -2506,17 +2503,10 @@ packages: resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@exodus/schemasafe@1.3.0': - resolution: {integrity: sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==} - '@faker-js/faker@10.0.0': resolution: {integrity: sha512-UollFEUkVXutsaP+Vndjxar40Gs5JL2HeLcl8xO1QAjJgOdhc3OmBFWyEylS+RddWaaBiAzH+5/17PLQJwDiLw==} engines: {node: ^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0, npm: '>=10'} - '@faker-js/faker@5.5.3': - resolution: {integrity: sha512-R11tGE6yIFwqpaIqcfkcg7AICXzFg14+5h5v0TfF/9+RMDL6jhzCy/pxHVOfbALGdtVYdt6JdR21tuxEgl34dw==} - deprecated: Please update to a newer version. - '@fig/complete-commander@3.2.0': resolution: {integrity: sha512-1Holl3XtRiANVKURZwgpjCnPuV4RsHp+XC0MhgvyAX/avQwj7F2HUItYOvGi/bXjJCkEzgBZmVfCr0HBA+q+Bw==} peerDependencies: @@ -3007,16 +2997,6 @@ packages: '@microsoft/tsdoc@0.15.1': resolution: {integrity: sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==} - '@monaco-editor/loader@1.5.0': - resolution: {integrity: sha512-hKoGSM+7aAc7eRTRjpqAZucPmoNOC4UUbknb/VNoTkEIkCPhqV8LfbsgM1webRM7S/z21eHEx9Fkwx8Z/C/+Xw==} - - '@monaco-editor/react@4.7.0': - resolution: {integrity: sha512-cyzXQCtO47ydzxpQtCGSQGOC8Gk3ZUeBXFAxD+CWXYFo5OqZyZUonFl0DwUlTyAfRHntBfw2p3w4s9R6oe1eCA==} - peerDependencies: - monaco-editor: '>= 0.25.0 < 1' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3': resolution: {integrity: sha512-QZHtlVgbAdy2zAqNA9Gu1UpIuI8Xvsd1v8ic6B2pZmeFnFcMWiPLfWXh7TVw4eGEZ/C9TH281KwhVoeQUKbyjw==} cpu: [arm64] @@ -3634,17 +3614,6 @@ packages: peerDependencies: react: ^18.0 || ^19.0 || ^19.0.0-rc - '@reduxjs/toolkit@1.9.7': - resolution: {integrity: sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==} - peerDependencies: - react: ^16.9.0 || ^17.0.0 || ^18 - react-redux: ^7.2.1 || ^8.0.2 - peerDependenciesMeta: - react: - optional: true - react-redux: - optional: true - '@rollup/pluginutils@5.3.0': resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} engines: {node: '>=14.0.0'} @@ -4457,9 +4426,6 @@ packages: '@types/history@4.7.11': resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} - '@types/hoist-non-react-statics@3.3.6': - resolution: {integrity: sha512-lPByRJUer/iN/xa4qpyL0qmL11DqNW81iU/IG1S3uvRUq4oKagz8VCxZjiWkumgt66YT3vOdDgZ0o32sGKtCEw==} - '@types/html-minifier-terser@6.1.0': resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} @@ -4595,9 +4561,6 @@ packages: '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react-redux@7.1.34': - resolution: {integrity: sha512-GdFaVjEbYv4Fthm2ZLvj1VSCedV7TqE5y1kNwnjSdBOTXuRSgowux6J8TAct15T3CKBr63UMk+2CO7ilRhyrAQ==} - '@types/react-router-config@5.0.11': resolution: {integrity: sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==} @@ -4911,14 +4874,6 @@ packages: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} - ajv-draft-04@1.0.0: - resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} - peerDependencies: - ajv: ^8.5.0 - peerDependenciesMeta: - ajv: - optional: true - ajv-formats@2.1.1: resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -4948,9 +4903,6 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - ajv@8.11.0: - resolution: {integrity: sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==} - ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} @@ -5087,12 +5039,6 @@ packages: async@0.2.10: resolution: {integrity: sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==} - async@3.2.2: - resolution: {integrity: sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g==} - - async@3.2.4: - resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - async@3.2.6: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} @@ -5338,9 +5284,6 @@ packages: resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} engines: {node: '>= 0.4'} - call-me-maybe@1.0.2: - resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} - callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -5411,10 +5354,6 @@ packages: chardet@2.1.0: resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} - charset@1.0.1: - resolution: {integrity: sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==} - engines: {node: '>=4.0.0'} - check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -5532,10 +5471,6 @@ packages: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} - clsx@1.2.1: - resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} - engines: {node: '>=6'} - clsx@2.1.1: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} engines: {node: '>=6'} @@ -5642,12 +5577,6 @@ packages: resolution: {integrity: sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==} engines: {node: '>= 0.8.0'} - compute-gcd@1.2.1: - resolution: {integrity: sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==} - - compute-lcm@1.1.2: - resolution: {integrity: sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -5789,9 +5718,6 @@ packages: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - crypto-js@4.2.0: - resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} - crypto-random-string@4.0.0: resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} engines: {node: '>=12'} @@ -6086,10 +6012,6 @@ packages: detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} - detect-package-manager@3.0.2: - resolution: {integrity: sha512-8JFjJHutStYrfWwzfretQoyNGoZVW1Fsrp4JO9spa7h/fBfwgTMEIy4/LBzRDGsxwVPHU0q+T9YvwLDJoOApLQ==} - engines: {node: '>=12'} - detect-port@1.6.1: resolution: {integrity: sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q==} engines: {node: '>= 4.0.0'} @@ -6151,31 +6073,6 @@ packages: react: ^16.8.4 || ^17 || ^18 || ^19 react-dom: ^16.8.4 || ^17 || ^18 || ^19 - docusaurus-plugin-openapi@0.7.6: - resolution: {integrity: sha512-LR8DI0gO9WFy8K+r0xrVgqDkKKA9zQtDgOnX9CatP3I3Oz5lKegfTJM2fVUIp5m25elzHL+vVKNHS12Jg7sWVA==} - engines: {node: '>=18'} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - - docusaurus-plugin-proxy@0.7.6: - resolution: {integrity: sha512-MgjzMEsQOHMljwQGglXXoGjQvs0v1DklhRgzqNLKFwpHB9xLWJZ0KQ3GgbPerW/2vy8tWGJeVhKHy5cPrmweUw==} - engines: {node: '>=14'} - - docusaurus-preset-openapi@0.7.6: - resolution: {integrity: sha512-QnArH/3X0lePB7667FyNK3EeTS8ZP8V2PQxz5m+3BMO2kIzdXDwfTIQ37boB0BTqsDfUE0yCWTVjB0W/BA1UXA==} - engines: {node: '>=18'} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - - docusaurus-theme-openapi@0.7.6: - resolution: {integrity: sha512-euoEh8tYX/ssQcMQxBOxt3wPttz3zvPu0l5lSe6exiIwMrORB4O2b8XRB7fVa/awF7xzdIkKHMH55uc5zVOKYA==} - engines: {node: '>=18'} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - dom-accessibility-api@0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} @@ -6344,9 +6241,6 @@ packages: es6-iterator@2.0.3: resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} - es6-promise@3.3.1: - resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} - es6-symbol@3.1.4: resolution: {integrity: sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==} engines: {node: '>=0.12'} @@ -6698,10 +6592,6 @@ packages: resolution: {integrity: sha512-ek5xNX2YBYlXhiUXui3D/BXa3LdqPmoLJ7rqEx2bKJ7EAUEfmXgW0Das7Dc6Nr9MvqaOnIqiPV0mZk/r/UpNAg==} engines: {node: '>=20'} - file-type@3.9.0: - resolution: {integrity: sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==} - engines: {node: '>=0.10.0'} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -6759,9 +6649,6 @@ packages: debug: optional: true - foreach@2.0.6: - resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} - foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} @@ -6785,9 +6672,6 @@ packages: resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} engines: {node: '>=0.4.x'} - formidable@2.1.5: - resolution: {integrity: sha512-Oz5Hwvwak/DCaXVVUtPn4oLMLLy1CdclLKO1LFgU7XzDpVMUU5UjlSLpGMocyQNNk8F6IJW9M/YdooSn2MRI+Q==} - formidable@3.5.4: resolution: {integrity: sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==} engines: {node: '>=14.0.0'} @@ -6901,10 +6785,6 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} - get-stdin@5.0.1: - resolution: {integrity: sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA==} - engines: {node: '>=0.12.0'} - get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -6990,9 +6870,6 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphlib@2.1.8: - resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==} - gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -7061,9 +6938,6 @@ packages: hast-util-parse-selector@2.2.5: resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} - hast-util-parse-selector@3.1.1: - resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} - hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} @@ -7097,9 +6971,6 @@ packages: hastscript@6.0.0: resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} - hastscript@7.2.0: - resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} - hastscript@9.0.1: resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==} @@ -7219,12 +7090,6 @@ packages: resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} engines: {node: '>=8.0.0'} - http-reasons@0.1.0: - resolution: {integrity: sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==} - - http2-client@1.3.5: - resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==} - http2-wrapper@2.2.1: resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==} engines: {node: '>=10.19.0'} @@ -7286,9 +7151,6 @@ packages: immediate@3.3.0: resolution: {integrity: sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==} - immer@9.0.21: - resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} - import-fresh@3.3.1: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} @@ -7344,10 +7206,6 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} - interpret@1.4.0: - resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} - engines: {node: '>= 0.10'} - intl-messageformat@10.7.16: resolution: {integrity: sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug==} @@ -7652,25 +7510,6 @@ packages: json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - json-pointer@0.6.2: - resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==} - - json-refs@3.0.15: - resolution: {integrity: sha512-0vOQd9eLNBL18EGl5yYaO44GhixmImes2wiYn9Z3sag3QnehWrYWlB9AFtMxCL2Bj3fyxgDYkxGFEU/chlYssw==} - engines: {node: '>=0.8'} - hasBin: true - - json-schema-compare@0.2.2: - resolution: {integrity: sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==} - - json-schema-merge-allof@0.8.1: - resolution: {integrity: sha512-CTUKmIlPJbsWfzRRnOXz+0MjIqvnleIXwFTzz+t9T86HnYX/Rozria6ZVGLktAU9e+NygNljveP+yxqtQp/Q4w==} - engines: {node: '>=12.0.0'} - - json-schema-resolve-allof@1.5.0: - resolution: {integrity: sha512-Jgn6BQGSLDp3D7bTYrmCbP/p7SRFz5BfpeEJ9A7sXuVADMc14aaDN1a49zqk9D26wwJlcNvjRpT63cz1VgFZeg==} - hasBin: true - json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -7845,10 +7684,6 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - liquid-json@0.3.1: - resolution: {integrity: sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==} - engines: {node: '>=4'} - load-esm@1.0.2: resolution: {integrity: sha512-nVAvWk/jeyrWyXEAs84mpQCYccxRqgKY4OznLuJhJCa0XsPSfdOIr2zvBZEj3IHEHbX97jjscKRRV539bW0Gpw==} engines: {node: '>=13.2.0'} @@ -8012,11 +7847,6 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} - marked@11.2.0: - resolution: {integrity: sha512-HR0m3bvu0jAPYiIvLUUQtdg1g6D247//lvcekpHO1WMvbwDlwSkZAX9Lw4F4YHE1T0HaaNve0tuAWuV1UJ6vtw==} - engines: {node: '>= 18'} - hasBin: true - marked@7.0.4: resolution: {integrity: sha512-t8eP0dXRJMtMvBojtkcsA7n48BkauktUKzfkPSCq85ZMTJ0v76Rke4DYz01omYpPTUh4p/f7HePgRo3ebG8+QQ==} engines: {node: '>= 16'} @@ -8264,9 +8094,6 @@ packages: resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} engines: {node: '>= 0.6'} - mime-format@2.0.1: - resolution: {integrity: sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==} - mime-types@2.1.18: resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==} engines: {node: '>= 0.6'} @@ -8411,9 +8238,6 @@ packages: module-details-from-path@1.0.4: resolution: {integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==} - monaco-editor@0.31.1: - resolution: {integrity: sha512-FYPwxGZAeP6mRRyrr5XTGHD9gRXVjy7GUzF4IPChnyt3fS5WrNxIkS8DNujWf6EQy0Zlzpxw8oTVE+mWI2/D1Q==} - moo@0.5.2: resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==} @@ -8472,9 +8296,6 @@ packages: engines: {node: ^18 || >=20} hasBin: true - native-promise-only@0.8.1: - resolution: {integrity: sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==} - natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -8497,10 +8318,6 @@ packages: neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - neotraverse@0.6.15: - resolution: {integrity: sha512-HZpdkco+JeXq0G+WWpMJ4NsX3pqb5O7eR9uGz3FfoFt+LYzU8iRWp49nJtud6hsDoywM8tIrDo3gjgmOqJA8LA==} - engines: {node: '>= 10'} - nest-commander@3.19.1: resolution: {integrity: sha512-Pn6xcMeSnidlzZozNLnbe7P4TqXL7g0JuxqTAtJ89KT4S63ntJZKtRU6g/56h/aHUQa+m98j/c9OxBSduK7EPg==} peerDependencies: @@ -8555,10 +8372,6 @@ packages: resolution: {integrity: sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==} engines: {node: '>=18'} - node-fetch-h2@2.3.0: - resolution: {integrity: sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==} - engines: {node: 4.x || >=6.0.0} - node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -8585,9 +8398,6 @@ packages: engines: {node: ^18.17.0 || >=20.5.0} hasBin: true - node-readfiles@0.2.0: - resolution: {integrity: sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==} - node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -8655,26 +8465,6 @@ packages: engines: {node: ^14.16.0 || >=16.10.0} hasBin: true - oas-kit-common@1.0.8: - resolution: {integrity: sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==} - - oas-linter@3.2.2: - resolution: {integrity: sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==} - - oas-resolver-browser@2.5.6: - resolution: {integrity: sha512-Jw5elT/kwUJrnGaVuRWe1D7hmnYWB8rfDDjBnpQ+RYY/dzAewGXeTexXzt4fGEo6PUE4eqKqPWF79MZxxvMppA==} - hasBin: true - - oas-resolver@2.5.6: - resolution: {integrity: sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==} - hasBin: true - - oas-schema-walker@1.1.5: - resolution: {integrity: sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==} - - oas-validator@5.0.8: - resolution: {integrity: sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==} - oauth4webapi@3.8.1: resolution: {integrity: sha512-olkZDELNycOWQf9LrsELFq8n05LwJgV8UkrS0cburk6FOwf8GvLam+YB+Uj5Qvryee+vwWOfQVeI5Vm0MVg7SA==} @@ -8730,11 +8520,6 @@ packages: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} - openapi-to-postmanv2@4.25.0: - resolution: {integrity: sha512-sIymbkQby0gzxt2Yez8YKB6hoISEel05XwGwNrAhr6+vxJWXNxkmssQc/8UEtVkuJ9ZfUXLkip9PYACIpfPDWg==} - engines: {node: '>=8'} - hasBin: true - opener@1.5.2: resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} hasBin: true @@ -8856,9 +8641,6 @@ packages: pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -8878,9 +8660,6 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} - path-loader@1.0.12: - resolution: {integrity: sha512-n7oDG8B+k/p818uweWrOixY9/Dsr89o2TkCm6tOTex3fpdo2+BFDgR+KpB37mGKBRsBAlR8CIJMFN0OEy/7hIQ==} - path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -8915,9 +8694,6 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - path@0.12.7: - resolution: {integrity: sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==} - pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} @@ -9496,18 +9272,6 @@ packages: resolution: {integrity: sha512-Jtc2612XINuBjIl/QTWsV5UvE8UHuNblcO3vVADSrKsrc6RqGX6lOW1cEo3CM2v0XG4Nat8nI+YM7/f26VxXLw==} engines: {node: '>=12'} - postman-code-generators@1.14.2: - resolution: {integrity: sha512-qZAyyowfQAFE4MSCu2KtMGGQE/+oG1JhMZMJNMdZHYCSfQiVVeKxgk3oI4+KJ3d1y5rrm2D6C6x+Z+7iyqm+fA==} - engines: {node: '>=12'} - - postman-collection@4.5.0: - resolution: {integrity: sha512-152JSW9pdbaoJihwjc7Q8lc3nPg/PC9lPTHdMk7SHnHhu/GBJB7b2yb9zG7Qua578+3PxkQ/HYBuXpDSvsf7GQ==} - engines: {node: '>=10'} - - postman-url-encoder@3.0.5: - resolution: {integrity: sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==} - engines: {node: '>=10'} - potpack@1.0.2: resolution: {integrity: sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==} @@ -9744,24 +9508,9 @@ packages: react-loadable: '*' webpack: '>=4.41.1 || 5.x' - react-magic-dropzone@1.0.1: - resolution: {integrity: sha512-0BIROPARmXHpk4AS3eWBOsewxoM5ndk2psYP/JmbCq8tz3uR2LIV1XiroZ9PKrmDRMctpW+TvsBCtWasuS8vFA==} - react-promise-suspense@0.3.4: resolution: {integrity: sha512-I42jl7L3Ze6kZaq+7zXWSunBa3b1on5yfvUW6Eo/3fFOj6dZ5Bqmcd264nJbTK/gn1HjjILAjSwnZbV4RpSaNQ==} - react-redux@7.2.9: - resolution: {integrity: sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==} - peerDependencies: - react: ^16.8.3 || ^17 || ^18 - react-dom: '*' - react-native: '*' - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - react-router-config@5.1.1: resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==} peerDependencies: @@ -9811,10 +9560,6 @@ packages: resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} engines: {node: '>= 14.18.0'} - rechoir@0.6.2: - resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} - engines: {node: '>= 0.10'} - recma-build-jsx@1.0.0: resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} @@ -9839,29 +9584,9 @@ packages: resolution: {integrity: sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==} engines: {node: '>=4'} - redux-devtools-extension@2.13.9: - resolution: {integrity: sha512-cNJ8Q/EtjhQaZ71c8I9+BPySIBVEKssbPpskBfsXqb8HJ002A3KRVHfeRzwRo6mGPqsm7XuHTqNSNeS1Khig0A==} - deprecated: Package moved to @redux-devtools/extension. - peerDependencies: - redux: ^3.1.0 || ^4.0.0 - - redux-thunk@2.4.2: - resolution: {integrity: sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==} - peerDependencies: - redux: ^4 - - redux@4.2.1: - resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} - reflect-metadata@0.2.2: resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} - refractor@4.9.0: - resolution: {integrity: sha512-nEG1SPXFoGGx+dcjftjv8cAjEusIh6ED1xhf5DG3C0x/k+rmZ2duKnc3QLpt6qeHv5fPb8uwN3VWN2BT7fr3Og==} - - reftools@1.1.9: - resolution: {integrity: sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==} - regenerate-unicode-properties@10.2.0: resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} engines: {node: '>=4'} @@ -9958,9 +9683,6 @@ packages: requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - reselect@4.1.8: - resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} - resolve-alpn@1.2.1: resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} @@ -10138,11 +9860,6 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} - engines: {node: '>=10'} - hasBin: true - semver@7.7.2: resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} engines: {node: '>=10'} @@ -10217,29 +9934,6 @@ packages: resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} engines: {node: '>= 0.4'} - shelljs@0.8.5: - resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} - engines: {node: '>=4'} - hasBin: true - - should-equal@2.0.0: - resolution: {integrity: sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==} - - should-format@3.0.3: - resolution: {integrity: sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==} - - should-type-adaptors@1.1.0: - resolution: {integrity: sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==} - - should-type@1.4.0: - resolution: {integrity: sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==} - - should-util@1.0.1: - resolution: {integrity: sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==} - - should@13.2.3: - resolution: {integrity: sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==} - side-channel-list@1.0.0: resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} engines: {node: '>= 0.4'} @@ -10410,9 +10104,6 @@ packages: standard-as-callback@2.1.0: resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} - state-local@1.0.7: - resolution: {integrity: sha512-HTEHMNieakEnoe33shBYcZ7NX83ACUjCu8c40iOGEZsngj9zRnkqS9j1pqQPXwobB0ZcVTk27REb7COQ0UR59w==} - statuses@1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} @@ -10506,9 +10197,6 @@ packages: strip-literal@3.0.0: resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} - striptags@3.2.0: - resolution: {integrity: sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==} - strnum@2.1.1: resolution: {integrity: sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==} @@ -10537,11 +10225,6 @@ packages: resolution: {integrity: sha512-y/hkYGeXAj7wUMjxRbB21g/l6aAEituGXM9Rwl4o20+SX3e8YOSV6BxFXl+dL3Uk0mjSL3kCbNkwURm8/gEDig==} engines: {node: '>=14.18.0'} - superagent@7.1.6: - resolution: {integrity: sha512-gZkVCQR1gy/oUXr+kxJMLDjla434KmSOKbx5iGD30Ql+AkJQ/YlPKECJy2nhqOsHLjGHzoDTXNSjhnvWhzKk7g==} - engines: {node: '>=6.4.0 <13 || >=14'} - deprecated: Please upgrade to superagent v10.2.2+, see release notes at https://github.com/forwardemail/superagent/releases/tag/v10.2.2 - maintenance is supported by Forward Email @ https://forwardemail.net - supercluster@7.1.5: resolution: {integrity: sha512-EulshI3pGUM66o6ZdH3ReiFcvHpM3vAigyK+vcxdjpJyEbIIrtbmBdY23mGgnI24uXiGFvrGq9Gkum/8U7vJWg==} @@ -10638,10 +10321,6 @@ packages: swagger-ui-dist@5.21.0: resolution: {integrity: sha512-E0K3AB6HvQd8yQNSMR7eE5bk+323AUxjtCz/4ZNKiahOlPhPJxqn3UPIGs00cyY/dhrTDJ61L7C/a8u6zhGrZg==} - swagger2openapi@7.0.8: - resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==} - hasBin: true - symbol-observable@4.0.0: resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} @@ -11140,9 +10819,6 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - util@0.10.4: - resolution: {integrity: sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==} - utila@0.4.0: resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==} @@ -11174,21 +10850,6 @@ packages: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true - validate.io-array@1.0.6: - resolution: {integrity: sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==} - - validate.io-function@1.0.2: - resolution: {integrity: sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==} - - validate.io-integer-array@1.0.0: - resolution: {integrity: sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==} - - validate.io-integer@1.0.5: - resolution: {integrity: sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==} - - validate.io-number@1.0.3: - resolution: {integrity: sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==} - validator@13.15.15: resolution: {integrity: sha512-BgWVbCI72aIQy937xbawcs+hrVaN/CZ2UwutgaJ36hGqRrLNM+f5LUT/YPRbo8IV/ASeFzXszezV+y2+rq3l8A==} engines: {node: '>= 0.10'} @@ -14184,12 +13845,8 @@ snapshots: '@eslint/core': 0.15.2 levn: 0.4.1 - '@exodus/schemasafe@1.3.0': {} - '@faker-js/faker@10.0.0': {} - '@faker-js/faker@5.5.3': {} - '@fig/complete-commander@3.2.0(commander@11.1.0)': dependencies: commander: 11.1.0 @@ -14737,17 +14394,6 @@ snapshots: '@microsoft/tsdoc@0.15.1': {} - '@monaco-editor/loader@1.5.0': - dependencies: - state-local: 1.0.7 - - '@monaco-editor/react@4.7.0(monaco-editor@0.31.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@monaco-editor/loader': 1.5.0 - monaco-editor: 0.31.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3': optional: true @@ -15436,16 +15082,6 @@ snapshots: dependencies: react: 19.1.1 - '@reduxjs/toolkit@1.9.7(react-redux@7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': - dependencies: - immer: 9.0.21 - redux: 4.2.1 - redux-thunk: 2.4.2(redux@4.2.1) - reselect: 4.1.8 - optionalDependencies: - react: 18.3.1 - react-redux: 7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@rollup/pluginutils@5.3.0(rollup@4.50.1)': dependencies: '@types/estree': 1.0.8 @@ -16367,11 +16003,6 @@ snapshots: '@types/history@4.7.11': {} - '@types/hoist-non-react-statics@3.3.6': - dependencies: - '@types/react': 19.1.13 - hoist-non-react-statics: 3.3.2 - '@types/html-minifier-terser@6.1.0': {} '@types/http-assert@1.5.6': {} @@ -16524,13 +16155,6 @@ snapshots: '@types/range-parser@1.2.7': {} - '@types/react-redux@7.1.34': - dependencies: - '@types/hoist-non-react-statics': 3.3.6 - '@types/react': 19.1.13 - hoist-non-react-statics: 3.3.2 - redux: 4.2.1 - '@types/react-router-config@5.0.11': dependencies: '@types/history': 4.7.11 @@ -16974,14 +16598,6 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 - ajv-draft-04@1.0.0(ajv@8.11.0): - optionalDependencies: - ajv: 8.11.0 - - ajv-formats@2.1.1(ajv@8.11.0): - optionalDependencies: - ajv: 8.11.0 - ajv-formats@2.1.1(ajv@8.17.1): optionalDependencies: ajv: 8.17.1 @@ -17006,13 +16622,6 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - ajv@8.11.0: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 @@ -17153,10 +16762,6 @@ snapshots: async@0.2.10: {} - async@3.2.2: {} - - async@3.2.4: {} - async@3.2.6: {} asynckit@0.4.0: {} @@ -17456,8 +17061,6 @@ snapshots: call-bind-apply-helpers: 1.0.2 get-intrinsic: 1.3.0 - call-me-maybe@1.0.2: {} - callsites@3.1.0: {} camel-case@4.1.2: @@ -17533,8 +17136,6 @@ snapshots: chardet@2.1.0: {} - charset@1.0.1: {} - check-error@2.1.1: {} cheerio-select@2.1.0: @@ -17662,8 +17263,6 @@ snapshots: clone@1.0.4: {} - clsx@1.2.1: {} - clsx@2.1.1: {} cluster-key-slot@1.1.2: {} @@ -17756,19 +17355,6 @@ snapshots: transitivePeerDependencies: - supports-color - compute-gcd@1.2.1: - dependencies: - validate.io-array: 1.0.6 - validate.io-function: 1.0.2 - validate.io-integer-array: 1.0.0 - - compute-lcm@1.1.2: - dependencies: - compute-gcd: 1.2.1 - validate.io-array: 1.0.6 - validate.io-function: 1.0.2 - validate.io-integer-array: 1.0.0 - concat-map@0.0.1: {} concat-stream@2.0.0: @@ -17910,8 +17496,6 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - crypto-js@4.2.0: {} - crypto-random-string@4.0.0: dependencies: type-fest: 1.4.0 @@ -18190,10 +17774,6 @@ snapshots: detect-node@2.1.0: {} - detect-package-manager@3.0.2: - dependencies: - execa: 5.1.1 - detect-port@1.6.1: dependencies: address: 1.2.2 @@ -18277,129 +17857,6 @@ snapshots: unified: 9.2.2 unist-util-is: 4.1.0 - docusaurus-plugin-openapi@0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2): - dependencies: - '@docusaurus/mdx-loader': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-docs': 3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - '@docusaurus/utils': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-common': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-validation': 3.8.1(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - chalk: 4.1.2 - clsx: 1.2.1 - js-yaml: 4.1.0 - json-refs: 3.0.15 - json-schema-resolve-allof: 1.5.0 - lodash: 4.17.21 - openapi-to-postmanv2: 4.25.0(encoding@0.1.13) - postman-collection: 4.5.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - webpack: 5.100.2 - transitivePeerDependencies: - - '@docusaurus/faster' - - '@mdx-js/react' - - '@parcel/css' - - '@rspack/core' - - '@swc/core' - - '@swc/css' - - acorn - - bufferutil - - csso - - debug - - encoding - - esbuild - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - webpack-cli - - docusaurus-plugin-proxy@0.7.6: {} - - docusaurus-preset-openapi@0.7.6(@algolia/client-search@5.29.0)(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(search-insights@2.17.3)(typescript@5.9.2): - dependencies: - '@docusaurus/preset-classic': 3.8.1(@algolia/client-search@5.29.0)(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(@types/react@19.1.13)(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.9.2) - docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - docusaurus-plugin-proxy: 0.7.6 - docusaurus-theme-openapi: 0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - transitivePeerDependencies: - - '@algolia/client-search' - - '@docusaurus/faster' - - '@docusaurus/plugin-content-docs' - - '@mdx-js/react' - - '@parcel/css' - - '@rspack/core' - - '@swc/core' - - '@swc/css' - - '@types/react' - - acorn - - bufferutil - - csso - - debug - - encoding - - esbuild - - lightningcss - - react-native - - redux - - search-insights - - supports-color - - typescript - - uglify-js - - utf-8-validate - - webpack-cli - - docusaurus-theme-openapi@0.7.6(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(@types/react@19.1.13)(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(typescript@5.9.2): - dependencies: - '@docusaurus/theme-common': 3.8.1(@docusaurus/plugin-content-docs@3.8.1(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2))(acorn@8.15.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@18.3.1) - '@monaco-editor/react': 4.7.0(monaco-editor@0.31.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@reduxjs/toolkit': 1.9.7(react-redux@7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) - buffer: 6.0.3 - clsx: 1.2.1 - crypto-js: 4.2.0 - docusaurus-plugin-openapi: 0.7.6(@mdx-js/react@3.1.1(@types/react@19.1.13)(react@18.3.1))(acorn@8.15.0)(encoding@0.1.13)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.2) - immer: 9.0.21 - lodash: 4.17.21 - marked: 11.2.0 - monaco-editor: 0.31.1 - postman-code-generators: 1.14.2 - postman-collection: 4.5.0 - prism-react-renderer: 2.4.1(react@18.3.1) - process: 0.11.10 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-magic-dropzone: 1.0.1 - react-redux: 7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - redux-devtools-extension: 2.13.9(redux@4.2.1) - refractor: 4.9.0 - striptags: 3.2.0 - webpack: 5.100.2 - transitivePeerDependencies: - - '@docusaurus/faster' - - '@docusaurus/plugin-content-docs' - - '@parcel/css' - - '@rspack/core' - - '@swc/core' - - '@swc/css' - - '@types/react' - - acorn - - bufferutil - - csso - - debug - - encoding - - esbuild - - lightningcss - - react-native - - redux - - supports-color - - typescript - - uglify-js - - utf-8-validate - - webpack-cli - dom-accessibility-api@0.5.16: {} dom-accessibility-api@0.6.3: {} @@ -18582,8 +18039,6 @@ snapshots: es5-ext: 0.10.64 es6-symbol: 3.1.4 - es6-promise@3.3.1: {} - es6-symbol@3.1.4: dependencies: d: 1.0.2 @@ -19115,8 +18570,6 @@ snapshots: transitivePeerDependencies: - supports-color - file-type@3.9.0: {} - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -19182,8 +18635,6 @@ snapshots: follow-redirects@1.15.9: {} - foreach@2.0.6: {} - foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 @@ -19218,13 +18669,6 @@ snapshots: format@0.2.2: {} - formidable@2.1.5: - dependencies: - '@paralleldrive/cuid2': 2.2.2 - dezalgo: 1.0.4 - once: 1.4.0 - qs: 6.14.0 - formidable@3.5.4: dependencies: '@paralleldrive/cuid2': 2.2.2 @@ -19336,8 +18780,6 @@ snapshots: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 - get-stdin@5.0.1: {} - get-stream@6.0.1: {} github-slugger@1.5.0: {} @@ -19436,10 +18878,6 @@ snapshots: graphemer@1.4.0: {} - graphlib@2.1.8: - dependencies: - lodash: 4.17.21 - gray-matter@4.0.3: dependencies: js-yaml: 3.14.1 @@ -19518,10 +18956,6 @@ snapshots: hast-util-parse-selector@2.2.5: {} - hast-util-parse-selector@3.1.1: - dependencies: - '@types/hast': 2.3.10 - hast-util-parse-selector@4.0.0: dependencies: '@types/hast': 3.0.4 @@ -19632,14 +19066,6 @@ snapshots: property-information: 5.6.0 space-separated-tokens: 1.1.5 - hastscript@7.2.0: - dependencies: - '@types/hast': 2.3.10 - comma-separated-tokens: 2.0.3 - hast-util-parse-selector: 3.1.1 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - hastscript@9.0.1: dependencies: '@types/hast': 3.0.4 @@ -19815,10 +19241,6 @@ snapshots: transitivePeerDependencies: - debug - http-reasons@0.1.0: {} - - http2-client@1.3.5: {} - http2-wrapper@2.2.1: dependencies: quick-lru: 5.1.1 @@ -19872,8 +19294,6 @@ snapshots: immediate@3.3.0: {} - immer@9.0.21: {} - import-fresh@3.3.1: dependencies: parent-module: 1.0.1 @@ -19933,8 +19353,6 @@ snapshots: internmap@2.0.3: {} - interpret@1.4.0: {} - intl-messageformat@10.7.16: dependencies: '@formatjs/ecma402-abstract': 2.3.4 @@ -20273,38 +19691,6 @@ snapshots: json-parse-even-better-errors@2.3.1: {} - json-pointer@0.6.2: - dependencies: - foreach: 2.0.6 - - json-refs@3.0.15: - dependencies: - commander: 4.1.1 - graphlib: 2.1.8 - js-yaml: 3.14.1 - lodash: 4.17.21 - native-promise-only: 0.8.1 - path-loader: 1.0.12 - slash: 3.0.0 - uri-js: 4.4.1 - transitivePeerDependencies: - - supports-color - - json-schema-compare@0.2.2: - dependencies: - lodash: 4.17.21 - - json-schema-merge-allof@0.8.1: - dependencies: - compute-lcm: 1.1.2 - json-schema-compare: 0.2.2 - lodash: 4.17.21 - - json-schema-resolve-allof@1.5.0: - dependencies: - get-stdin: 5.0.1 - lodash: 4.17.21 - json-schema-traverse@0.4.1: {} json-schema-traverse@1.0.0: {} @@ -20452,8 +19838,6 @@ snapshots: lines-and-columns@1.2.4: {} - liquid-json@0.3.1: {} - load-esm@1.0.2: {} load-tsconfig@0.2.5: {} @@ -20649,8 +20033,6 @@ snapshots: markdown-table@3.0.4: {} - marked@11.2.0: {} - marked@7.0.4: {} math-intrinsics@1.1.0: {} @@ -21187,10 +20569,6 @@ snapshots: mime-db@1.54.0: {} - mime-format@2.0.1: - dependencies: - charset: 1.0.1 - mime-types@2.1.18: dependencies: mime-db: 1.33.0 @@ -21307,8 +20685,6 @@ snapshots: module-details-from-path@1.0.4: {} - monaco-editor@0.31.1: {} - moo@0.5.2: {} mri@1.2.0: {} @@ -21369,8 +20745,6 @@ snapshots: nanoid@5.1.5: {} - native-promise-only@0.8.1: {} - natural-compare@1.4.0: {} nearley@2.20.1: @@ -21388,8 +20762,6 @@ snapshots: neo-async@2.6.2: {} - neotraverse@0.6.15: {} - nest-commander@3.19.1(@nestjs/common@11.1.6(class-transformer@0.5.1)(class-validator@0.14.2)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.6)(@types/inquirer@8.2.11)(@types/node@22.18.5)(typescript@5.9.2): dependencies: '@fig/complete-commander': 3.2.0(commander@11.1.0) @@ -21452,10 +20824,6 @@ snapshots: emojilib: 2.4.0 skin-tone: 2.0.0 - node-fetch-h2@2.3.0: - dependencies: - http2-client: 1.3.5 - node-fetch@2.7.0: dependencies: whatwg-url: 5.0.0 @@ -21491,10 +20859,6 @@ snapshots: transitivePeerDependencies: - supports-color - node-readfiles@0.2.0: - dependencies: - es6-promise: 3.3.1 - node-releases@2.0.19: {} nodemailer@7.0.6: {} @@ -21555,46 +20919,6 @@ snapshots: pkg-types: 2.3.0 tinyexec: 0.3.2 - oas-kit-common@1.0.8: - dependencies: - fast-safe-stringify: 2.1.1 - - oas-linter@3.2.2: - dependencies: - '@exodus/schemasafe': 1.3.0 - should: 13.2.3 - yaml: 1.10.2 - - oas-resolver-browser@2.5.6: - dependencies: - node-fetch-h2: 2.3.0 - oas-kit-common: 1.0.8 - path-browserify: 1.0.1 - reftools: 1.1.9 - yaml: 1.10.2 - yargs: 17.7.2 - - oas-resolver@2.5.6: - dependencies: - node-fetch-h2: 2.3.0 - oas-kit-common: 1.0.8 - reftools: 1.1.9 - yaml: 1.10.2 - yargs: 17.7.2 - - oas-schema-walker@1.1.5: {} - - oas-validator@5.0.8: - dependencies: - call-me-maybe: 1.0.2 - oas-kit-common: 1.0.8 - oas-linter: 3.2.2 - oas-resolver: 2.5.6 - oas-schema-walker: 1.1.5 - reftools: 1.1.9 - should: 13.2.3 - yaml: 1.10.2 - oauth4webapi@3.8.1: {} object-assign@4.1.1: {} @@ -21657,28 +20981,6 @@ snapshots: is-docker: 2.2.1 is-wsl: 2.2.0 - openapi-to-postmanv2@4.25.0(encoding@0.1.13): - dependencies: - ajv: 8.11.0 - ajv-draft-04: 1.0.0(ajv@8.11.0) - ajv-formats: 2.1.1(ajv@8.11.0) - async: 3.2.4 - commander: 2.20.3 - graphlib: 2.1.8 - js-yaml: 4.1.0 - json-pointer: 0.6.2 - json-schema-merge-allof: 0.8.1 - lodash: 4.17.21 - neotraverse: 0.6.15 - oas-resolver-browser: 2.5.6 - object-hash: 3.0.0 - path-browserify: 1.0.1 - postman-collection: 4.5.0 - swagger2openapi: 7.0.8(encoding@0.1.13) - yaml: 1.10.2 - transitivePeerDependencies: - - encoding - opener@1.5.2: {} openid-client@6.8.0: @@ -21831,8 +21133,6 @@ snapshots: no-case: 3.0.4 tslib: 2.8.1 - path-browserify@1.0.1: {} - path-exists@4.0.0: {} path-exists@5.0.0: {} @@ -21843,13 +21143,6 @@ snapshots: path-key@3.1.1: {} - path-loader@1.0.12: - dependencies: - native-promise-only: 0.8.1 - superagent: 7.1.6 - transitivePeerDependencies: - - supports-color - path-parse@1.0.7: {} path-scurry@1.11.1: @@ -21881,11 +21174,6 @@ snapshots: path-type@4.0.0: {} - path@0.12.7: - dependencies: - process: 0.11.10 - util: 0.10.4 - pathe@2.0.3: {} pathval@2.0.1: {} @@ -22470,33 +21758,6 @@ snapshots: postgres@3.4.7: {} - postman-code-generators@1.14.2: - dependencies: - async: 3.2.2 - detect-package-manager: 3.0.2 - lodash: 4.17.21 - path: 0.12.7 - postman-collection: 4.5.0 - shelljs: 0.8.5 - - postman-collection@4.5.0: - dependencies: - '@faker-js/faker': 5.5.3 - file-type: 3.9.0 - http-reasons: 0.1.0 - iconv-lite: 0.6.3 - liquid-json: 0.3.1 - lodash: 4.17.21 - mime-format: 2.0.1 - mime-types: 2.1.35 - postman-url-encoder: 3.0.5 - semver: 7.6.3 - uuid: 8.3.2 - - postman-url-encoder@3.0.5: - dependencies: - punycode: 2.3.1 - potpack@1.0.2: {} potpack@2.1.0: {} @@ -22745,24 +22006,10 @@ snapshots: react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.3.1)' webpack: 5.100.2 - react-magic-dropzone@1.0.1: {} - react-promise-suspense@0.3.4: dependencies: fast-deep-equal: 2.0.1 - react-redux@7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - '@babel/runtime': 7.28.4 - '@types/react-redux': 7.1.34 - hoist-non-react-statics: 3.3.2 - loose-envify: 1.4.0 - prop-types: 15.8.1 - react: 18.3.1 - react-is: 17.0.2 - optionalDependencies: - react-dom: 18.3.1(react@18.3.1) - react-router-config@5.1.1(react-router@5.3.4(react@18.3.1))(react@18.3.1): dependencies: '@babel/runtime': 7.28.4 @@ -22837,10 +22084,6 @@ snapshots: readdirp@4.1.2: {} - rechoir@0.6.2: - dependencies: - resolve: 1.22.10 - recma-build-jsx@1.0.0: dependencies: '@types/estree': 1.0.8 @@ -22882,29 +22125,8 @@ snapshots: dependencies: redis-errors: 1.2.0 - redux-devtools-extension@2.13.9(redux@4.2.1): - dependencies: - redux: 4.2.1 - - redux-thunk@2.4.2(redux@4.2.1): - dependencies: - redux: 4.2.1 - - redux@4.2.1: - dependencies: - '@babel/runtime': 7.28.4 - reflect-metadata@0.2.2: {} - refractor@4.9.0: - dependencies: - '@types/hast': 2.3.10 - '@types/prismjs': 1.26.5 - hastscript: 7.2.0 - parse-entities: 4.0.2 - - reftools@1.1.9: {} - regenerate-unicode-properties@10.2.0: dependencies: regenerate: 1.4.2 @@ -23052,8 +22274,6 @@ snapshots: requires-port@1.0.0: {} - reselect@4.1.8: {} - resolve-alpn@1.2.1: {} resolve-from@4.0.0: {} @@ -23255,8 +22475,6 @@ snapshots: semver@6.3.1: {} - semver@7.6.3: {} - semver@7.7.2: {} send@0.19.0: @@ -23410,38 +22628,6 @@ snapshots: shell-quote@1.8.3: {} - shelljs@0.8.5: - dependencies: - glob: 7.2.3 - interpret: 1.4.0 - rechoir: 0.6.2 - - should-equal@2.0.0: - dependencies: - should-type: 1.4.0 - - should-format@3.0.3: - dependencies: - should-type: 1.4.0 - should-type-adaptors: 1.1.0 - - should-type-adaptors@1.1.0: - dependencies: - should-type: 1.4.0 - should-util: 1.0.1 - - should-type@1.4.0: {} - - should-util@1.0.1: {} - - should@13.2.3: - dependencies: - should-equal: 2.0.0 - should-format: 3.0.3 - should-type: 1.4.0 - should-type-adaptors: 1.1.0 - should-util: 1.0.1 - side-channel-list@1.0.0: dependencies: es-errors: 1.3.0 @@ -23662,8 +22848,6 @@ snapshots: standard-as-callback@2.1.0: {} - state-local@1.0.7: {} - statuses@1.5.0: {} statuses@2.0.1: {} @@ -23752,8 +22936,6 @@ snapshots: dependencies: js-tokens: 9.0.1 - striptags@3.2.0: {} - strnum@2.1.1: {} strtok3@10.3.4: @@ -23798,22 +22980,6 @@ snapshots: transitivePeerDependencies: - supports-color - superagent@7.1.6: - dependencies: - component-emitter: 1.3.1 - cookiejar: 2.1.4 - debug: 4.4.3 - fast-safe-stringify: 2.1.1 - form-data: 4.0.4 - formidable: 2.1.5 - methods: 1.1.2 - mime: 2.6.0 - qs: 6.14.0 - readable-stream: 3.6.2 - semver: 7.7.2 - transitivePeerDependencies: - - supports-color - supercluster@7.1.5: dependencies: kdbush: 3.0.0 @@ -23932,22 +23098,6 @@ snapshots: dependencies: '@scarf/scarf': 1.4.0 - swagger2openapi@7.0.8(encoding@0.1.13): - dependencies: - call-me-maybe: 1.0.2 - node-fetch: 2.7.0(encoding@0.1.13) - node-fetch-h2: 2.3.0 - node-readfiles: 0.2.0 - oas-kit-common: 1.0.8 - oas-resolver: 2.5.6 - oas-schema-walker: 1.1.5 - oas-validator: 5.0.8 - reftools: 1.1.9 - yaml: 1.10.2 - yargs: 17.7.2 - transitivePeerDependencies: - - encoding - symbol-observable@4.0.0: {} symbol-tree@3.2.4: @@ -24509,10 +23659,6 @@ snapshots: util-deprecate@1.0.2: {} - util@0.10.4: - dependencies: - inherits: 2.0.3 - utila@0.4.0: {} utility-types@3.11.0: {} @@ -24535,21 +23681,6 @@ snapshots: uuid@9.0.1: {} - validate.io-array@1.0.6: {} - - validate.io-function@1.0.2: {} - - validate.io-integer-array@1.0.0: - dependencies: - validate.io-array: 1.0.6 - validate.io-integer: 1.0.5 - - validate.io-integer@1.0.5: - dependencies: - validate.io-number: 1.0.3 - - validate.io-number@1.0.3: {} - validator@13.15.15: {} value-equal@1.0.1: {} From 5aa7ab5aebd335ef088a2497f254937789dee0e6 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Thu, 25 Sep 2025 20:31:54 +0530 Subject: [PATCH 31/60] fix: ios export sqlite db (#22369) --- .../beta_sync_settings/sync_status_and_actions.dart | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mobile/lib/widgets/settings/beta_sync_settings/sync_status_and_actions.dart b/mobile/lib/widgets/settings/beta_sync_settings/sync_status_and_actions.dart index 56506072c5..a5bca24f81 100644 --- a/mobile/lib/widgets/settings/beta_sync_settings/sync_status_and_actions.dart +++ b/mobile/lib/widgets/settings/beta_sync_settings/sync_status_and_actions.dart @@ -42,7 +42,12 @@ class SyncStatusAndActions extends HookConsumerWidget { await dbFile.copy(exportFile.path); - await Share.shareXFiles([XFile(exportFile.path)], text: 'Immich Database Export'); + final size = MediaQuery.of(context).size; + await Share.shareXFiles( + [XFile(exportFile.path)], + text: 'Immich Database Export', + sharePositionOrigin: Rect.fromPoints(Offset.zero, Offset(size.width / 3, size.height)), + ); Future.delayed(const Duration(seconds: 30), () async { if (await exportFile.exists()) { From 66b882394909a345296b6809c067b729041c6a57 Mon Sep 17 00:00:00 2001 From: Zack Pollard Date: Thu, 25 Sep 2025 16:47:38 +0100 Subject: [PATCH 32/60] chore: docs redirect and patch version cleanup (#22380) --- docs/static/_redirects | 1 + docs/static/archived-versions.json | 65 ------------------------------ 2 files changed, 1 insertion(+), 65 deletions(-) diff --git a/docs/static/_redirects b/docs/static/_redirects index 0a97d0eb6e..7539cb0f93 100644 --- a/docs/static/_redirects +++ b/docs/static/_redirects @@ -30,3 +30,4 @@ /guides/api-album-sync /community-projects 307 /guides/remove-offline-files /community-projects 307 /overview/introduction /overview/welcome 307 +/docs/* /:splat 307 diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index 2bee40eae7..b10d319241 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -13,76 +13,31 @@ "url": "https://v1.142.1.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.142.0", - "url": "https://v1.142.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.141.1", "url": "https://v1.141.1.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.141.0", - "url": "https://v1.141.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.140.1", "url": "https://v1.140.1.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.140.0", - "url": "https://v1.140.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.139.4", "url": "https://v1.139.4.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.139.3", - "url": "https://v1.139.3.archive.immich.app", - "rootPath": "/docs" - }, - { - "label": "v1.139.2", - "url": "https://v1.139.2.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.138.1", "url": "https://v1.138.1.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.138.0", - "url": "https://v1.138.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.137.3", "url": "https://v1.137.3.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.137.2", - "url": "https://v1.137.2.archive.immich.app", - "rootPath": "/docs" - }, - { - "label": "v1.137.1", - "url": "https://v1.137.1.archive.immich.app", - "rootPath": "/docs" - }, - { - "label": "v1.137.0", - "url": "https://v1.137.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.136.0", "url": "https://v1.136.0.archive.immich.app", @@ -93,21 +48,6 @@ "url": "https://v1.135.3.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.135.2", - "url": "https://v1.135.2.archive.immich.app", - "rootPath": "/docs" - }, - { - "label": "v1.135.1", - "url": "https://v1.135.1.archive.immich.app", - "rootPath": "/docs" - }, - { - "label": "v1.135.0", - "url": "https://v1.135.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.134.0", "url": "https://v1.134.0.archive.immich.app", @@ -118,11 +58,6 @@ "url": "https://v1.133.1.archive.immich.app", "rootPath": "/docs" }, - { - "label": "v1.133.0", - "url": "https://v1.133.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.132.3", "url": "https://v1.132.3.archive.immich.app", From 7c3e871c7a7a229fd956e354a940a25c03165015 Mon Sep 17 00:00:00 2001 From: Zack Pollard Date: Thu, 25 Sep 2025 17:13:59 +0100 Subject: [PATCH 33/60] chore: cleanup 1.143.0 from doc versions (#22381) chore: cleanup old version 1.143.0 --- docs/static/archived-versions.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index b10d319241..e2466370f0 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -3,11 +3,6 @@ "label": "v1.143.1", "url": "https://docs.v1.143.1.archive.immich.app" }, - { - "label": "v1.143.0", - "url": "https://v1.143.0.archive.immich.app", - "rootPath": "/docs" - }, { "label": "v1.142.1", "url": "https://v1.142.1.archive.immich.app", From 913f54330769a48691df0889e513b3a644ebb216 Mon Sep 17 00:00:00 2001 From: Jason Rasmussen Date: Thu, 25 Sep 2025 12:50:34 -0400 Subject: [PATCH 34/60] chore: use quick-start as default page (#22384) --- .../overview/img/social-preview-light.webp | Bin 238160 -> 0 bytes docs/docs/overview/welcome.mdx | 27 ------------------ docs/docusaurus.config.js | 6 ++-- docs/src/pages/index.tsx | 2 +- docs/static/_redirects | 5 ++-- 5 files changed, 7 insertions(+), 33 deletions(-) delete mode 100644 docs/docs/overview/img/social-preview-light.webp delete mode 100644 docs/docs/overview/welcome.mdx diff --git a/docs/docs/overview/img/social-preview-light.webp b/docs/docs/overview/img/social-preview-light.webp deleted file mode 100644 index 3d088f6522d18efcd5bdaac7aa9c004d25b7f1e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238160 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

Q!fRkQFQpQfLM&mz8 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ࢭ zQ4FFvB!urYcEKEbc!A8G;sN^G%+CK=i5Ul9>T7DH@(ieLxxg$el@RMDlFv1MN${)RlY1P1NmO#ZZ zD%Iq754FhT5Ny<5kgcLPtQtBjjCM;wp+8)*PXHL+f7mNdATKKL0Gv~0^Eg81X?>LB z!C!P8MfkPh8lS5Qb7b6_<#O9IpP8~wtM|Y#nkdhE#5+`s5RLILDMV_ z!~cFclp-EIVJX?Mw^oIm6(V+L?xFioTD6aZ+5GBMHj3i$-;z}uYbyrKv0IIRT=~LvN)tWIHbpl z#7qR?5zI#91Pj(+vB^T$n)j7Yz!02oNiyA3d^fTjy+Aq%|CI2+Z}d4BpB>x;_Ky}O zQ#}g{+NwyI<79k33)y0)63mF-LS=r_G2$t$b)Ok zxz>c-XdT?3$u7`;NOGq)WT~uYG)4cRdK)vUJx+EwRu8D=Z+k5VrXAx#yOs!JDI@ES zq~r~UoKgSUyqX{1rp5g)$Jb=ST_FC{LZN%>ziWY$9k=BFY5EL+SB{5`k#uVXJgrJl z>AJp+KiNaOOG-R;Upc=COwku=z7$1soE~!o94_TaAWUeEg24ph@wlSUClpbYl6eT0 z52c5M0GhIN84_`RHp?(wckHz|+Dghx^AL+sLE<4S`i`lS<{#(k}JSK4Ecjmc2P^AWXGo$&L zY5@2rZEO7@yy95oG7w@%LcC~aIjpi95QtN|`VmgQu7BF;A^stY2xm2NMSKdp``&1o z8BYi5s{Df4&jrt!50;KXiss%0pPTPHo0#ahZA*5CzWv9`qN9dif?8z7_bX?8#w9YT z$54+}F!_N}UjZK-6i^pyRF<~z05Gc?1#iFMw2%Z-318_7#pK^5LZ zq|ermu^i4og^qDGy2}92>>sUPA{^Hi>s8~Z3SOLHtU8J(eK8jeMQ_C=BBa7ol4nvG zafQqZFR+Cgoi*b38~dHF{$c;n&lhDWZa^00a9vAIRuAhdUpiJL3q~>0|#bLo>s^OJ3^!tV|r*iLqiGv0H$~m;!Y% zMK2kEnb!uureXpvM<)XFLU|-Rve?5=f3WMmqQ6{}L||lA7f zAWfr^jd;V4b#G_>Ce}<1w0(C6#E&HwNqvQAzw^e_)~c`WdIpHUpXph?tyb;kbAf_@ zgMy4hGXT(Nxc>AmX^?Ht^}0_2W5%b+GlcZHNfmZz|8_Z_=^(oy0iU0(d{?3wqRY>q zu5`naD;Kj9;W9sU%_Zt5Y~i%G86?i1L-W&9nQ!!lk!dQV$I20>@p9*qMVMo$x2|%& z1oAU{Z-&lRy)vw-3(;QG(xy_N(cZF5Za%UEK5!-cY0o5dZ>Gp(w2qehBKKsgt9^*2 zyvz<;Tw$4^=;Ma)uml;n_}$SzW70|plCP}$>Mwl zs05=%$)-~*U)GPg=|*7plJxh!QI}_WxfLZwTul!d8#liuY9b2nV&WAMA~tfK`6Or~Omzz|z>!PN8Ovp3A4XlrWnD@~T=$}lJc zRg(k5bR(!0m4x_@zO)j_+c!$Vus$aCReDvu22_1<;}EYjy_h*ksQw_ zRD0#8hOk+B65T$qASe(_&N|KmmG0N0qhpZ1(=%*42{A8o^NlI-VpSME+3_!<)J#Vh zPrGVpefahgn%-WW3NoAKn3oRb;30k1H}!|q4)D-1p&u!-c{HyM^hTdH$C(7svkFqW zEn--07Pe3r?5i?mn`mcFlgIl%#%e$$aP7mR&MRs}duD)BW{kf9iK1SPB0={GW6D!T z!@Vfu5N#KDbzh>amSYP`fO};9sgxS!)nHpu5gt+{dO{UQ2*t`V63WNm^|D+2l0R+> zlHR)b(*L;q=rUX>{Dl;s>B3rXa*Bi@acT!ZG)%5$4~


9m9H(#OpcQ&S^Mzr{i% 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 diff --git a/docs/docs/overview/welcome.mdx b/docs/docs/overview/welcome.mdx deleted file mode 100644 index 93ce705369..0000000000 --- a/docs/docs/overview/welcome.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -sidebar_position: 1 ---- - -# Welcome to Immich - -Immich - Self-hosted photos and videos backup tool - -## Welcome! - -Hello, I am glad you are here. - -My name is Alex. I am an Electrical Engineer by schooling, then turned into a Software Engineer by trade and the pure love of problem solving. - -We were lying in bed with our newborn, and my wife said, "We are starting to accumulate a lot of photos and videos of our baby, and I don't want to pay for **_App-Which-Must-Not-Be-Named_** anymore. You always want to build something for me, so why don't you build me an app which can do that?" - -That was how the idea started to grow in my head. After that, I began to find existing solutions in the self-hosting space with similar backup functionality and the performance level of the **_App-Which-Must-Not-Be-Named_**. I found that the current solutions mainly focus on the gallery-type application. However, I want a simple-to-use backup tool with a native mobile app that can view photos and videos efficiently. So I set sail on this journey as a hungry engineer on the hunt. - -Another motivation that pushed me to deliver my execution of the **_App-Which-Must-Not-Be-Named_** alternative or replacement is for contributing back to the open source community that I have greatly benefited from over the years. - -I'm proud to share this creation with you, which values privacy, memories, and the joy of looking back at those moments in an easy-to-use and friendly interface. - -If you like the application or it helps you in some way, please consider [supporting](./support-the-project.md) the project. It will help me to continue to develop and maintain the application. diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index fa4aa7c7d1..fd550806f8 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -88,7 +88,7 @@ const config = { position: 'right', }, { - to: '/overview/welcome', + to: '/overview/quick-start', position: 'right', label: 'Docs', }, @@ -132,8 +132,8 @@ const config = { title: 'Overview', items: [ { - label: 'Welcome', - to: '/overview/welcome', + label: 'Quick start', + to: '/overview/quick-start', }, { label: 'Installation', diff --git a/docs/src/pages/index.tsx b/docs/src/pages/index.tsx index d301c8e061..37455cde16 100644 --- a/docs/src/pages/index.tsx +++ b/docs/src/pages/index.tsx @@ -1,5 +1,5 @@ import { Redirect } from '@docusaurus/router'; export default function Home(): JSX.Element { - return ; + return ; } diff --git a/docs/static/_redirects b/docs/static/_redirects index 7539cb0f93..ecbdf19303 100644 --- a/docs/static/_redirects +++ b/docs/static/_redirects @@ -1,4 +1,4 @@ -/ /overview/welcome 307 +/ /overview/quick-start 307 /mobile-app-beta-program /features/mobile-app 307 /contribution-guidelines /overview/support-the-project#contributing 307 /install /install/docker-compose 307 @@ -29,5 +29,6 @@ /features/smart-search /features/searching 307 /guides/api-album-sync /community-projects 307 /guides/remove-offline-files /community-projects 307 -/overview/introduction /overview/welcome 307 +/overview/introduction /overview/quick-start 307 +/overview/welcome /overview/quick-start 307 /docs/* /:splat 307 From ee49136e97eddb31920ba271f173e0192b481bfc Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Fri, 26 Sep 2025 00:06:17 +0530 Subject: [PATCH 35/60] chore: deprecate old timeline (#22328) * chore: deprecate old timeline * change trigger and duration --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/widgets/common/immich_app_bar.dart | 29 +++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/mobile/lib/widgets/common/immich_app_bar.dart b/mobile/lib/widgets/common/immich_app_bar.dart index 7eaedd27b5..28b5c535d2 100644 --- a/mobile/lib/widgets/common/immich_app_bar.dart +++ b/mobile/lib/widgets/common/immich_app_bar.dart @@ -129,19 +129,24 @@ class ImmichAppBar extends ConsumerWidget implements PreferredSizeWidget { title: Builder( builder: (BuildContext context) { return Row( + crossAxisAlignment: CrossAxisAlignment.center, children: [ - Builder( - builder: (context) { - return Padding( - padding: const EdgeInsets.only(top: 3.0), - child: SvgPicture.asset( - context.isDarkTheme - ? 'assets/immich-logo-inline-dark.svg' - : 'assets/immich-logo-inline-light.svg', - height: 40, - ), - ); - }, + Padding( + padding: const EdgeInsets.only(top: 3.0), + child: SvgPicture.asset( + context.isDarkTheme ? 'assets/immich-logo-inline-dark.svg' : 'assets/immich-logo-inline-light.svg', + height: 40, + ), + ), + const Tooltip( + triggerMode: TooltipTriggerMode.tap, + showDuration: Duration(seconds: 4), + message: + "The old timeline is deprecated and will be removed in a future release. Kindly switch to the new timeline under Advanced Settings.", + child: Padding( + padding: EdgeInsets.only(top: 3.0), + child: Icon(Icons.error_rounded, fill: 1, color: Colors.amber, size: 20), + ), ), ], ); From 972e9cc039aa6159ca3f36ab728df988bf82d6a1 Mon Sep 17 00:00:00 2001 From: Brandon Wees Date: Thu, 25 Sep 2025 13:38:25 -0500 Subject: [PATCH 36/60] fix: map attribution and other styling (#22303) * chore: map widget and page styling * fix: map bottom sheet styling * fix: attribution location on android it appears that on android, the attribution marker is positioned from the top of the display and on iOS its positioned from the safe area edge --- mobile/lib/presentation/pages/drift_map.page.dart | 5 +++-- .../widgets/bottom_sheet/map_bottom_sheet.widget.dart | 6 ++++-- mobile/lib/presentation/widgets/map/map.widget.dart | 5 ++++- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/mobile/lib/presentation/pages/drift_map.page.dart b/mobile/lib/presentation/pages/drift_map.page.dart index 30da6410b5..de8dde7714 100644 --- a/mobile/lib/presentation/pages/drift_map.page.dart +++ b/mobile/lib/presentation/pages/drift_map.page.dart @@ -25,9 +25,10 @@ class DriftMapPage extends StatelessWidget { onPressed: () => context.pop(), icon: const Icon(Icons.arrow_back_ios_new_rounded), style: IconButton.styleFrom( - shape: const CircleBorder(side: BorderSide(width: 1, color: Colors.black26)), padding: const EdgeInsets.all(8), - backgroundColor: Colors.indigo.withValues(alpha: 0.7), + backgroundColor: Colors.indigo, + shadowColor: Colors.black26, + elevation: 4, ), ), ), diff --git a/mobile/lib/presentation/widgets/bottom_sheet/map_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/map_bottom_sheet.widget.dart index 19cce3392f..dc5fdbe78d 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/map_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/map_bottom_sheet.widget.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; +import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/base_bottom_sheet.widget.dart'; import 'package:immich_mobile/presentation/widgets/map/map.state.dart'; import 'package:immich_mobile/presentation/widgets/timeline/timeline.widget.dart'; @@ -10,13 +11,14 @@ class MapBottomSheet extends StatelessWidget { @override Widget build(BuildContext context) { - return const BaseBottomSheet( + return BaseBottomSheet( initialChildSize: 0.25, maxChildSize: 0.9, shouldCloseOnMinExtent: false, resizeOnScroll: false, actions: [], - slivers: [SliverFillRemaining(hasScrollBody: false, child: _ScopedMapTimeline())], + backgroundColor: context.themeData.colorScheme.surface, + slivers: [const SliverFillRemaining(hasScrollBody: false, child: _ScopedMapTimeline())], ); } } diff --git a/mobile/lib/presentation/widgets/map/map.widget.dart b/mobile/lib/presentation/widgets/map/map.widget.dart index 0c3b37a3b4..1d285f0441 100644 --- a/mobile/lib/presentation/widgets/map/map.widget.dart +++ b/mobile/lib/presentation/widgets/map/map.widget.dart @@ -1,5 +1,6 @@ import 'dart:async'; import 'dart:io'; +import 'dart:math'; import 'package:flutter/material.dart'; import 'package:fluttertoast/fluttertoast.dart'; @@ -9,8 +10,8 @@ import 'package:immich_mobile/extensions/asyncvalue_extensions.dart'; import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/extensions/translate_extensions.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/map_bottom_sheet.widget.dart'; -import 'package:immich_mobile/presentation/widgets/map/map_utils.dart'; import 'package:immich_mobile/presentation/widgets/map/map.state.dart'; +import 'package:immich_mobile/presentation/widgets/map/map_utils.dart'; import 'package:immich_mobile/utils/async_mutex.dart'; import 'package:immich_mobile/utils/debounce.dart'; import 'package:immich_mobile/widgets/common/immich_toast.dart'; @@ -187,6 +188,8 @@ class _Map extends StatelessWidget { styleString: style, onMapCreated: onMapCreated, onStyleLoadedCallback: onMapReady, + attributionButtonPosition: AttributionButtonPosition.topRight, + attributionButtonMargins: Platform.isIOS ? const Point(40, 12) : const Point(40, 72), ), ), ); From b62feb726b89c84e12f6bfcaf7881f1e7d0098d1 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Fri, 26 Sep 2025 00:21:25 +0530 Subject: [PATCH 37/60] fix: delete temp file on iOS after upload (#22364) fix: delete temp files on iOS after upload Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/services/upload.service.dart | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/mobile/lib/services/upload.service.dart b/mobile/lib/services/upload.service.dart index b1130dab80..e8e98562f7 100644 --- a/mobile/lib/services/upload.service.dart +++ b/mobile/lib/services/upload.service.dart @@ -9,6 +9,7 @@ import 'package:immich_mobile/constants/constants.dart'; import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; import 'package:immich_mobile/domain/models/store.model.dart'; import 'package:immich_mobile/entities/store.entity.dart'; +import 'package:immich_mobile/extensions/platform_extensions.dart'; import 'package:immich_mobile/infrastructure/repositories/backup.repository.dart'; import 'package:immich_mobile/infrastructure/repositories/local_asset.repository.dart'; import 'package:immich_mobile/infrastructure/repositories/storage.repository.dart'; @@ -19,9 +20,9 @@ import 'package:immich_mobile/providers/infrastructure/storage.provider.dart'; import 'package:immich_mobile/repositories/upload.repository.dart'; import 'package:immich_mobile/services/api.service.dart'; import 'package:immich_mobile/services/app_settings.service.dart'; +import 'package:immich_mobile/utils/debug_print.dart'; import 'package:logging/logging.dart'; import 'package:path/path.dart' as p; -import 'package:immich_mobile/utils/debug_print.dart'; final uploadServiceProvider = Provider((ref) { final service = UploadService( @@ -205,10 +206,20 @@ class UploadService { return _uploadRepository.start(); } - void _handleTaskStatusUpdate(TaskStatusUpdate update) { + void _handleTaskStatusUpdate(TaskStatusUpdate update) async { switch (update.status) { case TaskStatus.complete: _handleLivePhoto(update); + + if (CurrentPlatform.isIOS) { + try { + final path = await update.task.filePath(); + await File(path).delete(); + } catch (e) { + _logger.severe('Error deleting file path for iOS: $e'); + } + } + break; default: From d73aabc4949b84e4cc41ed3f594db667d1a36765 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Fri, 26 Sep 2025 00:22:03 +0530 Subject: [PATCH 38/60] chore: log mobile upload failures (#22349) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- .../backup/drift_backup.provider.dart | 31 ++----------------- 1 file changed, 2 insertions(+), 29 deletions(-) diff --git a/mobile/lib/providers/backup/drift_backup.provider.dart b/mobile/lib/providers/backup/drift_backup.provider.dart index 1ce14e5204..fb6a94b0cb 100644 --- a/mobile/lib/providers/backup/drift_backup.provider.dart +++ b/mobile/lib/providers/backup/drift_backup.provider.dart @@ -1,6 +1,5 @@ // ignore_for_file: public_member_api_docs, sort_constructors_first import 'dart:async'; -import 'dart:convert'; import 'package:background_downloader/background_downloader.dart'; import 'package:collection/collection.dart'; @@ -12,8 +11,8 @@ import 'package:immich_mobile/infrastructure/repositories/backup.repository.dart import 'package:immich_mobile/providers/infrastructure/asset.provider.dart'; import 'package:immich_mobile/providers/user.provider.dart'; import 'package:immich_mobile/services/upload.service.dart'; -import 'package:logging/logging.dart'; import 'package:immich_mobile/utils/debug_print.dart'; +import 'package:logging/logging.dart'; class EnqueueStatus { final int enqueueCount; @@ -90,33 +89,6 @@ class DriftUploadStatus { networkSpeedAsString.hashCode ^ isFailed.hashCode; } - - Map toMap() { - return { - 'taskId': taskId, - 'filename': filename, - 'progress': progress, - 'fileSize': fileSize, - 'networkSpeedAsString': networkSpeedAsString, - 'isFailed': isFailed, - }; - } - - factory DriftUploadStatus.fromMap(Map map) { - return DriftUploadStatus( - taskId: map['taskId'] as String, - filename: map['filename'] as String, - progress: map['progress'] as double, - fileSize: map['fileSize'] as int, - networkSpeedAsString: map['networkSpeedAsString'] as String, - isFailed: map['isFailed'] != null ? map['isFailed'] as bool : null, - ); - } - - String toJson() => json.encode(toMap()); - - factory DriftUploadStatus.fromJson(String source) => - DriftUploadStatus.fromMap(json.decode(source) as Map); } class DriftBackupState { @@ -267,6 +239,7 @@ class DriftBackupNotifier extends StateNotifier { } state = state.copyWith(uploadItems: {...state.uploadItems, taskId: currentItem.copyWith(isFailed: true)}); + _logger.fine("Upload failed for taskId: $taskId, exception: ${update.exception}"); break; case TaskStatus.canceled: From c5fbbee8f68e5c9099710330f9903c4648e14c58 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Fri, 26 Sep 2025 00:22:17 +0530 Subject: [PATCH 39/60] chore: update android background worker notification text (#22347) chore: update android bg notification text Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/domain/services/background_worker.service.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/domain/services/background_worker.service.dart b/mobile/lib/domain/services/background_worker.service.dart index 942581633f..4e9291a1fc 100644 --- a/mobile/lib/domain/services/background_worker.service.dart +++ b/mobile/lib/domain/services/background_worker.service.dart @@ -116,7 +116,7 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { if (Platform.isAndroid) { await _backgroundHostApi.showNotification( IntlKeys.uploading_media.t(), - IntlKeys.backup_background_service_in_progress_notification.t(), + IntlKeys.backup_background_service_default_notification.t(), ); } From 5116b215a240b102d6109ed39d105cad6b77b641 Mon Sep 17 00:00:00 2001 From: Mert <101130780+mertalev@users.noreply.github.com> Date: Thu, 25 Sep 2025 15:08:19 -0400 Subject: [PATCH 40/60] fix(mobile): load local thumbnails in album timeline (#22329) * join local asset in album query * missed one * formatting --- .../entities/local_asset.entity.dart | 4 +- .../entities/remote_asset.entity.dart | 4 +- .../repositories/timeline.repository.dart | 62 +++++++++---------- 3 files changed, 34 insertions(+), 36 deletions(-) diff --git a/mobile/lib/infrastructure/entities/local_asset.entity.dart b/mobile/lib/infrastructure/entities/local_asset.entity.dart index 337a6d728d..8b253f83a3 100644 --- a/mobile/lib/infrastructure/entities/local_asset.entity.dart +++ b/mobile/lib/infrastructure/entities/local_asset.entity.dart @@ -21,7 +21,7 @@ class LocalAssetEntity extends Table with DriftDefaultsMixin, AssetEntityMixin { } extension LocalAssetEntityDataDomainExtension on LocalAssetEntityData { - LocalAsset toDto() => LocalAsset( + LocalAsset toDto({String? remoteId}) => LocalAsset( id: id, name: name, checksum: checksum, @@ -32,7 +32,7 @@ extension LocalAssetEntityDataDomainExtension on LocalAssetEntityData { isFavorite: isFavorite, height: height, width: width, - remoteId: null, + remoteId: remoteId, orientation: orientation, ); } diff --git a/mobile/lib/infrastructure/entities/remote_asset.entity.dart b/mobile/lib/infrastructure/entities/remote_asset.entity.dart index 4426974413..dcc885a2a9 100644 --- a/mobile/lib/infrastructure/entities/remote_asset.entity.dart +++ b/mobile/lib/infrastructure/entities/remote_asset.entity.dart @@ -49,7 +49,7 @@ class RemoteAssetEntity extends Table with DriftDefaultsMixin, AssetEntityMixin } extension RemoteAssetEntityDataDomainEx on RemoteAssetEntityData { - RemoteAsset toDto() => RemoteAsset( + RemoteAsset toDto({String? localId}) => RemoteAsset( id: id, name: name, ownerId: ownerId, @@ -64,7 +64,7 @@ extension RemoteAssetEntityDataDomainEx on RemoteAssetEntityData { thumbHash: thumbHash, visibility: visibility, livePhotoVideoId: livePhotoVideoId, - localId: null, + localId: localId, stackId: stackId, ); } diff --git a/mobile/lib/infrastructure/repositories/timeline.repository.dart b/mobile/lib/infrastructure/repositories/timeline.repository.dart index 86f68c397e..06722ca17a 100644 --- a/mobile/lib/infrastructure/repositories/timeline.repository.dart +++ b/mobile/lib/infrastructure/repositories/timeline.repository.dart @@ -148,10 +148,9 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(_db.localAssetEntity.createdAt)]) ..limit(count, offset: offset); - return query.map((row) { - final asset = row.readTable(_db.localAssetEntity).toDto(); - return asset.copyWith(remoteId: row.read(_db.remoteAssetEntity.id)); - }).get(); + return query + .map((row) => row.readTable(_db.localAssetEntity).toDto(remoteId: row.read(_db.remoteAssetEntity.id))) + .get(); } TimelineQuery remoteAlbum(String albumId, GroupAssetsBy groupBy) => ( @@ -165,17 +164,15 @@ class DriftTimelineRepository extends DriftDatabaseRepository { .count(where: (row) => row.albumId.equals(albumId)) .map(_generateBuckets) .watch() - .map((results) => results.isNotEmpty ? results.first : []) - .handleError((error) { - return []; - }); + .map((results) => results.isNotEmpty ? results.first : const []) + .handleError((error) => const []); } return (_db.remoteAlbumEntity.select()..where((row) => row.id.equals(albumId))) .watch() .switchMap((albums) { if (albums.isEmpty) { - return Stream.value([]); + return Stream.value(const []); } final album = albums.first; @@ -207,10 +204,8 @@ class DriftTimelineRepository extends DriftDatabaseRepository { return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); }) - .handleError((error) { - // If there's an error (e.g., album was deleted), return empty buckets - return []; - }); + // If there's an error (e.g., album was deleted), return empty buckets + .handleError((error) => const []); } Future> _getRemoteAlbumBucketAssets(String albumId, {required int offset, required int count}) async { @@ -218,18 +213,23 @@ class DriftTimelineRepository extends DriftDatabaseRepository { // If album doesn't exist (was deleted), return empty list if (albumData == null) { - return []; + return const []; } final isAscending = albumData.order == AlbumAssetOrder.asc; - final query = _db.remoteAssetEntity.select().join([ + final query = _db.remoteAssetEntity.select().addColumns([_db.localAssetEntity.id]).join([ innerJoin( _db.remoteAlbumAssetEntity, _db.remoteAlbumAssetEntity.assetId.equalsExp(_db.remoteAssetEntity.id), useColumns: false, ), - ])..where(_db.remoteAssetEntity.deletedAt.isNull() & _db.remoteAlbumAssetEntity.albumId.equals(albumId)); + leftOuterJoin( + _db.localAssetEntity, + _db.remoteAssetEntity.checksum.equalsExp(_db.localAssetEntity.checksum), + useColumns: false, + ), + ])..where(_db.remoteAssetEntity.deletedAt.isNull() & _db.remoteAssetEntity.id.equals(albumId)); if (isAscending) { query.orderBy([OrderingTerm.asc(_db.remoteAssetEntity.createdAt)]); @@ -239,12 +239,14 @@ class DriftTimelineRepository extends DriftDatabaseRepository { query.limit(count, offset: offset); - return query.map((row) => row.readTable(_db.remoteAssetEntity).toDto()).get(); + return query + .map((row) => row.readTable(_db.remoteAssetEntity).toDto(localId: row.read(_db.localAssetEntity.id))) + .get(); } TimelineQuery fromAssets(List assets) => ( bucketSource: () => Stream.value(_generateBuckets(assets.length)), - assetSource: (offset, count) => Future.value(assets.skip(offset).take(count).toList()), + assetSource: (offset, count) => Future.value(assets.skip(offset).take(count).toList(growable: false)), ); TimelineQuery remote(String ownerId, GroupAssetsBy groupBy) => _remoteQueryBuilder( @@ -486,6 +488,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { return query.map((row) => row.readTable(_db.remoteAssetEntity).toDto()).get(); } + @pragma('vm:prefer-inline') TimelineQuery _remoteQueryBuilder({ required Expression Function($RemoteAssetEntityTable row) filter, GroupAssetsBy groupBy = GroupAssetsBy.day, @@ -523,6 +526,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { }).watch(); } + @pragma('vm:prefer-inline') Future> _getRemoteAssets({ required Expression Function($RemoteAssetEntityTable row) filter, required int offset, @@ -543,11 +547,9 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(_db.remoteAssetEntity.createdAt)]) ..limit(count, offset: offset); - return query.map((row) { - final asset = row.readTable(_db.remoteAssetEntity).toDto(); - final localId = row.read(_db.localAssetEntity.id); - return asset.copyWith(localId: localId); - }).get(); + return query + .map((row) => row.readTable(_db.remoteAssetEntity).toDto(localId: row.read(_db.localAssetEntity.id))) + .get(); } else { final query = _db.remoteAssetEntity.select() ..where(filter) @@ -560,12 +562,12 @@ class DriftTimelineRepository extends DriftDatabaseRepository { } List _generateBuckets(int count) { - final buckets = List.generate( - (count / kTimelineNoneSegmentSize).floor(), - (_) => const Bucket(assetCount: kTimelineNoneSegmentSize), + final buckets = List.filled( + (count / kTimelineNoneSegmentSize).ceil(), + const Bucket(assetCount: kTimelineNoneSegmentSize), ); if (count % kTimelineNoneSegmentSize != 0) { - buckets.add(Bucket(assetCount: count % kTimelineNoneSegmentSize)); + buckets[buckets.length - 1] = Bucket(assetCount: count % kTimelineNoneSegmentSize); } return buckets; } @@ -590,10 +592,6 @@ extension on String { GroupAssetsBy.month => "y-M", GroupAssetsBy.none => throw ArgumentError("GroupAssetsBy.none is not supported for date formatting"), }; - try { - return DateFormat(format, 'en').parse(this); - } catch (e) { - throw FormatException("Invalid date format: $this", e); - } + return DateFormat(format, 'en').parse(this); } } From 3bcb4b7af7b903cf6d2df6933b6ad092b12296ce Mon Sep 17 00:00:00 2001 From: Mert <101130780+mertalev@users.noreply.github.com> Date: Thu, 25 Sep 2025 20:20:42 -0400 Subject: [PATCH 41/60] fix(mobile): scrubbing mode on scroll to date event (#22390) --- .../widgets/timeline/timeline.widget.dart | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/mobile/lib/presentation/widgets/timeline/timeline.widget.dart b/mobile/lib/presentation/widgets/timeline/timeline.widget.dart index c38116c64e..83e679b8c1 100644 --- a/mobile/lib/presentation/widgets/timeline/timeline.widget.dart +++ b/mobile/lib/presentation/widgets/timeline/timeline.widget.dart @@ -212,11 +212,14 @@ class _SliverTimelineState extends ConsumerState<_SliverTimeline> { if (fallbackSegment != null) { // Scroll to the segment with a small offset to show the header final targetOffset = fallbackSegment.startOffset - 50; - _scrollController.animateTo( - targetOffset.clamp(0.0, _scrollController.position.maxScrollExtent), - duration: const Duration(milliseconds: 500), - curve: Curves.easeInOut, - ); + ref.read(timelineStateProvider.notifier).setScrubbing(true); + _scrollController + .animateTo( + targetOffset.clamp(0.0, _scrollController.position.maxScrollExtent), + duration: const Duration(milliseconds: 500), + curve: Curves.easeInOut, + ) + .whenComplete(() => ref.read(timelineStateProvider.notifier).setScrubbing(false)); } }); } From 61e5c6349cd2ff613f3e527cdeab4e1757c32c4f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 26 Sep 2025 14:26:47 +0200 Subject: [PATCH 42/60] chore(deps): update github-actions (#22311) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/build-mobile.yml | 6 +++--- .github/workflows/docker.yml | 2 +- .github/workflows/docs-build.yml | 2 +- .github/workflows/fix-format.yml | 2 +- .github/workflows/merge-translations.yml | 2 +- .github/workflows/prepare-release.yml | 4 ++-- .github/workflows/static_analysis.yml | 2 +- .github/workflows/test.yml | 2 +- .github/workflows/weblate-lock.yml | 2 +- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/build-mobile.yml b/.github/workflows/build-mobile.yml index 1b57731b23..0996c8eccb 100644 --- a/.github/workflows/build-mobile.yml +++ b/.github/workflows/build-mobile.yml @@ -36,7 +36,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | mobile: @@ -73,7 +73,7 @@ jobs: - name: Restore Gradle Cache id: cache-gradle-restore - uses: actions/cache/restore@0400d5f644dc74513175e3cd8d07132dd4860809 # v4 + uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 with: path: | ~/.gradle/caches @@ -130,7 +130,7 @@ jobs: - name: Save Gradle Cache id: cache-gradle-save - uses: actions/cache/save@0400d5f644dc74513175e3cd8d07132dd4860809 # v4 + uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 if: github.ref == 'refs/heads/main' with: path: | diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index a630d27809..09528346fc 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -24,7 +24,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | server: diff --git a/.github/workflows/docs-build.yml b/.github/workflows/docs-build.yml index 9a35a0ae91..0879c30386 100644 --- a/.github/workflows/docs-build.yml +++ b/.github/workflows/docs-build.yml @@ -22,7 +22,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | docs: diff --git a/.github/workflows/fix-format.yml b/.github/workflows/fix-format.yml index bec34c2713..849de79a47 100644 --- a/.github/workflows/fix-format.yml +++ b/.github/workflows/fix-format.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Generate a token id: generate-token - uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1 + uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4 with: app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} diff --git a/.github/workflows/merge-translations.yml b/.github/workflows/merge-translations.yml index d65567d400..d494460320 100644 --- a/.github/workflows/merge-translations.yml +++ b/.github/workflows/merge-translations.yml @@ -58,7 +58,7 @@ jobs: - name: Generate a token id: generate_token if: ${{ inputs.skip != true }} - uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1 + uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4 with: app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} diff --git a/.github/workflows/prepare-release.yml b/.github/workflows/prepare-release.yml index 835e88938f..8b6dc0af1c 100644 --- a/.github/workflows/prepare-release.yml +++ b/.github/workflows/prepare-release.yml @@ -49,7 +49,7 @@ jobs: steps: - name: Generate a token id: generate-token - uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1 + uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4 with: app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} @@ -111,7 +111,7 @@ jobs: steps: - name: Generate a token id: generate-token - uses: actions/create-github-app-token@a8d616148505b5069dccd32f177bb87d7f39123b # v2.1.1 + uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4 with: app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml index f5e68fb42d..d30f95422c 100644 --- a/.github/workflows/static_analysis.yml +++ b/.github/workflows/static_analysis.yml @@ -21,7 +21,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | mobile: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 773d14e171..ffc5b41f73 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,7 +18,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | i18n: diff --git a/.github/workflows/weblate-lock.yml b/.github/workflows/weblate-lock.yml index 36544d4eed..d7deb244f9 100644 --- a/.github/workflows/weblate-lock.yml +++ b/.github/workflows/weblate-lock.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Check what should run id: check - uses: immich-app/devtools/actions/pre-job@24820aa4ef67959b0dcf69a438cccf00d7c7042b # pre-job-action-v1.0.1 + uses: immich-app/devtools/actions/pre-job@5f91b52dfbb92b8d96ca411ab59c896cd59714ca # pre-job-action-v1.1.0 with: filters: | i18n: From 8a3684c12733d036eeb4eb815abc911a616f4bd3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 26 Sep 2025 14:26:55 +0200 Subject: [PATCH 43/60] chore(deps): update ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0 docker digest to 41eacbe (#22305) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- docker/docker-compose.dev.yml | 2 +- docker/docker-compose.prod.yml | 2 +- docker/docker-compose.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docker/docker-compose.dev.yml b/docker/docker-compose.dev.yml index f97cf0ca0d..bd41ed8d62 100644 --- a/docker/docker-compose.dev.yml +++ b/docker/docker-compose.dev.yml @@ -140,7 +140,7 @@ services: database: container_name: immich_postgres - image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:c44be5f2871c59362966d71eab4268170eb6f5653c0e6170184e72b38ffdf107 + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:41eacbe83eca995561fe43814fd4891e16e39632806253848efaf04d3c8a8b84 env_file: - .env environment: diff --git a/docker/docker-compose.prod.yml b/docker/docker-compose.prod.yml index c3fb9c7736..dcdfc72c82 100644 --- a/docker/docker-compose.prod.yml +++ b/docker/docker-compose.prod.yml @@ -63,7 +63,7 @@ services: database: container_name: immich_postgres - image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:c44be5f2871c59362966d71eab4268170eb6f5653c0e6170184e72b38ffdf107 + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:41eacbe83eca995561fe43814fd4891e16e39632806253848efaf04d3c8a8b84 env_file: - .env environment: diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 3316c17839..c3ded93ba9 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -56,7 +56,7 @@ services: database: container_name: immich_postgres - image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:c44be5f2871c59362966d71eab4268170eb6f5653c0e6170184e72b38ffdf107 + image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:41eacbe83eca995561fe43814fd4891e16e39632806253848efaf04d3c8a8b84 environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} From 30a378c5805f4de43ae13d99b467df06f74967a1 Mon Sep 17 00:00:00 2001 From: Brandon Wees Date: Fri, 26 Sep 2025 12:11:12 -0500 Subject: [PATCH 44/60] fix: local assets should not be added to album (#22304) --- i18n/en.json | 1 + .../general_bottom_sheet.widget.dart | 23 ++++++++++++++----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/i18n/en.json b/i18n/en.json index 23e1071a2d..b142dc7fca 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -28,6 +28,7 @@ "add_to_album": "Add to album", "add_to_album_bottom_sheet_added": "Added to {album}", "add_to_album_bottom_sheet_already_exists": "Already in {album}", + "add_to_album_bottom_sheet_some_local_assets": "Some local assets could not be added to album", "add_to_album_toggle": "Toggle selection for {album}", "add_to_albums": "Add to albums", "add_to_albums_count": "Add to albums ({count})", diff --git a/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart index 73ebf60067..e50ed47368 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart @@ -5,6 +5,7 @@ import 'package:immich_mobile/constants/enums.dart'; import 'package:immich_mobile/domain/models/album/album.model.dart'; import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; import 'package:immich_mobile/domain/models/setting.model.dart'; +import 'package:immich_mobile/extensions/translate_extensions.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/advanced_info_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/archive_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/delete_action_button.widget.dart'; @@ -62,11 +63,19 @@ class _GeneralBottomSheetState extends ConsumerState { return; } + final remoteAssets = selectedAssets.whereType(); final addedCount = await ref .read(remoteAlbumProvider.notifier) - .addAssets(album.id, selectedAssets.map((e) => (e as RemoteAsset).id).toList()); + .addAssets(album.id, remoteAssets.map((e) => e.id).toList()); - if (addedCount != selectedAssets.length) { + if (selectedAssets.length != remoteAssets.length) { + ImmichToast.show( + context: context, + msg: 'add_to_album_bottom_sheet_some_local_assets'.t(context: context), + ); + } + + if (addedCount != remoteAssets.length) { ImmichToast.show( context: context, msg: 'add_to_album_bottom_sheet_already_exists'.tr(namedArgs: {"album": album.name}), @@ -113,10 +122,12 @@ class _GeneralBottomSheetState extends ConsumerState { if (multiselect.hasLocal || multiselect.hasMerged) const DeleteLocalActionButton(source: ActionSource.timeline), if (multiselect.hasLocal) const UploadActionButton(source: ActionSource.timeline), ], - slivers: [ - const AddToAlbumHeader(), - AlbumSelector(onAlbumSelected: addAssetsToAlbum, onKeyboardExpanded: onKeyboardExpand), - ], + slivers: multiselect.hasRemote + ? [ + const AddToAlbumHeader(), + AlbumSelector(onAlbumSelected: addAssetsToAlbum, onKeyboardExpanded: onKeyboardExpand), + ] + : [], ); } } From 7d8cd05bc2113406d621cc2ed0746b5915d3d3c5 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Fri, 26 Sep 2025 23:05:46 +0530 Subject: [PATCH 45/60] fix: remote album timeline filter (#22423) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/infrastructure/repositories/timeline.repository.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/infrastructure/repositories/timeline.repository.dart b/mobile/lib/infrastructure/repositories/timeline.repository.dart index 06722ca17a..033c146f97 100644 --- a/mobile/lib/infrastructure/repositories/timeline.repository.dart +++ b/mobile/lib/infrastructure/repositories/timeline.repository.dart @@ -229,7 +229,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { _db.remoteAssetEntity.checksum.equalsExp(_db.localAssetEntity.checksum), useColumns: false, ), - ])..where(_db.remoteAssetEntity.deletedAt.isNull() & _db.remoteAssetEntity.id.equals(albumId)); + ])..where(_db.remoteAssetEntity.deletedAt.isNull() & _db.remoteAlbumAssetEntity.albumId.equals(albumId)); if (isAscending) { query.orderBy([OrderingTerm.asc(_db.remoteAssetEntity.createdAt)]); From 8de7eed9409a68f0e2c4d28c66b79cb188dd2532 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Sun, 28 Sep 2025 06:51:38 +0530 Subject: [PATCH 46/60] feat(mobile): add unstack button (#21869) * fix: add unstack button * feat: allow unstacking inside of asset viewer * chore: update tests * chore: rework unstacking in asset viewer --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: bwees --- .../unstack_action_button.widget.dart | 2 +- .../asset_viewer/bottom_sheet.widget.dart | 1 + .../archive_bottom_sheet.widget.dart | 2 + .../favorite_bottom_sheet.widget.dart | 2 + .../general_bottom_sheet.widget.dart | 2 + .../remote_album_bottom_sheet.widget.dart | 2 + .../infrastructure/action.provider.dart | 13 +++ .../timeline/multiselect.provider.dart | 2 + mobile/lib/utils/action_button.utils.dart | 27 ++--- .../test/utils/action_button_utils_test.dart | 110 ++++++++++++++++++ 10 files changed, 145 insertions(+), 18 deletions(-) diff --git a/mobile/lib/presentation/widgets/action_buttons/unstack_action_button.widget.dart b/mobile/lib/presentation/widgets/action_buttons/unstack_action_button.widget.dart index ecc8a39c74..a07803ace5 100644 --- a/mobile/lib/presentation/widgets/action_buttons/unstack_action_button.widget.dart +++ b/mobile/lib/presentation/widgets/action_buttons/unstack_action_button.widget.dart @@ -36,7 +36,7 @@ class UnStackActionButton extends ConsumerWidget { @override Widget build(BuildContext context, WidgetRef ref) { return BaseActionButton( - iconData: Icons.filter_none_rounded, + iconData: Icons.layers_clear_outlined, label: "unstack".t(context: context), onPressed: () => _onTap(context, ref), ); diff --git a/mobile/lib/presentation/widgets/asset_viewer/bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/asset_viewer/bottom_sheet.widget.dart index 7431290ad8..2586789beb 100644 --- a/mobile/lib/presentation/widgets/asset_viewer/bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/asset_viewer/bottom_sheet.widget.dart @@ -51,6 +51,7 @@ class AssetDetailBottomSheet extends ConsumerWidget { isArchived: isArchived, isTrashEnabled: isTrashEnable, isInLockedView: isInLockedView, + isStacked: asset.hasRemote && (asset as RemoteAsset).stackId != null, currentAlbum: currentAlbum, advancedTroubleshooting: advancedTroubleshooting, source: ActionSource.viewer, diff --git a/mobile/lib/presentation/widgets/bottom_sheet/archive_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/archive_bottom_sheet.widget.dart index 558df4e496..f40e189e18 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/archive_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/archive_bottom_sheet.widget.dart @@ -13,6 +13,7 @@ import 'package:immich_mobile/presentation/widgets/action_buttons/share_link_act import 'package:immich_mobile/presentation/widgets/action_buttons/stack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/trash_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/unarchive_action_button.widget.dart'; +import 'package:immich_mobile/presentation/widgets/action_buttons/unstack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/upload_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/base_bottom_sheet.widget.dart'; import 'package:immich_mobile/providers/server_info.provider.dart'; @@ -44,6 +45,7 @@ class ArchiveBottomSheet extends ConsumerWidget { const EditLocationActionButton(source: ActionSource.timeline), const MoveToLockFolderActionButton(source: ActionSource.timeline), if (multiselect.selectedAssets.length > 1) const StackActionButton(source: ActionSource.timeline), + if (multiselect.hasStacked) const UnStackActionButton(source: ActionSource.timeline), ], if (multiselect.hasLocal) ...[ const DeleteLocalActionButton(source: ActionSource.timeline), diff --git a/mobile/lib/presentation/widgets/bottom_sheet/favorite_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/favorite_bottom_sheet.widget.dart index a162dbbfb2..c7a0fbab40 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/favorite_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/favorite_bottom_sheet.widget.dart @@ -13,6 +13,7 @@ import 'package:immich_mobile/presentation/widgets/action_buttons/share_link_act import 'package:immich_mobile/presentation/widgets/action_buttons/stack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/trash_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/unfavorite_action_button.widget.dart'; +import 'package:immich_mobile/presentation/widgets/action_buttons/unstack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/upload_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/base_bottom_sheet.widget.dart'; import 'package:immich_mobile/providers/server_info.provider.dart'; @@ -44,6 +45,7 @@ class FavoriteBottomSheet extends ConsumerWidget { const EditLocationActionButton(source: ActionSource.timeline), const MoveToLockFolderActionButton(source: ActionSource.timeline), if (multiselect.selectedAssets.length > 1) const StackActionButton(source: ActionSource.timeline), + if (multiselect.hasStacked) const UnStackActionButton(source: ActionSource.timeline), ], if (multiselect.hasLocal) ...[ const DeleteLocalActionButton(source: ActionSource.timeline), diff --git a/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart index e50ed47368..9436707c84 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/general_bottom_sheet.widget.dart @@ -20,6 +20,7 @@ import 'package:immich_mobile/presentation/widgets/action_buttons/share_action_b import 'package:immich_mobile/presentation/widgets/action_buttons/share_link_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/stack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/trash_action_button.widget.dart'; +import 'package:immich_mobile/presentation/widgets/action_buttons/unstack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/upload_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/album/album_selector.widget.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/base_bottom_sheet.widget.dart'; @@ -117,6 +118,7 @@ class _GeneralBottomSheetState extends ConsumerState { const EditLocationActionButton(source: ActionSource.timeline), const MoveToLockFolderActionButton(source: ActionSource.timeline), if (multiselect.selectedAssets.length > 1) const StackActionButton(source: ActionSource.timeline), + if (multiselect.hasStacked) const UnStackActionButton(source: ActionSource.timeline), const DeleteActionButton(source: ActionSource.timeline), ], if (multiselect.hasLocal || multiselect.hasMerged) const DeleteLocalActionButton(source: ActionSource.timeline), diff --git a/mobile/lib/presentation/widgets/bottom_sheet/remote_album_bottom_sheet.widget.dart b/mobile/lib/presentation/widgets/bottom_sheet/remote_album_bottom_sheet.widget.dart index 1dcc52f349..0ab419a56b 100644 --- a/mobile/lib/presentation/widgets/bottom_sheet/remote_album_bottom_sheet.widget.dart +++ b/mobile/lib/presentation/widgets/bottom_sheet/remote_album_bottom_sheet.widget.dart @@ -17,6 +17,7 @@ import 'package:immich_mobile/presentation/widgets/action_buttons/share_action_b import 'package:immich_mobile/presentation/widgets/action_buttons/share_link_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/stack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/trash_action_button.widget.dart'; +import 'package:immich_mobile/presentation/widgets/action_buttons/unstack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/upload_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/album/album_selector.widget.dart'; import 'package:immich_mobile/presentation/widgets/bottom_sheet/base_bottom_sheet.widget.dart'; @@ -102,6 +103,7 @@ class _RemoteAlbumBottomSheetState extends ConsumerState const EditLocationActionButton(source: ActionSource.timeline), const MoveToLockFolderActionButton(source: ActionSource.timeline), if (multiselect.selectedAssets.length > 1) const StackActionButton(source: ActionSource.timeline), + if (multiselect.hasStacked) const UnStackActionButton(source: ActionSource.timeline), ], if (multiselect.hasLocal) ...[ const DeleteLocalActionButton(source: ActionSource.timeline), diff --git a/mobile/lib/providers/infrastructure/action.provider.dart b/mobile/lib/providers/infrastructure/action.provider.dart index 9a343aa358..77ac6595a7 100644 --- a/mobile/lib/providers/infrastructure/action.provider.dart +++ b/mobile/lib/providers/infrastructure/action.provider.dart @@ -3,7 +3,10 @@ import 'package:background_downloader/background_downloader.dart'; import 'package:flutter/material.dart'; import 'package:immich_mobile/constants/enums.dart'; import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; +import 'package:immich_mobile/domain/services/asset.service.dart'; import 'package:immich_mobile/models/download/livephotos_medatada.model.dart'; +import 'package:immich_mobile/presentation/widgets/asset_viewer/asset_viewer.state.dart'; +import 'package:immich_mobile/providers/infrastructure/asset.provider.dart'; import 'package:immich_mobile/providers/infrastructure/asset_viewer/current_asset.provider.dart'; import 'package:immich_mobile/providers/timeline/multiselect.provider.dart'; import 'package:immich_mobile/providers/user.provider.dart'; @@ -36,6 +39,7 @@ class ActionNotifier extends Notifier { late ActionService _service; late UploadService _uploadService; late DownloadService _downloadService; + late AssetService _assetService; ActionNotifier() : super(); @@ -43,6 +47,7 @@ class ActionNotifier extends Notifier { void build() { _uploadService = ref.watch(uploadServiceProvider); _service = ref.watch(actionServiceProvider); + _assetService = ref.watch(assetServiceProvider); _downloadService = ref.watch(downloadServiceProvider); _downloadService.onImageDownloadStatus = _downloadImageCallback; _downloadService.onVideoDownloadStatus = _downloadVideoCallback; @@ -335,6 +340,14 @@ class ActionNotifier extends Notifier { final assets = _getOwnedRemoteAssetsForSource(source); try { await _service.unStack(assets.map((e) => e.stackId).nonNulls.toList()); + if (source == ActionSource.viewer) { + final updatedParent = await _assetService.getRemoteAsset(assets.first.id); + if (updatedParent != null) { + ref.read(currentAssetNotifier.notifier).setAsset(updatedParent); + ref.read(assetViewerProvider.notifier).setAsset(updatedParent); + } + } + return ActionResult(count: assets.length, success: true); } catch (error, stack) { _logger.severe('Failed to unstack assets', error, stack); diff --git a/mobile/lib/providers/timeline/multiselect.provider.dart b/mobile/lib/providers/timeline/multiselect.provider.dart index e225e0c98d..6949413cd9 100644 --- a/mobile/lib/providers/timeline/multiselect.provider.dart +++ b/mobile/lib/providers/timeline/multiselect.provider.dart @@ -28,6 +28,8 @@ class MultiSelectState { bool get hasRemote => selectedAssets.any((asset) => asset.storage == AssetState.remote || asset.storage == AssetState.merged); + bool get hasStacked => selectedAssets.any((asset) => asset is RemoteAsset && asset.stackId != null); + bool get hasLocal => selectedAssets.any((asset) => asset.storage == AssetState.local); bool get hasMerged => selectedAssets.any((asset) => asset.storage == AssetState.merged); diff --git a/mobile/lib/utils/action_button.utils.dart b/mobile/lib/utils/action_button.utils.dart index 090aeeeaa7..c5a2583531 100644 --- a/mobile/lib/utils/action_button.utils.dart +++ b/mobile/lib/utils/action_button.utils.dart @@ -16,6 +16,7 @@ import 'package:immich_mobile/presentation/widgets/action_buttons/share_action_b import 'package:immich_mobile/presentation/widgets/action_buttons/share_link_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/trash_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/unarchive_action_button.widget.dart'; +import 'package:immich_mobile/presentation/widgets/action_buttons/unstack_action_button.widget.dart'; import 'package:immich_mobile/presentation/widgets/action_buttons/upload_action_button.widget.dart'; class ActionButtonContext { @@ -24,6 +25,7 @@ class ActionButtonContext { final bool isArchived; final bool isTrashEnabled; final bool isInLockedView; + final bool isStacked; final RemoteAlbum? currentAlbum; final bool advancedTroubleshooting; final ActionSource source; @@ -33,6 +35,7 @@ class ActionButtonContext { required this.isOwner, required this.isArchived, required this.isTrashEnabled, + required this.isStacked, required this.isInLockedView, required this.currentAlbum, required this.advancedTroubleshooting, @@ -55,6 +58,7 @@ enum ActionButtonType { deleteLocal, upload, removeFromAlbum, + unstack, likeActivity; bool shouldShow(ActionButtonContext context) { @@ -110,6 +114,10 @@ enum ActionButtonType { context.isOwner && // !context.isInLockedView && // context.currentAlbum != null, + ActionButtonType.unstack => + context.isOwner && // + !context.isInLockedView && // + context.isStacked, ActionButtonType.likeActivity => !context.isInLockedView && context.currentAlbum != null && @@ -138,28 +146,13 @@ enum ActionButtonType { source: context.source, ), ActionButtonType.likeActivity => const LikeActivityActionButton(), + ActionButtonType.unstack => UnStackActionButton(source: context.source), }; } } class ActionButtonBuilder { - static const List _actionTypes = [ - ActionButtonType.advancedInfo, - ActionButtonType.share, - ActionButtonType.shareLink, - ActionButtonType.likeActivity, - ActionButtonType.archive, - ActionButtonType.unarchive, - ActionButtonType.download, - ActionButtonType.trash, - ActionButtonType.deletePermanent, - ActionButtonType.delete, - ActionButtonType.moveToLockFolder, - ActionButtonType.removeFromLockFolder, - ActionButtonType.deleteLocal, - ActionButtonType.upload, - ActionButtonType.removeFromAlbum, - ]; + static const List _actionTypes = ActionButtonType.values; static List build(ActionButtonContext context) { return _actionTypes.where((type) => type.shouldShow(context)).map((type) => type.buildButton(context)).toList(); diff --git a/mobile/test/utils/action_button_utils_test.dart b/mobile/test/utils/action_button_utils_test.dart index f8c51173d7..274176ae88 100644 --- a/mobile/test/utils/action_button_utils_test.dart +++ b/mobile/test/utils/action_button_utils_test.dart @@ -82,6 +82,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -112,6 +113,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -127,6 +129,7 @@ void main() { isInLockedView: true, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -145,6 +148,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -161,6 +165,7 @@ void main() { isInLockedView: true, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -177,6 +182,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -195,6 +201,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -211,6 +218,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -227,6 +235,7 @@ void main() { isInLockedView: true, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -243,6 +252,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -259,6 +269,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -277,6 +288,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -293,6 +305,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -309,6 +322,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -327,6 +341,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -343,6 +358,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -359,6 +375,7 @@ void main() { isInLockedView: true, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -377,6 +394,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -393,6 +411,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -411,6 +430,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -427,6 +447,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -445,6 +466,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -463,6 +485,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -481,6 +504,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -497,6 +521,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -512,6 +537,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -530,6 +556,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -548,6 +575,7 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -563,6 +591,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -581,6 +610,7 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -597,6 +627,7 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -613,6 +644,7 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -628,6 +660,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -645,6 +678,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: true, + isStacked: false, source: ActionSource.timeline, ); @@ -660,6 +694,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -668,6 +703,59 @@ void main() { }); }); + group('unstack button', () { + test('should show when owner, not locked, has remote, and is stacked', () { + final remoteAsset = createRemoteAsset(); + final context = ActionButtonContext( + asset: remoteAsset, + isOwner: true, + isArchived: false, + isTrashEnabled: true, + isInLockedView: false, + currentAlbum: null, + advancedTroubleshooting: false, + isStacked: true, + source: ActionSource.timeline, + ); + + expect(ActionButtonType.unstack.shouldShow(context), isTrue); + }); + + test('should not show when not stacked', () { + final remoteAsset = createRemoteAsset(); + final context = ActionButtonContext( + asset: remoteAsset, + isOwner: true, + isArchived: false, + isTrashEnabled: true, + isInLockedView: false, + currentAlbum: null, + advancedTroubleshooting: false, + isStacked: false, + source: ActionSource.timeline, + ); + + expect(ActionButtonType.unstack.shouldShow(context), isFalse); + }); + + test('should not show when not owner', () { + final remoteAsset = createRemoteAsset(); + final context = ActionButtonContext( + asset: remoteAsset, + isOwner: false, + isArchived: true, + isTrashEnabled: true, + isInLockedView: false, + currentAlbum: null, + advancedTroubleshooting: false, + isStacked: false, + source: ActionSource.timeline, + ); + + expect(ActionButtonType.unstack.shouldShow(context), isFalse); + }); + }); + group('ActionButtonType.buildButton', () { late BaseAsset asset; late ActionButtonContext context; @@ -682,6 +770,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); }); @@ -698,6 +787,22 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, + source: ActionSource.timeline, + ); + final widget = buttonType.buildButton(contextWithAlbum); + expect(widget, isA()); + } else if (buttonType == ActionButtonType.unstack) { + final album = createRemoteAlbum(); + final contextWithAlbum = ActionButtonContext( + asset: asset, + isOwner: true, + isArchived: false, + isTrashEnabled: true, + isInLockedView: false, + currentAlbum: album, + advancedTroubleshooting: false, + isStacked: true, source: ActionSource.timeline, ); final widget = buttonType.buildButton(contextWithAlbum); @@ -721,6 +826,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -741,6 +847,7 @@ void main() { isInLockedView: false, currentAlbum: album, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -759,6 +866,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -778,6 +886,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); @@ -791,6 +900,7 @@ void main() { isInLockedView: false, currentAlbum: null, advancedTroubleshooting: false, + isStacked: false, source: ActionSource.timeline, ); From df469cc4122b2abdabb8dd83b1f93219ed8f7b46 Mon Sep 17 00:00:00 2001 From: Brandon Wees Date: Sat, 27 Sep 2025 21:27:34 -0500 Subject: [PATCH 47/60] feat: show motion photo icon on mobile timeline tile (#22454) * feat: show motion photo icon on timeline tile * chore: switch to private widget for asset type icons * chore: small cleanup on asset type icons widget --- .../widgets/images/thumbnail_tile.widget.dart | 48 +++++++++++++------ 1 file changed, 33 insertions(+), 15 deletions(-) diff --git a/mobile/lib/presentation/widgets/images/thumbnail_tile.widget.dart b/mobile/lib/presentation/widgets/images/thumbnail_tile.widget.dart index cfcb7a8985..a0163a7220 100644 --- a/mobile/lib/presentation/widgets/images/thumbnail_tile.widget.dart +++ b/mobile/lib/presentation/widgets/images/thumbnail_tile.widget.dart @@ -54,8 +54,6 @@ class ThumbnailTile extends ConsumerWidget { ) : const BoxDecoration(); - final hasStack = asset is RemoteAsset && asset.stackId != null; - final bool storageIndicator = showStorageIndicator ?? ref.watch(settingsProvider.select((s) => s.get(Setting.showStorageIndicator))); @@ -77,21 +75,10 @@ class ThumbnailTile extends ConsumerWidget { child: Thumbnail.fromAsset(asset: asset, size: size), ), ), - if (hasStack) + if (asset != null) Align( alignment: Alignment.topRight, - child: Padding( - padding: EdgeInsets.only(right: 10.0, top: asset.isVideo ? 24.0 : 6.0), - child: const _TileOverlayIcon(Icons.burst_mode_rounded), - ), - ), - if (asset != null && asset.isVideo) - Align( - alignment: Alignment.topRight, - child: Padding( - padding: const EdgeInsets.only(right: 10.0, top: 6.0), - child: _VideoIndicator(asset.duration), - ), + child: _AssetTypeIcons(asset: asset), ), if (storageIndicator && asset != null) switch (asset.storage) { @@ -214,3 +201,34 @@ class _TileOverlayIcon extends StatelessWidget { ); } } + +class _AssetTypeIcons extends StatelessWidget { + final BaseAsset asset; + + const _AssetTypeIcons({required this.asset}); + + @override + Widget build(BuildContext context) { + final hasStack = asset is RemoteAsset && (asset as RemoteAsset).stackId != null; + final isLivePhoto = asset is RemoteAsset && asset.livePhotoVideoId != null; + + return Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + if (asset.isVideo) + Padding(padding: const EdgeInsets.only(right: 10.0, top: 6.0), child: _VideoIndicator(asset.duration)), + if (hasStack) + const Padding( + padding: EdgeInsets.only(right: 10.0, top: 6.0), + child: _TileOverlayIcon(Icons.burst_mode_rounded), + ), + if (isLivePhoto) + const Padding( + padding: EdgeInsets.only(right: 10.0, top: 6.0), + child: _TileOverlayIcon(Icons.motion_photos_on_rounded), + ), + ], + ); + } +} From cdbe1d7f104e65bc73162c5f1de347cb9b723337 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Sun, 28 Sep 2025 07:58:07 +0530 Subject: [PATCH 48/60] chore: show download button for remote only assets (#22453) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- .../presentation/widgets/asset_viewer/top_app_bar.widget.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart b/mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart index 0159e04c4e..10c9821eb0 100644 --- a/mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart +++ b/mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart @@ -57,7 +57,7 @@ class ViewerTopAppBar extends ConsumerWidget implements PreferredSizeWidget { final isCasting = ref.watch(castProvider.select((c) => c.isCasting)); final actions = [ - if (asset.hasRemote) const DownloadActionButton(source: ActionSource.viewer, menuItem: true), + if (asset.isRemoteOnly) const DownloadActionButton(source: ActionSource.viewer, menuItem: true), if (isCasting || (asset.hasRemote)) const CastActionButton(menuItem: true), if (album != null && album.isActivityEnabled && album.isShared) IconButton( From bea116e1b96716decb7edbaa99fa4ad6cb59e915 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Sun, 28 Sep 2025 07:59:28 +0530 Subject: [PATCH 49/60] fix: prefer remote images in new timeline (#22452) fix: prefer remote images in new thumbnail Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- .../widgets/images/image_provider.dart | 22 ++++--------------- .../widgets/images/thumbnail.widget.dart | 10 +-------- 2 files changed, 5 insertions(+), 27 deletions(-) diff --git a/mobile/lib/presentation/widgets/images/image_provider.dart b/mobile/lib/presentation/widgets/images/image_provider.dart index ab5ead5ca5..810340aeb8 100644 --- a/mobile/lib/presentation/widgets/images/image_provider.dart +++ b/mobile/lib/presentation/widgets/images/image_provider.dart @@ -123,28 +123,14 @@ ImageProvider getFullImageProvider(BaseAsset asset, {Size size = const Size(1080 return provider; } -ImageProvider getThumbnailImageProvider({BaseAsset? asset, String? remoteId, Size size = kThumbnailResolution}) { - assert(asset != null || remoteId != null, 'Either asset or remoteId must be provided'); - - if (remoteId != null) { - return RemoteThumbProvider(assetId: remoteId); - } - - if (_shouldUseLocalAsset(asset!)) { +ImageProvider? getThumbnailImageProvider(BaseAsset asset, {Size size = kThumbnailResolution}) { + if (_shouldUseLocalAsset(asset)) { final id = asset is LocalAsset ? asset.id : (asset as RemoteAsset).localId!; return LocalThumbProvider(id: id, size: size, assetType: asset.type); } - final String assetId; - if (asset is LocalAsset && asset.hasRemote) { - assetId = asset.remoteId!; - } else if (asset is RemoteAsset) { - assetId = asset.id; - } else { - throw ArgumentError("Unsupported asset type: ${asset.runtimeType}"); - } - - return RemoteThumbProvider(assetId: assetId); + final assetId = asset is RemoteAsset ? asset.id : (asset as LocalAsset).remoteId; + return assetId != null ? RemoteThumbProvider(assetId: assetId) : null; } bool _shouldUseLocalAsset(BaseAsset asset) => diff --git a/mobile/lib/presentation/widgets/images/thumbnail.widget.dart b/mobile/lib/presentation/widgets/images/thumbnail.widget.dart index 3832029702..92b1bb2544 100644 --- a/mobile/lib/presentation/widgets/images/thumbnail.widget.dart +++ b/mobile/lib/presentation/widgets/images/thumbnail.widget.dart @@ -5,7 +5,6 @@ import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/extensions/theme_extensions.dart'; import 'package:immich_mobile/presentation/widgets/images/image_provider.dart'; -import 'package:immich_mobile/presentation/widgets/images/local_image_provider.dart'; import 'package:immich_mobile/presentation/widgets/images/remote_image_provider.dart'; import 'package:immich_mobile/presentation/widgets/images/thumb_hash_provider.dart'; import 'package:immich_mobile/presentation/widgets/timeline/constants.dart'; @@ -39,14 +38,7 @@ class Thumbnail extends StatefulWidget { ), _ => null, }, - imageProvider = switch (asset) { - RemoteAsset() => - asset.localId == null - ? RemoteThumbProvider(assetId: asset.id) - : LocalThumbProvider(id: asset.localId!, size: size, assetType: asset.type), - LocalAsset() => LocalThumbProvider(id: asset.id, size: size, assetType: asset.type), - _ => null, - }; + imageProvider = asset == null ? null : getThumbnailImageProvider(asset, size: size); @override State createState() => _ThumbnailState(); From fea5e6783cc4ed76d0fb5bb636cfef7c49042ed5 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Mon, 29 Sep 2025 20:23:40 +0530 Subject: [PATCH 50/60] fix: merged timeline orderby localtime (#22371) * chore: refactor dateFmt to truncateDate * fix: merged timeline orderby localtime --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mise.toml | 7 +- .../drift_schemas/main/drift_schema_v12.json | 1 + .../domain/services/local_sync.service.dart | 6 +- .../repositories/db.repository.dart | 21 +- .../repositories/db.repository.steps.dart | 386 + .../repositories/timeline.repository.dart | 16 +- mobile/lib/utils/datetime_helpers.dart | 4 +- mobile/test/drift/main/generated/schema.dart | 5 +- .../test/drift/main/generated/schema_v12.dart | 7198 +++++++++++++++++ 9 files changed, 7628 insertions(+), 16 deletions(-) create mode 100644 mobile/drift_schemas/main/drift_schema_v12.json create mode 100644 mobile/test/drift/main/generated/schema_v12.dart diff --git a/mise.toml b/mise.toml index 51dc3b1606..2f98f2e9d5 100644 --- a/mise.toml +++ b/mise.toml @@ -315,7 +315,12 @@ run = [ alias = "mobile:codegen" description = "Execute build_runner to auto-generate dart code" dir = "mobile" -sources = ["pubspec.yaml", "build.yaml", "lib/**/*.dart"] +sources = [ + "pubspec.yaml", + "build.yaml", + "lib/**/*.dart", + "infrastructure/**/*.drift", +] outputs = { auto = true } run = "dart run build_runner build --delete-conflicting-outputs" diff --git a/mobile/drift_schemas/main/drift_schema_v12.json b/mobile/drift_schemas/main/drift_schema_v12.json new file mode 100644 index 0000000000..1c100ab37f --- /dev/null +++ b/mobile/drift_schemas/main/drift_schema_v12.json @@ -0,0 +1 @@ +{"_meta":{"description":"This file contains a serialized version of schema entities for drift.","version":"1.2.0"},"options":{"store_date_time_values_as_text":true},"entities":[{"id":0,"references":[],"type":"table","data":{"name":"user_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"email","getter_name":"email","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"has_profile_image","getter_name":"hasProfileImage","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"has_profile_image\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"has_profile_image\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"profile_changed_at","getter_name":"profileChangedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"avatar_color","getter_name":"avatarColor","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AvatarColor.values)","dart_type_name":"AvatarColor"}}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":1,"references":[0],"type":"table","data":{"name":"remote_asset_entity","was_declared_in_moor":false,"columns":[{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"type","getter_name":"type","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AssetType.values)","dart_type_name":"AssetType"}},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"width","getter_name":"width","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"height","getter_name":"height","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"duration_in_seconds","getter_name":"durationInSeconds","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"checksum","getter_name":"checksum","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_favorite","getter_name":"isFavorite","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_favorite\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_favorite\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"owner_id","getter_name":"ownerId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"local_date_time","getter_name":"localDateTime","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"thumb_hash","getter_name":"thumbHash","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"deleted_at","getter_name":"deletedAt","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"live_photo_video_id","getter_name":"livePhotoVideoId","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"visibility","getter_name":"visibility","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AssetVisibility.values)","dart_type_name":"AssetVisibility"}},{"name":"stack_id","getter_name":"stackId","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"library_id","getter_name":"libraryId","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":2,"references":[0],"type":"table","data":{"name":"stack_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"owner_id","getter_name":"ownerId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"primary_asset_id","getter_name":"primaryAssetId","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":3,"references":[],"type":"table","data":{"name":"local_asset_entity","was_declared_in_moor":false,"columns":[{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"type","getter_name":"type","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AssetType.values)","dart_type_name":"AssetType"}},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"width","getter_name":"width","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"height","getter_name":"height","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"duration_in_seconds","getter_name":"durationInSeconds","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"checksum","getter_name":"checksum","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_favorite","getter_name":"isFavorite","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_favorite\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_favorite\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"orientation","getter_name":"orientation","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":4,"references":[0,1],"type":"table","data":{"name":"remote_album_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"description","getter_name":"description","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('\\'\\'')","default_client_dart":null,"dsl_features":[]},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"owner_id","getter_name":"ownerId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"thumbnail_asset_id","getter_name":"thumbnailAssetId","moor_type":"string","nullable":true,"customConstraints":null,"defaultConstraints":"REFERENCES remote_asset_entity (id) ON DELETE SET NULL","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_asset_entity (id) ON DELETE SET NULL"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"is_activity_enabled","getter_name":"isActivityEnabled","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_activity_enabled\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_activity_enabled\" IN (0, 1))"},"default_dart":"const CustomExpression('1')","default_client_dart":null,"dsl_features":[]},{"name":"order","getter_name":"order","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AlbumAssetOrder.values)","dart_type_name":"AlbumAssetOrder"}}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":5,"references":[4],"type":"table","data":{"name":"local_album_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"backup_selection","getter_name":"backupSelection","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(BackupSelection.values)","dart_type_name":"BackupSelection"}},{"name":"is_ios_shared_album","getter_name":"isIosSharedAlbum","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_ios_shared_album\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_ios_shared_album\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"linked_remote_album_id","getter_name":"linkedRemoteAlbumId","moor_type":"string","nullable":true,"customConstraints":null,"defaultConstraints":"REFERENCES remote_album_entity (id) ON DELETE SET NULL","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_album_entity (id) ON DELETE SET NULL"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"marker","getter_name":"marker_","moor_type":"bool","nullable":true,"customConstraints":null,"defaultConstraints":"CHECK (\"marker\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"marker\" IN (0, 1))"},"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":6,"references":[3,5],"type":"table","data":{"name":"local_album_asset_entity","was_declared_in_moor":false,"columns":[{"name":"asset_id","getter_name":"assetId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES local_asset_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES local_asset_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"album_id","getter_name":"albumId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES local_album_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES local_album_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"marker","getter_name":"marker_","moor_type":"bool","nullable":true,"customConstraints":null,"defaultConstraints":"CHECK (\"marker\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"marker\" IN (0, 1))"},"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["asset_id","album_id"]}},{"id":7,"references":[3],"type":"index","data":{"on":3,"name":"idx_local_asset_checksum","sql":"CREATE INDEX IF NOT EXISTS idx_local_asset_checksum ON local_asset_entity (checksum)","unique":false,"columns":[]}},{"id":8,"references":[1],"type":"index","data":{"on":1,"name":"idx_remote_asset_owner_checksum","sql":"CREATE INDEX IF NOT EXISTS idx_remote_asset_owner_checksum ON remote_asset_entity (owner_id, checksum)","unique":false,"columns":[]}},{"id":9,"references":[1],"type":"index","data":{"on":1,"name":"UQ_remote_assets_owner_checksum","sql":"CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_checksum\nON remote_asset_entity (owner_id, checksum)\nWHERE (library_id IS NULL);\n","unique":true,"columns":[]}},{"id":10,"references":[1],"type":"index","data":{"on":1,"name":"UQ_remote_assets_owner_library_checksum","sql":"CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_library_checksum\nON remote_asset_entity (owner_id, library_id, checksum)\nWHERE (library_id IS NOT NULL);\n","unique":true,"columns":[]}},{"id":11,"references":[1],"type":"index","data":{"on":1,"name":"idx_remote_asset_checksum","sql":"CREATE INDEX IF NOT EXISTS idx_remote_asset_checksum ON remote_asset_entity (checksum)","unique":false,"columns":[]}},{"id":12,"references":[],"type":"table","data":{"name":"auth_user_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"email","getter_name":"email","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_admin","getter_name":"isAdmin","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_admin\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_admin\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"has_profile_image","getter_name":"hasProfileImage","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"has_profile_image\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"has_profile_image\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"profile_changed_at","getter_name":"profileChangedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"avatar_color","getter_name":"avatarColor","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AvatarColor.values)","dart_type_name":"AvatarColor"}},{"name":"quota_size_in_bytes","getter_name":"quotaSizeInBytes","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"quota_usage_in_bytes","getter_name":"quotaUsageInBytes","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"pin_code","getter_name":"pinCode","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":13,"references":[0],"type":"table","data":{"name":"user_metadata_entity","was_declared_in_moor":false,"columns":[{"name":"user_id","getter_name":"userId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"key","getter_name":"key","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(UserMetadataKey.values)","dart_type_name":"UserMetadataKey"}},{"name":"value","getter_name":"value","moor_type":"blob","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"userMetadataConverter","dart_type_name":"Map"}}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["user_id","key"]}},{"id":14,"references":[0],"type":"table","data":{"name":"partner_entity","was_declared_in_moor":false,"columns":[{"name":"shared_by_id","getter_name":"sharedById","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"shared_with_id","getter_name":"sharedWithId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"in_timeline","getter_name":"inTimeline","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"in_timeline\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"in_timeline\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["shared_by_id","shared_with_id"]}},{"id":15,"references":[1],"type":"table","data":{"name":"remote_exif_entity","was_declared_in_moor":false,"columns":[{"name":"asset_id","getter_name":"assetId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"city","getter_name":"city","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"state","getter_name":"state","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"country","getter_name":"country","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"date_time_original","getter_name":"dateTimeOriginal","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"description","getter_name":"description","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"height","getter_name":"height","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"width","getter_name":"width","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"exposure_time","getter_name":"exposureTime","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"f_number","getter_name":"fNumber","moor_type":"double","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"file_size","getter_name":"fileSize","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"focal_length","getter_name":"focalLength","moor_type":"double","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"latitude","getter_name":"latitude","moor_type":"double","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"longitude","getter_name":"longitude","moor_type":"double","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"iso","getter_name":"iso","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"make","getter_name":"make","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"model","getter_name":"model","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"lens","getter_name":"lens","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"orientation","getter_name":"orientation","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"time_zone","getter_name":"timeZone","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"rating","getter_name":"rating","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"projection_type","getter_name":"projectionType","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["asset_id"]}},{"id":16,"references":[1,4],"type":"table","data":{"name":"remote_album_asset_entity","was_declared_in_moor":false,"columns":[{"name":"asset_id","getter_name":"assetId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"album_id","getter_name":"albumId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_album_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_album_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["asset_id","album_id"]}},{"id":17,"references":[4,0],"type":"table","data":{"name":"remote_album_user_entity","was_declared_in_moor":false,"columns":[{"name":"album_id","getter_name":"albumId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_album_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_album_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"user_id","getter_name":"userId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"role","getter_name":"role","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(AlbumUserRole.values)","dart_type_name":"AlbumUserRole"}}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["album_id","user_id"]}},{"id":18,"references":[0],"type":"table","data":{"name":"memory_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"deleted_at","getter_name":"deletedAt","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"owner_id","getter_name":"ownerId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"type","getter_name":"type","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[],"type_converter":{"dart_expr":"const EnumIndexConverter(MemoryTypeEnum.values)","dart_type_name":"MemoryTypeEnum"}},{"name":"data","getter_name":"data","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_saved","getter_name":"isSaved","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_saved\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_saved\" IN (0, 1))"},"default_dart":"const CustomExpression('0')","default_client_dart":null,"dsl_features":[]},{"name":"memory_at","getter_name":"memoryAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"seen_at","getter_name":"seenAt","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"show_at","getter_name":"showAt","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"hide_at","getter_name":"hideAt","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":19,"references":[1,18],"type":"table","data":{"name":"memory_asset_entity","was_declared_in_moor":false,"columns":[{"name":"asset_id","getter_name":"assetId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"memory_id","getter_name":"memoryId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES memory_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES memory_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["asset_id","memory_id"]}},{"id":20,"references":[0],"type":"table","data":{"name":"person_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"created_at","getter_name":"createdAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"updated_at","getter_name":"updatedAt","moor_type":"dateTime","nullable":false,"customConstraints":null,"default_dart":"const CustomExpression('CURRENT_TIMESTAMP')","default_client_dart":null,"dsl_features":[]},{"name":"owner_id","getter_name":"ownerId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES user_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES user_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"name","getter_name":"name","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"face_asset_id","getter_name":"faceAssetId","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_favorite","getter_name":"isFavorite","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_favorite\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_favorite\" IN (0, 1))"},"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"is_hidden","getter_name":"isHidden","moor_type":"bool","nullable":false,"customConstraints":null,"defaultConstraints":"CHECK (\"is_hidden\" IN (0, 1))","dialectAwareDefaultConstraints":{"sqlite":"CHECK (\"is_hidden\" IN (0, 1))"},"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"color","getter_name":"color","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"birth_date","getter_name":"birthDate","moor_type":"dateTime","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":21,"references":[1,20],"type":"table","data":{"name":"asset_face_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"asset_id","getter_name":"assetId","moor_type":"string","nullable":false,"customConstraints":null,"defaultConstraints":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES remote_asset_entity (id) ON DELETE CASCADE"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"person_id","getter_name":"personId","moor_type":"string","nullable":true,"customConstraints":null,"defaultConstraints":"REFERENCES person_entity (id) ON DELETE SET NULL","dialectAwareDefaultConstraints":{"sqlite":"REFERENCES person_entity (id) ON DELETE SET NULL"},"default_dart":null,"default_client_dart":null,"dsl_features":["unknown"]},{"name":"image_width","getter_name":"imageWidth","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"image_height","getter_name":"imageHeight","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"bounding_box_x1","getter_name":"boundingBoxX1","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"bounding_box_y1","getter_name":"boundingBoxY1","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"bounding_box_x2","getter_name":"boundingBoxX2","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"bounding_box_y2","getter_name":"boundingBoxY2","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"source_type","getter_name":"sourceType","moor_type":"string","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":22,"references":[],"type":"table","data":{"name":"store_entity","was_declared_in_moor":false,"columns":[{"name":"id","getter_name":"id","moor_type":"int","nullable":false,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"string_value","getter_name":"stringValue","moor_type":"string","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]},{"name":"int_value","getter_name":"intValue","moor_type":"int","nullable":true,"customConstraints":null,"default_dart":null,"default_client_dart":null,"dsl_features":[]}],"is_virtual":false,"without_rowid":true,"constraints":[],"strict":true,"explicit_pk":["id"]}},{"id":23,"references":[15],"type":"index","data":{"on":15,"name":"idx_lat_lng","sql":"CREATE INDEX IF NOT EXISTS idx_lat_lng ON remote_exif_entity (latitude, longitude)","unique":false,"columns":[]}}]} \ No newline at end of file diff --git a/mobile/lib/domain/services/local_sync.service.dart b/mobile/lib/domain/services/local_sync.service.dart index d333af7481..ca356c80d8 100644 --- a/mobile/lib/domain/services/local_sync.service.dart +++ b/mobile/lib/domain/services/local_sync.service.dart @@ -281,7 +281,7 @@ extension on Iterable { (e) => LocalAlbum( id: e.id, name: e.name, - updatedAt: tryFromSecondsSinceEpoch(e.updatedAt) ?? DateTime.now(), + updatedAt: tryFromSecondsSinceEpoch(e.updatedAt, isUtc: true) ?? DateTime.timestamp(), assetCount: e.assetCount, ), ).toList(); @@ -296,8 +296,8 @@ extension on Iterable { name: e.name, checksum: null, type: AssetType.values.elementAtOrNull(e.type) ?? AssetType.other, - createdAt: tryFromSecondsSinceEpoch(e.createdAt) ?? DateTime.now(), - updatedAt: tryFromSecondsSinceEpoch(e.updatedAt) ?? DateTime.now(), + createdAt: tryFromSecondsSinceEpoch(e.createdAt, isUtc: true) ?? DateTime.timestamp(), + updatedAt: tryFromSecondsSinceEpoch(e.updatedAt, isUtc: true) ?? DateTime.timestamp(), width: e.width, height: e.height, durationInSeconds: e.durationInSeconds, diff --git a/mobile/lib/infrastructure/repositories/db.repository.dart b/mobile/lib/infrastructure/repositories/db.repository.dart index 65d26d9747..7291c3a97b 100644 --- a/mobile/lib/infrastructure/repositories/db.repository.dart +++ b/mobile/lib/infrastructure/repositories/db.repository.dart @@ -93,7 +93,7 @@ class Drift extends $Drift implements IDatabaseRepository { } @override - int get schemaVersion => 11; + int get schemaVersion => 12; @override MigrationStrategy get migration => MigrationStrategy( @@ -159,6 +159,25 @@ class Drift extends $Drift implements IDatabaseRepository { from10To11: (m, v11) async { await m.addColumn(v11.localAlbumAssetEntity, v11.localAlbumAssetEntity.marker_); }, + from11To12: (m, v12) async { + final localToUTCMapping = { + v12.localAssetEntity: [v12.localAssetEntity.createdAt, v12.localAssetEntity.updatedAt], + v12.localAlbumEntity: [v12.localAlbumEntity.updatedAt], + }; + + for (final entry in localToUTCMapping.entries) { + final table = entry.key; + await m.alterTable( + TableMigration( + table, + columnTransformer: { + for (final column in entry.value) + column: column.modify(const DateTimeModifier.utc()).strftime('%Y-%m-%dT%H:%M:%fZ'), + }, + ), + ); + } + }, ), ); diff --git a/mobile/lib/infrastructure/repositories/db.repository.steps.dart b/mobile/lib/infrastructure/repositories/db.repository.steps.dart index 7910d9fcee..c973cd6f13 100644 --- a/mobile/lib/infrastructure/repositories/db.repository.steps.dart +++ b/mobile/lib/infrastructure/repositories/db.repository.steps.dart @@ -4659,6 +4659,384 @@ class Shape22 extends i0.VersionedTable { columnsByName['marker']! as i1.GeneratedColumn; } +final class Schema12 extends i0.VersionedSchema { + Schema12({required super.database}) : super(version: 12); + @override + late final List entities = [ + userEntity, + remoteAssetEntity, + stackEntity, + localAssetEntity, + remoteAlbumEntity, + localAlbumEntity, + localAlbumAssetEntity, + idxLocalAssetChecksum, + idxRemoteAssetOwnerChecksum, + uQRemoteAssetsOwnerChecksum, + uQRemoteAssetsOwnerLibraryChecksum, + idxRemoteAssetChecksum, + authUserEntity, + userMetadataEntity, + partnerEntity, + remoteExifEntity, + remoteAlbumAssetEntity, + remoteAlbumUserEntity, + memoryEntity, + memoryAssetEntity, + personEntity, + assetFaceEntity, + storeEntity, + idxLatLng, + ]; + late final Shape20 userEntity = Shape20( + source: i0.VersionedTable( + entityName: 'user_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_1, + _column_3, + _column_84, + _column_85, + _column_91, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape17 remoteAssetEntity = Shape17( + source: i0.VersionedTable( + entityName: 'remote_asset_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_1, + _column_8, + _column_9, + _column_5, + _column_10, + _column_11, + _column_12, + _column_0, + _column_13, + _column_14, + _column_15, + _column_16, + _column_17, + _column_18, + _column_19, + _column_20, + _column_21, + _column_86, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape3 stackEntity = Shape3( + source: i0.VersionedTable( + entityName: 'stack_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [_column_0, _column_9, _column_5, _column_15, _column_75], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape2 localAssetEntity = Shape2( + source: i0.VersionedTable( + entityName: 'local_asset_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_1, + _column_8, + _column_9, + _column_5, + _column_10, + _column_11, + _column_12, + _column_0, + _column_22, + _column_14, + _column_23, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape9 remoteAlbumEntity = Shape9( + source: i0.VersionedTable( + entityName: 'remote_album_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_1, + _column_56, + _column_9, + _column_5, + _column_15, + _column_57, + _column_58, + _column_59, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape19 localAlbumEntity = Shape19( + source: i0.VersionedTable( + entityName: 'local_album_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_1, + _column_5, + _column_31, + _column_32, + _column_90, + _column_33, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape22 localAlbumAssetEntity = Shape22( + source: i0.VersionedTable( + entityName: 'local_album_asset_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(asset_id, album_id)'], + columns: [_column_34, _column_35, _column_33], + attachedDatabase: database, + ), + alias: null, + ); + final i1.Index idxLocalAssetChecksum = i1.Index( + 'idx_local_asset_checksum', + 'CREATE INDEX IF NOT EXISTS idx_local_asset_checksum ON local_asset_entity (checksum)', + ); + final i1.Index idxRemoteAssetOwnerChecksum = i1.Index( + 'idx_remote_asset_owner_checksum', + 'CREATE INDEX IF NOT EXISTS idx_remote_asset_owner_checksum ON remote_asset_entity (owner_id, checksum)', + ); + final i1.Index uQRemoteAssetsOwnerChecksum = i1.Index( + 'UQ_remote_assets_owner_checksum', + 'CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_checksum ON remote_asset_entity (owner_id, checksum) WHERE(library_id IS NULL)', + ); + final i1.Index uQRemoteAssetsOwnerLibraryChecksum = i1.Index( + 'UQ_remote_assets_owner_library_checksum', + 'CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_library_checksum ON remote_asset_entity (owner_id, library_id, checksum) WHERE(library_id IS NOT NULL)', + ); + final i1.Index idxRemoteAssetChecksum = i1.Index( + 'idx_remote_asset_checksum', + 'CREATE INDEX IF NOT EXISTS idx_remote_asset_checksum ON remote_asset_entity (checksum)', + ); + late final Shape21 authUserEntity = Shape21( + source: i0.VersionedTable( + entityName: 'auth_user_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_1, + _column_3, + _column_2, + _column_84, + _column_85, + _column_92, + _column_93, + _column_7, + _column_94, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape4 userMetadataEntity = Shape4( + source: i0.VersionedTable( + entityName: 'user_metadata_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(user_id, "key")'], + columns: [_column_25, _column_26, _column_27], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape5 partnerEntity = Shape5( + source: i0.VersionedTable( + entityName: 'partner_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(shared_by_id, shared_with_id)'], + columns: [_column_28, _column_29, _column_30], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape8 remoteExifEntity = Shape8( + source: i0.VersionedTable( + entityName: 'remote_exif_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(asset_id)'], + columns: [ + _column_36, + _column_37, + _column_38, + _column_39, + _column_40, + _column_41, + _column_11, + _column_10, + _column_42, + _column_43, + _column_44, + _column_45, + _column_46, + _column_47, + _column_48, + _column_49, + _column_50, + _column_51, + _column_52, + _column_53, + _column_54, + _column_55, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape7 remoteAlbumAssetEntity = Shape7( + source: i0.VersionedTable( + entityName: 'remote_album_asset_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(asset_id, album_id)'], + columns: [_column_36, _column_60], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape10 remoteAlbumUserEntity = Shape10( + source: i0.VersionedTable( + entityName: 'remote_album_user_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(album_id, user_id)'], + columns: [_column_60, _column_25, _column_61], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape11 memoryEntity = Shape11( + source: i0.VersionedTable( + entityName: 'memory_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_9, + _column_5, + _column_18, + _column_15, + _column_8, + _column_62, + _column_63, + _column_64, + _column_65, + _column_66, + _column_67, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape12 memoryAssetEntity = Shape12( + source: i0.VersionedTable( + entityName: 'memory_asset_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(asset_id, memory_id)'], + columns: [_column_36, _column_68], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape14 personEntity = Shape14( + source: i0.VersionedTable( + entityName: 'person_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_9, + _column_5, + _column_15, + _column_1, + _column_69, + _column_71, + _column_72, + _column_73, + _column_74, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape15 assetFaceEntity = Shape15( + source: i0.VersionedTable( + entityName: 'asset_face_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [ + _column_0, + _column_36, + _column_76, + _column_77, + _column_78, + _column_79, + _column_80, + _column_81, + _column_82, + _column_83, + ], + attachedDatabase: database, + ), + alias: null, + ); + late final Shape18 storeEntity = Shape18( + source: i0.VersionedTable( + entityName: 'store_entity', + withoutRowId: true, + isStrict: true, + tableConstraints: ['PRIMARY KEY(id)'], + columns: [_column_87, _column_88, _column_89], + attachedDatabase: database, + ), + alias: null, + ); + final i1.Index idxLatLng = i1.Index( + 'idx_lat_lng', + 'CREATE INDEX IF NOT EXISTS idx_lat_lng ON remote_exif_entity (latitude, longitude)', + ); +} + i0.MigrationStepWithVersion migrationSteps({ required Future Function(i1.Migrator m, Schema2 schema) from1To2, required Future Function(i1.Migrator m, Schema3 schema) from2To3, @@ -4670,6 +5048,7 @@ i0.MigrationStepWithVersion migrationSteps({ required Future Function(i1.Migrator m, Schema9 schema) from8To9, required Future Function(i1.Migrator m, Schema10 schema) from9To10, required Future Function(i1.Migrator m, Schema11 schema) from10To11, + required Future Function(i1.Migrator m, Schema12 schema) from11To12, }) { return (currentVersion, database) async { switch (currentVersion) { @@ -4723,6 +5102,11 @@ i0.MigrationStepWithVersion migrationSteps({ final migrator = i1.Migrator(database, schema); await from10To11(migrator, schema); return 11; + case 11: + final schema = Schema12(database: database); + final migrator = i1.Migrator(database, schema); + await from11To12(migrator, schema); + return 12; default: throw ArgumentError.value('Unknown migration from $currentVersion'); } @@ -4740,6 +5124,7 @@ i1.OnUpgrade stepByStep({ required Future Function(i1.Migrator m, Schema9 schema) from8To9, required Future Function(i1.Migrator m, Schema10 schema) from9To10, required Future Function(i1.Migrator m, Schema11 schema) from10To11, + required Future Function(i1.Migrator m, Schema12 schema) from11To12, }) => i0.VersionedSchema.stepByStepHelper( step: migrationSteps( from1To2: from1To2, @@ -4752,5 +5137,6 @@ i1.OnUpgrade stepByStep({ from8To9: from8To9, from9To10: from9To10, from10To11: from10To11, + from11To12: from11To12, ), ); diff --git a/mobile/lib/infrastructure/repositories/timeline.repository.dart b/mobile/lib/infrastructure/repositories/timeline.repository.dart index 033c146f97..14ffafa646 100644 --- a/mobile/lib/infrastructure/repositories/timeline.repository.dart +++ b/mobile/lib/infrastructure/repositories/timeline.repository.dart @@ -43,7 +43,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { } return _db.mergedAssetDrift.mergedBucket(userIds: userIds, groupBy: groupBy.index).map((row) { - final date = row.bucketDate.dateFmt(groupBy); + final date = row.bucketDate.truncateDate(groupBy); return TimeBucket(date: date, assetCount: row.assetCount); }).watch(); } @@ -123,7 +123,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(dateExp)]); return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -199,7 +199,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { } return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -328,7 +328,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(dateExp)]); return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -399,7 +399,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(dateExp)]); return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -463,7 +463,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(dateExp)]); return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -520,7 +520,7 @@ class DriftTimelineRepository extends DriftDatabaseRepository { ..orderBy([OrderingTerm.desc(dateExp)]); return query.map((row) { - final timeline = row.read(dateExp)!.dateFmt(groupBy); + final timeline = row.read(dateExp)!.truncateDate(groupBy); final assetCount = row.read(assetCountExp)!; return TimeBucket(date: timeline, assetCount: assetCount); }).watch(); @@ -586,7 +586,7 @@ extension on Expression { } extension on String { - DateTime dateFmt(GroupAssetsBy groupBy) { + DateTime truncateDate(GroupAssetsBy groupBy) { final format = switch (groupBy) { GroupAssetsBy.day || GroupAssetsBy.auto => "y-M-d", GroupAssetsBy.month => "y-M", diff --git a/mobile/lib/utils/datetime_helpers.dart b/mobile/lib/utils/datetime_helpers.dart index 829f71c37e..c13c8ca312 100644 --- a/mobile/lib/utils/datetime_helpers.dart +++ b/mobile/lib/utils/datetime_helpers.dart @@ -1,7 +1,7 @@ const int _maxMillisecondsSinceEpoch = 8640000000000000; // 275760-09-13 const int _minMillisecondsSinceEpoch = -62135596800000; // 0001-01-01 -DateTime? tryFromSecondsSinceEpoch(int? secondsSinceEpoch) { +DateTime? tryFromSecondsSinceEpoch(int? secondsSinceEpoch, {bool isUtc = false}) { if (secondsSinceEpoch == null) { return null; } @@ -12,7 +12,7 @@ DateTime? tryFromSecondsSinceEpoch(int? secondsSinceEpoch) { } try { - return DateTime.fromMillisecondsSinceEpoch(milliSeconds); + return DateTime.fromMillisecondsSinceEpoch(milliSeconds, isUtc: isUtc); } catch (e) { return null; } diff --git a/mobile/test/drift/main/generated/schema.dart b/mobile/test/drift/main/generated/schema.dart index 1d78a44317..073a86078f 100644 --- a/mobile/test/drift/main/generated/schema.dart +++ b/mobile/test/drift/main/generated/schema.dart @@ -14,6 +14,7 @@ import 'schema_v8.dart' as v8; import 'schema_v9.dart' as v9; import 'schema_v10.dart' as v10; import 'schema_v11.dart' as v11; +import 'schema_v12.dart' as v12; class GeneratedHelper implements SchemaInstantiationHelper { @override @@ -41,10 +42,12 @@ class GeneratedHelper implements SchemaInstantiationHelper { return v10.DatabaseAtV10(db); case 11: return v11.DatabaseAtV11(db); + case 12: + return v12.DatabaseAtV12(db); default: throw MissingSchemaException(version, versions); } } - static const versions = const [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]; + static const versions = const [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; } diff --git a/mobile/test/drift/main/generated/schema_v12.dart b/mobile/test/drift/main/generated/schema_v12.dart new file mode 100644 index 0000000000..c42df284ec --- /dev/null +++ b/mobile/test/drift/main/generated/schema_v12.dart @@ -0,0 +1,7198 @@ +// dart format width=80 +// GENERATED CODE, DO NOT EDIT BY HAND. +// ignore_for_file: type=lint +import 'package:drift/drift.dart'; + +class UserEntity extends Table with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + UserEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn email = GeneratedColumn( + 'email', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn hasProfileImage = GeneratedColumn( + 'has_profile_image', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("has_profile_image" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn profileChangedAt = + GeneratedColumn( + 'profile_changed_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn avatarColor = GeneratedColumn( + 'avatar_color', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const CustomExpression('0'), + ); + @override + List get $columns => [ + id, + name, + email, + hasProfileImage, + profileChangedAt, + avatarColor, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'user_entity'; + @override + Set get $primaryKey => {id}; + @override + UserEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return UserEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + email: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}email'], + )!, + hasProfileImage: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}has_profile_image'], + )!, + profileChangedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}profile_changed_at'], + )!, + avatarColor: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}avatar_color'], + )!, + ); + } + + @override + UserEntity createAlias(String alias) { + return UserEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class UserEntityData extends DataClass implements Insertable { + final String id; + final String name; + final String email; + final bool hasProfileImage; + final DateTime profileChangedAt; + final int avatarColor; + const UserEntityData({ + required this.id, + required this.name, + required this.email, + required this.hasProfileImage, + required this.profileChangedAt, + required this.avatarColor, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['name'] = Variable(name); + map['email'] = Variable(email); + map['has_profile_image'] = Variable(hasProfileImage); + map['profile_changed_at'] = Variable(profileChangedAt); + map['avatar_color'] = Variable(avatarColor); + return map; + } + + factory UserEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return UserEntityData( + id: serializer.fromJson(json['id']), + name: serializer.fromJson(json['name']), + email: serializer.fromJson(json['email']), + hasProfileImage: serializer.fromJson(json['hasProfileImage']), + profileChangedAt: serializer.fromJson(json['profileChangedAt']), + avatarColor: serializer.fromJson(json['avatarColor']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'name': serializer.toJson(name), + 'email': serializer.toJson(email), + 'hasProfileImage': serializer.toJson(hasProfileImage), + 'profileChangedAt': serializer.toJson(profileChangedAt), + 'avatarColor': serializer.toJson(avatarColor), + }; + } + + UserEntityData copyWith({ + String? id, + String? name, + String? email, + bool? hasProfileImage, + DateTime? profileChangedAt, + int? avatarColor, + }) => UserEntityData( + id: id ?? this.id, + name: name ?? this.name, + email: email ?? this.email, + hasProfileImage: hasProfileImage ?? this.hasProfileImage, + profileChangedAt: profileChangedAt ?? this.profileChangedAt, + avatarColor: avatarColor ?? this.avatarColor, + ); + UserEntityData copyWithCompanion(UserEntityCompanion data) { + return UserEntityData( + id: data.id.present ? data.id.value : this.id, + name: data.name.present ? data.name.value : this.name, + email: data.email.present ? data.email.value : this.email, + hasProfileImage: data.hasProfileImage.present + ? data.hasProfileImage.value + : this.hasProfileImage, + profileChangedAt: data.profileChangedAt.present + ? data.profileChangedAt.value + : this.profileChangedAt, + avatarColor: data.avatarColor.present + ? data.avatarColor.value + : this.avatarColor, + ); + } + + @override + String toString() { + return (StringBuffer('UserEntityData(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('email: $email, ') + ..write('hasProfileImage: $hasProfileImage, ') + ..write('profileChangedAt: $profileChangedAt, ') + ..write('avatarColor: $avatarColor') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + name, + email, + hasProfileImage, + profileChangedAt, + avatarColor, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is UserEntityData && + other.id == this.id && + other.name == this.name && + other.email == this.email && + other.hasProfileImage == this.hasProfileImage && + other.profileChangedAt == this.profileChangedAt && + other.avatarColor == this.avatarColor); +} + +class UserEntityCompanion extends UpdateCompanion { + final Value id; + final Value name; + final Value email; + final Value hasProfileImage; + final Value profileChangedAt; + final Value avatarColor; + const UserEntityCompanion({ + this.id = const Value.absent(), + this.name = const Value.absent(), + this.email = const Value.absent(), + this.hasProfileImage = const Value.absent(), + this.profileChangedAt = const Value.absent(), + this.avatarColor = const Value.absent(), + }); + UserEntityCompanion.insert({ + required String id, + required String name, + required String email, + this.hasProfileImage = const Value.absent(), + this.profileChangedAt = const Value.absent(), + this.avatarColor = const Value.absent(), + }) : id = Value(id), + name = Value(name), + email = Value(email); + static Insertable custom({ + Expression? id, + Expression? name, + Expression? email, + Expression? hasProfileImage, + Expression? profileChangedAt, + Expression? avatarColor, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (name != null) 'name': name, + if (email != null) 'email': email, + if (hasProfileImage != null) 'has_profile_image': hasProfileImage, + if (profileChangedAt != null) 'profile_changed_at': profileChangedAt, + if (avatarColor != null) 'avatar_color': avatarColor, + }); + } + + UserEntityCompanion copyWith({ + Value? id, + Value? name, + Value? email, + Value? hasProfileImage, + Value? profileChangedAt, + Value? avatarColor, + }) { + return UserEntityCompanion( + id: id ?? this.id, + name: name ?? this.name, + email: email ?? this.email, + hasProfileImage: hasProfileImage ?? this.hasProfileImage, + profileChangedAt: profileChangedAt ?? this.profileChangedAt, + avatarColor: avatarColor ?? this.avatarColor, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (email.present) { + map['email'] = Variable(email.value); + } + if (hasProfileImage.present) { + map['has_profile_image'] = Variable(hasProfileImage.value); + } + if (profileChangedAt.present) { + map['profile_changed_at'] = Variable(profileChangedAt.value); + } + if (avatarColor.present) { + map['avatar_color'] = Variable(avatarColor.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('UserEntityCompanion(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('email: $email, ') + ..write('hasProfileImage: $hasProfileImage, ') + ..write('profileChangedAt: $profileChangedAt, ') + ..write('avatarColor: $avatarColor') + ..write(')')) + .toString(); + } +} + +class RemoteAssetEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + RemoteAssetEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn type = GeneratedColumn( + 'type', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn width = GeneratedColumn( + 'width', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn height = GeneratedColumn( + 'height', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn durationInSeconds = GeneratedColumn( + 'duration_in_seconds', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn checksum = GeneratedColumn( + 'checksum', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn isFavorite = GeneratedColumn( + 'is_favorite', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_favorite" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn ownerId = GeneratedColumn( + 'owner_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn localDateTime = + GeneratedColumn( + 'local_date_time', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn thumbHash = GeneratedColumn( + 'thumb_hash', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn livePhotoVideoId = GeneratedColumn( + 'live_photo_video_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn visibility = GeneratedColumn( + 'visibility', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn stackId = GeneratedColumn( + 'stack_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn libraryId = GeneratedColumn( + 'library_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + name, + type, + createdAt, + updatedAt, + width, + height, + durationInSeconds, + id, + checksum, + isFavorite, + ownerId, + localDateTime, + thumbHash, + deletedAt, + livePhotoVideoId, + visibility, + stackId, + libraryId, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'remote_asset_entity'; + @override + Set get $primaryKey => {id}; + @override + RemoteAssetEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return RemoteAssetEntityData( + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + type: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}type'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + width: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}width'], + ), + height: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}height'], + ), + durationInSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}duration_in_seconds'], + ), + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + checksum: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}checksum'], + )!, + isFavorite: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_favorite'], + )!, + ownerId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}owner_id'], + )!, + localDateTime: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}local_date_time'], + ), + thumbHash: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}thumb_hash'], + ), + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + livePhotoVideoId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}live_photo_video_id'], + ), + visibility: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}visibility'], + )!, + stackId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}stack_id'], + ), + libraryId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}library_id'], + ), + ); + } + + @override + RemoteAssetEntity createAlias(String alias) { + return RemoteAssetEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class RemoteAssetEntityData extends DataClass + implements Insertable { + final String name; + final int type; + final DateTime createdAt; + final DateTime updatedAt; + final int? width; + final int? height; + final int? durationInSeconds; + final String id; + final String checksum; + final bool isFavorite; + final String ownerId; + final DateTime? localDateTime; + final String? thumbHash; + final DateTime? deletedAt; + final String? livePhotoVideoId; + final int visibility; + final String? stackId; + final String? libraryId; + const RemoteAssetEntityData({ + required this.name, + required this.type, + required this.createdAt, + required this.updatedAt, + this.width, + this.height, + this.durationInSeconds, + required this.id, + required this.checksum, + required this.isFavorite, + required this.ownerId, + this.localDateTime, + this.thumbHash, + this.deletedAt, + this.livePhotoVideoId, + required this.visibility, + this.stackId, + this.libraryId, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['name'] = Variable(name); + map['type'] = Variable(type); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || width != null) { + map['width'] = Variable(width); + } + if (!nullToAbsent || height != null) { + map['height'] = Variable(height); + } + if (!nullToAbsent || durationInSeconds != null) { + map['duration_in_seconds'] = Variable(durationInSeconds); + } + map['id'] = Variable(id); + map['checksum'] = Variable(checksum); + map['is_favorite'] = Variable(isFavorite); + map['owner_id'] = Variable(ownerId); + if (!nullToAbsent || localDateTime != null) { + map['local_date_time'] = Variable(localDateTime); + } + if (!nullToAbsent || thumbHash != null) { + map['thumb_hash'] = Variable(thumbHash); + } + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + if (!nullToAbsent || livePhotoVideoId != null) { + map['live_photo_video_id'] = Variable(livePhotoVideoId); + } + map['visibility'] = Variable(visibility); + if (!nullToAbsent || stackId != null) { + map['stack_id'] = Variable(stackId); + } + if (!nullToAbsent || libraryId != null) { + map['library_id'] = Variable(libraryId); + } + return map; + } + + factory RemoteAssetEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return RemoteAssetEntityData( + name: serializer.fromJson(json['name']), + type: serializer.fromJson(json['type']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + width: serializer.fromJson(json['width']), + height: serializer.fromJson(json['height']), + durationInSeconds: serializer.fromJson(json['durationInSeconds']), + id: serializer.fromJson(json['id']), + checksum: serializer.fromJson(json['checksum']), + isFavorite: serializer.fromJson(json['isFavorite']), + ownerId: serializer.fromJson(json['ownerId']), + localDateTime: serializer.fromJson(json['localDateTime']), + thumbHash: serializer.fromJson(json['thumbHash']), + deletedAt: serializer.fromJson(json['deletedAt']), + livePhotoVideoId: serializer.fromJson(json['livePhotoVideoId']), + visibility: serializer.fromJson(json['visibility']), + stackId: serializer.fromJson(json['stackId']), + libraryId: serializer.fromJson(json['libraryId']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'name': serializer.toJson(name), + 'type': serializer.toJson(type), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'width': serializer.toJson(width), + 'height': serializer.toJson(height), + 'durationInSeconds': serializer.toJson(durationInSeconds), + 'id': serializer.toJson(id), + 'checksum': serializer.toJson(checksum), + 'isFavorite': serializer.toJson(isFavorite), + 'ownerId': serializer.toJson(ownerId), + 'localDateTime': serializer.toJson(localDateTime), + 'thumbHash': serializer.toJson(thumbHash), + 'deletedAt': serializer.toJson(deletedAt), + 'livePhotoVideoId': serializer.toJson(livePhotoVideoId), + 'visibility': serializer.toJson(visibility), + 'stackId': serializer.toJson(stackId), + 'libraryId': serializer.toJson(libraryId), + }; + } + + RemoteAssetEntityData copyWith({ + String? name, + int? type, + DateTime? createdAt, + DateTime? updatedAt, + Value width = const Value.absent(), + Value height = const Value.absent(), + Value durationInSeconds = const Value.absent(), + String? id, + String? checksum, + bool? isFavorite, + String? ownerId, + Value localDateTime = const Value.absent(), + Value thumbHash = const Value.absent(), + Value deletedAt = const Value.absent(), + Value livePhotoVideoId = const Value.absent(), + int? visibility, + Value stackId = const Value.absent(), + Value libraryId = const Value.absent(), + }) => RemoteAssetEntityData( + name: name ?? this.name, + type: type ?? this.type, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + width: width.present ? width.value : this.width, + height: height.present ? height.value : this.height, + durationInSeconds: durationInSeconds.present + ? durationInSeconds.value + : this.durationInSeconds, + id: id ?? this.id, + checksum: checksum ?? this.checksum, + isFavorite: isFavorite ?? this.isFavorite, + ownerId: ownerId ?? this.ownerId, + localDateTime: localDateTime.present + ? localDateTime.value + : this.localDateTime, + thumbHash: thumbHash.present ? thumbHash.value : this.thumbHash, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + livePhotoVideoId: livePhotoVideoId.present + ? livePhotoVideoId.value + : this.livePhotoVideoId, + visibility: visibility ?? this.visibility, + stackId: stackId.present ? stackId.value : this.stackId, + libraryId: libraryId.present ? libraryId.value : this.libraryId, + ); + RemoteAssetEntityData copyWithCompanion(RemoteAssetEntityCompanion data) { + return RemoteAssetEntityData( + name: data.name.present ? data.name.value : this.name, + type: data.type.present ? data.type.value : this.type, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + width: data.width.present ? data.width.value : this.width, + height: data.height.present ? data.height.value : this.height, + durationInSeconds: data.durationInSeconds.present + ? data.durationInSeconds.value + : this.durationInSeconds, + id: data.id.present ? data.id.value : this.id, + checksum: data.checksum.present ? data.checksum.value : this.checksum, + isFavorite: data.isFavorite.present + ? data.isFavorite.value + : this.isFavorite, + ownerId: data.ownerId.present ? data.ownerId.value : this.ownerId, + localDateTime: data.localDateTime.present + ? data.localDateTime.value + : this.localDateTime, + thumbHash: data.thumbHash.present ? data.thumbHash.value : this.thumbHash, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + livePhotoVideoId: data.livePhotoVideoId.present + ? data.livePhotoVideoId.value + : this.livePhotoVideoId, + visibility: data.visibility.present + ? data.visibility.value + : this.visibility, + stackId: data.stackId.present ? data.stackId.value : this.stackId, + libraryId: data.libraryId.present ? data.libraryId.value : this.libraryId, + ); + } + + @override + String toString() { + return (StringBuffer('RemoteAssetEntityData(') + ..write('name: $name, ') + ..write('type: $type, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationInSeconds: $durationInSeconds, ') + ..write('id: $id, ') + ..write('checksum: $checksum, ') + ..write('isFavorite: $isFavorite, ') + ..write('ownerId: $ownerId, ') + ..write('localDateTime: $localDateTime, ') + ..write('thumbHash: $thumbHash, ') + ..write('deletedAt: $deletedAt, ') + ..write('livePhotoVideoId: $livePhotoVideoId, ') + ..write('visibility: $visibility, ') + ..write('stackId: $stackId, ') + ..write('libraryId: $libraryId') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + name, + type, + createdAt, + updatedAt, + width, + height, + durationInSeconds, + id, + checksum, + isFavorite, + ownerId, + localDateTime, + thumbHash, + deletedAt, + livePhotoVideoId, + visibility, + stackId, + libraryId, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is RemoteAssetEntityData && + other.name == this.name && + other.type == this.type && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.width == this.width && + other.height == this.height && + other.durationInSeconds == this.durationInSeconds && + other.id == this.id && + other.checksum == this.checksum && + other.isFavorite == this.isFavorite && + other.ownerId == this.ownerId && + other.localDateTime == this.localDateTime && + other.thumbHash == this.thumbHash && + other.deletedAt == this.deletedAt && + other.livePhotoVideoId == this.livePhotoVideoId && + other.visibility == this.visibility && + other.stackId == this.stackId && + other.libraryId == this.libraryId); +} + +class RemoteAssetEntityCompanion + extends UpdateCompanion { + final Value name; + final Value type; + final Value createdAt; + final Value updatedAt; + final Value width; + final Value height; + final Value durationInSeconds; + final Value id; + final Value checksum; + final Value isFavorite; + final Value ownerId; + final Value localDateTime; + final Value thumbHash; + final Value deletedAt; + final Value livePhotoVideoId; + final Value visibility; + final Value stackId; + final Value libraryId; + const RemoteAssetEntityCompanion({ + this.name = const Value.absent(), + this.type = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationInSeconds = const Value.absent(), + this.id = const Value.absent(), + this.checksum = const Value.absent(), + this.isFavorite = const Value.absent(), + this.ownerId = const Value.absent(), + this.localDateTime = const Value.absent(), + this.thumbHash = const Value.absent(), + this.deletedAt = const Value.absent(), + this.livePhotoVideoId = const Value.absent(), + this.visibility = const Value.absent(), + this.stackId = const Value.absent(), + this.libraryId = const Value.absent(), + }); + RemoteAssetEntityCompanion.insert({ + required String name, + required int type, + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationInSeconds = const Value.absent(), + required String id, + required String checksum, + this.isFavorite = const Value.absent(), + required String ownerId, + this.localDateTime = const Value.absent(), + this.thumbHash = const Value.absent(), + this.deletedAt = const Value.absent(), + this.livePhotoVideoId = const Value.absent(), + required int visibility, + this.stackId = const Value.absent(), + this.libraryId = const Value.absent(), + }) : name = Value(name), + type = Value(type), + id = Value(id), + checksum = Value(checksum), + ownerId = Value(ownerId), + visibility = Value(visibility); + static Insertable custom({ + Expression? name, + Expression? type, + Expression? createdAt, + Expression? updatedAt, + Expression? width, + Expression? height, + Expression? durationInSeconds, + Expression? id, + Expression? checksum, + Expression? isFavorite, + Expression? ownerId, + Expression? localDateTime, + Expression? thumbHash, + Expression? deletedAt, + Expression? livePhotoVideoId, + Expression? visibility, + Expression? stackId, + Expression? libraryId, + }) { + return RawValuesInsertable({ + if (name != null) 'name': name, + if (type != null) 'type': type, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (width != null) 'width': width, + if (height != null) 'height': height, + if (durationInSeconds != null) 'duration_in_seconds': durationInSeconds, + if (id != null) 'id': id, + if (checksum != null) 'checksum': checksum, + if (isFavorite != null) 'is_favorite': isFavorite, + if (ownerId != null) 'owner_id': ownerId, + if (localDateTime != null) 'local_date_time': localDateTime, + if (thumbHash != null) 'thumb_hash': thumbHash, + if (deletedAt != null) 'deleted_at': deletedAt, + if (livePhotoVideoId != null) 'live_photo_video_id': livePhotoVideoId, + if (visibility != null) 'visibility': visibility, + if (stackId != null) 'stack_id': stackId, + if (libraryId != null) 'library_id': libraryId, + }); + } + + RemoteAssetEntityCompanion copyWith({ + Value? name, + Value? type, + Value? createdAt, + Value? updatedAt, + Value? width, + Value? height, + Value? durationInSeconds, + Value? id, + Value? checksum, + Value? isFavorite, + Value? ownerId, + Value? localDateTime, + Value? thumbHash, + Value? deletedAt, + Value? livePhotoVideoId, + Value? visibility, + Value? stackId, + Value? libraryId, + }) { + return RemoteAssetEntityCompanion( + name: name ?? this.name, + type: type ?? this.type, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + width: width ?? this.width, + height: height ?? this.height, + durationInSeconds: durationInSeconds ?? this.durationInSeconds, + id: id ?? this.id, + checksum: checksum ?? this.checksum, + isFavorite: isFavorite ?? this.isFavorite, + ownerId: ownerId ?? this.ownerId, + localDateTime: localDateTime ?? this.localDateTime, + thumbHash: thumbHash ?? this.thumbHash, + deletedAt: deletedAt ?? this.deletedAt, + livePhotoVideoId: livePhotoVideoId ?? this.livePhotoVideoId, + visibility: visibility ?? this.visibility, + stackId: stackId ?? this.stackId, + libraryId: libraryId ?? this.libraryId, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (name.present) { + map['name'] = Variable(name.value); + } + if (type.present) { + map['type'] = Variable(type.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (width.present) { + map['width'] = Variable(width.value); + } + if (height.present) { + map['height'] = Variable(height.value); + } + if (durationInSeconds.present) { + map['duration_in_seconds'] = Variable(durationInSeconds.value); + } + if (id.present) { + map['id'] = Variable(id.value); + } + if (checksum.present) { + map['checksum'] = Variable(checksum.value); + } + if (isFavorite.present) { + map['is_favorite'] = Variable(isFavorite.value); + } + if (ownerId.present) { + map['owner_id'] = Variable(ownerId.value); + } + if (localDateTime.present) { + map['local_date_time'] = Variable(localDateTime.value); + } + if (thumbHash.present) { + map['thumb_hash'] = Variable(thumbHash.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (livePhotoVideoId.present) { + map['live_photo_video_id'] = Variable(livePhotoVideoId.value); + } + if (visibility.present) { + map['visibility'] = Variable(visibility.value); + } + if (stackId.present) { + map['stack_id'] = Variable(stackId.value); + } + if (libraryId.present) { + map['library_id'] = Variable(libraryId.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('RemoteAssetEntityCompanion(') + ..write('name: $name, ') + ..write('type: $type, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationInSeconds: $durationInSeconds, ') + ..write('id: $id, ') + ..write('checksum: $checksum, ') + ..write('isFavorite: $isFavorite, ') + ..write('ownerId: $ownerId, ') + ..write('localDateTime: $localDateTime, ') + ..write('thumbHash: $thumbHash, ') + ..write('deletedAt: $deletedAt, ') + ..write('livePhotoVideoId: $livePhotoVideoId, ') + ..write('visibility: $visibility, ') + ..write('stackId: $stackId, ') + ..write('libraryId: $libraryId') + ..write(')')) + .toString(); + } +} + +class StackEntity extends Table with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + StackEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn ownerId = GeneratedColumn( + 'owner_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn primaryAssetId = GeneratedColumn( + 'primary_asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + ownerId, + primaryAssetId, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'stack_entity'; + @override + Set get $primaryKey => {id}; + @override + StackEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return StackEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + ownerId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}owner_id'], + )!, + primaryAssetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}primary_asset_id'], + )!, + ); + } + + @override + StackEntity createAlias(String alias) { + return StackEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class StackEntityData extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final String ownerId; + final String primaryAssetId; + const StackEntityData({ + required this.id, + required this.createdAt, + required this.updatedAt, + required this.ownerId, + required this.primaryAssetId, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + map['owner_id'] = Variable(ownerId); + map['primary_asset_id'] = Variable(primaryAssetId); + return map; + } + + factory StackEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return StackEntityData( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + ownerId: serializer.fromJson(json['ownerId']), + primaryAssetId: serializer.fromJson(json['primaryAssetId']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'ownerId': serializer.toJson(ownerId), + 'primaryAssetId': serializer.toJson(primaryAssetId), + }; + } + + StackEntityData copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + String? ownerId, + String? primaryAssetId, + }) => StackEntityData( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + primaryAssetId: primaryAssetId ?? this.primaryAssetId, + ); + StackEntityData copyWithCompanion(StackEntityCompanion data) { + return StackEntityData( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + ownerId: data.ownerId.present ? data.ownerId.value : this.ownerId, + primaryAssetId: data.primaryAssetId.present + ? data.primaryAssetId.value + : this.primaryAssetId, + ); + } + + @override + String toString() { + return (StringBuffer('StackEntityData(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('primaryAssetId: $primaryAssetId') + ..write(')')) + .toString(); + } + + @override + int get hashCode => + Object.hash(id, createdAt, updatedAt, ownerId, primaryAssetId); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is StackEntityData && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.ownerId == this.ownerId && + other.primaryAssetId == this.primaryAssetId); +} + +class StackEntityCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value ownerId; + final Value primaryAssetId; + const StackEntityCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.ownerId = const Value.absent(), + this.primaryAssetId = const Value.absent(), + }); + StackEntityCompanion.insert({ + required String id, + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + required String ownerId, + required String primaryAssetId, + }) : id = Value(id), + ownerId = Value(ownerId), + primaryAssetId = Value(primaryAssetId); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? ownerId, + Expression? primaryAssetId, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (ownerId != null) 'owner_id': ownerId, + if (primaryAssetId != null) 'primary_asset_id': primaryAssetId, + }); + } + + StackEntityCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? ownerId, + Value? primaryAssetId, + }) { + return StackEntityCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + primaryAssetId: primaryAssetId ?? this.primaryAssetId, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (ownerId.present) { + map['owner_id'] = Variable(ownerId.value); + } + if (primaryAssetId.present) { + map['primary_asset_id'] = Variable(primaryAssetId.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('StackEntityCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('primaryAssetId: $primaryAssetId') + ..write(')')) + .toString(); + } +} + +class LocalAssetEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + LocalAssetEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn type = GeneratedColumn( + 'type', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn width = GeneratedColumn( + 'width', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn height = GeneratedColumn( + 'height', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn durationInSeconds = GeneratedColumn( + 'duration_in_seconds', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn checksum = GeneratedColumn( + 'checksum', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn isFavorite = GeneratedColumn( + 'is_favorite', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_favorite" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn orientation = GeneratedColumn( + 'orientation', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const CustomExpression('0'), + ); + @override + List get $columns => [ + name, + type, + createdAt, + updatedAt, + width, + height, + durationInSeconds, + id, + checksum, + isFavorite, + orientation, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'local_asset_entity'; + @override + Set get $primaryKey => {id}; + @override + LocalAssetEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return LocalAssetEntityData( + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + type: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}type'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + width: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}width'], + ), + height: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}height'], + ), + durationInSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}duration_in_seconds'], + ), + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + checksum: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}checksum'], + ), + isFavorite: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_favorite'], + )!, + orientation: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}orientation'], + )!, + ); + } + + @override + LocalAssetEntity createAlias(String alias) { + return LocalAssetEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class LocalAssetEntityData extends DataClass + implements Insertable { + final String name; + final int type; + final DateTime createdAt; + final DateTime updatedAt; + final int? width; + final int? height; + final int? durationInSeconds; + final String id; + final String? checksum; + final bool isFavorite; + final int orientation; + const LocalAssetEntityData({ + required this.name, + required this.type, + required this.createdAt, + required this.updatedAt, + this.width, + this.height, + this.durationInSeconds, + required this.id, + this.checksum, + required this.isFavorite, + required this.orientation, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['name'] = Variable(name); + map['type'] = Variable(type); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || width != null) { + map['width'] = Variable(width); + } + if (!nullToAbsent || height != null) { + map['height'] = Variable(height); + } + if (!nullToAbsent || durationInSeconds != null) { + map['duration_in_seconds'] = Variable(durationInSeconds); + } + map['id'] = Variable(id); + if (!nullToAbsent || checksum != null) { + map['checksum'] = Variable(checksum); + } + map['is_favorite'] = Variable(isFavorite); + map['orientation'] = Variable(orientation); + return map; + } + + factory LocalAssetEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return LocalAssetEntityData( + name: serializer.fromJson(json['name']), + type: serializer.fromJson(json['type']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + width: serializer.fromJson(json['width']), + height: serializer.fromJson(json['height']), + durationInSeconds: serializer.fromJson(json['durationInSeconds']), + id: serializer.fromJson(json['id']), + checksum: serializer.fromJson(json['checksum']), + isFavorite: serializer.fromJson(json['isFavorite']), + orientation: serializer.fromJson(json['orientation']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'name': serializer.toJson(name), + 'type': serializer.toJson(type), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'width': serializer.toJson(width), + 'height': serializer.toJson(height), + 'durationInSeconds': serializer.toJson(durationInSeconds), + 'id': serializer.toJson(id), + 'checksum': serializer.toJson(checksum), + 'isFavorite': serializer.toJson(isFavorite), + 'orientation': serializer.toJson(orientation), + }; + } + + LocalAssetEntityData copyWith({ + String? name, + int? type, + DateTime? createdAt, + DateTime? updatedAt, + Value width = const Value.absent(), + Value height = const Value.absent(), + Value durationInSeconds = const Value.absent(), + String? id, + Value checksum = const Value.absent(), + bool? isFavorite, + int? orientation, + }) => LocalAssetEntityData( + name: name ?? this.name, + type: type ?? this.type, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + width: width.present ? width.value : this.width, + height: height.present ? height.value : this.height, + durationInSeconds: durationInSeconds.present + ? durationInSeconds.value + : this.durationInSeconds, + id: id ?? this.id, + checksum: checksum.present ? checksum.value : this.checksum, + isFavorite: isFavorite ?? this.isFavorite, + orientation: orientation ?? this.orientation, + ); + LocalAssetEntityData copyWithCompanion(LocalAssetEntityCompanion data) { + return LocalAssetEntityData( + name: data.name.present ? data.name.value : this.name, + type: data.type.present ? data.type.value : this.type, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + width: data.width.present ? data.width.value : this.width, + height: data.height.present ? data.height.value : this.height, + durationInSeconds: data.durationInSeconds.present + ? data.durationInSeconds.value + : this.durationInSeconds, + id: data.id.present ? data.id.value : this.id, + checksum: data.checksum.present ? data.checksum.value : this.checksum, + isFavorite: data.isFavorite.present + ? data.isFavorite.value + : this.isFavorite, + orientation: data.orientation.present + ? data.orientation.value + : this.orientation, + ); + } + + @override + String toString() { + return (StringBuffer('LocalAssetEntityData(') + ..write('name: $name, ') + ..write('type: $type, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationInSeconds: $durationInSeconds, ') + ..write('id: $id, ') + ..write('checksum: $checksum, ') + ..write('isFavorite: $isFavorite, ') + ..write('orientation: $orientation') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + name, + type, + createdAt, + updatedAt, + width, + height, + durationInSeconds, + id, + checksum, + isFavorite, + orientation, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is LocalAssetEntityData && + other.name == this.name && + other.type == this.type && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.width == this.width && + other.height == this.height && + other.durationInSeconds == this.durationInSeconds && + other.id == this.id && + other.checksum == this.checksum && + other.isFavorite == this.isFavorite && + other.orientation == this.orientation); +} + +class LocalAssetEntityCompanion extends UpdateCompanion { + final Value name; + final Value type; + final Value createdAt; + final Value updatedAt; + final Value width; + final Value height; + final Value durationInSeconds; + final Value id; + final Value checksum; + final Value isFavorite; + final Value orientation; + const LocalAssetEntityCompanion({ + this.name = const Value.absent(), + this.type = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationInSeconds = const Value.absent(), + this.id = const Value.absent(), + this.checksum = const Value.absent(), + this.isFavorite = const Value.absent(), + this.orientation = const Value.absent(), + }); + LocalAssetEntityCompanion.insert({ + required String name, + required int type, + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationInSeconds = const Value.absent(), + required String id, + this.checksum = const Value.absent(), + this.isFavorite = const Value.absent(), + this.orientation = const Value.absent(), + }) : name = Value(name), + type = Value(type), + id = Value(id); + static Insertable custom({ + Expression? name, + Expression? type, + Expression? createdAt, + Expression? updatedAt, + Expression? width, + Expression? height, + Expression? durationInSeconds, + Expression? id, + Expression? checksum, + Expression? isFavorite, + Expression? orientation, + }) { + return RawValuesInsertable({ + if (name != null) 'name': name, + if (type != null) 'type': type, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (width != null) 'width': width, + if (height != null) 'height': height, + if (durationInSeconds != null) 'duration_in_seconds': durationInSeconds, + if (id != null) 'id': id, + if (checksum != null) 'checksum': checksum, + if (isFavorite != null) 'is_favorite': isFavorite, + if (orientation != null) 'orientation': orientation, + }); + } + + LocalAssetEntityCompanion copyWith({ + Value? name, + Value? type, + Value? createdAt, + Value? updatedAt, + Value? width, + Value? height, + Value? durationInSeconds, + Value? id, + Value? checksum, + Value? isFavorite, + Value? orientation, + }) { + return LocalAssetEntityCompanion( + name: name ?? this.name, + type: type ?? this.type, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + width: width ?? this.width, + height: height ?? this.height, + durationInSeconds: durationInSeconds ?? this.durationInSeconds, + id: id ?? this.id, + checksum: checksum ?? this.checksum, + isFavorite: isFavorite ?? this.isFavorite, + orientation: orientation ?? this.orientation, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (name.present) { + map['name'] = Variable(name.value); + } + if (type.present) { + map['type'] = Variable(type.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (width.present) { + map['width'] = Variable(width.value); + } + if (height.present) { + map['height'] = Variable(height.value); + } + if (durationInSeconds.present) { + map['duration_in_seconds'] = Variable(durationInSeconds.value); + } + if (id.present) { + map['id'] = Variable(id.value); + } + if (checksum.present) { + map['checksum'] = Variable(checksum.value); + } + if (isFavorite.present) { + map['is_favorite'] = Variable(isFavorite.value); + } + if (orientation.present) { + map['orientation'] = Variable(orientation.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('LocalAssetEntityCompanion(') + ..write('name: $name, ') + ..write('type: $type, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationInSeconds: $durationInSeconds, ') + ..write('id: $id, ') + ..write('checksum: $checksum, ') + ..write('isFavorite: $isFavorite, ') + ..write('orientation: $orientation') + ..write(')')) + .toString(); + } +} + +class RemoteAlbumEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + RemoteAlbumEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn description = GeneratedColumn( + 'description', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultValue: const CustomExpression('\'\''), + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn ownerId = GeneratedColumn( + 'owner_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn thumbnailAssetId = GeneratedColumn( + 'thumbnail_asset_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_asset_entity (id) ON DELETE SET NULL', + ), + ); + late final GeneratedColumn isActivityEnabled = GeneratedColumn( + 'is_activity_enabled', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_activity_enabled" IN (0, 1))', + ), + defaultValue: const CustomExpression('1'), + ); + late final GeneratedColumn order = GeneratedColumn( + 'order', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + name, + description, + createdAt, + updatedAt, + ownerId, + thumbnailAssetId, + isActivityEnabled, + order, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'remote_album_entity'; + @override + Set get $primaryKey => {id}; + @override + RemoteAlbumEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return RemoteAlbumEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + description: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}description'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + ownerId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}owner_id'], + )!, + thumbnailAssetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}thumbnail_asset_id'], + ), + isActivityEnabled: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_activity_enabled'], + )!, + order: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}order'], + )!, + ); + } + + @override + RemoteAlbumEntity createAlias(String alias) { + return RemoteAlbumEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class RemoteAlbumEntityData extends DataClass + implements Insertable { + final String id; + final String name; + final String description; + final DateTime createdAt; + final DateTime updatedAt; + final String ownerId; + final String? thumbnailAssetId; + final bool isActivityEnabled; + final int order; + const RemoteAlbumEntityData({ + required this.id, + required this.name, + required this.description, + required this.createdAt, + required this.updatedAt, + required this.ownerId, + this.thumbnailAssetId, + required this.isActivityEnabled, + required this.order, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['name'] = Variable(name); + map['description'] = Variable(description); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + map['owner_id'] = Variable(ownerId); + if (!nullToAbsent || thumbnailAssetId != null) { + map['thumbnail_asset_id'] = Variable(thumbnailAssetId); + } + map['is_activity_enabled'] = Variable(isActivityEnabled); + map['order'] = Variable(order); + return map; + } + + factory RemoteAlbumEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return RemoteAlbumEntityData( + id: serializer.fromJson(json['id']), + name: serializer.fromJson(json['name']), + description: serializer.fromJson(json['description']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + ownerId: serializer.fromJson(json['ownerId']), + thumbnailAssetId: serializer.fromJson(json['thumbnailAssetId']), + isActivityEnabled: serializer.fromJson(json['isActivityEnabled']), + order: serializer.fromJson(json['order']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'name': serializer.toJson(name), + 'description': serializer.toJson(description), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'ownerId': serializer.toJson(ownerId), + 'thumbnailAssetId': serializer.toJson(thumbnailAssetId), + 'isActivityEnabled': serializer.toJson(isActivityEnabled), + 'order': serializer.toJson(order), + }; + } + + RemoteAlbumEntityData copyWith({ + String? id, + String? name, + String? description, + DateTime? createdAt, + DateTime? updatedAt, + String? ownerId, + Value thumbnailAssetId = const Value.absent(), + bool? isActivityEnabled, + int? order, + }) => RemoteAlbumEntityData( + id: id ?? this.id, + name: name ?? this.name, + description: description ?? this.description, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + thumbnailAssetId: thumbnailAssetId.present + ? thumbnailAssetId.value + : this.thumbnailAssetId, + isActivityEnabled: isActivityEnabled ?? this.isActivityEnabled, + order: order ?? this.order, + ); + RemoteAlbumEntityData copyWithCompanion(RemoteAlbumEntityCompanion data) { + return RemoteAlbumEntityData( + id: data.id.present ? data.id.value : this.id, + name: data.name.present ? data.name.value : this.name, + description: data.description.present + ? data.description.value + : this.description, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + ownerId: data.ownerId.present ? data.ownerId.value : this.ownerId, + thumbnailAssetId: data.thumbnailAssetId.present + ? data.thumbnailAssetId.value + : this.thumbnailAssetId, + isActivityEnabled: data.isActivityEnabled.present + ? data.isActivityEnabled.value + : this.isActivityEnabled, + order: data.order.present ? data.order.value : this.order, + ); + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumEntityData(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('description: $description, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('thumbnailAssetId: $thumbnailAssetId, ') + ..write('isActivityEnabled: $isActivityEnabled, ') + ..write('order: $order') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + name, + description, + createdAt, + updatedAt, + ownerId, + thumbnailAssetId, + isActivityEnabled, + order, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is RemoteAlbumEntityData && + other.id == this.id && + other.name == this.name && + other.description == this.description && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.ownerId == this.ownerId && + other.thumbnailAssetId == this.thumbnailAssetId && + other.isActivityEnabled == this.isActivityEnabled && + other.order == this.order); +} + +class RemoteAlbumEntityCompanion + extends UpdateCompanion { + final Value id; + final Value name; + final Value description; + final Value createdAt; + final Value updatedAt; + final Value ownerId; + final Value thumbnailAssetId; + final Value isActivityEnabled; + final Value order; + const RemoteAlbumEntityCompanion({ + this.id = const Value.absent(), + this.name = const Value.absent(), + this.description = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.ownerId = const Value.absent(), + this.thumbnailAssetId = const Value.absent(), + this.isActivityEnabled = const Value.absent(), + this.order = const Value.absent(), + }); + RemoteAlbumEntityCompanion.insert({ + required String id, + required String name, + this.description = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + required String ownerId, + this.thumbnailAssetId = const Value.absent(), + this.isActivityEnabled = const Value.absent(), + required int order, + }) : id = Value(id), + name = Value(name), + ownerId = Value(ownerId), + order = Value(order); + static Insertable custom({ + Expression? id, + Expression? name, + Expression? description, + Expression? createdAt, + Expression? updatedAt, + Expression? ownerId, + Expression? thumbnailAssetId, + Expression? isActivityEnabled, + Expression? order, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (name != null) 'name': name, + if (description != null) 'description': description, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (ownerId != null) 'owner_id': ownerId, + if (thumbnailAssetId != null) 'thumbnail_asset_id': thumbnailAssetId, + if (isActivityEnabled != null) 'is_activity_enabled': isActivityEnabled, + if (order != null) 'order': order, + }); + } + + RemoteAlbumEntityCompanion copyWith({ + Value? id, + Value? name, + Value? description, + Value? createdAt, + Value? updatedAt, + Value? ownerId, + Value? thumbnailAssetId, + Value? isActivityEnabled, + Value? order, + }) { + return RemoteAlbumEntityCompanion( + id: id ?? this.id, + name: name ?? this.name, + description: description ?? this.description, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + thumbnailAssetId: thumbnailAssetId ?? this.thumbnailAssetId, + isActivityEnabled: isActivityEnabled ?? this.isActivityEnabled, + order: order ?? this.order, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (description.present) { + map['description'] = Variable(description.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (ownerId.present) { + map['owner_id'] = Variable(ownerId.value); + } + if (thumbnailAssetId.present) { + map['thumbnail_asset_id'] = Variable(thumbnailAssetId.value); + } + if (isActivityEnabled.present) { + map['is_activity_enabled'] = Variable(isActivityEnabled.value); + } + if (order.present) { + map['order'] = Variable(order.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumEntityCompanion(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('description: $description, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('thumbnailAssetId: $thumbnailAssetId, ') + ..write('isActivityEnabled: $isActivityEnabled, ') + ..write('order: $order') + ..write(')')) + .toString(); + } +} + +class LocalAlbumEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + LocalAlbumEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn backupSelection = GeneratedColumn( + 'backup_selection', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn isIosSharedAlbum = GeneratedColumn( + 'is_ios_shared_album', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_ios_shared_album" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn linkedRemoteAlbumId = + GeneratedColumn( + 'linked_remote_album_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_album_entity (id) ON DELETE SET NULL', + ), + ); + late final GeneratedColumn marker_ = GeneratedColumn( + 'marker', + aliasedName, + true, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("marker" IN (0, 1))', + ), + ); + @override + List get $columns => [ + id, + name, + updatedAt, + backupSelection, + isIosSharedAlbum, + linkedRemoteAlbumId, + marker_, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'local_album_entity'; + @override + Set get $primaryKey => {id}; + @override + LocalAlbumEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return LocalAlbumEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + backupSelection: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}backup_selection'], + )!, + isIosSharedAlbum: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_ios_shared_album'], + )!, + linkedRemoteAlbumId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}linked_remote_album_id'], + ), + marker_: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}marker'], + ), + ); + } + + @override + LocalAlbumEntity createAlias(String alias) { + return LocalAlbumEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class LocalAlbumEntityData extends DataClass + implements Insertable { + final String id; + final String name; + final DateTime updatedAt; + final int backupSelection; + final bool isIosSharedAlbum; + final String? linkedRemoteAlbumId; + final bool? marker_; + const LocalAlbumEntityData({ + required this.id, + required this.name, + required this.updatedAt, + required this.backupSelection, + required this.isIosSharedAlbum, + this.linkedRemoteAlbumId, + this.marker_, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['name'] = Variable(name); + map['updated_at'] = Variable(updatedAt); + map['backup_selection'] = Variable(backupSelection); + map['is_ios_shared_album'] = Variable(isIosSharedAlbum); + if (!nullToAbsent || linkedRemoteAlbumId != null) { + map['linked_remote_album_id'] = Variable(linkedRemoteAlbumId); + } + if (!nullToAbsent || marker_ != null) { + map['marker'] = Variable(marker_); + } + return map; + } + + factory LocalAlbumEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return LocalAlbumEntityData( + id: serializer.fromJson(json['id']), + name: serializer.fromJson(json['name']), + updatedAt: serializer.fromJson(json['updatedAt']), + backupSelection: serializer.fromJson(json['backupSelection']), + isIosSharedAlbum: serializer.fromJson(json['isIosSharedAlbum']), + linkedRemoteAlbumId: serializer.fromJson( + json['linkedRemoteAlbumId'], + ), + marker_: serializer.fromJson(json['marker_']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'name': serializer.toJson(name), + 'updatedAt': serializer.toJson(updatedAt), + 'backupSelection': serializer.toJson(backupSelection), + 'isIosSharedAlbum': serializer.toJson(isIosSharedAlbum), + 'linkedRemoteAlbumId': serializer.toJson(linkedRemoteAlbumId), + 'marker_': serializer.toJson(marker_), + }; + } + + LocalAlbumEntityData copyWith({ + String? id, + String? name, + DateTime? updatedAt, + int? backupSelection, + bool? isIosSharedAlbum, + Value linkedRemoteAlbumId = const Value.absent(), + Value marker_ = const Value.absent(), + }) => LocalAlbumEntityData( + id: id ?? this.id, + name: name ?? this.name, + updatedAt: updatedAt ?? this.updatedAt, + backupSelection: backupSelection ?? this.backupSelection, + isIosSharedAlbum: isIosSharedAlbum ?? this.isIosSharedAlbum, + linkedRemoteAlbumId: linkedRemoteAlbumId.present + ? linkedRemoteAlbumId.value + : this.linkedRemoteAlbumId, + marker_: marker_.present ? marker_.value : this.marker_, + ); + LocalAlbumEntityData copyWithCompanion(LocalAlbumEntityCompanion data) { + return LocalAlbumEntityData( + id: data.id.present ? data.id.value : this.id, + name: data.name.present ? data.name.value : this.name, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + backupSelection: data.backupSelection.present + ? data.backupSelection.value + : this.backupSelection, + isIosSharedAlbum: data.isIosSharedAlbum.present + ? data.isIosSharedAlbum.value + : this.isIosSharedAlbum, + linkedRemoteAlbumId: data.linkedRemoteAlbumId.present + ? data.linkedRemoteAlbumId.value + : this.linkedRemoteAlbumId, + marker_: data.marker_.present ? data.marker_.value : this.marker_, + ); + } + + @override + String toString() { + return (StringBuffer('LocalAlbumEntityData(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('updatedAt: $updatedAt, ') + ..write('backupSelection: $backupSelection, ') + ..write('isIosSharedAlbum: $isIosSharedAlbum, ') + ..write('linkedRemoteAlbumId: $linkedRemoteAlbumId, ') + ..write('marker_: $marker_') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + name, + updatedAt, + backupSelection, + isIosSharedAlbum, + linkedRemoteAlbumId, + marker_, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is LocalAlbumEntityData && + other.id == this.id && + other.name == this.name && + other.updatedAt == this.updatedAt && + other.backupSelection == this.backupSelection && + other.isIosSharedAlbum == this.isIosSharedAlbum && + other.linkedRemoteAlbumId == this.linkedRemoteAlbumId && + other.marker_ == this.marker_); +} + +class LocalAlbumEntityCompanion extends UpdateCompanion { + final Value id; + final Value name; + final Value updatedAt; + final Value backupSelection; + final Value isIosSharedAlbum; + final Value linkedRemoteAlbumId; + final Value marker_; + const LocalAlbumEntityCompanion({ + this.id = const Value.absent(), + this.name = const Value.absent(), + this.updatedAt = const Value.absent(), + this.backupSelection = const Value.absent(), + this.isIosSharedAlbum = const Value.absent(), + this.linkedRemoteAlbumId = const Value.absent(), + this.marker_ = const Value.absent(), + }); + LocalAlbumEntityCompanion.insert({ + required String id, + required String name, + this.updatedAt = const Value.absent(), + required int backupSelection, + this.isIosSharedAlbum = const Value.absent(), + this.linkedRemoteAlbumId = const Value.absent(), + this.marker_ = const Value.absent(), + }) : id = Value(id), + name = Value(name), + backupSelection = Value(backupSelection); + static Insertable custom({ + Expression? id, + Expression? name, + Expression? updatedAt, + Expression? backupSelection, + Expression? isIosSharedAlbum, + Expression? linkedRemoteAlbumId, + Expression? marker_, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (name != null) 'name': name, + if (updatedAt != null) 'updated_at': updatedAt, + if (backupSelection != null) 'backup_selection': backupSelection, + if (isIosSharedAlbum != null) 'is_ios_shared_album': isIosSharedAlbum, + if (linkedRemoteAlbumId != null) + 'linked_remote_album_id': linkedRemoteAlbumId, + if (marker_ != null) 'marker': marker_, + }); + } + + LocalAlbumEntityCompanion copyWith({ + Value? id, + Value? name, + Value? updatedAt, + Value? backupSelection, + Value? isIosSharedAlbum, + Value? linkedRemoteAlbumId, + Value? marker_, + }) { + return LocalAlbumEntityCompanion( + id: id ?? this.id, + name: name ?? this.name, + updatedAt: updatedAt ?? this.updatedAt, + backupSelection: backupSelection ?? this.backupSelection, + isIosSharedAlbum: isIosSharedAlbum ?? this.isIosSharedAlbum, + linkedRemoteAlbumId: linkedRemoteAlbumId ?? this.linkedRemoteAlbumId, + marker_: marker_ ?? this.marker_, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (backupSelection.present) { + map['backup_selection'] = Variable(backupSelection.value); + } + if (isIosSharedAlbum.present) { + map['is_ios_shared_album'] = Variable(isIosSharedAlbum.value); + } + if (linkedRemoteAlbumId.present) { + map['linked_remote_album_id'] = Variable( + linkedRemoteAlbumId.value, + ); + } + if (marker_.present) { + map['marker'] = Variable(marker_.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('LocalAlbumEntityCompanion(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('updatedAt: $updatedAt, ') + ..write('backupSelection: $backupSelection, ') + ..write('isIosSharedAlbum: $isIosSharedAlbum, ') + ..write('linkedRemoteAlbumId: $linkedRemoteAlbumId, ') + ..write('marker_: $marker_') + ..write(')')) + .toString(); + } +} + +class LocalAlbumAssetEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + LocalAlbumAssetEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn assetId = GeneratedColumn( + 'asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES local_asset_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn albumId = GeneratedColumn( + 'album_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES local_album_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn marker_ = GeneratedColumn( + 'marker', + aliasedName, + true, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("marker" IN (0, 1))', + ), + ); + @override + List get $columns => [assetId, albumId, marker_]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'local_album_asset_entity'; + @override + Set get $primaryKey => {assetId, albumId}; + @override + LocalAlbumAssetEntityData map( + Map data, { + String? tablePrefix, + }) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return LocalAlbumAssetEntityData( + assetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}asset_id'], + )!, + albumId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}album_id'], + )!, + marker_: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}marker'], + ), + ); + } + + @override + LocalAlbumAssetEntity createAlias(String alias) { + return LocalAlbumAssetEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class LocalAlbumAssetEntityData extends DataClass + implements Insertable { + final String assetId; + final String albumId; + final bool? marker_; + const LocalAlbumAssetEntityData({ + required this.assetId, + required this.albumId, + this.marker_, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['asset_id'] = Variable(assetId); + map['album_id'] = Variable(albumId); + if (!nullToAbsent || marker_ != null) { + map['marker'] = Variable(marker_); + } + return map; + } + + factory LocalAlbumAssetEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return LocalAlbumAssetEntityData( + assetId: serializer.fromJson(json['assetId']), + albumId: serializer.fromJson(json['albumId']), + marker_: serializer.fromJson(json['marker_']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'assetId': serializer.toJson(assetId), + 'albumId': serializer.toJson(albumId), + 'marker_': serializer.toJson(marker_), + }; + } + + LocalAlbumAssetEntityData copyWith({ + String? assetId, + String? albumId, + Value marker_ = const Value.absent(), + }) => LocalAlbumAssetEntityData( + assetId: assetId ?? this.assetId, + albumId: albumId ?? this.albumId, + marker_: marker_.present ? marker_.value : this.marker_, + ); + LocalAlbumAssetEntityData copyWithCompanion( + LocalAlbumAssetEntityCompanion data, + ) { + return LocalAlbumAssetEntityData( + assetId: data.assetId.present ? data.assetId.value : this.assetId, + albumId: data.albumId.present ? data.albumId.value : this.albumId, + marker_: data.marker_.present ? data.marker_.value : this.marker_, + ); + } + + @override + String toString() { + return (StringBuffer('LocalAlbumAssetEntityData(') + ..write('assetId: $assetId, ') + ..write('albumId: $albumId, ') + ..write('marker_: $marker_') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(assetId, albumId, marker_); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is LocalAlbumAssetEntityData && + other.assetId == this.assetId && + other.albumId == this.albumId && + other.marker_ == this.marker_); +} + +class LocalAlbumAssetEntityCompanion + extends UpdateCompanion { + final Value assetId; + final Value albumId; + final Value marker_; + const LocalAlbumAssetEntityCompanion({ + this.assetId = const Value.absent(), + this.albumId = const Value.absent(), + this.marker_ = const Value.absent(), + }); + LocalAlbumAssetEntityCompanion.insert({ + required String assetId, + required String albumId, + this.marker_ = const Value.absent(), + }) : assetId = Value(assetId), + albumId = Value(albumId); + static Insertable custom({ + Expression? assetId, + Expression? albumId, + Expression? marker_, + }) { + return RawValuesInsertable({ + if (assetId != null) 'asset_id': assetId, + if (albumId != null) 'album_id': albumId, + if (marker_ != null) 'marker': marker_, + }); + } + + LocalAlbumAssetEntityCompanion copyWith({ + Value? assetId, + Value? albumId, + Value? marker_, + }) { + return LocalAlbumAssetEntityCompanion( + assetId: assetId ?? this.assetId, + albumId: albumId ?? this.albumId, + marker_: marker_ ?? this.marker_, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (assetId.present) { + map['asset_id'] = Variable(assetId.value); + } + if (albumId.present) { + map['album_id'] = Variable(albumId.value); + } + if (marker_.present) { + map['marker'] = Variable(marker_.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('LocalAlbumAssetEntityCompanion(') + ..write('assetId: $assetId, ') + ..write('albumId: $albumId, ') + ..write('marker_: $marker_') + ..write(')')) + .toString(); + } +} + +class AuthUserEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + AuthUserEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn email = GeneratedColumn( + 'email', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn isAdmin = GeneratedColumn( + 'is_admin', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_admin" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn hasProfileImage = GeneratedColumn( + 'has_profile_image', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("has_profile_image" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn profileChangedAt = + GeneratedColumn( + 'profile_changed_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn avatarColor = GeneratedColumn( + 'avatar_color', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn quotaSizeInBytes = GeneratedColumn( + 'quota_size_in_bytes', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn quotaUsageInBytes = GeneratedColumn( + 'quota_usage_in_bytes', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn pinCode = GeneratedColumn( + 'pin_code', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + name, + email, + isAdmin, + hasProfileImage, + profileChangedAt, + avatarColor, + quotaSizeInBytes, + quotaUsageInBytes, + pinCode, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'auth_user_entity'; + @override + Set get $primaryKey => {id}; + @override + AuthUserEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return AuthUserEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + email: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}email'], + )!, + isAdmin: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_admin'], + )!, + hasProfileImage: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}has_profile_image'], + )!, + profileChangedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}profile_changed_at'], + )!, + avatarColor: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}avatar_color'], + )!, + quotaSizeInBytes: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}quota_size_in_bytes'], + )!, + quotaUsageInBytes: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}quota_usage_in_bytes'], + )!, + pinCode: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}pin_code'], + ), + ); + } + + @override + AuthUserEntity createAlias(String alias) { + return AuthUserEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class AuthUserEntityData extends DataClass + implements Insertable { + final String id; + final String name; + final String email; + final bool isAdmin; + final bool hasProfileImage; + final DateTime profileChangedAt; + final int avatarColor; + final int quotaSizeInBytes; + final int quotaUsageInBytes; + final String? pinCode; + const AuthUserEntityData({ + required this.id, + required this.name, + required this.email, + required this.isAdmin, + required this.hasProfileImage, + required this.profileChangedAt, + required this.avatarColor, + required this.quotaSizeInBytes, + required this.quotaUsageInBytes, + this.pinCode, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['name'] = Variable(name); + map['email'] = Variable(email); + map['is_admin'] = Variable(isAdmin); + map['has_profile_image'] = Variable(hasProfileImage); + map['profile_changed_at'] = Variable(profileChangedAt); + map['avatar_color'] = Variable(avatarColor); + map['quota_size_in_bytes'] = Variable(quotaSizeInBytes); + map['quota_usage_in_bytes'] = Variable(quotaUsageInBytes); + if (!nullToAbsent || pinCode != null) { + map['pin_code'] = Variable(pinCode); + } + return map; + } + + factory AuthUserEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return AuthUserEntityData( + id: serializer.fromJson(json['id']), + name: serializer.fromJson(json['name']), + email: serializer.fromJson(json['email']), + isAdmin: serializer.fromJson(json['isAdmin']), + hasProfileImage: serializer.fromJson(json['hasProfileImage']), + profileChangedAt: serializer.fromJson(json['profileChangedAt']), + avatarColor: serializer.fromJson(json['avatarColor']), + quotaSizeInBytes: serializer.fromJson(json['quotaSizeInBytes']), + quotaUsageInBytes: serializer.fromJson(json['quotaUsageInBytes']), + pinCode: serializer.fromJson(json['pinCode']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'name': serializer.toJson(name), + 'email': serializer.toJson(email), + 'isAdmin': serializer.toJson(isAdmin), + 'hasProfileImage': serializer.toJson(hasProfileImage), + 'profileChangedAt': serializer.toJson(profileChangedAt), + 'avatarColor': serializer.toJson(avatarColor), + 'quotaSizeInBytes': serializer.toJson(quotaSizeInBytes), + 'quotaUsageInBytes': serializer.toJson(quotaUsageInBytes), + 'pinCode': serializer.toJson(pinCode), + }; + } + + AuthUserEntityData copyWith({ + String? id, + String? name, + String? email, + bool? isAdmin, + bool? hasProfileImage, + DateTime? profileChangedAt, + int? avatarColor, + int? quotaSizeInBytes, + int? quotaUsageInBytes, + Value pinCode = const Value.absent(), + }) => AuthUserEntityData( + id: id ?? this.id, + name: name ?? this.name, + email: email ?? this.email, + isAdmin: isAdmin ?? this.isAdmin, + hasProfileImage: hasProfileImage ?? this.hasProfileImage, + profileChangedAt: profileChangedAt ?? this.profileChangedAt, + avatarColor: avatarColor ?? this.avatarColor, + quotaSizeInBytes: quotaSizeInBytes ?? this.quotaSizeInBytes, + quotaUsageInBytes: quotaUsageInBytes ?? this.quotaUsageInBytes, + pinCode: pinCode.present ? pinCode.value : this.pinCode, + ); + AuthUserEntityData copyWithCompanion(AuthUserEntityCompanion data) { + return AuthUserEntityData( + id: data.id.present ? data.id.value : this.id, + name: data.name.present ? data.name.value : this.name, + email: data.email.present ? data.email.value : this.email, + isAdmin: data.isAdmin.present ? data.isAdmin.value : this.isAdmin, + hasProfileImage: data.hasProfileImage.present + ? data.hasProfileImage.value + : this.hasProfileImage, + profileChangedAt: data.profileChangedAt.present + ? data.profileChangedAt.value + : this.profileChangedAt, + avatarColor: data.avatarColor.present + ? data.avatarColor.value + : this.avatarColor, + quotaSizeInBytes: data.quotaSizeInBytes.present + ? data.quotaSizeInBytes.value + : this.quotaSizeInBytes, + quotaUsageInBytes: data.quotaUsageInBytes.present + ? data.quotaUsageInBytes.value + : this.quotaUsageInBytes, + pinCode: data.pinCode.present ? data.pinCode.value : this.pinCode, + ); + } + + @override + String toString() { + return (StringBuffer('AuthUserEntityData(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('email: $email, ') + ..write('isAdmin: $isAdmin, ') + ..write('hasProfileImage: $hasProfileImage, ') + ..write('profileChangedAt: $profileChangedAt, ') + ..write('avatarColor: $avatarColor, ') + ..write('quotaSizeInBytes: $quotaSizeInBytes, ') + ..write('quotaUsageInBytes: $quotaUsageInBytes, ') + ..write('pinCode: $pinCode') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + name, + email, + isAdmin, + hasProfileImage, + profileChangedAt, + avatarColor, + quotaSizeInBytes, + quotaUsageInBytes, + pinCode, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is AuthUserEntityData && + other.id == this.id && + other.name == this.name && + other.email == this.email && + other.isAdmin == this.isAdmin && + other.hasProfileImage == this.hasProfileImage && + other.profileChangedAt == this.profileChangedAt && + other.avatarColor == this.avatarColor && + other.quotaSizeInBytes == this.quotaSizeInBytes && + other.quotaUsageInBytes == this.quotaUsageInBytes && + other.pinCode == this.pinCode); +} + +class AuthUserEntityCompanion extends UpdateCompanion { + final Value id; + final Value name; + final Value email; + final Value isAdmin; + final Value hasProfileImage; + final Value profileChangedAt; + final Value avatarColor; + final Value quotaSizeInBytes; + final Value quotaUsageInBytes; + final Value pinCode; + const AuthUserEntityCompanion({ + this.id = const Value.absent(), + this.name = const Value.absent(), + this.email = const Value.absent(), + this.isAdmin = const Value.absent(), + this.hasProfileImage = const Value.absent(), + this.profileChangedAt = const Value.absent(), + this.avatarColor = const Value.absent(), + this.quotaSizeInBytes = const Value.absent(), + this.quotaUsageInBytes = const Value.absent(), + this.pinCode = const Value.absent(), + }); + AuthUserEntityCompanion.insert({ + required String id, + required String name, + required String email, + this.isAdmin = const Value.absent(), + this.hasProfileImage = const Value.absent(), + this.profileChangedAt = const Value.absent(), + required int avatarColor, + this.quotaSizeInBytes = const Value.absent(), + this.quotaUsageInBytes = const Value.absent(), + this.pinCode = const Value.absent(), + }) : id = Value(id), + name = Value(name), + email = Value(email), + avatarColor = Value(avatarColor); + static Insertable custom({ + Expression? id, + Expression? name, + Expression? email, + Expression? isAdmin, + Expression? hasProfileImage, + Expression? profileChangedAt, + Expression? avatarColor, + Expression? quotaSizeInBytes, + Expression? quotaUsageInBytes, + Expression? pinCode, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (name != null) 'name': name, + if (email != null) 'email': email, + if (isAdmin != null) 'is_admin': isAdmin, + if (hasProfileImage != null) 'has_profile_image': hasProfileImage, + if (profileChangedAt != null) 'profile_changed_at': profileChangedAt, + if (avatarColor != null) 'avatar_color': avatarColor, + if (quotaSizeInBytes != null) 'quota_size_in_bytes': quotaSizeInBytes, + if (quotaUsageInBytes != null) 'quota_usage_in_bytes': quotaUsageInBytes, + if (pinCode != null) 'pin_code': pinCode, + }); + } + + AuthUserEntityCompanion copyWith({ + Value? id, + Value? name, + Value? email, + Value? isAdmin, + Value? hasProfileImage, + Value? profileChangedAt, + Value? avatarColor, + Value? quotaSizeInBytes, + Value? quotaUsageInBytes, + Value? pinCode, + }) { + return AuthUserEntityCompanion( + id: id ?? this.id, + name: name ?? this.name, + email: email ?? this.email, + isAdmin: isAdmin ?? this.isAdmin, + hasProfileImage: hasProfileImage ?? this.hasProfileImage, + profileChangedAt: profileChangedAt ?? this.profileChangedAt, + avatarColor: avatarColor ?? this.avatarColor, + quotaSizeInBytes: quotaSizeInBytes ?? this.quotaSizeInBytes, + quotaUsageInBytes: quotaUsageInBytes ?? this.quotaUsageInBytes, + pinCode: pinCode ?? this.pinCode, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (email.present) { + map['email'] = Variable(email.value); + } + if (isAdmin.present) { + map['is_admin'] = Variable(isAdmin.value); + } + if (hasProfileImage.present) { + map['has_profile_image'] = Variable(hasProfileImage.value); + } + if (profileChangedAt.present) { + map['profile_changed_at'] = Variable(profileChangedAt.value); + } + if (avatarColor.present) { + map['avatar_color'] = Variable(avatarColor.value); + } + if (quotaSizeInBytes.present) { + map['quota_size_in_bytes'] = Variable(quotaSizeInBytes.value); + } + if (quotaUsageInBytes.present) { + map['quota_usage_in_bytes'] = Variable(quotaUsageInBytes.value); + } + if (pinCode.present) { + map['pin_code'] = Variable(pinCode.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('AuthUserEntityCompanion(') + ..write('id: $id, ') + ..write('name: $name, ') + ..write('email: $email, ') + ..write('isAdmin: $isAdmin, ') + ..write('hasProfileImage: $hasProfileImage, ') + ..write('profileChangedAt: $profileChangedAt, ') + ..write('avatarColor: $avatarColor, ') + ..write('quotaSizeInBytes: $quotaSizeInBytes, ') + ..write('quotaUsageInBytes: $quotaUsageInBytes, ') + ..write('pinCode: $pinCode') + ..write(')')) + .toString(); + } +} + +class UserMetadataEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + UserMetadataEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn userId = GeneratedColumn( + 'user_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn key = GeneratedColumn( + 'key', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn value = GeneratedColumn( + 'value', + aliasedName, + false, + type: DriftSqlType.blob, + requiredDuringInsert: true, + ); + @override + List get $columns => [userId, key, value]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'user_metadata_entity'; + @override + Set get $primaryKey => {userId, key}; + @override + UserMetadataEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return UserMetadataEntityData( + userId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}user_id'], + )!, + key: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}key'], + )!, + value: attachedDatabase.typeMapping.read( + DriftSqlType.blob, + data['${effectivePrefix}value'], + )!, + ); + } + + @override + UserMetadataEntity createAlias(String alias) { + return UserMetadataEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class UserMetadataEntityData extends DataClass + implements Insertable { + final String userId; + final int key; + final Uint8List value; + const UserMetadataEntityData({ + required this.userId, + required this.key, + required this.value, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['user_id'] = Variable(userId); + map['key'] = Variable(key); + map['value'] = Variable(value); + return map; + } + + factory UserMetadataEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return UserMetadataEntityData( + userId: serializer.fromJson(json['userId']), + key: serializer.fromJson(json['key']), + value: serializer.fromJson(json['value']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'userId': serializer.toJson(userId), + 'key': serializer.toJson(key), + 'value': serializer.toJson(value), + }; + } + + UserMetadataEntityData copyWith({ + String? userId, + int? key, + Uint8List? value, + }) => UserMetadataEntityData( + userId: userId ?? this.userId, + key: key ?? this.key, + value: value ?? this.value, + ); + UserMetadataEntityData copyWithCompanion(UserMetadataEntityCompanion data) { + return UserMetadataEntityData( + userId: data.userId.present ? data.userId.value : this.userId, + key: data.key.present ? data.key.value : this.key, + value: data.value.present ? data.value.value : this.value, + ); + } + + @override + String toString() { + return (StringBuffer('UserMetadataEntityData(') + ..write('userId: $userId, ') + ..write('key: $key, ') + ..write('value: $value') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(userId, key, $driftBlobEquality.hash(value)); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is UserMetadataEntityData && + other.userId == this.userId && + other.key == this.key && + $driftBlobEquality.equals(other.value, this.value)); +} + +class UserMetadataEntityCompanion + extends UpdateCompanion { + final Value userId; + final Value key; + final Value value; + const UserMetadataEntityCompanion({ + this.userId = const Value.absent(), + this.key = const Value.absent(), + this.value = const Value.absent(), + }); + UserMetadataEntityCompanion.insert({ + required String userId, + required int key, + required Uint8List value, + }) : userId = Value(userId), + key = Value(key), + value = Value(value); + static Insertable custom({ + Expression? userId, + Expression? key, + Expression? value, + }) { + return RawValuesInsertable({ + if (userId != null) 'user_id': userId, + if (key != null) 'key': key, + if (value != null) 'value': value, + }); + } + + UserMetadataEntityCompanion copyWith({ + Value? userId, + Value? key, + Value? value, + }) { + return UserMetadataEntityCompanion( + userId: userId ?? this.userId, + key: key ?? this.key, + value: value ?? this.value, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (userId.present) { + map['user_id'] = Variable(userId.value); + } + if (key.present) { + map['key'] = Variable(key.value); + } + if (value.present) { + map['value'] = Variable(value.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('UserMetadataEntityCompanion(') + ..write('userId: $userId, ') + ..write('key: $key, ') + ..write('value: $value') + ..write(')')) + .toString(); + } +} + +class PartnerEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + PartnerEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn sharedById = GeneratedColumn( + 'shared_by_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn sharedWithId = GeneratedColumn( + 'shared_with_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn inTimeline = GeneratedColumn( + 'in_timeline', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("in_timeline" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + @override + List get $columns => [sharedById, sharedWithId, inTimeline]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'partner_entity'; + @override + Set get $primaryKey => {sharedById, sharedWithId}; + @override + PartnerEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return PartnerEntityData( + sharedById: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}shared_by_id'], + )!, + sharedWithId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}shared_with_id'], + )!, + inTimeline: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}in_timeline'], + )!, + ); + } + + @override + PartnerEntity createAlias(String alias) { + return PartnerEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class PartnerEntityData extends DataClass + implements Insertable { + final String sharedById; + final String sharedWithId; + final bool inTimeline; + const PartnerEntityData({ + required this.sharedById, + required this.sharedWithId, + required this.inTimeline, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['shared_by_id'] = Variable(sharedById); + map['shared_with_id'] = Variable(sharedWithId); + map['in_timeline'] = Variable(inTimeline); + return map; + } + + factory PartnerEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return PartnerEntityData( + sharedById: serializer.fromJson(json['sharedById']), + sharedWithId: serializer.fromJson(json['sharedWithId']), + inTimeline: serializer.fromJson(json['inTimeline']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'sharedById': serializer.toJson(sharedById), + 'sharedWithId': serializer.toJson(sharedWithId), + 'inTimeline': serializer.toJson(inTimeline), + }; + } + + PartnerEntityData copyWith({ + String? sharedById, + String? sharedWithId, + bool? inTimeline, + }) => PartnerEntityData( + sharedById: sharedById ?? this.sharedById, + sharedWithId: sharedWithId ?? this.sharedWithId, + inTimeline: inTimeline ?? this.inTimeline, + ); + PartnerEntityData copyWithCompanion(PartnerEntityCompanion data) { + return PartnerEntityData( + sharedById: data.sharedById.present + ? data.sharedById.value + : this.sharedById, + sharedWithId: data.sharedWithId.present + ? data.sharedWithId.value + : this.sharedWithId, + inTimeline: data.inTimeline.present + ? data.inTimeline.value + : this.inTimeline, + ); + } + + @override + String toString() { + return (StringBuffer('PartnerEntityData(') + ..write('sharedById: $sharedById, ') + ..write('sharedWithId: $sharedWithId, ') + ..write('inTimeline: $inTimeline') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(sharedById, sharedWithId, inTimeline); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is PartnerEntityData && + other.sharedById == this.sharedById && + other.sharedWithId == this.sharedWithId && + other.inTimeline == this.inTimeline); +} + +class PartnerEntityCompanion extends UpdateCompanion { + final Value sharedById; + final Value sharedWithId; + final Value inTimeline; + const PartnerEntityCompanion({ + this.sharedById = const Value.absent(), + this.sharedWithId = const Value.absent(), + this.inTimeline = const Value.absent(), + }); + PartnerEntityCompanion.insert({ + required String sharedById, + required String sharedWithId, + this.inTimeline = const Value.absent(), + }) : sharedById = Value(sharedById), + sharedWithId = Value(sharedWithId); + static Insertable custom({ + Expression? sharedById, + Expression? sharedWithId, + Expression? inTimeline, + }) { + return RawValuesInsertable({ + if (sharedById != null) 'shared_by_id': sharedById, + if (sharedWithId != null) 'shared_with_id': sharedWithId, + if (inTimeline != null) 'in_timeline': inTimeline, + }); + } + + PartnerEntityCompanion copyWith({ + Value? sharedById, + Value? sharedWithId, + Value? inTimeline, + }) { + return PartnerEntityCompanion( + sharedById: sharedById ?? this.sharedById, + sharedWithId: sharedWithId ?? this.sharedWithId, + inTimeline: inTimeline ?? this.inTimeline, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (sharedById.present) { + map['shared_by_id'] = Variable(sharedById.value); + } + if (sharedWithId.present) { + map['shared_with_id'] = Variable(sharedWithId.value); + } + if (inTimeline.present) { + map['in_timeline'] = Variable(inTimeline.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('PartnerEntityCompanion(') + ..write('sharedById: $sharedById, ') + ..write('sharedWithId: $sharedWithId, ') + ..write('inTimeline: $inTimeline') + ..write(')')) + .toString(); + } +} + +class RemoteExifEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + RemoteExifEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn assetId = GeneratedColumn( + 'asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_asset_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn city = GeneratedColumn( + 'city', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn state = GeneratedColumn( + 'state', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn country = GeneratedColumn( + 'country', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn dateTimeOriginal = + GeneratedColumn( + 'date_time_original', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn description = GeneratedColumn( + 'description', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn height = GeneratedColumn( + 'height', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn width = GeneratedColumn( + 'width', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn exposureTime = GeneratedColumn( + 'exposure_time', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn fNumber = GeneratedColumn( + 'f_number', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + late final GeneratedColumn fileSize = GeneratedColumn( + 'file_size', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn focalLength = GeneratedColumn( + 'focal_length', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + late final GeneratedColumn latitude = GeneratedColumn( + 'latitude', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + late final GeneratedColumn longitude = GeneratedColumn( + 'longitude', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + late final GeneratedColumn iso = GeneratedColumn( + 'iso', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn make = GeneratedColumn( + 'make', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn model = GeneratedColumn( + 'model', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn lens = GeneratedColumn( + 'lens', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn orientation = GeneratedColumn( + 'orientation', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn timeZone = GeneratedColumn( + 'time_zone', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn rating = GeneratedColumn( + 'rating', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + late final GeneratedColumn projectionType = GeneratedColumn( + 'projection_type', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + assetId, + city, + state, + country, + dateTimeOriginal, + description, + height, + width, + exposureTime, + fNumber, + fileSize, + focalLength, + latitude, + longitude, + iso, + make, + model, + lens, + orientation, + timeZone, + rating, + projectionType, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'remote_exif_entity'; + @override + Set get $primaryKey => {assetId}; + @override + RemoteExifEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return RemoteExifEntityData( + assetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}asset_id'], + )!, + city: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}city'], + ), + state: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}state'], + ), + country: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}country'], + ), + dateTimeOriginal: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}date_time_original'], + ), + description: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}description'], + ), + height: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}height'], + ), + width: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}width'], + ), + exposureTime: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exposure_time'], + ), + fNumber: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}f_number'], + ), + fileSize: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}file_size'], + ), + focalLength: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}focal_length'], + ), + latitude: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}latitude'], + ), + longitude: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}longitude'], + ), + iso: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}iso'], + ), + make: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}make'], + ), + model: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}model'], + ), + lens: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}lens'], + ), + orientation: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}orientation'], + ), + timeZone: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}time_zone'], + ), + rating: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}rating'], + ), + projectionType: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}projection_type'], + ), + ); + } + + @override + RemoteExifEntity createAlias(String alias) { + return RemoteExifEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class RemoteExifEntityData extends DataClass + implements Insertable { + final String assetId; + final String? city; + final String? state; + final String? country; + final DateTime? dateTimeOriginal; + final String? description; + final int? height; + final int? width; + final String? exposureTime; + final double? fNumber; + final int? fileSize; + final double? focalLength; + final double? latitude; + final double? longitude; + final int? iso; + final String? make; + final String? model; + final String? lens; + final String? orientation; + final String? timeZone; + final int? rating; + final String? projectionType; + const RemoteExifEntityData({ + required this.assetId, + this.city, + this.state, + this.country, + this.dateTimeOriginal, + this.description, + this.height, + this.width, + this.exposureTime, + this.fNumber, + this.fileSize, + this.focalLength, + this.latitude, + this.longitude, + this.iso, + this.make, + this.model, + this.lens, + this.orientation, + this.timeZone, + this.rating, + this.projectionType, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['asset_id'] = Variable(assetId); + if (!nullToAbsent || city != null) { + map['city'] = Variable(city); + } + if (!nullToAbsent || state != null) { + map['state'] = Variable(state); + } + if (!nullToAbsent || country != null) { + map['country'] = Variable(country); + } + if (!nullToAbsent || dateTimeOriginal != null) { + map['date_time_original'] = Variable(dateTimeOriginal); + } + if (!nullToAbsent || description != null) { + map['description'] = Variable(description); + } + if (!nullToAbsent || height != null) { + map['height'] = Variable(height); + } + if (!nullToAbsent || width != null) { + map['width'] = Variable(width); + } + if (!nullToAbsent || exposureTime != null) { + map['exposure_time'] = Variable(exposureTime); + } + if (!nullToAbsent || fNumber != null) { + map['f_number'] = Variable(fNumber); + } + if (!nullToAbsent || fileSize != null) { + map['file_size'] = Variable(fileSize); + } + if (!nullToAbsent || focalLength != null) { + map['focal_length'] = Variable(focalLength); + } + if (!nullToAbsent || latitude != null) { + map['latitude'] = Variable(latitude); + } + if (!nullToAbsent || longitude != null) { + map['longitude'] = Variable(longitude); + } + if (!nullToAbsent || iso != null) { + map['iso'] = Variable(iso); + } + if (!nullToAbsent || make != null) { + map['make'] = Variable(make); + } + if (!nullToAbsent || model != null) { + map['model'] = Variable(model); + } + if (!nullToAbsent || lens != null) { + map['lens'] = Variable(lens); + } + if (!nullToAbsent || orientation != null) { + map['orientation'] = Variable(orientation); + } + if (!nullToAbsent || timeZone != null) { + map['time_zone'] = Variable(timeZone); + } + if (!nullToAbsent || rating != null) { + map['rating'] = Variable(rating); + } + if (!nullToAbsent || projectionType != null) { + map['projection_type'] = Variable(projectionType); + } + return map; + } + + factory RemoteExifEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return RemoteExifEntityData( + assetId: serializer.fromJson(json['assetId']), + city: serializer.fromJson(json['city']), + state: serializer.fromJson(json['state']), + country: serializer.fromJson(json['country']), + dateTimeOriginal: serializer.fromJson( + json['dateTimeOriginal'], + ), + description: serializer.fromJson(json['description']), + height: serializer.fromJson(json['height']), + width: serializer.fromJson(json['width']), + exposureTime: serializer.fromJson(json['exposureTime']), + fNumber: serializer.fromJson(json['fNumber']), + fileSize: serializer.fromJson(json['fileSize']), + focalLength: serializer.fromJson(json['focalLength']), + latitude: serializer.fromJson(json['latitude']), + longitude: serializer.fromJson(json['longitude']), + iso: serializer.fromJson(json['iso']), + make: serializer.fromJson(json['make']), + model: serializer.fromJson(json['model']), + lens: serializer.fromJson(json['lens']), + orientation: serializer.fromJson(json['orientation']), + timeZone: serializer.fromJson(json['timeZone']), + rating: serializer.fromJson(json['rating']), + projectionType: serializer.fromJson(json['projectionType']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'assetId': serializer.toJson(assetId), + 'city': serializer.toJson(city), + 'state': serializer.toJson(state), + 'country': serializer.toJson(country), + 'dateTimeOriginal': serializer.toJson(dateTimeOriginal), + 'description': serializer.toJson(description), + 'height': serializer.toJson(height), + 'width': serializer.toJson(width), + 'exposureTime': serializer.toJson(exposureTime), + 'fNumber': serializer.toJson(fNumber), + 'fileSize': serializer.toJson(fileSize), + 'focalLength': serializer.toJson(focalLength), + 'latitude': serializer.toJson(latitude), + 'longitude': serializer.toJson(longitude), + 'iso': serializer.toJson(iso), + 'make': serializer.toJson(make), + 'model': serializer.toJson(model), + 'lens': serializer.toJson(lens), + 'orientation': serializer.toJson(orientation), + 'timeZone': serializer.toJson(timeZone), + 'rating': serializer.toJson(rating), + 'projectionType': serializer.toJson(projectionType), + }; + } + + RemoteExifEntityData copyWith({ + String? assetId, + Value city = const Value.absent(), + Value state = const Value.absent(), + Value country = const Value.absent(), + Value dateTimeOriginal = const Value.absent(), + Value description = const Value.absent(), + Value height = const Value.absent(), + Value width = const Value.absent(), + Value exposureTime = const Value.absent(), + Value fNumber = const Value.absent(), + Value fileSize = const Value.absent(), + Value focalLength = const Value.absent(), + Value latitude = const Value.absent(), + Value longitude = const Value.absent(), + Value iso = const Value.absent(), + Value make = const Value.absent(), + Value model = const Value.absent(), + Value lens = const Value.absent(), + Value orientation = const Value.absent(), + Value timeZone = const Value.absent(), + Value rating = const Value.absent(), + Value projectionType = const Value.absent(), + }) => RemoteExifEntityData( + assetId: assetId ?? this.assetId, + city: city.present ? city.value : this.city, + state: state.present ? state.value : this.state, + country: country.present ? country.value : this.country, + dateTimeOriginal: dateTimeOriginal.present + ? dateTimeOriginal.value + : this.dateTimeOriginal, + description: description.present ? description.value : this.description, + height: height.present ? height.value : this.height, + width: width.present ? width.value : this.width, + exposureTime: exposureTime.present ? exposureTime.value : this.exposureTime, + fNumber: fNumber.present ? fNumber.value : this.fNumber, + fileSize: fileSize.present ? fileSize.value : this.fileSize, + focalLength: focalLength.present ? focalLength.value : this.focalLength, + latitude: latitude.present ? latitude.value : this.latitude, + longitude: longitude.present ? longitude.value : this.longitude, + iso: iso.present ? iso.value : this.iso, + make: make.present ? make.value : this.make, + model: model.present ? model.value : this.model, + lens: lens.present ? lens.value : this.lens, + orientation: orientation.present ? orientation.value : this.orientation, + timeZone: timeZone.present ? timeZone.value : this.timeZone, + rating: rating.present ? rating.value : this.rating, + projectionType: projectionType.present + ? projectionType.value + : this.projectionType, + ); + RemoteExifEntityData copyWithCompanion(RemoteExifEntityCompanion data) { + return RemoteExifEntityData( + assetId: data.assetId.present ? data.assetId.value : this.assetId, + city: data.city.present ? data.city.value : this.city, + state: data.state.present ? data.state.value : this.state, + country: data.country.present ? data.country.value : this.country, + dateTimeOriginal: data.dateTimeOriginal.present + ? data.dateTimeOriginal.value + : this.dateTimeOriginal, + description: data.description.present + ? data.description.value + : this.description, + height: data.height.present ? data.height.value : this.height, + width: data.width.present ? data.width.value : this.width, + exposureTime: data.exposureTime.present + ? data.exposureTime.value + : this.exposureTime, + fNumber: data.fNumber.present ? data.fNumber.value : this.fNumber, + fileSize: data.fileSize.present ? data.fileSize.value : this.fileSize, + focalLength: data.focalLength.present + ? data.focalLength.value + : this.focalLength, + latitude: data.latitude.present ? data.latitude.value : this.latitude, + longitude: data.longitude.present ? data.longitude.value : this.longitude, + iso: data.iso.present ? data.iso.value : this.iso, + make: data.make.present ? data.make.value : this.make, + model: data.model.present ? data.model.value : this.model, + lens: data.lens.present ? data.lens.value : this.lens, + orientation: data.orientation.present + ? data.orientation.value + : this.orientation, + timeZone: data.timeZone.present ? data.timeZone.value : this.timeZone, + rating: data.rating.present ? data.rating.value : this.rating, + projectionType: data.projectionType.present + ? data.projectionType.value + : this.projectionType, + ); + } + + @override + String toString() { + return (StringBuffer('RemoteExifEntityData(') + ..write('assetId: $assetId, ') + ..write('city: $city, ') + ..write('state: $state, ') + ..write('country: $country, ') + ..write('dateTimeOriginal: $dateTimeOriginal, ') + ..write('description: $description, ') + ..write('height: $height, ') + ..write('width: $width, ') + ..write('exposureTime: $exposureTime, ') + ..write('fNumber: $fNumber, ') + ..write('fileSize: $fileSize, ') + ..write('focalLength: $focalLength, ') + ..write('latitude: $latitude, ') + ..write('longitude: $longitude, ') + ..write('iso: $iso, ') + ..write('make: $make, ') + ..write('model: $model, ') + ..write('lens: $lens, ') + ..write('orientation: $orientation, ') + ..write('timeZone: $timeZone, ') + ..write('rating: $rating, ') + ..write('projectionType: $projectionType') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + assetId, + city, + state, + country, + dateTimeOriginal, + description, + height, + width, + exposureTime, + fNumber, + fileSize, + focalLength, + latitude, + longitude, + iso, + make, + model, + lens, + orientation, + timeZone, + rating, + projectionType, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is RemoteExifEntityData && + other.assetId == this.assetId && + other.city == this.city && + other.state == this.state && + other.country == this.country && + other.dateTimeOriginal == this.dateTimeOriginal && + other.description == this.description && + other.height == this.height && + other.width == this.width && + other.exposureTime == this.exposureTime && + other.fNumber == this.fNumber && + other.fileSize == this.fileSize && + other.focalLength == this.focalLength && + other.latitude == this.latitude && + other.longitude == this.longitude && + other.iso == this.iso && + other.make == this.make && + other.model == this.model && + other.lens == this.lens && + other.orientation == this.orientation && + other.timeZone == this.timeZone && + other.rating == this.rating && + other.projectionType == this.projectionType); +} + +class RemoteExifEntityCompanion extends UpdateCompanion { + final Value assetId; + final Value city; + final Value state; + final Value country; + final Value dateTimeOriginal; + final Value description; + final Value height; + final Value width; + final Value exposureTime; + final Value fNumber; + final Value fileSize; + final Value focalLength; + final Value latitude; + final Value longitude; + final Value iso; + final Value make; + final Value model; + final Value lens; + final Value orientation; + final Value timeZone; + final Value rating; + final Value projectionType; + const RemoteExifEntityCompanion({ + this.assetId = const Value.absent(), + this.city = const Value.absent(), + this.state = const Value.absent(), + this.country = const Value.absent(), + this.dateTimeOriginal = const Value.absent(), + this.description = const Value.absent(), + this.height = const Value.absent(), + this.width = const Value.absent(), + this.exposureTime = const Value.absent(), + this.fNumber = const Value.absent(), + this.fileSize = const Value.absent(), + this.focalLength = const Value.absent(), + this.latitude = const Value.absent(), + this.longitude = const Value.absent(), + this.iso = const Value.absent(), + this.make = const Value.absent(), + this.model = const Value.absent(), + this.lens = const Value.absent(), + this.orientation = const Value.absent(), + this.timeZone = const Value.absent(), + this.rating = const Value.absent(), + this.projectionType = const Value.absent(), + }); + RemoteExifEntityCompanion.insert({ + required String assetId, + this.city = const Value.absent(), + this.state = const Value.absent(), + this.country = const Value.absent(), + this.dateTimeOriginal = const Value.absent(), + this.description = const Value.absent(), + this.height = const Value.absent(), + this.width = const Value.absent(), + this.exposureTime = const Value.absent(), + this.fNumber = const Value.absent(), + this.fileSize = const Value.absent(), + this.focalLength = const Value.absent(), + this.latitude = const Value.absent(), + this.longitude = const Value.absent(), + this.iso = const Value.absent(), + this.make = const Value.absent(), + this.model = const Value.absent(), + this.lens = const Value.absent(), + this.orientation = const Value.absent(), + this.timeZone = const Value.absent(), + this.rating = const Value.absent(), + this.projectionType = const Value.absent(), + }) : assetId = Value(assetId); + static Insertable custom({ + Expression? assetId, + Expression? city, + Expression? state, + Expression? country, + Expression? dateTimeOriginal, + Expression? description, + Expression? height, + Expression? width, + Expression? exposureTime, + Expression? fNumber, + Expression? fileSize, + Expression? focalLength, + Expression? latitude, + Expression? longitude, + Expression? iso, + Expression? make, + Expression? model, + Expression? lens, + Expression? orientation, + Expression? timeZone, + Expression? rating, + Expression? projectionType, + }) { + return RawValuesInsertable({ + if (assetId != null) 'asset_id': assetId, + if (city != null) 'city': city, + if (state != null) 'state': state, + if (country != null) 'country': country, + if (dateTimeOriginal != null) 'date_time_original': dateTimeOriginal, + if (description != null) 'description': description, + if (height != null) 'height': height, + if (width != null) 'width': width, + if (exposureTime != null) 'exposure_time': exposureTime, + if (fNumber != null) 'f_number': fNumber, + if (fileSize != null) 'file_size': fileSize, + if (focalLength != null) 'focal_length': focalLength, + if (latitude != null) 'latitude': latitude, + if (longitude != null) 'longitude': longitude, + if (iso != null) 'iso': iso, + if (make != null) 'make': make, + if (model != null) 'model': model, + if (lens != null) 'lens': lens, + if (orientation != null) 'orientation': orientation, + if (timeZone != null) 'time_zone': timeZone, + if (rating != null) 'rating': rating, + if (projectionType != null) 'projection_type': projectionType, + }); + } + + RemoteExifEntityCompanion copyWith({ + Value? assetId, + Value? city, + Value? state, + Value? country, + Value? dateTimeOriginal, + Value? description, + Value? height, + Value? width, + Value? exposureTime, + Value? fNumber, + Value? fileSize, + Value? focalLength, + Value? latitude, + Value? longitude, + Value? iso, + Value? make, + Value? model, + Value? lens, + Value? orientation, + Value? timeZone, + Value? rating, + Value? projectionType, + }) { + return RemoteExifEntityCompanion( + assetId: assetId ?? this.assetId, + city: city ?? this.city, + state: state ?? this.state, + country: country ?? this.country, + dateTimeOriginal: dateTimeOriginal ?? this.dateTimeOriginal, + description: description ?? this.description, + height: height ?? this.height, + width: width ?? this.width, + exposureTime: exposureTime ?? this.exposureTime, + fNumber: fNumber ?? this.fNumber, + fileSize: fileSize ?? this.fileSize, + focalLength: focalLength ?? this.focalLength, + latitude: latitude ?? this.latitude, + longitude: longitude ?? this.longitude, + iso: iso ?? this.iso, + make: make ?? this.make, + model: model ?? this.model, + lens: lens ?? this.lens, + orientation: orientation ?? this.orientation, + timeZone: timeZone ?? this.timeZone, + rating: rating ?? this.rating, + projectionType: projectionType ?? this.projectionType, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (assetId.present) { + map['asset_id'] = Variable(assetId.value); + } + if (city.present) { + map['city'] = Variable(city.value); + } + if (state.present) { + map['state'] = Variable(state.value); + } + if (country.present) { + map['country'] = Variable(country.value); + } + if (dateTimeOriginal.present) { + map['date_time_original'] = Variable(dateTimeOriginal.value); + } + if (description.present) { + map['description'] = Variable(description.value); + } + if (height.present) { + map['height'] = Variable(height.value); + } + if (width.present) { + map['width'] = Variable(width.value); + } + if (exposureTime.present) { + map['exposure_time'] = Variable(exposureTime.value); + } + if (fNumber.present) { + map['f_number'] = Variable(fNumber.value); + } + if (fileSize.present) { + map['file_size'] = Variable(fileSize.value); + } + if (focalLength.present) { + map['focal_length'] = Variable(focalLength.value); + } + if (latitude.present) { + map['latitude'] = Variable(latitude.value); + } + if (longitude.present) { + map['longitude'] = Variable(longitude.value); + } + if (iso.present) { + map['iso'] = Variable(iso.value); + } + if (make.present) { + map['make'] = Variable(make.value); + } + if (model.present) { + map['model'] = Variable(model.value); + } + if (lens.present) { + map['lens'] = Variable(lens.value); + } + if (orientation.present) { + map['orientation'] = Variable(orientation.value); + } + if (timeZone.present) { + map['time_zone'] = Variable(timeZone.value); + } + if (rating.present) { + map['rating'] = Variable(rating.value); + } + if (projectionType.present) { + map['projection_type'] = Variable(projectionType.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('RemoteExifEntityCompanion(') + ..write('assetId: $assetId, ') + ..write('city: $city, ') + ..write('state: $state, ') + ..write('country: $country, ') + ..write('dateTimeOriginal: $dateTimeOriginal, ') + ..write('description: $description, ') + ..write('height: $height, ') + ..write('width: $width, ') + ..write('exposureTime: $exposureTime, ') + ..write('fNumber: $fNumber, ') + ..write('fileSize: $fileSize, ') + ..write('focalLength: $focalLength, ') + ..write('latitude: $latitude, ') + ..write('longitude: $longitude, ') + ..write('iso: $iso, ') + ..write('make: $make, ') + ..write('model: $model, ') + ..write('lens: $lens, ') + ..write('orientation: $orientation, ') + ..write('timeZone: $timeZone, ') + ..write('rating: $rating, ') + ..write('projectionType: $projectionType') + ..write(')')) + .toString(); + } +} + +class RemoteAlbumAssetEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + RemoteAlbumAssetEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn assetId = GeneratedColumn( + 'asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_asset_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn albumId = GeneratedColumn( + 'album_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_album_entity (id) ON DELETE CASCADE', + ), + ); + @override + List get $columns => [assetId, albumId]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'remote_album_asset_entity'; + @override + Set get $primaryKey => {assetId, albumId}; + @override + RemoteAlbumAssetEntityData map( + Map data, { + String? tablePrefix, + }) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return RemoteAlbumAssetEntityData( + assetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}asset_id'], + )!, + albumId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}album_id'], + )!, + ); + } + + @override + RemoteAlbumAssetEntity createAlias(String alias) { + return RemoteAlbumAssetEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class RemoteAlbumAssetEntityData extends DataClass + implements Insertable { + final String assetId; + final String albumId; + const RemoteAlbumAssetEntityData({ + required this.assetId, + required this.albumId, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['asset_id'] = Variable(assetId); + map['album_id'] = Variable(albumId); + return map; + } + + factory RemoteAlbumAssetEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return RemoteAlbumAssetEntityData( + assetId: serializer.fromJson(json['assetId']), + albumId: serializer.fromJson(json['albumId']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'assetId': serializer.toJson(assetId), + 'albumId': serializer.toJson(albumId), + }; + } + + RemoteAlbumAssetEntityData copyWith({String? assetId, String? albumId}) => + RemoteAlbumAssetEntityData( + assetId: assetId ?? this.assetId, + albumId: albumId ?? this.albumId, + ); + RemoteAlbumAssetEntityData copyWithCompanion( + RemoteAlbumAssetEntityCompanion data, + ) { + return RemoteAlbumAssetEntityData( + assetId: data.assetId.present ? data.assetId.value : this.assetId, + albumId: data.albumId.present ? data.albumId.value : this.albumId, + ); + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumAssetEntityData(') + ..write('assetId: $assetId, ') + ..write('albumId: $albumId') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(assetId, albumId); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is RemoteAlbumAssetEntityData && + other.assetId == this.assetId && + other.albumId == this.albumId); +} + +class RemoteAlbumAssetEntityCompanion + extends UpdateCompanion { + final Value assetId; + final Value albumId; + const RemoteAlbumAssetEntityCompanion({ + this.assetId = const Value.absent(), + this.albumId = const Value.absent(), + }); + RemoteAlbumAssetEntityCompanion.insert({ + required String assetId, + required String albumId, + }) : assetId = Value(assetId), + albumId = Value(albumId); + static Insertable custom({ + Expression? assetId, + Expression? albumId, + }) { + return RawValuesInsertable({ + if (assetId != null) 'asset_id': assetId, + if (albumId != null) 'album_id': albumId, + }); + } + + RemoteAlbumAssetEntityCompanion copyWith({ + Value? assetId, + Value? albumId, + }) { + return RemoteAlbumAssetEntityCompanion( + assetId: assetId ?? this.assetId, + albumId: albumId ?? this.albumId, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (assetId.present) { + map['asset_id'] = Variable(assetId.value); + } + if (albumId.present) { + map['album_id'] = Variable(albumId.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumAssetEntityCompanion(') + ..write('assetId: $assetId, ') + ..write('albumId: $albumId') + ..write(')')) + .toString(); + } +} + +class RemoteAlbumUserEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + RemoteAlbumUserEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn albumId = GeneratedColumn( + 'album_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_album_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn userId = GeneratedColumn( + 'user_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn role = GeneratedColumn( + 'role', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + @override + List get $columns => [albumId, userId, role]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'remote_album_user_entity'; + @override + Set get $primaryKey => {albumId, userId}; + @override + RemoteAlbumUserEntityData map( + Map data, { + String? tablePrefix, + }) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return RemoteAlbumUserEntityData( + albumId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}album_id'], + )!, + userId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}user_id'], + )!, + role: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}role'], + )!, + ); + } + + @override + RemoteAlbumUserEntity createAlias(String alias) { + return RemoteAlbumUserEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class RemoteAlbumUserEntityData extends DataClass + implements Insertable { + final String albumId; + final String userId; + final int role; + const RemoteAlbumUserEntityData({ + required this.albumId, + required this.userId, + required this.role, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['album_id'] = Variable(albumId); + map['user_id'] = Variable(userId); + map['role'] = Variable(role); + return map; + } + + factory RemoteAlbumUserEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return RemoteAlbumUserEntityData( + albumId: serializer.fromJson(json['albumId']), + userId: serializer.fromJson(json['userId']), + role: serializer.fromJson(json['role']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'albumId': serializer.toJson(albumId), + 'userId': serializer.toJson(userId), + 'role': serializer.toJson(role), + }; + } + + RemoteAlbumUserEntityData copyWith({ + String? albumId, + String? userId, + int? role, + }) => RemoteAlbumUserEntityData( + albumId: albumId ?? this.albumId, + userId: userId ?? this.userId, + role: role ?? this.role, + ); + RemoteAlbumUserEntityData copyWithCompanion( + RemoteAlbumUserEntityCompanion data, + ) { + return RemoteAlbumUserEntityData( + albumId: data.albumId.present ? data.albumId.value : this.albumId, + userId: data.userId.present ? data.userId.value : this.userId, + role: data.role.present ? data.role.value : this.role, + ); + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumUserEntityData(') + ..write('albumId: $albumId, ') + ..write('userId: $userId, ') + ..write('role: $role') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(albumId, userId, role); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is RemoteAlbumUserEntityData && + other.albumId == this.albumId && + other.userId == this.userId && + other.role == this.role); +} + +class RemoteAlbumUserEntityCompanion + extends UpdateCompanion { + final Value albumId; + final Value userId; + final Value role; + const RemoteAlbumUserEntityCompanion({ + this.albumId = const Value.absent(), + this.userId = const Value.absent(), + this.role = const Value.absent(), + }); + RemoteAlbumUserEntityCompanion.insert({ + required String albumId, + required String userId, + required int role, + }) : albumId = Value(albumId), + userId = Value(userId), + role = Value(role); + static Insertable custom({ + Expression? albumId, + Expression? userId, + Expression? role, + }) { + return RawValuesInsertable({ + if (albumId != null) 'album_id': albumId, + if (userId != null) 'user_id': userId, + if (role != null) 'role': role, + }); + } + + RemoteAlbumUserEntityCompanion copyWith({ + Value? albumId, + Value? userId, + Value? role, + }) { + return RemoteAlbumUserEntityCompanion( + albumId: albumId ?? this.albumId, + userId: userId ?? this.userId, + role: role ?? this.role, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (albumId.present) { + map['album_id'] = Variable(albumId.value); + } + if (userId.present) { + map['user_id'] = Variable(userId.value); + } + if (role.present) { + map['role'] = Variable(role.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('RemoteAlbumUserEntityCompanion(') + ..write('albumId: $albumId, ') + ..write('userId: $userId, ') + ..write('role: $role') + ..write(')')) + .toString(); + } +} + +class MemoryEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + MemoryEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn ownerId = GeneratedColumn( + 'owner_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn type = GeneratedColumn( + 'type', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn data = GeneratedColumn( + 'data', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn isSaved = GeneratedColumn( + 'is_saved', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_saved" IN (0, 1))', + ), + defaultValue: const CustomExpression('0'), + ); + late final GeneratedColumn memoryAt = GeneratedColumn( + 'memory_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + late final GeneratedColumn seenAt = GeneratedColumn( + 'seen_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn showAt = GeneratedColumn( + 'show_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + late final GeneratedColumn hideAt = GeneratedColumn( + 'hide_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + ownerId, + type, + data, + isSaved, + memoryAt, + seenAt, + showAt, + hideAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'memory_entity'; + @override + Set get $primaryKey => {id}; + @override + MemoryEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return MemoryEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + ownerId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}owner_id'], + )!, + type: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}type'], + )!, + data: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}data'], + )!, + isSaved: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_saved'], + )!, + memoryAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}memory_at'], + )!, + seenAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}seen_at'], + ), + showAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}show_at'], + ), + hideAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}hide_at'], + ), + ); + } + + @override + MemoryEntity createAlias(String alias) { + return MemoryEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class MemoryEntityData extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final String ownerId; + final int type; + final String data; + final bool isSaved; + final DateTime memoryAt; + final DateTime? seenAt; + final DateTime? showAt; + final DateTime? hideAt; + const MemoryEntityData({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.ownerId, + required this.type, + required this.data, + required this.isSaved, + required this.memoryAt, + this.seenAt, + this.showAt, + this.hideAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['owner_id'] = Variable(ownerId); + map['type'] = Variable(type); + map['data'] = Variable(data); + map['is_saved'] = Variable(isSaved); + map['memory_at'] = Variable(memoryAt); + if (!nullToAbsent || seenAt != null) { + map['seen_at'] = Variable(seenAt); + } + if (!nullToAbsent || showAt != null) { + map['show_at'] = Variable(showAt); + } + if (!nullToAbsent || hideAt != null) { + map['hide_at'] = Variable(hideAt); + } + return map; + } + + factory MemoryEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return MemoryEntityData( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + ownerId: serializer.fromJson(json['ownerId']), + type: serializer.fromJson(json['type']), + data: serializer.fromJson(json['data']), + isSaved: serializer.fromJson(json['isSaved']), + memoryAt: serializer.fromJson(json['memoryAt']), + seenAt: serializer.fromJson(json['seenAt']), + showAt: serializer.fromJson(json['showAt']), + hideAt: serializer.fromJson(json['hideAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'ownerId': serializer.toJson(ownerId), + 'type': serializer.toJson(type), + 'data': serializer.toJson(data), + 'isSaved': serializer.toJson(isSaved), + 'memoryAt': serializer.toJson(memoryAt), + 'seenAt': serializer.toJson(seenAt), + 'showAt': serializer.toJson(showAt), + 'hideAt': serializer.toJson(hideAt), + }; + } + + MemoryEntityData copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + String? ownerId, + int? type, + String? data, + bool? isSaved, + DateTime? memoryAt, + Value seenAt = const Value.absent(), + Value showAt = const Value.absent(), + Value hideAt = const Value.absent(), + }) => MemoryEntityData( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + ownerId: ownerId ?? this.ownerId, + type: type ?? this.type, + data: data ?? this.data, + isSaved: isSaved ?? this.isSaved, + memoryAt: memoryAt ?? this.memoryAt, + seenAt: seenAt.present ? seenAt.value : this.seenAt, + showAt: showAt.present ? showAt.value : this.showAt, + hideAt: hideAt.present ? hideAt.value : this.hideAt, + ); + MemoryEntityData copyWithCompanion(MemoryEntityCompanion data) { + return MemoryEntityData( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + ownerId: data.ownerId.present ? data.ownerId.value : this.ownerId, + type: data.type.present ? data.type.value : this.type, + data: data.data.present ? data.data.value : this.data, + isSaved: data.isSaved.present ? data.isSaved.value : this.isSaved, + memoryAt: data.memoryAt.present ? data.memoryAt.value : this.memoryAt, + seenAt: data.seenAt.present ? data.seenAt.value : this.seenAt, + showAt: data.showAt.present ? data.showAt.value : this.showAt, + hideAt: data.hideAt.present ? data.hideAt.value : this.hideAt, + ); + } + + @override + String toString() { + return (StringBuffer('MemoryEntityData(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('ownerId: $ownerId, ') + ..write('type: $type, ') + ..write('data: $data, ') + ..write('isSaved: $isSaved, ') + ..write('memoryAt: $memoryAt, ') + ..write('seenAt: $seenAt, ') + ..write('showAt: $showAt, ') + ..write('hideAt: $hideAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + ownerId, + type, + data, + isSaved, + memoryAt, + seenAt, + showAt, + hideAt, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is MemoryEntityData && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.ownerId == this.ownerId && + other.type == this.type && + other.data == this.data && + other.isSaved == this.isSaved && + other.memoryAt == this.memoryAt && + other.seenAt == this.seenAt && + other.showAt == this.showAt && + other.hideAt == this.hideAt); +} + +class MemoryEntityCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value ownerId; + final Value type; + final Value data; + final Value isSaved; + final Value memoryAt; + final Value seenAt; + final Value showAt; + final Value hideAt; + const MemoryEntityCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.ownerId = const Value.absent(), + this.type = const Value.absent(), + this.data = const Value.absent(), + this.isSaved = const Value.absent(), + this.memoryAt = const Value.absent(), + this.seenAt = const Value.absent(), + this.showAt = const Value.absent(), + this.hideAt = const Value.absent(), + }); + MemoryEntityCompanion.insert({ + required String id, + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + required String ownerId, + required int type, + required String data, + this.isSaved = const Value.absent(), + required DateTime memoryAt, + this.seenAt = const Value.absent(), + this.showAt = const Value.absent(), + this.hideAt = const Value.absent(), + }) : id = Value(id), + ownerId = Value(ownerId), + type = Value(type), + data = Value(data), + memoryAt = Value(memoryAt); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? ownerId, + Expression? type, + Expression? data, + Expression? isSaved, + Expression? memoryAt, + Expression? seenAt, + Expression? showAt, + Expression? hideAt, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (ownerId != null) 'owner_id': ownerId, + if (type != null) 'type': type, + if (data != null) 'data': data, + if (isSaved != null) 'is_saved': isSaved, + if (memoryAt != null) 'memory_at': memoryAt, + if (seenAt != null) 'seen_at': seenAt, + if (showAt != null) 'show_at': showAt, + if (hideAt != null) 'hide_at': hideAt, + }); + } + + MemoryEntityCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? ownerId, + Value? type, + Value? data, + Value? isSaved, + Value? memoryAt, + Value? seenAt, + Value? showAt, + Value? hideAt, + }) { + return MemoryEntityCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + ownerId: ownerId ?? this.ownerId, + type: type ?? this.type, + data: data ?? this.data, + isSaved: isSaved ?? this.isSaved, + memoryAt: memoryAt ?? this.memoryAt, + seenAt: seenAt ?? this.seenAt, + showAt: showAt ?? this.showAt, + hideAt: hideAt ?? this.hideAt, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (ownerId.present) { + map['owner_id'] = Variable(ownerId.value); + } + if (type.present) { + map['type'] = Variable(type.value); + } + if (data.present) { + map['data'] = Variable(data.value); + } + if (isSaved.present) { + map['is_saved'] = Variable(isSaved.value); + } + if (memoryAt.present) { + map['memory_at'] = Variable(memoryAt.value); + } + if (seenAt.present) { + map['seen_at'] = Variable(seenAt.value); + } + if (showAt.present) { + map['show_at'] = Variable(showAt.value); + } + if (hideAt.present) { + map['hide_at'] = Variable(hideAt.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('MemoryEntityCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('ownerId: $ownerId, ') + ..write('type: $type, ') + ..write('data: $data, ') + ..write('isSaved: $isSaved, ') + ..write('memoryAt: $memoryAt, ') + ..write('seenAt: $seenAt, ') + ..write('showAt: $showAt, ') + ..write('hideAt: $hideAt') + ..write(')')) + .toString(); + } +} + +class MemoryAssetEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + MemoryAssetEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn assetId = GeneratedColumn( + 'asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_asset_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn memoryId = GeneratedColumn( + 'memory_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES memory_entity (id) ON DELETE CASCADE', + ), + ); + @override + List get $columns => [assetId, memoryId]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'memory_asset_entity'; + @override + Set get $primaryKey => {assetId, memoryId}; + @override + MemoryAssetEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return MemoryAssetEntityData( + assetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}asset_id'], + )!, + memoryId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}memory_id'], + )!, + ); + } + + @override + MemoryAssetEntity createAlias(String alias) { + return MemoryAssetEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class MemoryAssetEntityData extends DataClass + implements Insertable { + final String assetId; + final String memoryId; + const MemoryAssetEntityData({required this.assetId, required this.memoryId}); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['asset_id'] = Variable(assetId); + map['memory_id'] = Variable(memoryId); + return map; + } + + factory MemoryAssetEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return MemoryAssetEntityData( + assetId: serializer.fromJson(json['assetId']), + memoryId: serializer.fromJson(json['memoryId']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'assetId': serializer.toJson(assetId), + 'memoryId': serializer.toJson(memoryId), + }; + } + + MemoryAssetEntityData copyWith({String? assetId, String? memoryId}) => + MemoryAssetEntityData( + assetId: assetId ?? this.assetId, + memoryId: memoryId ?? this.memoryId, + ); + MemoryAssetEntityData copyWithCompanion(MemoryAssetEntityCompanion data) { + return MemoryAssetEntityData( + assetId: data.assetId.present ? data.assetId.value : this.assetId, + memoryId: data.memoryId.present ? data.memoryId.value : this.memoryId, + ); + } + + @override + String toString() { + return (StringBuffer('MemoryAssetEntityData(') + ..write('assetId: $assetId, ') + ..write('memoryId: $memoryId') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(assetId, memoryId); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is MemoryAssetEntityData && + other.assetId == this.assetId && + other.memoryId == this.memoryId); +} + +class MemoryAssetEntityCompanion + extends UpdateCompanion { + final Value assetId; + final Value memoryId; + const MemoryAssetEntityCompanion({ + this.assetId = const Value.absent(), + this.memoryId = const Value.absent(), + }); + MemoryAssetEntityCompanion.insert({ + required String assetId, + required String memoryId, + }) : assetId = Value(assetId), + memoryId = Value(memoryId); + static Insertable custom({ + Expression? assetId, + Expression? memoryId, + }) { + return RawValuesInsertable({ + if (assetId != null) 'asset_id': assetId, + if (memoryId != null) 'memory_id': memoryId, + }); + } + + MemoryAssetEntityCompanion copyWith({ + Value? assetId, + Value? memoryId, + }) { + return MemoryAssetEntityCompanion( + assetId: assetId ?? this.assetId, + memoryId: memoryId ?? this.memoryId, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (assetId.present) { + map['asset_id'] = Variable(assetId.value); + } + if (memoryId.present) { + map['memory_id'] = Variable(memoryId.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('MemoryAssetEntityCompanion(') + ..write('assetId: $assetId, ') + ..write('memoryId: $memoryId') + ..write(')')) + .toString(); + } +} + +class PersonEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + PersonEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn createdAt = GeneratedColumn( + 'created_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + defaultValue: const CustomExpression('CURRENT_TIMESTAMP'), + ); + late final GeneratedColumn ownerId = GeneratedColumn( + 'owner_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES user_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn faceAssetId = GeneratedColumn( + 'face_asset_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn isFavorite = GeneratedColumn( + 'is_favorite', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_favorite" IN (0, 1))', + ), + ); + late final GeneratedColumn isHidden = GeneratedColumn( + 'is_hidden', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("is_hidden" IN (0, 1))', + ), + ); + late final GeneratedColumn color = GeneratedColumn( + 'color', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn birthDate = GeneratedColumn( + 'birth_date', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + ownerId, + name, + faceAssetId, + isFavorite, + isHidden, + color, + birthDate, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'person_entity'; + @override + Set get $primaryKey => {id}; + @override + PersonEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return PersonEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + ownerId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}owner_id'], + )!, + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + faceAssetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}face_asset_id'], + ), + isFavorite: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_favorite'], + )!, + isHidden: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}is_hidden'], + )!, + color: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}color'], + ), + birthDate: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}birth_date'], + ), + ); + } + + @override + PersonEntity createAlias(String alias) { + return PersonEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class PersonEntityData extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final String ownerId; + final String name; + final String? faceAssetId; + final bool isFavorite; + final bool isHidden; + final String? color; + final DateTime? birthDate; + const PersonEntityData({ + required this.id, + required this.createdAt, + required this.updatedAt, + required this.ownerId, + required this.name, + this.faceAssetId, + required this.isFavorite, + required this.isHidden, + this.color, + this.birthDate, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + map['owner_id'] = Variable(ownerId); + map['name'] = Variable(name); + if (!nullToAbsent || faceAssetId != null) { + map['face_asset_id'] = Variable(faceAssetId); + } + map['is_favorite'] = Variable(isFavorite); + map['is_hidden'] = Variable(isHidden); + if (!nullToAbsent || color != null) { + map['color'] = Variable(color); + } + if (!nullToAbsent || birthDate != null) { + map['birth_date'] = Variable(birthDate); + } + return map; + } + + factory PersonEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return PersonEntityData( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + ownerId: serializer.fromJson(json['ownerId']), + name: serializer.fromJson(json['name']), + faceAssetId: serializer.fromJson(json['faceAssetId']), + isFavorite: serializer.fromJson(json['isFavorite']), + isHidden: serializer.fromJson(json['isHidden']), + color: serializer.fromJson(json['color']), + birthDate: serializer.fromJson(json['birthDate']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'ownerId': serializer.toJson(ownerId), + 'name': serializer.toJson(name), + 'faceAssetId': serializer.toJson(faceAssetId), + 'isFavorite': serializer.toJson(isFavorite), + 'isHidden': serializer.toJson(isHidden), + 'color': serializer.toJson(color), + 'birthDate': serializer.toJson(birthDate), + }; + } + + PersonEntityData copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + String? ownerId, + String? name, + Value faceAssetId = const Value.absent(), + bool? isFavorite, + bool? isHidden, + Value color = const Value.absent(), + Value birthDate = const Value.absent(), + }) => PersonEntityData( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + name: name ?? this.name, + faceAssetId: faceAssetId.present ? faceAssetId.value : this.faceAssetId, + isFavorite: isFavorite ?? this.isFavorite, + isHidden: isHidden ?? this.isHidden, + color: color.present ? color.value : this.color, + birthDate: birthDate.present ? birthDate.value : this.birthDate, + ); + PersonEntityData copyWithCompanion(PersonEntityCompanion data) { + return PersonEntityData( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + ownerId: data.ownerId.present ? data.ownerId.value : this.ownerId, + name: data.name.present ? data.name.value : this.name, + faceAssetId: data.faceAssetId.present + ? data.faceAssetId.value + : this.faceAssetId, + isFavorite: data.isFavorite.present + ? data.isFavorite.value + : this.isFavorite, + isHidden: data.isHidden.present ? data.isHidden.value : this.isHidden, + color: data.color.present ? data.color.value : this.color, + birthDate: data.birthDate.present ? data.birthDate.value : this.birthDate, + ); + } + + @override + String toString() { + return (StringBuffer('PersonEntityData(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('name: $name, ') + ..write('faceAssetId: $faceAssetId, ') + ..write('isFavorite: $isFavorite, ') + ..write('isHidden: $isHidden, ') + ..write('color: $color, ') + ..write('birthDate: $birthDate') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + ownerId, + name, + faceAssetId, + isFavorite, + isHidden, + color, + birthDate, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is PersonEntityData && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.ownerId == this.ownerId && + other.name == this.name && + other.faceAssetId == this.faceAssetId && + other.isFavorite == this.isFavorite && + other.isHidden == this.isHidden && + other.color == this.color && + other.birthDate == this.birthDate); +} + +class PersonEntityCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value ownerId; + final Value name; + final Value faceAssetId; + final Value isFavorite; + final Value isHidden; + final Value color; + final Value birthDate; + const PersonEntityCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.ownerId = const Value.absent(), + this.name = const Value.absent(), + this.faceAssetId = const Value.absent(), + this.isFavorite = const Value.absent(), + this.isHidden = const Value.absent(), + this.color = const Value.absent(), + this.birthDate = const Value.absent(), + }); + PersonEntityCompanion.insert({ + required String id, + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + required String ownerId, + required String name, + this.faceAssetId = const Value.absent(), + required bool isFavorite, + required bool isHidden, + this.color = const Value.absent(), + this.birthDate = const Value.absent(), + }) : id = Value(id), + ownerId = Value(ownerId), + name = Value(name), + isFavorite = Value(isFavorite), + isHidden = Value(isHidden); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? ownerId, + Expression? name, + Expression? faceAssetId, + Expression? isFavorite, + Expression? isHidden, + Expression? color, + Expression? birthDate, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (ownerId != null) 'owner_id': ownerId, + if (name != null) 'name': name, + if (faceAssetId != null) 'face_asset_id': faceAssetId, + if (isFavorite != null) 'is_favorite': isFavorite, + if (isHidden != null) 'is_hidden': isHidden, + if (color != null) 'color': color, + if (birthDate != null) 'birth_date': birthDate, + }); + } + + PersonEntityCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? ownerId, + Value? name, + Value? faceAssetId, + Value? isFavorite, + Value? isHidden, + Value? color, + Value? birthDate, + }) { + return PersonEntityCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + ownerId: ownerId ?? this.ownerId, + name: name ?? this.name, + faceAssetId: faceAssetId ?? this.faceAssetId, + isFavorite: isFavorite ?? this.isFavorite, + isHidden: isHidden ?? this.isHidden, + color: color ?? this.color, + birthDate: birthDate ?? this.birthDate, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (ownerId.present) { + map['owner_id'] = Variable(ownerId.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (faceAssetId.present) { + map['face_asset_id'] = Variable(faceAssetId.value); + } + if (isFavorite.present) { + map['is_favorite'] = Variable(isFavorite.value); + } + if (isHidden.present) { + map['is_hidden'] = Variable(isHidden.value); + } + if (color.present) { + map['color'] = Variable(color.value); + } + if (birthDate.present) { + map['birth_date'] = Variable(birthDate.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('PersonEntityCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('ownerId: $ownerId, ') + ..write('name: $name, ') + ..write('faceAssetId: $faceAssetId, ') + ..write('isFavorite: $isFavorite, ') + ..write('isHidden: $isHidden, ') + ..write('color: $color, ') + ..write('birthDate: $birthDate') + ..write(')')) + .toString(); + } +} + +class AssetFaceEntity extends Table + with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + AssetFaceEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + late final GeneratedColumn assetId = GeneratedColumn( + 'asset_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES remote_asset_entity (id) ON DELETE CASCADE', + ), + ); + late final GeneratedColumn personId = GeneratedColumn( + 'person_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES person_entity (id) ON DELETE SET NULL', + ), + ); + late final GeneratedColumn imageWidth = GeneratedColumn( + 'image_width', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn imageHeight = GeneratedColumn( + 'image_height', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn boundingBoxX1 = GeneratedColumn( + 'bounding_box_x1', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn boundingBoxY1 = GeneratedColumn( + 'bounding_box_y1', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn boundingBoxX2 = GeneratedColumn( + 'bounding_box_x2', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn boundingBoxY2 = GeneratedColumn( + 'bounding_box_y2', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn sourceType = GeneratedColumn( + 'source_type', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + assetId, + personId, + imageWidth, + imageHeight, + boundingBoxX1, + boundingBoxY1, + boundingBoxX2, + boundingBoxY2, + sourceType, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'asset_face_entity'; + @override + Set get $primaryKey => {id}; + @override + AssetFaceEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return AssetFaceEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + assetId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}asset_id'], + )!, + personId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}person_id'], + ), + imageWidth: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}image_width'], + )!, + imageHeight: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}image_height'], + )!, + boundingBoxX1: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}bounding_box_x1'], + )!, + boundingBoxY1: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}bounding_box_y1'], + )!, + boundingBoxX2: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}bounding_box_x2'], + )!, + boundingBoxY2: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}bounding_box_y2'], + )!, + sourceType: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_type'], + )!, + ); + } + + @override + AssetFaceEntity createAlias(String alias) { + return AssetFaceEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class AssetFaceEntityData extends DataClass + implements Insertable { + final String id; + final String assetId; + final String? personId; + final int imageWidth; + final int imageHeight; + final int boundingBoxX1; + final int boundingBoxY1; + final int boundingBoxX2; + final int boundingBoxY2; + final String sourceType; + const AssetFaceEntityData({ + required this.id, + required this.assetId, + this.personId, + required this.imageWidth, + required this.imageHeight, + required this.boundingBoxX1, + required this.boundingBoxY1, + required this.boundingBoxX2, + required this.boundingBoxY2, + required this.sourceType, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['asset_id'] = Variable(assetId); + if (!nullToAbsent || personId != null) { + map['person_id'] = Variable(personId); + } + map['image_width'] = Variable(imageWidth); + map['image_height'] = Variable(imageHeight); + map['bounding_box_x1'] = Variable(boundingBoxX1); + map['bounding_box_y1'] = Variable(boundingBoxY1); + map['bounding_box_x2'] = Variable(boundingBoxX2); + map['bounding_box_y2'] = Variable(boundingBoxY2); + map['source_type'] = Variable(sourceType); + return map; + } + + factory AssetFaceEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return AssetFaceEntityData( + id: serializer.fromJson(json['id']), + assetId: serializer.fromJson(json['assetId']), + personId: serializer.fromJson(json['personId']), + imageWidth: serializer.fromJson(json['imageWidth']), + imageHeight: serializer.fromJson(json['imageHeight']), + boundingBoxX1: serializer.fromJson(json['boundingBoxX1']), + boundingBoxY1: serializer.fromJson(json['boundingBoxY1']), + boundingBoxX2: serializer.fromJson(json['boundingBoxX2']), + boundingBoxY2: serializer.fromJson(json['boundingBoxY2']), + sourceType: serializer.fromJson(json['sourceType']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'assetId': serializer.toJson(assetId), + 'personId': serializer.toJson(personId), + 'imageWidth': serializer.toJson(imageWidth), + 'imageHeight': serializer.toJson(imageHeight), + 'boundingBoxX1': serializer.toJson(boundingBoxX1), + 'boundingBoxY1': serializer.toJson(boundingBoxY1), + 'boundingBoxX2': serializer.toJson(boundingBoxX2), + 'boundingBoxY2': serializer.toJson(boundingBoxY2), + 'sourceType': serializer.toJson(sourceType), + }; + } + + AssetFaceEntityData copyWith({ + String? id, + String? assetId, + Value personId = const Value.absent(), + int? imageWidth, + int? imageHeight, + int? boundingBoxX1, + int? boundingBoxY1, + int? boundingBoxX2, + int? boundingBoxY2, + String? sourceType, + }) => AssetFaceEntityData( + id: id ?? this.id, + assetId: assetId ?? this.assetId, + personId: personId.present ? personId.value : this.personId, + imageWidth: imageWidth ?? this.imageWidth, + imageHeight: imageHeight ?? this.imageHeight, + boundingBoxX1: boundingBoxX1 ?? this.boundingBoxX1, + boundingBoxY1: boundingBoxY1 ?? this.boundingBoxY1, + boundingBoxX2: boundingBoxX2 ?? this.boundingBoxX2, + boundingBoxY2: boundingBoxY2 ?? this.boundingBoxY2, + sourceType: sourceType ?? this.sourceType, + ); + AssetFaceEntityData copyWithCompanion(AssetFaceEntityCompanion data) { + return AssetFaceEntityData( + id: data.id.present ? data.id.value : this.id, + assetId: data.assetId.present ? data.assetId.value : this.assetId, + personId: data.personId.present ? data.personId.value : this.personId, + imageWidth: data.imageWidth.present + ? data.imageWidth.value + : this.imageWidth, + imageHeight: data.imageHeight.present + ? data.imageHeight.value + : this.imageHeight, + boundingBoxX1: data.boundingBoxX1.present + ? data.boundingBoxX1.value + : this.boundingBoxX1, + boundingBoxY1: data.boundingBoxY1.present + ? data.boundingBoxY1.value + : this.boundingBoxY1, + boundingBoxX2: data.boundingBoxX2.present + ? data.boundingBoxX2.value + : this.boundingBoxX2, + boundingBoxY2: data.boundingBoxY2.present + ? data.boundingBoxY2.value + : this.boundingBoxY2, + sourceType: data.sourceType.present + ? data.sourceType.value + : this.sourceType, + ); + } + + @override + String toString() { + return (StringBuffer('AssetFaceEntityData(') + ..write('id: $id, ') + ..write('assetId: $assetId, ') + ..write('personId: $personId, ') + ..write('imageWidth: $imageWidth, ') + ..write('imageHeight: $imageHeight, ') + ..write('boundingBoxX1: $boundingBoxX1, ') + ..write('boundingBoxY1: $boundingBoxY1, ') + ..write('boundingBoxX2: $boundingBoxX2, ') + ..write('boundingBoxY2: $boundingBoxY2, ') + ..write('sourceType: $sourceType') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + assetId, + personId, + imageWidth, + imageHeight, + boundingBoxX1, + boundingBoxY1, + boundingBoxX2, + boundingBoxY2, + sourceType, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is AssetFaceEntityData && + other.id == this.id && + other.assetId == this.assetId && + other.personId == this.personId && + other.imageWidth == this.imageWidth && + other.imageHeight == this.imageHeight && + other.boundingBoxX1 == this.boundingBoxX1 && + other.boundingBoxY1 == this.boundingBoxY1 && + other.boundingBoxX2 == this.boundingBoxX2 && + other.boundingBoxY2 == this.boundingBoxY2 && + other.sourceType == this.sourceType); +} + +class AssetFaceEntityCompanion extends UpdateCompanion { + final Value id; + final Value assetId; + final Value personId; + final Value imageWidth; + final Value imageHeight; + final Value boundingBoxX1; + final Value boundingBoxY1; + final Value boundingBoxX2; + final Value boundingBoxY2; + final Value sourceType; + const AssetFaceEntityCompanion({ + this.id = const Value.absent(), + this.assetId = const Value.absent(), + this.personId = const Value.absent(), + this.imageWidth = const Value.absent(), + this.imageHeight = const Value.absent(), + this.boundingBoxX1 = const Value.absent(), + this.boundingBoxY1 = const Value.absent(), + this.boundingBoxX2 = const Value.absent(), + this.boundingBoxY2 = const Value.absent(), + this.sourceType = const Value.absent(), + }); + AssetFaceEntityCompanion.insert({ + required String id, + required String assetId, + this.personId = const Value.absent(), + required int imageWidth, + required int imageHeight, + required int boundingBoxX1, + required int boundingBoxY1, + required int boundingBoxX2, + required int boundingBoxY2, + required String sourceType, + }) : id = Value(id), + assetId = Value(assetId), + imageWidth = Value(imageWidth), + imageHeight = Value(imageHeight), + boundingBoxX1 = Value(boundingBoxX1), + boundingBoxY1 = Value(boundingBoxY1), + boundingBoxX2 = Value(boundingBoxX2), + boundingBoxY2 = Value(boundingBoxY2), + sourceType = Value(sourceType); + static Insertable custom({ + Expression? id, + Expression? assetId, + Expression? personId, + Expression? imageWidth, + Expression? imageHeight, + Expression? boundingBoxX1, + Expression? boundingBoxY1, + Expression? boundingBoxX2, + Expression? boundingBoxY2, + Expression? sourceType, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (assetId != null) 'asset_id': assetId, + if (personId != null) 'person_id': personId, + if (imageWidth != null) 'image_width': imageWidth, + if (imageHeight != null) 'image_height': imageHeight, + if (boundingBoxX1 != null) 'bounding_box_x1': boundingBoxX1, + if (boundingBoxY1 != null) 'bounding_box_y1': boundingBoxY1, + if (boundingBoxX2 != null) 'bounding_box_x2': boundingBoxX2, + if (boundingBoxY2 != null) 'bounding_box_y2': boundingBoxY2, + if (sourceType != null) 'source_type': sourceType, + }); + } + + AssetFaceEntityCompanion copyWith({ + Value? id, + Value? assetId, + Value? personId, + Value? imageWidth, + Value? imageHeight, + Value? boundingBoxX1, + Value? boundingBoxY1, + Value? boundingBoxX2, + Value? boundingBoxY2, + Value? sourceType, + }) { + return AssetFaceEntityCompanion( + id: id ?? this.id, + assetId: assetId ?? this.assetId, + personId: personId ?? this.personId, + imageWidth: imageWidth ?? this.imageWidth, + imageHeight: imageHeight ?? this.imageHeight, + boundingBoxX1: boundingBoxX1 ?? this.boundingBoxX1, + boundingBoxY1: boundingBoxY1 ?? this.boundingBoxY1, + boundingBoxX2: boundingBoxX2 ?? this.boundingBoxX2, + boundingBoxY2: boundingBoxY2 ?? this.boundingBoxY2, + sourceType: sourceType ?? this.sourceType, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (assetId.present) { + map['asset_id'] = Variable(assetId.value); + } + if (personId.present) { + map['person_id'] = Variable(personId.value); + } + if (imageWidth.present) { + map['image_width'] = Variable(imageWidth.value); + } + if (imageHeight.present) { + map['image_height'] = Variable(imageHeight.value); + } + if (boundingBoxX1.present) { + map['bounding_box_x1'] = Variable(boundingBoxX1.value); + } + if (boundingBoxY1.present) { + map['bounding_box_y1'] = Variable(boundingBoxY1.value); + } + if (boundingBoxX2.present) { + map['bounding_box_x2'] = Variable(boundingBoxX2.value); + } + if (boundingBoxY2.present) { + map['bounding_box_y2'] = Variable(boundingBoxY2.value); + } + if (sourceType.present) { + map['source_type'] = Variable(sourceType.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('AssetFaceEntityCompanion(') + ..write('id: $id, ') + ..write('assetId: $assetId, ') + ..write('personId: $personId, ') + ..write('imageWidth: $imageWidth, ') + ..write('imageHeight: $imageHeight, ') + ..write('boundingBoxX1: $boundingBoxX1, ') + ..write('boundingBoxY1: $boundingBoxY1, ') + ..write('boundingBoxX2: $boundingBoxX2, ') + ..write('boundingBoxY2: $boundingBoxY2, ') + ..write('sourceType: $sourceType') + ..write(')')) + .toString(); + } +} + +class StoreEntity extends Table with TableInfo { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + StoreEntity(this.attachedDatabase, [this._alias]); + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + late final GeneratedColumn stringValue = GeneratedColumn( + 'string_value', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + late final GeneratedColumn intValue = GeneratedColumn( + 'int_value', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + @override + List get $columns => [id, stringValue, intValue]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'store_entity'; + @override + Set get $primaryKey => {id}; + @override + StoreEntityData map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return StoreEntityData( + id: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}id'], + )!, + stringValue: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}string_value'], + ), + intValue: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}int_value'], + ), + ); + } + + @override + StoreEntity createAlias(String alias) { + return StoreEntity(attachedDatabase, alias); + } + + @override + bool get withoutRowId => true; + @override + bool get isStrict => true; +} + +class StoreEntityData extends DataClass implements Insertable { + final int id; + final String? stringValue; + final int? intValue; + const StoreEntityData({required this.id, this.stringValue, this.intValue}); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + if (!nullToAbsent || stringValue != null) { + map['string_value'] = Variable(stringValue); + } + if (!nullToAbsent || intValue != null) { + map['int_value'] = Variable(intValue); + } + return map; + } + + factory StoreEntityData.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return StoreEntityData( + id: serializer.fromJson(json['id']), + stringValue: serializer.fromJson(json['stringValue']), + intValue: serializer.fromJson(json['intValue']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'stringValue': serializer.toJson(stringValue), + 'intValue': serializer.toJson(intValue), + }; + } + + StoreEntityData copyWith({ + int? id, + Value stringValue = const Value.absent(), + Value intValue = const Value.absent(), + }) => StoreEntityData( + id: id ?? this.id, + stringValue: stringValue.present ? stringValue.value : this.stringValue, + intValue: intValue.present ? intValue.value : this.intValue, + ); + StoreEntityData copyWithCompanion(StoreEntityCompanion data) { + return StoreEntityData( + id: data.id.present ? data.id.value : this.id, + stringValue: data.stringValue.present + ? data.stringValue.value + : this.stringValue, + intValue: data.intValue.present ? data.intValue.value : this.intValue, + ); + } + + @override + String toString() { + return (StringBuffer('StoreEntityData(') + ..write('id: $id, ') + ..write('stringValue: $stringValue, ') + ..write('intValue: $intValue') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash(id, stringValue, intValue); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is StoreEntityData && + other.id == this.id && + other.stringValue == this.stringValue && + other.intValue == this.intValue); +} + +class StoreEntityCompanion extends UpdateCompanion { + final Value id; + final Value stringValue; + final Value intValue; + const StoreEntityCompanion({ + this.id = const Value.absent(), + this.stringValue = const Value.absent(), + this.intValue = const Value.absent(), + }); + StoreEntityCompanion.insert({ + required int id, + this.stringValue = const Value.absent(), + this.intValue = const Value.absent(), + }) : id = Value(id); + static Insertable custom({ + Expression? id, + Expression? stringValue, + Expression? intValue, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (stringValue != null) 'string_value': stringValue, + if (intValue != null) 'int_value': intValue, + }); + } + + StoreEntityCompanion copyWith({ + Value? id, + Value? stringValue, + Value? intValue, + }) { + return StoreEntityCompanion( + id: id ?? this.id, + stringValue: stringValue ?? this.stringValue, + intValue: intValue ?? this.intValue, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (stringValue.present) { + map['string_value'] = Variable(stringValue.value); + } + if (intValue.present) { + map['int_value'] = Variable(intValue.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('StoreEntityCompanion(') + ..write('id: $id, ') + ..write('stringValue: $stringValue, ') + ..write('intValue: $intValue') + ..write(')')) + .toString(); + } +} + +class DatabaseAtV12 extends GeneratedDatabase { + DatabaseAtV12(QueryExecutor e) : super(e); + late final UserEntity userEntity = UserEntity(this); + late final RemoteAssetEntity remoteAssetEntity = RemoteAssetEntity(this); + late final StackEntity stackEntity = StackEntity(this); + late final LocalAssetEntity localAssetEntity = LocalAssetEntity(this); + late final RemoteAlbumEntity remoteAlbumEntity = RemoteAlbumEntity(this); + late final LocalAlbumEntity localAlbumEntity = LocalAlbumEntity(this); + late final LocalAlbumAssetEntity localAlbumAssetEntity = + LocalAlbumAssetEntity(this); + late final Index idxLocalAssetChecksum = Index( + 'idx_local_asset_checksum', + 'CREATE INDEX IF NOT EXISTS idx_local_asset_checksum ON local_asset_entity (checksum)', + ); + late final Index idxRemoteAssetOwnerChecksum = Index( + 'idx_remote_asset_owner_checksum', + 'CREATE INDEX IF NOT EXISTS idx_remote_asset_owner_checksum ON remote_asset_entity (owner_id, checksum)', + ); + late final Index uQRemoteAssetsOwnerChecksum = Index( + 'UQ_remote_assets_owner_checksum', + 'CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_checksum ON remote_asset_entity (owner_id, checksum) WHERE(library_id IS NULL)', + ); + late final Index uQRemoteAssetsOwnerLibraryChecksum = Index( + 'UQ_remote_assets_owner_library_checksum', + 'CREATE UNIQUE INDEX IF NOT EXISTS UQ_remote_assets_owner_library_checksum ON remote_asset_entity (owner_id, library_id, checksum) WHERE(library_id IS NOT NULL)', + ); + late final Index idxRemoteAssetChecksum = Index( + 'idx_remote_asset_checksum', + 'CREATE INDEX IF NOT EXISTS idx_remote_asset_checksum ON remote_asset_entity (checksum)', + ); + late final AuthUserEntity authUserEntity = AuthUserEntity(this); + late final UserMetadataEntity userMetadataEntity = UserMetadataEntity(this); + late final PartnerEntity partnerEntity = PartnerEntity(this); + late final RemoteExifEntity remoteExifEntity = RemoteExifEntity(this); + late final RemoteAlbumAssetEntity remoteAlbumAssetEntity = + RemoteAlbumAssetEntity(this); + late final RemoteAlbumUserEntity remoteAlbumUserEntity = + RemoteAlbumUserEntity(this); + late final MemoryEntity memoryEntity = MemoryEntity(this); + late final MemoryAssetEntity memoryAssetEntity = MemoryAssetEntity(this); + late final PersonEntity personEntity = PersonEntity(this); + late final AssetFaceEntity assetFaceEntity = AssetFaceEntity(this); + late final StoreEntity storeEntity = StoreEntity(this); + late final Index idxLatLng = Index( + 'idx_lat_lng', + 'CREATE INDEX IF NOT EXISTS idx_lat_lng ON remote_exif_entity (latitude, longitude)', + ); + @override + Iterable> get allTables => + allSchemaEntities.whereType>(); + @override + List get allSchemaEntities => [ + userEntity, + remoteAssetEntity, + stackEntity, + localAssetEntity, + remoteAlbumEntity, + localAlbumEntity, + localAlbumAssetEntity, + idxLocalAssetChecksum, + idxRemoteAssetOwnerChecksum, + uQRemoteAssetsOwnerChecksum, + uQRemoteAssetsOwnerLibraryChecksum, + idxRemoteAssetChecksum, + authUserEntity, + userMetadataEntity, + partnerEntity, + remoteExifEntity, + remoteAlbumAssetEntity, + remoteAlbumUserEntity, + memoryEntity, + memoryAssetEntity, + personEntity, + assetFaceEntity, + storeEntity, + idxLatLng, + ]; + @override + int get schemaVersion => 12; + @override + DriftDatabaseOptions get options => + const DriftDatabaseOptions(storeDateTimeAsText: true); +} From ee3c07d049688627d009dca22db51dc324563d04 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Mon, 29 Sep 2025 20:40:00 +0530 Subject: [PATCH 51/60] fix: process upload only after successful remote sync (#22360) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- i18n/en.json | 1 + .../services/background_worker.service.dart | 53 ++++++++----------- .../domain/services/sync_stream.service.dart | 3 +- mobile/lib/domain/utils/background_sync.dart | 8 +-- .../repositories/sync_api.repository.dart | 1 - .../lib/pages/backup/drift_backup.page.dart | 36 ++++++++++++- .../drift_backup_album_selection.page.dart | 14 ++++- .../backup/drift_backup_options.page.dart | 20 +++++-- .../lib/pages/common/splash_screen.page.dart | 20 +++++-- .../providers/app_life_cycle.provider.dart | 21 +++++--- .../backup/drift_backup.provider.dart | 23 ++++++-- mobile/lib/services/server_info.service.dart | 9 ---- mobile/lib/utils/isolate.dart | 6 +-- .../widgets/common/immich_sliver_app_bar.dart | 14 +++-- 14 files changed, 156 insertions(+), 73 deletions(-) diff --git a/i18n/en.json b/i18n/en.json index b142dc7fca..72e2c77e41 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -599,6 +599,7 @@ "backup_controller_page_turn_on": "Turn on foreground backup", "backup_controller_page_uploading_file_info": "Uploading file info", "backup_err_only_album": "Cannot remove the only album", + "backup_error_sync_failed": "Sync failed. Cannot start backup.", "backup_info_card_assets": "assets", "backup_manual_cancelled": "Cancelled", "backup_manual_in_progress": "Upload already in progress. Try after sometime", diff --git a/mobile/lib/domain/services/background_worker.service.dart b/mobile/lib/domain/services/background_worker.service.dart index 4e9291a1fc..0548a45bf7 100644 --- a/mobile/lib/domain/services/background_worker.service.dart +++ b/mobile/lib/domain/services/background_worker.service.dart @@ -28,7 +28,6 @@ import 'package:immich_mobile/repositories/file_media.repository.dart'; import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:immich_mobile/services/auth.service.dart'; import 'package:immich_mobile/services/localization.service.dart'; -import 'package:immich_mobile/services/server_info.service.dart'; import 'package:immich_mobile/services/upload.service.dart'; import 'package:immich_mobile/utils/bootstrap.dart'; import 'package:immich_mobile/utils/debug_print.dart'; @@ -130,30 +129,33 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { @override Future onAndroidUpload() async { + _logger.info('Android background processing started'); + final sw = Stopwatch()..start(); try { - _logger.info('Android background processing started'); - final sw = Stopwatch()..start(); - - await _syncAssets(hashTimeout: Duration(minutes: _isBackupEnabled ? 3 : 6)); + if (!await _syncAssets(hashTimeout: Duration(minutes: _isBackupEnabled ? 3 : 6))) { + _logger.warning("Remote sync did not complete successfully, skipping backup"); + return; + } await _handleBackup(); - - sw.stop(); - _logger.info("Android background processing completed in ${sw.elapsed.inSeconds}s"); } catch (error, stack) { _logger.severe("Failed to complete Android background processing", error, stack); } finally { + sw.stop(); + _logger.info("Android background processing completed in ${sw.elapsed.inSeconds}s"); await _cleanup(); } } @override Future onIosUpload(bool isRefresh, int? maxSeconds) async { + _logger.info('iOS background upload started with maxSeconds: ${maxSeconds}s'); + final sw = Stopwatch()..start(); try { - _logger.info('iOS background upload started with maxSeconds: ${maxSeconds}s'); - final sw = Stopwatch()..start(); - final timeout = isRefresh ? const Duration(seconds: 5) : Duration(minutes: _isBackupEnabled ? 3 : 6); - await _syncAssets(hashTimeout: timeout); + if (!await _syncAssets(hashTimeout: timeout)) { + _logger.warning("Remote sync did not complete successfully, skipping backup"); + return; + } final backupFuture = _handleBackup(); if (maxSeconds != null) { @@ -161,12 +163,11 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { } else { await backupFuture; } - - sw.stop(); - _logger.info("iOS background upload completed in ${sw.elapsed.inSeconds}s"); } catch (error, stack) { _logger.severe("Failed to complete iOS background upload", error, stack); } finally { + sw.stop(); + _logger.info("iOS background upload completed in ${sw.elapsed.inSeconds}s"); await _cleanup(); } } @@ -227,29 +228,20 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { } if (!_isBackupEnabled) { - _logger.info("[_handleBackup 1] Backup is disabled. Skipping backup routine"); + _logger.info("Backup is disabled. Skipping backup routine"); return; } - _logger.info("[_handleBackup 2] Enqueuing assets for backup from the background service"); - final currentUser = _ref?.read(currentUserProvider); if (currentUser == null) { - _logger.warning("[_handleBackup 3] No current user found. Skipping backup from background"); + _logger.warning("No current user found. Skipping backup from background"); return; } - _logger.info("[_handleBackup 4] Resume backup from background"); if (Platform.isIOS) { return _ref?.read(driftBackupProvider.notifier).handleBackupResume(currentUser.id); } - final canPing = await _ref?.read(serverInfoServiceProvider).ping() ?? false; - if (!canPing) { - _logger.warning("[_handleBackup 5] Server is not reachable. Skipping backup from background"); - return; - } - final networkCapabilities = await _ref?.read(connectivityApiProvider).getCapabilities() ?? []; return _ref ?.read(uploadServiceProvider) @@ -261,15 +253,15 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { ); } - Future _syncAssets({Duration? hashTimeout}) async { + Future _syncAssets({Duration? hashTimeout}) async { await _ref?.read(backgroundSyncProvider).syncLocal(); if (_isCleanedUp) { - return; + return false; } - await _ref?.read(backgroundSyncProvider).syncRemote(); + final isSuccess = await _ref?.read(backgroundSyncProvider).syncRemote() ?? false; if (_isCleanedUp) { - return; + return isSuccess; } var hashFuture = _ref?.read(backgroundSyncProvider).hashAssets(); @@ -283,6 +275,7 @@ class BackgroundWorkerBgService extends BackgroundWorkerFlutterApi { } await hashFuture; + return isSuccess; } } diff --git a/mobile/lib/domain/services/sync_stream.service.dart b/mobile/lib/domain/services/sync_stream.service.dart index 6c8e444d50..bec7e6afda 100644 --- a/mobile/lib/domain/services/sync_stream.service.dart +++ b/mobile/lib/domain/services/sync_stream.service.dart @@ -23,7 +23,7 @@ class SyncStreamService { bool get isCancelled => _cancelChecker?.call() ?? false; - Future sync() async { + Future sync() async { _logger.info("Remote sync request for user"); // Start the sync stream and handle events bool shouldReset = false; @@ -32,6 +32,7 @@ class SyncStreamService { _logger.info("Resetting sync state as requested by server"); await _syncApiRepository.streamChanges(_handleEvents); } + return true; } Future _handleEvents(List events, Function() abort, Function() reset) async { diff --git a/mobile/lib/domain/utils/background_sync.dart b/mobile/lib/domain/utils/background_sync.dart index ffbb020345..b2f2fe54e1 100644 --- a/mobile/lib/domain/utils/background_sync.dart +++ b/mobile/lib/domain/utils/background_sync.dart @@ -21,7 +21,7 @@ class BackgroundSyncManager { final SyncCallback? onHashingComplete; final SyncErrorCallback? onHashingError; - Cancelable? _syncTask; + Cancelable? _syncTask; Cancelable? _syncWebsocketTask; Cancelable? _deviceAlbumSyncTask; Cancelable? _linkedAlbumSyncTask; @@ -144,9 +144,9 @@ class BackgroundSyncManager { }); } - Future syncRemote() { + Future syncRemote() { if (_syncTask != null) { - return _syncTask!.future; + return _syncTask!.future.then((result) => result ?? false).catchError((_) => false); } onRemoteSyncStart?.call(); @@ -156,6 +156,7 @@ class BackgroundSyncManager { debugLabel: 'remote-sync', ); return _syncTask! + .then((result) => result ?? false) .whenComplete(() { onRemoteSyncComplete?.call(); _syncTask = null; @@ -163,6 +164,7 @@ class BackgroundSyncManager { .catchError((error) { onRemoteSyncError?.call(error.toString()); _syncTask = null; + return false; }); } diff --git a/mobile/lib/infrastructure/repositories/sync_api.repository.dart b/mobile/lib/infrastructure/repositories/sync_api.repository.dart index 3969286d28..8bf2e80579 100644 --- a/mobile/lib/infrastructure/repositories/sync_api.repository.dart +++ b/mobile/lib/infrastructure/repositories/sync_api.repository.dart @@ -110,7 +110,6 @@ class SyncApiRepository { await onData(_parseLines(lines), abort, reset); } } catch (error, stack) { - _logger.severe("Error processing stream", error, stack); return Future.error(error, stack); } finally { client.close(); diff --git a/mobile/lib/pages/backup/drift_backup.page.dart b/mobile/lib/pages/backup/drift_backup.page.dart index 30782726e2..9b4a79c557 100644 --- a/mobile/lib/pages/backup/drift_backup.page.dart +++ b/mobile/lib/pages/backup/drift_backup.page.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:auto_route/auto_route.dart'; import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; @@ -8,6 +10,7 @@ import 'package:immich_mobile/entities/store.entity.dart'; import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/extensions/theme_extensions.dart'; import 'package:immich_mobile/extensions/translate_extensions.dart'; +import 'package:immich_mobile/generated/intl_keys.g.dart'; import 'package:immich_mobile/presentation/widgets/backup/backup_toggle_button.widget.dart'; import 'package:immich_mobile/providers/background_sync.provider.dart'; import 'package:immich_mobile/providers/backup/backup_album.provider.dart'; @@ -16,8 +19,7 @@ import 'package:immich_mobile/providers/sync_status.provider.dart'; import 'package:immich_mobile/providers/user.provider.dart'; import 'package:immich_mobile/routing/router.dart'; import 'package:immich_mobile/widgets/backup/backup_info_card.dart'; -import 'dart:async'; - +import 'package:logging/logging.dart'; import 'package:wakelock_plus/wakelock_plus.dart'; @RoutePage() @@ -63,7 +65,10 @@ class _DriftBackupPageState extends ConsumerState { .where((album) => album.backupSelection == BackupSelection.selected) .toList(); + final error = ref.watch(driftBackupProvider.select((p) => p.error)); + final backupNotifier = ref.read(driftBackupProvider.notifier); + final backupSyncManager = ref.read(backgroundSyncProvider); Future startBackup() async { final currentUser = Store.tryGet(StoreKey.currentUser); @@ -71,7 +76,14 @@ class _DriftBackupPageState extends ConsumerState { return; } + final syncSuccess = await backupSyncManager.syncRemote(); await backupNotifier.getBackupStatus(currentUser.id); + + if (!syncSuccess) { + Logger("DriftBackupPage").warning("Remote sync did not complete successfully, skipping backup"); + await backupNotifier.updateError(BackupError.syncFailed); + return; + } await backupNotifier.startBackup(currentUser.id); } @@ -114,6 +126,26 @@ class _DriftBackupPageState extends ConsumerState { const _RemainderCard(), const Divider(), BackupToggleButton(onStart: () async => await startBackup(), onStop: () async => await stopBackup()), + switch (error) { + BackupError.none => const SizedBox.shrink(), + BackupError.syncFailed => Padding( + padding: const EdgeInsets.only(top: 10), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisSize: MainAxisSize.max, + children: [ + Icon(Icons.warning_rounded, color: context.colorScheme.error, fill: 1), + const SizedBox(width: 8), + Text( + IntlKeys.backup_error_sync_failed.t(), + style: context.textTheme.bodyMedium?.copyWith(color: context.colorScheme.error), + textAlign: TextAlign.center, + ), + ], + ), + ), + }, TextButton.icon( icon: const Icon(Icons.info_outline_rounded), onPressed: () => context.pushRoute(const DriftUploadDetailRoute()), diff --git a/mobile/lib/pages/backup/drift_backup_album_selection.page.dart b/mobile/lib/pages/backup/drift_backup_album_selection.page.dart index 368341f24a..d49f71ce52 100644 --- a/mobile/lib/pages/backup/drift_backup_album_selection.page.dart +++ b/mobile/lib/pages/backup/drift_backup_album_selection.page.dart @@ -18,6 +18,7 @@ import 'package:immich_mobile/providers/user.provider.dart'; import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:immich_mobile/widgets/backup/drift_album_info_list_tile.dart'; import 'package:immich_mobile/widgets/common/search_field.dart'; +import 'package:logging/logging.dart'; @RoutePage() class DriftBackupAlbumSelectionPage extends ConsumerStatefulWidget { @@ -112,7 +113,18 @@ class _DriftBackupAlbumSelectionPageState extends ConsumerState backgroundSync.hashAssets())); if (isBackupEnabled) { - unawaited(backupNotifier.cancel().whenComplete(() => backupNotifier.startBackup(user.id))); + unawaited( + backupNotifier.cancel().whenComplete( + () => backgroundSync.syncRemote().then((success) { + if (success) { + return backupNotifier.startBackup(user.id); + } else { + Logger('DriftBackupAlbumSelectionPage').warning('Background sync failed, not starting backup'); + backupNotifier.updateError(BackupError.syncFailed); + } + }), + ), + ); } } diff --git a/mobile/lib/pages/backup/drift_backup_options.page.dart b/mobile/lib/pages/backup/drift_backup_options.page.dart index 92f911ae1e..f18dc48dca 100644 --- a/mobile/lib/pages/backup/drift_backup_options.page.dart +++ b/mobile/lib/pages/backup/drift_backup_options.page.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; @@ -5,10 +7,12 @@ import 'package:immich_mobile/domain/models/store.model.dart'; import 'package:immich_mobile/entities/store.entity.dart'; import 'package:immich_mobile/extensions/translate_extensions.dart'; import 'package:immich_mobile/providers/app_settings.provider.dart'; +import 'package:immich_mobile/providers/background_sync.provider.dart'; import 'package:immich_mobile/providers/backup/drift_backup.provider.dart'; import 'package:immich_mobile/providers/user.provider.dart'; import 'package:immich_mobile/services/app_settings.service.dart'; import 'package:immich_mobile/widgets/settings/backup_settings/drift_backup_settings.dart'; +import 'package:logging/logging.dart'; @RoutePage() class DriftBackupOptionsPage extends ConsumerWidget { @@ -54,9 +58,19 @@ class DriftBackupOptionsPage extends ConsumerWidget { ); final backupNotifier = ref.read(driftBackupProvider.notifier); - backupNotifier.cancel().then((_) { - backupNotifier.startBackup(currentUser.id); - }); + final backgroundSync = ref.read(backgroundSyncProvider); + unawaited( + backupNotifier.cancel().whenComplete( + () => backgroundSync.syncRemote().then((success) { + if (success) { + return backupNotifier.startBackup(currentUser.id); + } else { + Logger('DriftBackupOptionsPage').warning('Background sync failed, not starting backup'); + backupNotifier.updateError(BackupError.syncFailed); + } + }), + ), + ); } }, child: Scaffold( diff --git a/mobile/lib/pages/common/splash_screen.page.dart b/mobile/lib/pages/common/splash_screen.page.dart index aa4d142381..3b81368cd4 100644 --- a/mobile/lib/pages/common/splash_screen.page.dart +++ b/mobile/lib/pages/common/splash_screen.page.dart @@ -62,14 +62,24 @@ class SplashScreenPageState extends ConsumerState { infoProvider.getServerInfo(); if (Store.isBetaTimelineEnabled) { - await Future.wait([backgroundManager.syncLocal(), backgroundManager.syncRemote()]); + bool syncSuccess = false; await Future.wait([ - backgroundManager.hashAssets().then((_) { - _resumeBackup(backupProvider); - }), - _resumeBackup(backupProvider), + backgroundManager.syncLocal(), + backgroundManager.syncRemote().then((success) => syncSuccess = success), ]); + if (syncSuccess) { + await Future.wait([ + backgroundManager.hashAssets().then((_) { + _resumeBackup(backupProvider); + }), + _resumeBackup(backupProvider), + ]); + } else { + backupProvider.updateError(BackupError.syncFailed); + await backgroundManager.hashAssets(); + } + if (Store.get(StoreKey.syncAlbums, false)) { await backgroundManager.syncLinkedAlbum(); } diff --git a/mobile/lib/providers/app_life_cycle.provider.dart b/mobile/lib/providers/app_life_cycle.provider.dart index ec6495440a..29de09fd33 100644 --- a/mobile/lib/providers/app_life_cycle.provider.dart +++ b/mobile/lib/providers/app_life_cycle.provider.dart @@ -148,17 +148,22 @@ class AppLifeCycleNotifier extends StateNotifier { final isAlbumLinkedSyncEnable = _ref.read(appSettingsServiceProvider).getSetting(AppSettingsEnum.syncAlbums); try { + bool syncSuccess = false; await Future.wait([ _safeRun(backgroundManager.syncLocal(), "syncLocal"), - _safeRun(backgroundManager.syncRemote(), "syncRemote"), - ]); - - await Future.wait([ - _safeRun(backgroundManager.hashAssets(), "hashAssets").then((_) { - _resumeBackup(); - }), - _resumeBackup(), + _safeRun(backgroundManager.syncRemote().then((success) => syncSuccess = success), "syncRemote"), ]); + if (syncSuccess) { + await Future.wait([ + _safeRun(backgroundManager.hashAssets(), "hashAssets").then((_) { + _resumeBackup(); + }), + _resumeBackup(), + ]); + } else { + _ref.read(driftBackupProvider.notifier).updateError(BackupError.syncFailed); + await _safeRun(backgroundManager.hashAssets(), "hashAssets"); + } if (isAlbumLinkedSyncEnable) { await _safeRun(backgroundManager.syncLinkedAlbum(), "syncLinkedAlbum"); diff --git a/mobile/lib/providers/backup/drift_backup.provider.dart b/mobile/lib/providers/backup/drift_backup.provider.dart index fb6a94b0cb..37d5ce4e2b 100644 --- a/mobile/lib/providers/backup/drift_backup.provider.dart +++ b/mobile/lib/providers/backup/drift_backup.provider.dart @@ -91,6 +91,8 @@ class DriftUploadStatus { } } +enum BackupError { none, syncFailed } + class DriftBackupState { final int totalCount; final int backupCount; @@ -101,6 +103,7 @@ class DriftBackupState { final int enqueueTotalCount; final bool isCanceling; + final BackupError error; final Map uploadItems; @@ -113,6 +116,7 @@ class DriftBackupState { required this.enqueueTotalCount, required this.isCanceling, required this.uploadItems, + this.error = BackupError.none, }); DriftBackupState copyWith({ @@ -124,6 +128,7 @@ class DriftBackupState { int? enqueueTotalCount, bool? isCanceling, Map? uploadItems, + BackupError? error, }) { return DriftBackupState( totalCount: totalCount ?? this.totalCount, @@ -134,12 +139,13 @@ class DriftBackupState { enqueueTotalCount: enqueueTotalCount ?? this.enqueueTotalCount, isCanceling: isCanceling ?? this.isCanceling, uploadItems: uploadItems ?? this.uploadItems, + error: error ?? this.error, ); } @override String toString() { - return 'DriftBackupState(totalCount: $totalCount, backupCount: $backupCount, remainderCount: $remainderCount, processingCount: $processingCount, enqueueCount: $enqueueCount, enqueueTotalCount: $enqueueTotalCount, isCanceling: $isCanceling, uploadItems: $uploadItems)'; + return 'DriftBackupState(totalCount: $totalCount, backupCount: $backupCount, remainderCount: $remainderCount, processingCount: $processingCount, enqueueCount: $enqueueCount, enqueueTotalCount: $enqueueTotalCount, isCanceling: $isCanceling, uploadItems: $uploadItems, error: $error)'; } @override @@ -154,7 +160,8 @@ class DriftBackupState { other.enqueueCount == enqueueCount && other.enqueueTotalCount == enqueueTotalCount && other.isCanceling == isCanceling && - mapEquals(other.uploadItems, uploadItems); + mapEquals(other.uploadItems, uploadItems) && + other.error == error; } @override @@ -166,7 +173,8 @@ class DriftBackupState { enqueueCount.hashCode ^ enqueueTotalCount.hashCode ^ isCanceling.hashCode ^ - uploadItems.hashCode; + uploadItems.hashCode ^ + error.hashCode; } } @@ -186,6 +194,7 @@ class DriftBackupNotifier extends StateNotifier { enqueueTotalCount: 0, isCanceling: false, uploadItems: {}, + error: BackupError.none, ), ) { { @@ -303,7 +312,12 @@ class DriftBackupNotifier extends StateNotifier { ); } + Future updateError(BackupError error) async { + state = state.copyWith(error: error); + } + Future startBackup(String userId) { + state = state.copyWith(error: BackupError.none); return _uploadService.startBackup(userId, _updateEnqueueCount); } @@ -313,7 +327,7 @@ class DriftBackupNotifier extends StateNotifier { Future cancel() async { dPrint(() => "Canceling backup tasks..."); - state = state.copyWith(enqueueCount: 0, enqueueTotalCount: 0, isCanceling: true); + state = state.copyWith(enqueueCount: 0, enqueueTotalCount: 0, isCanceling: true, error: BackupError.none); final activeTaskCount = await _uploadService.cancelBackup(); @@ -329,6 +343,7 @@ class DriftBackupNotifier extends StateNotifier { Future handleBackupResume(String userId) async { _logger.info("Resuming backup tasks..."); + state = state.copyWith(error: BackupError.none); final tasks = await _uploadService.getActiveTasks(kBackupGroup); _logger.info("Found ${tasks.length} tasks"); diff --git a/mobile/lib/services/server_info.service.dart b/mobile/lib/services/server_info.service.dart index 0bce9366d2..460e135421 100644 --- a/mobile/lib/services/server_info.service.dart +++ b/mobile/lib/services/server_info.service.dart @@ -14,15 +14,6 @@ class ServerInfoService { const ServerInfoService(this._apiService); - Future ping() async { - try { - await _apiService.serverInfoApi.pingServer().timeout(const Duration(seconds: 5)); - return true; - } catch (e) { - return false; - } - } - Future getDiskInfo() async { try { final dto = await _apiService.serverInfoApi.getStorage(); diff --git a/mobile/lib/utils/isolate.dart b/mobile/lib/utils/isolate.dart index e8b7d410f4..1ccf00d58b 100644 --- a/mobile/lib/utils/isolate.dart +++ b/mobile/lib/utils/isolate.dart @@ -32,6 +32,7 @@ Cancelable runInIsolateGentle({ } return workerManager.executeGentle((cancelledChecker) async { + T? result; await runZonedGuarded( () async { BackgroundIsolateBinaryMessenger.ensureInitialized(token); @@ -53,7 +54,7 @@ Cancelable runInIsolateGentle({ try { HttpSSLOptions.apply(applyNative: false); - return await computation(ref); + result = await computation(ref); } on CanceledError { log.warning("Computation cancelled ${debugLabel == null ? '' : ' for $debugLabel'}"); } catch (error, stack) { @@ -83,12 +84,11 @@ Cancelable runInIsolateGentle({ await Future.delayed(const Duration(seconds: 2)); } } - return null; }, (error, stack) { dPrint(() => "Error in isolate $debugLabel zone: $error, $stack"); }, ); - return null; + return result; }); } diff --git a/mobile/lib/widgets/common/immich_sliver_app_bar.dart b/mobile/lib/widgets/common/immich_sliver_app_bar.dart index 09c0518a23..23d64ecfcd 100644 --- a/mobile/lib/widgets/common/immich_sliver_app_bar.dart +++ b/mobile/lib/widgets/common/immich_sliver_app_bar.dart @@ -9,8 +9,8 @@ import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/models/server_info/server_info.model.dart'; import 'package:immich_mobile/providers/backup/drift_backup.provider.dart'; import 'package:immich_mobile/providers/cast.provider.dart'; -import 'package:immich_mobile/providers/infrastructure/setting.provider.dart'; import 'package:immich_mobile/providers/infrastructure/readonly_mode.provider.dart'; +import 'package:immich_mobile/providers/infrastructure/setting.provider.dart'; import 'package:immich_mobile/providers/server_info.provider.dart'; import 'package:immich_mobile/providers/sync_status.provider.dart'; import 'package:immich_mobile/providers/timeline/multiselect.provider.dart'; @@ -168,8 +168,16 @@ class _BackupIndicator extends ConsumerWidget { @override Widget build(BuildContext context, WidgetRef ref) { const widgetSize = 30.0; - final indicatorIcon = _getBackupBadgeIcon(context, ref); - final badgeBackground = context.colorScheme.surfaceContainer; + final hasError = ref.watch(driftBackupProvider.select((state) => state.error != BackupError.none)); + final indicatorIcon = hasError + ? Icon( + Icons.warning_rounded, + size: 12, + color: context.colorScheme.error, + semanticLabel: 'backup_controller_page_backup'.tr(), + ) + : _getBackupBadgeIcon(context, ref); + final badgeBackground = hasError ? context.colorScheme.errorContainer : context.colorScheme.surfaceContainer; return InkWell( onTap: () => context.pushRoute(const DriftBackupRoute()), From 75b9bd163e1dbc0d97a1bc3a0ce64e1e7929c349 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Mon, 29 Sep 2025 23:01:09 +0530 Subject: [PATCH 52/60] chore: show error message in upload details route (#22472) * chore: show error message in upload details route * pretty format exception --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/extensions/string_extensions.dart | 10 ++++++ .../backup/drift_upload_detail.page.dart | 15 ++++++--- .../backup/drift_backup.provider.dart | 31 ++++++++++++++++--- 3 files changed, 48 insertions(+), 8 deletions(-) diff --git a/mobile/lib/extensions/string_extensions.dart b/mobile/lib/extensions/string_extensions.dart index 6cd6e1e4b4..ae31565044 100644 --- a/mobile/lib/extensions/string_extensions.dart +++ b/mobile/lib/extensions/string_extensions.dart @@ -1,3 +1,5 @@ +import 'dart:convert'; + extension StringExtension on String { String capitalize() { return split(" ").map((str) => str.isEmpty ? str : str[0].toUpperCase() + str.substring(1)).join(" "); @@ -23,3 +25,11 @@ extension DurationExtension on String { return int.parse(this); } } + +Map? tryJsonDecode(dynamic json) { + try { + return jsonDecode(json) as Map; + } catch (e) { + return null; + } +} diff --git a/mobile/lib/pages/backup/drift_upload_detail.page.dart b/mobile/lib/pages/backup/drift_upload_detail.page.dart index bececddc7f..80956b708f 100644 --- a/mobile/lib/pages/backup/drift_upload_detail.page.dart +++ b/mobile/lib/pages/backup/drift_upload_detail.page.dart @@ -1,12 +1,12 @@ import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; +import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; import 'package:immich_mobile/extensions/build_context_extensions.dart'; import 'package:immich_mobile/extensions/translate_extensions.dart'; -import 'package:immich_mobile/providers/backup/drift_backup.provider.dart'; -import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; -import 'package:immich_mobile/providers/infrastructure/asset.provider.dart'; import 'package:immich_mobile/presentation/widgets/images/thumbnail.widget.dart'; +import 'package:immich_mobile/providers/backup/drift_backup.provider.dart'; +import 'package:immich_mobile/providers/infrastructure/asset.provider.dart'; import 'package:immich_mobile/utils/bytes_units.dart'; import 'package:path/path.dart' as path; @@ -82,6 +82,7 @@ class DriftUploadDetailPage extends ConsumerWidget { Expanded( child: Column( crossAxisAlignment: CrossAxisAlignment.start, + spacing: 4, children: [ Text( path.basename(item.filename), @@ -89,7 +90,13 @@ class DriftUploadDetailPage extends ConsumerWidget { maxLines: 1, overflow: TextOverflow.ellipsis, ), - const SizedBox(height: 4), + if (item.error != null) + Text( + item.error!, + style: context.textTheme.bodySmall?.copyWith( + color: context.colorScheme.onErrorContainer.withValues(alpha: 0.6), + ), + ), Text( 'Tap for more details', style: context.textTheme.bodySmall?.copyWith( diff --git a/mobile/lib/providers/backup/drift_backup.provider.dart b/mobile/lib/providers/backup/drift_backup.provider.dart index 37d5ce4e2b..49455371fa 100644 --- a/mobile/lib/providers/backup/drift_backup.provider.dart +++ b/mobile/lib/providers/backup/drift_backup.provider.dart @@ -7,6 +7,7 @@ import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:immich_mobile/constants/constants.dart'; import 'package:immich_mobile/domain/models/album/local_album.model.dart'; import 'package:immich_mobile/domain/models/asset/base_asset.model.dart'; +import 'package:immich_mobile/extensions/string_extensions.dart'; import 'package:immich_mobile/infrastructure/repositories/backup.repository.dart'; import 'package:immich_mobile/providers/infrastructure/asset.provider.dart'; import 'package:immich_mobile/providers/user.provider.dart'; @@ -35,6 +36,7 @@ class DriftUploadStatus { final int fileSize; final String networkSpeedAsString; final bool? isFailed; + final String? error; const DriftUploadStatus({ required this.taskId, @@ -43,6 +45,7 @@ class DriftUploadStatus { required this.fileSize, required this.networkSpeedAsString, this.isFailed, + this.error, }); DriftUploadStatus copyWith({ @@ -52,6 +55,7 @@ class DriftUploadStatus { int? fileSize, String? networkSpeedAsString, bool? isFailed, + String? error, }) { return DriftUploadStatus( taskId: taskId ?? this.taskId, @@ -60,12 +64,13 @@ class DriftUploadStatus { fileSize: fileSize ?? this.fileSize, networkSpeedAsString: networkSpeedAsString ?? this.networkSpeedAsString, isFailed: isFailed ?? this.isFailed, + error: error ?? this.error, ); } @override String toString() { - return 'DriftUploadStatus(taskId: $taskId, filename: $filename, progress: $progress, fileSize: $fileSize, networkSpeedAsString: $networkSpeedAsString, isFailed: $isFailed)'; + return 'DriftUploadStatus(taskId: $taskId, filename: $filename, progress: $progress, fileSize: $fileSize, networkSpeedAsString: $networkSpeedAsString, isFailed: $isFailed, error: $error)'; } @override @@ -77,7 +82,8 @@ class DriftUploadStatus { other.progress == progress && other.fileSize == fileSize && other.networkSpeedAsString == networkSpeedAsString && - other.isFailed == isFailed; + other.isFailed == isFailed && + other.error == error; } @override @@ -87,7 +93,8 @@ class DriftUploadStatus { progress.hashCode ^ fileSize.hashCode ^ networkSpeedAsString.hashCode ^ - isFailed.hashCode; + isFailed.hashCode ^ + error.hashCode; } } @@ -247,7 +254,23 @@ class DriftBackupNotifier extends StateNotifier { return; } - state = state.copyWith(uploadItems: {...state.uploadItems, taskId: currentItem.copyWith(isFailed: true)}); + String? error; + final exception = update.exception; + if (exception != null && exception is TaskHttpException) { + final message = tryJsonDecode(exception.description)?['message'] as String?; + if (message != null) { + final responseCode = exception.httpResponseCode; + error = "${exception.exceptionType}, response code $responseCode: $message"; + } + } + error ??= update.exception?.toString(); + + state = state.copyWith( + uploadItems: { + ...state.uploadItems, + taskId: currentItem.copyWith(isFailed: true, error: error), + }, + ); _logger.fine("Upload failed for taskId: $taskId, exception: ${update.exception}"); break; From 44284b4351dd12e5cfa940b65c3b55e1e3ec279b Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Mon, 29 Sep 2025 23:44:01 +0530 Subject: [PATCH 53/60] chore: do not remote sync twice in backup page (#22484) do not remote sync twice in backup page Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- i18n/en.json | 2 +- .../lib/pages/backup/drift_backup.page.dart | 29 +++++++++++++++---- .../backup/backup_toggle_button.widget.dart | 6 ++-- .../backup/drift_backup.provider.dart | 15 ++++++++-- 4 files changed, 42 insertions(+), 10 deletions(-) diff --git a/i18n/en.json b/i18n/en.json index 72e2c77e41..e86b56be85 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -599,7 +599,7 @@ "backup_controller_page_turn_on": "Turn on foreground backup", "backup_controller_page_uploading_file_info": "Uploading file info", "backup_err_only_album": "Cannot remove the only album", - "backup_error_sync_failed": "Sync failed. Cannot start backup.", + "backup_error_sync_failed": "Sync failed. Cannot process backup.", "backup_info_card_assets": "assets", "backup_manual_cancelled": "Cancelled", "backup_manual_in_progress": "Upload already in progress. Try after sometime", diff --git a/mobile/lib/pages/backup/drift_backup.page.dart b/mobile/lib/pages/backup/drift_backup.page.dart index 9b4a79c557..5a2cab8dd6 100644 --- a/mobile/lib/pages/backup/drift_backup.page.dart +++ b/mobile/lib/pages/backup/drift_backup.page.dart @@ -31,6 +31,8 @@ class DriftBackupPage extends ConsumerStatefulWidget { } class _DriftBackupPageState extends ConsumerState { + bool? syncSuccess; + @override void initState() { super.initState(); @@ -44,7 +46,13 @@ class _DriftBackupPageState extends ConsumerState { WidgetsBinding.instance.addPostFrameCallback((_) async { await ref.read(driftBackupProvider.notifier).getBackupStatus(currentUser.id); - await ref.read(backgroundSyncProvider).syncRemote(); + + ref.read(driftBackupProvider.notifier).updateSyncing(true); + syncSuccess = await ref.read(backgroundSyncProvider).syncRemote(); + ref + .read(driftBackupProvider.notifier) + .updateError(syncSuccess == true ? BackupError.none : BackupError.syncFailed); + ref.read(driftBackupProvider.notifier).updateSyncing(false); if (mounted) { await ref.read(driftBackupProvider.notifier).getBackupStatus(currentUser.id); @@ -76,12 +84,17 @@ class _DriftBackupPageState extends ConsumerState { return; } - final syncSuccess = await backupSyncManager.syncRemote(); + if (syncSuccess == null) { + ref.read(driftBackupProvider.notifier).updateSyncing(true); + syncSuccess = await backupSyncManager.syncRemote(); + ref.read(driftBackupProvider.notifier).updateSyncing(false); + } + await backupNotifier.getBackupStatus(currentUser.id); - if (!syncSuccess) { + if (syncSuccess == false) { Logger("DriftBackupPage").warning("Remote sync did not complete successfully, skipping backup"); - await backupNotifier.updateError(BackupError.syncFailed); + backupNotifier.updateError(BackupError.syncFailed); return; } await backupNotifier.startBackup(currentUser.id); @@ -125,7 +138,13 @@ class _DriftBackupPageState extends ConsumerState { const _BackupCard(), const _RemainderCard(), const Divider(), - BackupToggleButton(onStart: () async => await startBackup(), onStop: () async => await stopBackup()), + BackupToggleButton( + onStart: () async => await startBackup(), + onStop: () async { + syncSuccess = null; + await stopBackup(); + }, + ), switch (error) { BackupError.none => const SizedBox.shrink(), BackupError.syncFailed => Padding( diff --git a/mobile/lib/presentation/widgets/backup/backup_toggle_button.widget.dart b/mobile/lib/presentation/widgets/backup/backup_toggle_button.widget.dart index a74c169224..8d374f74ff 100644 --- a/mobile/lib/presentation/widgets/backup/backup_toggle_button.widget.dart +++ b/mobile/lib/presentation/widgets/backup/backup_toggle_button.widget.dart @@ -65,7 +65,9 @@ class BackupToggleButtonState extends ConsumerState with Sin final uploadTasks = ref.watch(driftBackupProvider.select((state) => state.uploadItems)); - final isUploading = uploadTasks.isNotEmpty; + final isSyncing = ref.watch(driftBackupProvider.select((state) => state.isSyncing)); + + final isProcessing = uploadTasks.isNotEmpty || isSyncing; return AnimatedBuilder( animation: _animationController, @@ -129,7 +131,7 @@ class BackupToggleButtonState extends ConsumerState with Sin ], ), ), - child: isUploading + child: isProcessing ? const SizedBox(width: 24, height: 24, child: CircularProgressIndicator(strokeWidth: 2)) : Icon(Icons.cloud_upload_outlined, color: context.primaryColor, size: 24), ), diff --git a/mobile/lib/providers/backup/drift_backup.provider.dart b/mobile/lib/providers/backup/drift_backup.provider.dart index 49455371fa..c045cc4f9f 100644 --- a/mobile/lib/providers/backup/drift_backup.provider.dart +++ b/mobile/lib/providers/backup/drift_backup.provider.dart @@ -109,6 +109,7 @@ class DriftBackupState { final int enqueueCount; final int enqueueTotalCount; + final bool isSyncing; final bool isCanceling; final BackupError error; @@ -122,6 +123,7 @@ class DriftBackupState { required this.enqueueCount, required this.enqueueTotalCount, required this.isCanceling, + required this.isSyncing, required this.uploadItems, this.error = BackupError.none, }); @@ -134,6 +136,7 @@ class DriftBackupState { int? enqueueCount, int? enqueueTotalCount, bool? isCanceling, + bool? isSyncing, Map? uploadItems, BackupError? error, }) { @@ -145,6 +148,7 @@ class DriftBackupState { enqueueCount: enqueueCount ?? this.enqueueCount, enqueueTotalCount: enqueueTotalCount ?? this.enqueueTotalCount, isCanceling: isCanceling ?? this.isCanceling, + isSyncing: isSyncing ?? this.isSyncing, uploadItems: uploadItems ?? this.uploadItems, error: error ?? this.error, ); @@ -152,7 +156,7 @@ class DriftBackupState { @override String toString() { - return 'DriftBackupState(totalCount: $totalCount, backupCount: $backupCount, remainderCount: $remainderCount, processingCount: $processingCount, enqueueCount: $enqueueCount, enqueueTotalCount: $enqueueTotalCount, isCanceling: $isCanceling, uploadItems: $uploadItems, error: $error)'; + return 'DriftBackupState(totalCount: $totalCount, backupCount: $backupCount, remainderCount: $remainderCount, processingCount: $processingCount, enqueueCount: $enqueueCount, enqueueTotalCount: $enqueueTotalCount, isCanceling: $isCanceling, isSyncing: $isSyncing, uploadItems: $uploadItems, error: $error)'; } @override @@ -167,6 +171,7 @@ class DriftBackupState { other.enqueueCount == enqueueCount && other.enqueueTotalCount == enqueueTotalCount && other.isCanceling == isCanceling && + other.isSyncing == isSyncing && mapEquals(other.uploadItems, uploadItems) && other.error == error; } @@ -180,6 +185,7 @@ class DriftBackupState { enqueueCount.hashCode ^ enqueueTotalCount.hashCode ^ isCanceling.hashCode ^ + isSyncing.hashCode ^ uploadItems.hashCode ^ error.hashCode; } @@ -200,6 +206,7 @@ class DriftBackupNotifier extends StateNotifier { enqueueCount: 0, enqueueTotalCount: 0, isCanceling: false, + isSyncing: false, uploadItems: {}, error: BackupError.none, ), @@ -335,10 +342,14 @@ class DriftBackupNotifier extends StateNotifier { ); } - Future updateError(BackupError error) async { + void updateError(BackupError error) async { state = state.copyWith(error: error); } + void updateSyncing(bool isSyncing) async { + state = state.copyWith(isSyncing: isSyncing); + } + Future startBackup(String userId) { state = state.copyWith(error: BackupError.none); return _uploadService.startBackup(userId, _updateEnqueueCount); From 58344f520bb0de963c6ee527e5de8332a4016f43 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Mon, 29 Sep 2025 23:55:45 +0530 Subject: [PATCH 54/60] chore: perform full local sync on cold start (#22485) chore: do a full local sync on app start Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- mobile/lib/pages/common/splash_screen.page.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mobile/lib/pages/common/splash_screen.page.dart b/mobile/lib/pages/common/splash_screen.page.dart index 3b81368cd4..5147ba8f45 100644 --- a/mobile/lib/pages/common/splash_screen.page.dart +++ b/mobile/lib/pages/common/splash_screen.page.dart @@ -64,7 +64,7 @@ class SplashScreenPageState extends ConsumerState { if (Store.isBetaTimelineEnabled) { bool syncSuccess = false; await Future.wait([ - backgroundManager.syncLocal(), + backgroundManager.syncLocal(full: true), backgroundManager.syncRemote().then((success) => syncSuccess = success), ]); From de6d91946df9d3c507411b66ed46f5842d302d7c Mon Sep 17 00:00:00 2001 From: "Weblate (bot)" Date: Mon, 29 Sep 2025 20:50:39 +0200 Subject: [PATCH 55/60] chore(web): update translations (#22343) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Translate-URL: https://hosted.weblate.org/projects/immich/immich/ar/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/az/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/be/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/bg/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/cs/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/el/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fa/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/he/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/hu/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ko/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/mk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/nl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ro/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/tr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_SIMPLIFIED/ Translation: Immich/immich Co-authored-by: AbuKareem Tuffaha Co-authored-by: Adam Havránek Co-authored-by: Arnau Mora Co-authored-by: DevServs Co-authored-by: Dragon Fly <2025dragonfly2025@gmail.com> Co-authored-by: Fábio Marques <2fabiom@gmail.com> Co-authored-by: Indrek Haav Co-authored-by: Ivan Dimitrov Co-authored-by: Joonas Co-authored-by: Jozef Gaal Co-authored-by: Liviu Roman Co-authored-by: Lorenzo Co-authored-by: Marcelo Popper Costa Co-authored-by: Matjaž T Co-authored-by: Matthew Rodrigues Co-authored-by: Mārtiņš Bruņenieks Co-authored-by: Pēteris Caune Co-authored-by: Ramin Samadi Co-authored-by: Roger Veciana Rovira Co-authored-by: Romhanyi Marcell Felix Co-authored-by: Sergey Katsubo Co-authored-by: Sylvain Pichon Co-authored-by: TV Box Co-authored-by: Tijs-B Co-authored-by: User 123456789 Co-authored-by: Vladimir Dimitrieski Co-authored-by: angeldev0 Co-authored-by: chamdim Co-authored-by: david7xw Co-authored-by: eav5jhl0 Co-authored-by: gablilli Co-authored-by: gardenstoney Co-authored-by: hands8142 Co-authored-by: iDazai Co-authored-by: jaime-grj Co-authored-by: jose-83 Co-authored-by: konqueror81 Co-authored-by: nested-universe Co-authored-by: pyccl Co-authored-by: Максим Горпиніч Co-authored-by: 안세훈 --- i18n/ar.json | 61 ++++++++++++++- i18n/az.json | 11 ++- i18n/be.json | 2 + i18n/bg.json | 18 ++++- i18n/ca.json | 29 ++++++- i18n/cs.json | 1 + i18n/de.json | 1 + i18n/el.json | 53 ++++++++++++- i18n/es.json | 1 + i18n/et.json | 1 + i18n/fa.json | 6 +- i18n/fi.json | 12 ++- i18n/fr.json | 2 + i18n/he.json | 31 +++++++- i18n/hu.json | 25 +++++- i18n/it.json | 29 +++---- i18n/ko.json | 43 +++++++++- i18n/lv.json | 67 ++++++++++------ i18n/mk.json | 37 ++++++++- i18n/nl.json | 9 ++- i18n/pl.json | 3 +- i18n/pt.json | 37 +++++++-- i18n/pt_BR.json | 1 + i18n/ro.json | 169 +++++++++++++++++++++++++++++----------- i18n/ru.json | 66 ++++++++-------- i18n/sk.json | 1 + i18n/sl.json | 1 + i18n/tr.json | 30 +++---- i18n/uk.json | 2 + i18n/zh_Hant.json | 46 ++++++++++- i18n/zh_SIMPLIFIED.json | 5 +- 31 files changed, 639 insertions(+), 161 deletions(-) diff --git a/i18n/ar.json b/i18n/ar.json index 3a2e9204f8..5d43f61777 100644 --- a/i18n/ar.json +++ b/i18n/ar.json @@ -124,6 +124,12 @@ "logging_level_description": "عند التفعيل، أي مستوى تسجيل سيستخدم.", "logging_settings": "تسجيل الاحداث", "machine_learning_availability_checks": "تحقق من التوفر", + "machine_learning_availability_checks_description": "تحديد خوادم التعلم الآلي المتاحة تلقائيًا وإعطاءها الأولوية", + "machine_learning_availability_checks_enabled": "تفعيل عمليات فحص التوفر", + "machine_learning_availability_checks_interval": "فترة التحقق", + "machine_learning_availability_checks_interval_description": "الفترة الزمنية بالمللي ثانية بين عمليات فحص التوفر", + "machine_learning_availability_checks_timeout": "انتهت مدة انتظار الطلب", + "machine_learning_availability_checks_timeout_description": "مدة انتظار (بالمللي ثانية) لاختبارات توفر الخدمة", "machine_learning_clip_model": "نموذج CLIP", "machine_learning_clip_model_description": "اسم نموذج CLIP مدرجٌ هنا. يرجى ملاحظة أنه يجب إعادة تشغيل وظيفة \"البحث الذكي\" لجميع الصور بعد تغيير النموذج.", "machine_learning_duplicate_detection": "كشف التكرار", @@ -395,6 +401,7 @@ "advanced_settings_prefer_remote_title": "تفضل الصور البعيدة", "advanced_settings_proxy_headers_subtitle": "عرف عناوين الوكيل التي يستخدمها Immich لارسال كل طلب شبكي", "advanced_settings_proxy_headers_title": "عناوين الوكيل", + "advanced_settings_readonly_mode_subtitle": "تتيح هذه الميزة وضع العرض فقط، حيث يمكن للمستخدم معاينة الصور فقط، بينما يتم تعطيل جميع الخيارات الأخرى مثل تحديد عدة صور، أو مشاركتها، أو بثها، أو حذفها. يمكن تفعيل/تعطيل وضع العرض فقط من خلال صورة المستخدم في الشاشة الرئيسية", "advanced_settings_readonly_mode_title": "وضع القراءة فقط", "advanced_settings_self_signed_ssl_subtitle": "تخطي التحقق من شهادة SSL لخادم النقطة النهائي. مكلوب للشهادات الموقعة ذاتيا.", "advanced_settings_self_signed_ssl_title": "السماح بشهادات SSL الموقعة ذاتيًا", @@ -423,6 +430,7 @@ "album_remove_user_confirmation": "هل أنت متأكد أنك تريد إزالة {user}؟", "album_search_not_found": "لم يتم ايجاد البوم مطابق لبحثك", "album_share_no_users": "يبدو أنك قمت بمشاركة هذا الألبوم مع جميع المستخدمين أو ليس لديك أي مستخدم للمشاركة معه.", + "album_summary": "ملخص الألبوم", "album_updated": "تم تحديث الألبوم", "album_updated_setting_description": "تلقي إشعارًا عبر البريد الإلكتروني عندما يحتوي الألبوم المشترك على محتويات جديدة", "album_user_left": "تم ترك {album}", @@ -461,6 +469,7 @@ "app_bar_signout_dialog_title": "خروج", "app_settings": "إعدادات التطبيق", "appears_in": "يظهر في", + "apply_count": "تطبيق ({count, number})", "archive": "الأرشيف", "archive_action_prompt": "{count} اضيف إلى الارشيف", "archive_or_unarchive_photo": "أرشفة الصورة أو إلغاء أرشفتها", @@ -493,6 +502,8 @@ "asset_restored_successfully": "تم استعادة الاصل بنجاح", "asset_skipped": "تم تخطيه", "asset_skipped_in_trash": "في سلة المهملات", + "asset_trashed": "اصول محذوفة", + "asset_troubleshoot": "استكشاف مشاكل الأصول", "asset_uploaded": "تم الرفع", "asset_uploading": "جارٍ الرفع…", "asset_viewer_settings_subtitle": "إدارة إعدادات عارض المعرض الخاص بك", @@ -500,7 +511,9 @@ "assets": "المحتويات", "assets_added_count": "تمت إضافة {count, plural, one {# محتوى} other {# محتويات}}", "assets_added_to_album_count": "تمت إضافة {count, plural, one {# الأصل} other {# الأصول}} إلى الألبوم", + "assets_added_to_albums_count": "تمت اضافة {assetTotal, plural, one {# اصل} other {# اصول}} to {albumTotal, plural, one {# البوم} other {# البومات}}", "assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} لايمكن اضافته الى الالبوم", + "assets_cannot_be_added_to_albums": "{count, plural, one {اصل} other {اصول}} لا يمكن إضافته إلى أي من الألبومات", "assets_count": "{count, plural, one {# محتوى} other {# محتويات}}", "assets_deleted_permanently": "{count} الاص(و)ل المحذوف(ه) بشكل دائم", "assets_deleted_permanently_from_server": "{count} الاص(و)ل المحذوف(ه) بشكل دائمي من خادم Immich", @@ -517,14 +530,17 @@ "assets_trashed_count": "تم إرسال {count, plural, one {# محتوى} other {# محتويات}} إلى سلة المهملات", "assets_trashed_from_server": "{count} الاص(و)ل المنقولة الى سلة المهملات من خادم Immich", "assets_were_part_of_album_count": "{count, plural, one {هذا المحتوى} other {هذه المحتويات}} في الألبوم بالفعل", + "assets_were_part_of_albums_count": "{count, plural, one {اصل هو} other {اصول هي}}بالفعل جزء من الألبومات", "authorized_devices": "الأجهزه المخولة", "automatic_endpoint_switching_subtitle": "اتصل محليا من خلال شبكه Wi-Fi عند توفرها و استخدم اتصالات بديله في الاماكن الاخرى", "automatic_endpoint_switching_title": "تبديل URL تلقائي", "autoplay_slideshow": "تشغيل تلقائي لعرض الشرائح", "back": "خلف", "back_close_deselect": "الرجوع أو الإغلاق أو إلغاء التحديد", + "background_backup_running_error": "يتم تشغيل النسخ الاحتياطي في الخلفية حاليًا، ولا يمكن بدء النسخ الاحتياطي اليدوي", "background_location_permission": "اذن الوصول للموقع في الخلفية", "background_location_permission_content": "للتمكن من تبديل الشبكه بالخلفية، Immich يحتاج*دائما* للحصول على موقع دقيق ليتمكن التطبيق من قرائة اسم شبكة الWi-Fi", + "background_options": "خيارات الخلفية", "backup": "نسخ احتياطي", "backup_album_selection_page_albums_device": "الالبومات على الجهاز ({count})", "backup_album_selection_page_albums_tap": "انقر للتضمين، وانقر نقرًا مزدوجًا للاستثناء", @@ -532,6 +548,7 @@ "backup_album_selection_page_select_albums": "حدد الألبومات", "backup_album_selection_page_selection_info": "معلومات الاختيار", "backup_album_selection_page_total_assets": "إجمالي الأصول الفريدة", + "backup_albums_sync": "مزامنة ألبومات النسخ الاحتياطي", "backup_all": "الجميع", "backup_background_service_backup_failed_message": "فشل في النسخ الاحتياطي للأصول. جارٍ إعادة المحاولة…", "backup_background_service_connection_failed_message": "فشل في الاتصال بالخادم. جارٍ إعادة المحاولة…", @@ -648,6 +665,8 @@ "change_pin_code": "تغيير رمز PIN", "change_your_password": "غير كلمة المرور الخاصة بك", "changed_visibility_successfully": "تم تغيير الرؤية بنجاح", + "charging": "الشحن", + "charging_requirement_mobile_backup": "يتطلب النسخ الاحتياطي في الخلفية أن يكون الجهاز قيد الشحن", "check_corrupt_asset_backup": "التحقق من وجود نسخ احتياطية فاسدة للاصول", "check_corrupt_asset_backup_button": "اجراء فحص", "check_corrupt_asset_backup_description": "قم بإجراء هذا الفحص فقط عبر شبكة Wi-Fi وبعد نسخ جميع الأصول احتياطيًا. قد يستغرق الإجراء بضع دقائق.", @@ -734,6 +753,7 @@ "create_user": "إنشاء مستخدم", "created": "تم الإنشاء", "created_at": "مخلوق", + "creating_linked_albums": "جاري إنشاء الألبومات المرتبطة...", "crop": "قص", "curated_object_page_title": "أشياء", "current_device": "الجهاز الحالي", @@ -883,7 +903,9 @@ "error": "خطأ", "error_change_sort_album": "فشل في تغيير ترتيب الألبوم", "error_delete_face": "حدث خطأ في حذف الوجه من الأصول", + "error_getting_places": "خطأ أثناء استرجاع بيانات المواقع", "error_loading_image": "حدث خطأ أثناء تحميل الصورة", + "error_loading_partners": "خطأ بتحميل بيانات الشركاء: {error}", "error_saving_image": "خطأ: {error}", "error_tag_face_bounding_box": "خطأ في وضع علامة على الوجه - لا يمكن الحصول على إحداثيات المربع المحيط", "error_title": "خطأ - حدث خللٌ ما", @@ -1048,6 +1070,7 @@ "favorites_page_no_favorites": "لم يتم العثور على الأصول المفضلة", "feature_photo_updated": "تم تحديث الصورة المميزة", "features": "الميزات", + "features_in_development": "الميزات قيد التطوير", "features_setting_description": "إدارة ميزات التطبيق", "file_name": "إسم الملف", "file_name_or_extension": "اسم الملف أو امتداده", @@ -1068,12 +1091,15 @@ "gcast_enabled": "كوكل كاست", "gcast_enabled_description": "تقوم هذه الميزة بتحميل الموارد الخارجية من Google حتى تعمل.", "general": "عام", + "geolocation_instruction_location": "انقر على الاصل الذي يحتوي على إحداثيات نظام تحديد المواقع لاستخدام موقعه، أو اختر الموقع مباشرة من الخريطة", "get_help": "الحصول على المساعدة", "get_wifiname_error": "تعذر الحصول على اسم شبكة Wi-Fi. تأكد من منح الأذونات اللازمة واتصالك بشبكة Wi-Fi", "getting_started": "البدء", "go_back": "الرجوع للخلف", "go_to_folder": "اذهب إلى المجلد", "go_to_search": "اذهب إلى البحث", + "gps": "نظام تحديد المواقع", + "gps_missing": "لا يوجد نظام تحديد المواقع", "grant_permission": "منح الاذن", "group_albums_by": "تجميع الألبومات حسب...", "group_country": "مجموعة البلد", @@ -1209,6 +1235,7 @@ "local": "محلّي", "local_asset_cast_failed": "غير قادر على بث أصل لم يتم تحميله إلى الخادم", "local_assets": "أُصول (ملفات) محلية", + "local_media_summary": "ملخص الملفات المحلية", "local_network": "شبكة محلية", "local_network_sheet_info": "سيتصل التطبيق بالخادم من خلال عنوان URL هذا عند استخدام شبكة Wi-Fi المحددة", "location_permission": "اذن الموقع", @@ -1220,6 +1247,7 @@ "location_picker_longitude_hint": "أدخل خط الطول هنا", "lock": "قفل", "locked_folder": "مجلد مقفول", + "log_detail_title": "تفاصيل السجل", "log_out": "تسجيل خروج", "log_out_all_devices": "تسجيل الخروج من كافة الأجهزة", "logged_in_as": "تم تسجيل الدخول باسم {user}", @@ -1250,6 +1278,7 @@ "login_password_changed_success": "تم تحديث كلمة السر بنجاح", "logout_all_device_confirmation": "هل أنت متأكد أنك تريد تسجيل الخروج من جميع الأجهزة؟", "logout_this_device_confirmation": "هل أنت متأكد أنك تريد تسجيل الخروج من هذا الجهاز؟", + "logs": "السجلات", "longitude": "خط الطول", "look": "الشكل", "loop_videos": "تكرار مقاطع الفيديو", @@ -1257,6 +1286,7 @@ "main_branch_warning": "أنت تستخدم إصداراً قيد التطوير؛ ونحن نوصي بشدة باستخدام إصدار النشر!", "main_menu": "القائمة الرئيسية", "make": "صنع", + "manage_geolocation": "إدارة الموقع", "manage_shared_links": "إدارة الروابط المشتركة", "manage_sharing_with_partners": "إدارة المشاركة مع الشركاء", "manage_the_app_settings": "إدارة إعدادات التطبيق", @@ -1291,6 +1321,7 @@ "mark_as_read": "تحديد كمقروء", "marked_all_as_read": "تم تحديد الكل كمقروء", "matches": "تطابقات", + "matching_assets": "‏الاصول المطابقة", "media_type": "نوع الوسائط", "memories": "الذكريات", "memories_all_caught_up": "كل شيء محدث", @@ -1331,6 +1362,7 @@ "name_or_nickname": "الاسم أو اللقب", "network_requirement_photos_upload": "استخدام بيانات الهاتف المحمول لعمل نسخة احتياطية للصور", "network_requirement_videos_upload": "استخدام بيانات الهاتف المحمول لعمل نسخة احتياطية لمقاطع الفيديو", + "network_requirements": "متطلبات الشبكة", "network_requirements_updated": "تم تغيير متطلبات الشبكة، يتم إعادة تعيين قائمة انتظار النسخ الاحتياطي", "networking_settings": "الشبكات", "networking_subtitle": "إدارة إعدادات نقطة الخادم النهائية", @@ -1341,6 +1373,7 @@ "new_person": "شخص جديد", "new_pin_code": "رمز PIN الجديد", "new_pin_code_subtitle": "هذه أول مرة تدخل فيها إلى المجلد المقفل. أنشئ رمزًا PIN للوصول بامان إلى هذه الصفحة", + "new_timeline": "الخط الزمني الجديد", "new_user_created": "تم إنشاء مستخدم جديد", "new_version_available": "إصدار جديد متاح", "newest_first": "الأحدث أولاً", @@ -1354,20 +1387,25 @@ "no_assets_message": "انقر لتحميل صورتك الأولى", "no_assets_to_show": "لا توجد أصول لعرضها", "no_cast_devices_found": "لم يتم ايجاد جهاز بث", + "no_checksum_local": "لا توجد بيانات تحقق متاحة - يتعذر تحميل الاصول المحلية", + "no_checksum_remote": "لا يوجد رمز تحقق متاح - يتعذر تحميل الاصل من الموقع البعيد", "no_duplicates_found": "لم يتم العثور على أي تكرارات.", "no_exif_info_available": "لا تتوفر معلومات exif", "no_explore_results_message": "قم برفع المزيد من الصور لاستكشاف مجموعتك.", "no_favorites_message": "أضف المفضلة للعثور بسرعة على أفضل الصور ومقاطع الفيديو", "no_libraries_message": "إنشاء مكتبة خارجية لعرض الصور ومقاطع الفيديو الخاصة بك", + "no_local_assets_found": "لم يتم العثور على أي اصول محلية تتطابق مع قيمة التحقق هذه", "no_locked_photos_message": "الصور والفديوهات في المجلد المقفل مخفية ولن تصهر في التصفح او البحث في مكتبتك.", "no_name": "لا اسم", "no_notifications": "لا توجد تنبيهات", "no_people_found": "لم يتم العثور على اشخاص مطابقين", "no_places": "لا أماكن", + "no_remote_assets_found": "لم يتم العثور على أي اصول بعيدة تتطابق مع رمز التحقق هذل", "no_results": "لا يوجد نتائج", "no_results_description": "جرب كلمة رئيسية مرادفة أو أكثر عمومية", "no_shared_albums_message": "قم بإنشاء ألبوم لمشاركة الصور ومقاطع الفيديو مع الأشخاص في شبكتك", "no_uploads_in_progress": "لا يوجد اي ملفات قيد الرفع", + "not_available": "غير متاح", "not_in_any_album": "ليست في أي ألبوم", "not_selected": "لم يختار", "note_apply_storage_label_to_previously_uploaded assets": "ملاحظة: لتطبيق سمة التخزين على المحتويات التي تم رفعها مسبقًا، قم بتشغيل", @@ -1402,6 +1440,8 @@ "open_the_search_filters": "افتح مرشحات البحث", "options": "خيارات", "or": "أو", + "organize_into_albums": "ترتيب في ألبومات", + "organize_into_albums_description": "أضف الصور الموجودة إلى الألبومات باستخدام إعدادات النسخ المتزامن الحالية", "organize_your_library": "تنظيم مكتبتك", "original": "أصلي", "other": "أخرى", @@ -1487,6 +1527,7 @@ "port": "المنفذ", "preferences_settings_subtitle": "ادارة تفضيلات التطبيق", "preferences_settings_title": "التفضيلات", + "preparing": "قيد التحضير", "preset": "الإعداد المسبق", "preview": "معاينة", "previous": "السابق", @@ -1503,6 +1544,7 @@ "profile_drawer_client_out_of_date_minor": "تطبيق الهاتف المحمول قديم.يرجى التحديث إلى أحدث إصدار صغير.", "profile_drawer_client_server_up_to_date": "العميل والخادم محدثان", "profile_drawer_github": "Github", + "profile_drawer_readonly_mode": "تم تفعيل وضع القراءة فقط. اضغط مطولا على رمز صورة المستخدم للخروج.", "profile_drawer_server_out_of_date_major": "الخادم قديم.يرجى التحديث إلى أحدث إصدار رئيسي.", "profile_drawer_server_out_of_date_minor": "الخادم قديم.يرجى التحديث إلى أحدث إصدار صغير.", "profile_image_of_user": "صورة الملف الشخصي لـ {user}", @@ -1541,6 +1583,7 @@ "purchase_server_description_2": "حالة الداعم", "purchase_server_title": "الخادم", "purchase_settings_server_activated": "يتم إدارة مفتاح منتج الخادم من قبل مدير النظام", + "query_asset_id": "استعلام عن معرف الأصل", "queue_status": "يتم الاضافة الى قائمة انتظار النسخ الاحتياطي {count}/{total}", "rating": "تقييم نجمي", "rating_clear": "مسح التقييم", @@ -1548,6 +1591,9 @@ "rating_description": "‫‌اعرض تقييم EXIF في لوحة المعلومات", "reaction_options": "خيارات رد الفعل", "read_changelog": "قراءة سجل التغيير", + "readonly_mode_disabled": "تم تعطيل وضع القراءة فقط", + "readonly_mode_enabled": "تم تفعيل وضع القراءة فقط", + "ready_for_upload": "جاهز للرفع", "reassign": "إعادة التعيين", "reassigned_assets_to_existing_person": "تمت إعادة تعيين {count, plural, one {# الأصل} other {# الاصول}} إلى {name, select, null {شخص موجود } other {{name}}}", "reassigned_assets_to_new_person": "تمت إعادة تعيين {count, plural, one {# المحتوى} other {# المحتويات}} إلى شخص جديد", @@ -1572,6 +1618,7 @@ "regenerating_thumbnails": "جارٍ تجديد الصور المصغرة", "remote": "بعيد", "remote_assets": "الأُصول البعيدة", + "remote_media_summary": "ملخص الملفات البعيدة", "remove": "إزالة", "remove_assets_album_confirmation": "هل أنت متأكد أنك تريد إزالة {count, plural, one {# المحتوى} other {# المحتويات}} من الألبوم ؟", "remove_assets_shared_link_confirmation": "هل أنت متأكد أنك تريد إزالة {count, plural, one {# المحتوى} other {# المحتويات}} من رابط المشاركة هذا؟", @@ -1624,6 +1671,7 @@ "restore_user": "استعادة المستخدم", "restored_asset": "المحتويات المستعادة", "resume": "استئناف", + "resume_paused_jobs": "استكمال {count, plural, one {# وظيفة معلقة} other {# وظائف معلقة}}", "retry_upload": "أعد محاولة الرفع", "review_duplicates": "مراجعة التكرارات", "review_large_files": "مراجعة الملفات الكبيرة", @@ -1717,6 +1765,7 @@ "select_user_for_sharing_page_err_album": "فشل في إنشاء ألبوم", "selected": "التحديد", "selected_count": "{count, plural, other {# محددة }}", + "selected_gps_coordinates": "إحداثيات نظام تحديد المواقع المختارة", "send_message": "‏إرسال رسالة", "send_welcome_email": "إرسال بريدًا إلكترونيًا ترحيبيًا", "server_endpoint": "نقطة نهاية الخادم", @@ -1845,6 +1894,7 @@ "show_slideshow_transition": "إظهار انتقال عرض الشرائح", "show_supporter_badge": "شارة المؤيد", "show_supporter_badge_description": "إظهار شارة المؤيد", + "show_text_search_menu": "عرض قائمة خيارات البحث في النص", "shuffle": "خلط", "sidebar": "الشريط الجانبي", "sidebar_display_description": "عرض رابط للعرض في الشريط الجانبي", @@ -1875,6 +1925,7 @@ "stacktrace": "تتّبُع التكديس", "start": "ابدأ", "start_date": "تاريخ البدء", + "start_date_before_end_date": "يجب أن يكون تاريخ بدء الفترة قبل تاريخ نهايتها", "state": "الولاية", "status": "الحالة", "stop_casting": "ايقاف البث", @@ -1899,6 +1950,8 @@ "sync_albums_manual_subtitle": "مزامنة جميع الفديوهات والصور المرفوعة الى البومات الخزن الاحتياطي المختارة", "sync_local": "مزامنة الملفات المحلية", "sync_remote": "مزامنة الملفات البعيدة", + "sync_status": "حالة النسخ المتزامن", + "sync_status_subtitle": "عرض وإدارة نظام النسخ المتزامن", "sync_upload_album_setting_subtitle": "انشئ و ارفع صورك و فديوهاتك الالبومات المختارة في Immich", "tag": "العلامة", "tag_assets": "أصول العلامة", @@ -1936,7 +1989,9 @@ "to_change_password": "تغيير كلمة المرور", "to_favorite": "تفضيل", "to_login": "تسجيل الدخول", + "to_multi_select": "للتحديد المتعدد", "to_parent": "انتقل إلى الوالد", + "to_select": "للتحديد", "to_trash": "حذف", "toggle_settings": "الإعدادات", "total": "الإجمالي", @@ -1956,6 +2011,7 @@ "trash_page_select_assets_btn": "اختر الأصول", "trash_page_title": "سلة المهملات ({count})", "trashed_items_will_be_permanently_deleted_after": "سيتم حذفُ العناصر المحذوفة نِهائيًا بعد {days, plural, one {# يوم} other {# أيام }}.", + "troubleshoot": "استكشاف المشاكل", "type": "النوع", "unable_to_change_pin_code": "تفيير رمز PIN غير ممكن", "unable_to_setup_pin_code": "انشاء رمز PIN غير ممكن", @@ -1986,6 +2042,7 @@ "unstacked_assets_count": "تم إخراج {count, plural, one {# الأصل} other {# الأصول}} من التكديس", "untagged": "غير مُعَلَّم", "up_next": "التالي", + "update_location_action_prompt": "تحديث موقع {count} عناصر محددة على النحو التالي:", "updated_at": "تم التحديث", "updated_password": "تم تحديث كلمة المرور", "upload": "رفع", @@ -2052,6 +2109,7 @@ "view_next_asset": "عرض المحتوى التالي", "view_previous_asset": "عرض المحتوى السابق", "view_qr_code": "­عرض رمز الاستجابة السريعة", + "view_similar_photos": "عرض صور مشابهة", "view_stack": "عرض التكديس", "view_user": "عرض المستخدم", "viewer_remove_from_stack": "حذف من الكومه أو المجموعة", @@ -2070,5 +2128,6 @@ "yes": "نعم", "you_dont_have_any_shared_links": "ليس لديك أي روابط مشتركة", "your_wifi_name": "اسم شبكة Wi-Fi الخاص بك", - "zoom_image": "تكبير الصورة" + "zoom_image": "تكبير الصورة", + "zoom_to_bounds": "تكبير حتى حدود المنطقة" } diff --git a/i18n/az.json b/i18n/az.json index 0449289735..d0e97ca356 100644 --- a/i18n/az.json +++ b/i18n/az.json @@ -2,7 +2,7 @@ "about": "Haqqında", "account": "Hesab", "account_settings": "Hesab parametrləri", - "acknowledge": "Təsdiq et", + "acknowledge": "Aydındır", "action": "Əməliyyat", "action_common_update": "Yenilə", "actions": "Əməliyyatlar", @@ -48,8 +48,15 @@ "backup_database": "Verilənlər bazasının dump-ını yaradın", "backup_database_enable_description": "Verilənlər bazasının artıq nüsxələrini aktiv et", "backup_keep_last_amount": "Tutulması gərəkən nüsxələrin sayı", - "backup_settings": "Ehtiyat Nüsxə Parametrləri", + "backup_onboarding_1_description": "buludda və ya başqa fiziki yerdə saytdan kənar surət.", + "backup_onboarding_2_description": "müxtəlif cihazlarda yerli nüsxələr. Bura əsas fayllar və həmin faylların ehtiyat lokal nüsxəsi daxildir.", + "backup_onboarding_3_description": "orijinal fayllar da daxil olmaqla məlumatlarınızın ümumi surətləri. Buraya 1 kənar nüsxə və 2 lokal nüsxə daxildir.", + "backup_onboarding_footer": "Immich-in ehtiyat nüsxəsini çıxarmaq haqqında ətraflı məlumat üçün sənədlərə müraciət edin.", + "backup_onboarding_parts_title": "3-2-1 ehtiyat nüsxəsinə aşağıdakılar daxildir:", + "backup_onboarding_title": "Ehtiyat surətlər", + "backup_settings": "Bazanın Dump Parametrləri", "backup_settings_description": "Verilənlər bazasının ehtiyat nüsxə parametrlərini idarə et", + "cleared_jobs": "{job} üçün tapşırıqlar silindi", "config_set_by_file": "Konfiqurasiya hal-hazırda konfiqurasiya faylı ilə təyin olunub", "confirm_delete_library": "{library} kitabxanasını silmək istədiyinizdən əminmisiniz?", "confirm_email_below": "Təsdiqləmək üçün aşağıya {email} yazın", diff --git a/i18n/be.json b/i18n/be.json index f98609b84b..7298e904c1 100644 --- a/i18n/be.json +++ b/i18n/be.json @@ -28,6 +28,8 @@ "add_to_album": "Дадаць у альбом", "add_to_album_bottom_sheet_added": "Дададзена да {album}", "add_to_album_bottom_sheet_already_exists": "Ужо знаходзіцца ў {album}", + "add_to_album_bottom_sheet_some_local_assets": "Некаторыя лакальныя актывы не могуць быць дададзены ў альбом", + "add_to_album_toggle": "Пераключыць выбар для {album}", "add_to_albums": "Дадаць у альбомы", "add_to_albums_count": "Дадаць у альбомы ({count})", "add_to_shared_album": "Дадаць у агульны альбом", diff --git a/i18n/bg.json b/i18n/bg.json index 9debd3b10f..e78b139d7b 100644 --- a/i18n/bg.json +++ b/i18n/bg.json @@ -123,6 +123,13 @@ "logging_enable_description": "Включване на запис (логове)", "logging_level_description": "Когато е включено, какво ниво на записване да се използва.", "logging_settings": "Записване", + "machine_learning_availability_checks": "Проверки за наличност", + "machine_learning_availability_checks_description": "Автоматично откриване и предпочитане на налични сървъри за машинно обучение", + "machine_learning_availability_checks_enabled": "Активиране на проверки за наличност", + "machine_learning_availability_checks_interval": "Интервал на проверяване", + "machine_learning_availability_checks_interval_description": "Време в милисекунди между проверките за наличност", + "machine_learning_availability_checks_timeout": "Време за изчакване на отговор", + "machine_learning_availability_checks_timeout_description": "Време за изчакване на отговор в милисекунди при проверка на наличност", "machine_learning_clip_model": "CLIP модел", "machine_learning_clip_model_description": "Името на CLIP модела, посочен тук. Имайте предвид, че при промяна на модела трябва да стартирате отново задачата \"Интелигентно Търсене\" за всички изображения.", "machine_learning_duplicate_detection": "Откриване на дубликати", @@ -1520,6 +1527,7 @@ "port": "Порт", "preferences_settings_subtitle": "Управление на предпочитанията на приложението", "preferences_settings_title": "Предпочитания", + "preparing": "Подготовка", "preset": "Шаблон", "preview": "Прегледи", "previous": "Предишно", @@ -1532,13 +1540,13 @@ "privacy": "Поверителност", "profile": "Профил", "profile_drawer_app_logs": "Дневник", - "profile_drawer_client_out_of_date_major": "Мобилното приложение е остаряло. Моля, актуализирай до най-новата основна версия.", - "profile_drawer_client_out_of_date_minor": "Мобилното приложение е остаряло. Моля, актуализирай до най-новата версия.", + "profile_drawer_client_out_of_date_major": "Мобилното приложение е остаряло. Моля, актуализирайте до най-новата основна версия.", + "profile_drawer_client_out_of_date_minor": "Мобилното приложение е остаряло. Моля, актуализирайте до най-новата версия.", "profile_drawer_client_server_up_to_date": "Клиента и сървъра са обновени", "profile_drawer_github": "GitHub", "profile_drawer_readonly_mode": "Режима само за четене е активиран. С дълго натискане върху картиката-аватар на потребителя ще деактивирате само за четене.", - "profile_drawer_server_out_of_date_major": "Версията на сървъра е остаряла. Моля, актуализирай поне до последната главна версия.", - "profile_drawer_server_out_of_date_minor": "Версията на сървъра е остаряла. Моля, актуализирай до последната версия.", + "profile_drawer_server_out_of_date_major": "Версията на сървъра е остаряла. Моля, актуализирайте поне до последната главна версия.", + "profile_drawer_server_out_of_date_minor": "Версията на сървъра е остаряла. Моля, актуализирайте до последната версия.", "profile_image_of_user": "Профилна снимка на {user}", "profile_picture_set": "Профилната снимка е сложена.", "public_album": "Публичен албум", @@ -1585,6 +1593,7 @@ "read_changelog": "Прочети промените", "readonly_mode_disabled": "Режима само за четене е деактивиран", "readonly_mode_enabled": "Режима само за четене е активиран", + "ready_for_upload": "Готово за качване", "reassign": "Преназначаване", "reassigned_assets_to_existing_person": "Преназначени {count, plural, one {# елемент} other {# елемента}} на {name, select, null {съществуващ човек} other {{name}}}", "reassigned_assets_to_new_person": "Преназначени {count, plural, one {# елемент} other {# елемента}} на нов човек", @@ -1916,6 +1925,7 @@ "stacktrace": "Следа на събраните", "start": "Старт", "start_date": "Начална дата", + "start_date_before_end_date": "Началната дата трябва да бъде преди крайната дата", "state": "Щат", "status": "Статус", "stop_casting": "Спри предаването", diff --git a/i18n/ca.json b/i18n/ca.json index 2eb795a0d4..0e3d674557 100644 --- a/i18n/ca.json +++ b/i18n/ca.json @@ -28,6 +28,7 @@ "add_to_album": "Afegir a un l'àlbum", "add_to_album_bottom_sheet_added": "Afegit a {album}", "add_to_album_bottom_sheet_already_exists": "Ja està a {album}", + "add_to_album_bottom_sheet_some_local_assets": "Alguns recursos locals no s'han pogut afegir a l'àlbum", "add_to_album_toggle": "Commutar selecció de {album}", "add_to_albums": "Afegir als àlbums", "add_to_albums_count": "Afegir als àlbums ({count})", @@ -548,6 +549,7 @@ "backup_album_selection_page_select_albums": "Selecciona àlbums", "backup_album_selection_page_selection_info": "Informació de la selecció", "backup_album_selection_page_total_assets": "Total d'elements únics", + "backup_albums_sync": "Sincronització d'àlbums de còpia de seguretat", "backup_all": "Tots", "backup_background_service_backup_failed_message": "No s'ha pogut copiar els elements. Tornant a intentar…", "backup_background_service_connection_failed_message": "No s'ha pogut connectar al servidor. Tornant a intentar…", @@ -665,6 +667,7 @@ "change_your_password": "Canvia la teva contrasenya", "changed_visibility_successfully": "Visibilitat canviada amb èxit", "charging": "Carregant", + "charging_requirement_mobile_backup": "La còpia de seguretat en segon pla requereix que el dispositiu estigui carregant", "check_corrupt_asset_backup": "Comprovar les còpies de seguretat corruptes", "check_corrupt_asset_backup_button": "Realitzar comprovació", "check_corrupt_asset_backup_description": "Executeu aquesta comprovació només mitjançant Wi-Fi i un cop s'hagi fet una còpia de seguretat de tots els actius. El procediment pot trigar uns minuts.", @@ -903,6 +906,7 @@ "error_delete_face": "Error esborrant cara de les cares reconegudes", "error_getting_places": "S'ha produït un error en obtenir els llocs", "error_loading_image": "Error carregant la imatge", + "error_loading_partners": "No s'han pogut carregar les parelles: {error}", "error_saving_image": "Error: {error}", "error_tag_face_bounding_box": "Error a l'etiquetar la cara - no s'han pogut obtenir les coordenades de l'àrea", "error_title": "Error - Quelcom ha anat malament", @@ -1109,7 +1113,7 @@ "has_quota": "Quota", "hash_asset": "Hash del recurs", "hashed_assets": "Recursos amb hash", - "hashing": "Hashing", + "hashing": "Generant el hash", "header_settings_add_header_tip": "Afegeix Capçalera", "header_settings_field_validator_msg": "El valor no pot estar buit", "header_settings_header_name_input": "Nom de la capçalera", @@ -1232,6 +1236,7 @@ "local": "Local", "local_asset_cast_failed": "No es pot convertir un actiu que no s'ha penjat al servidor", "local_assets": "Recursos Locals", + "local_media_summary": "Resum de Mitjans Locals", "local_network": "Xarxa local", "local_network_sheet_info": "L'aplicació es connectarà al servidor mitjançant aquest URL quan utilitzeu la xarxa Wi-Fi especificada", "location_permission": "Permís d'ubicació", @@ -1243,6 +1248,7 @@ "location_picker_longitude_hint": "Introdueix aquí la longitud", "lock": "Bloqueja", "locked_folder": "Carpeta bloquejada", + "log_detail_title": "Detall de Registres", "log_out": "Tanca la sessió", "log_out_all_devices": "Tanqueu la sessió de tots els dispositius", "logged_in_as": "Sessió iniciada com a {user}", @@ -1273,6 +1279,7 @@ "login_password_changed_success": "La contrasenya s'ha canviat correctament", "logout_all_device_confirmation": "Esteu segur que voleu tancar la sessió de tots els dispositius?", "logout_this_device_confirmation": "Esteu segur que voleu tancar la sessió d'aquest dispositiu?", + "logs": "Registres", "longitude": "Longitud", "look": "Aspecte", "loop_videos": "Vídeos en bucle", @@ -1315,6 +1322,7 @@ "mark_as_read": "Marcar com ha llegit", "marked_all_as_read": "Marcat tot com a llegit", "matches": "Coincidències", + "matching_assets": "Recursos Coincidents", "media_type": "Tipus de mitjà", "memories": "Records", "memories_all_caught_up": "Posat al dia", @@ -1355,6 +1363,7 @@ "name_or_nickname": "Nom o sobrenom", "network_requirement_photos_upload": "Fes servir dades mòbils per a còpies de seguretat de fotos", "network_requirement_videos_upload": "Fes servir dades mòbils per a còpies de seguretat de videos", + "network_requirements": "Requeriments de Xarxa", "network_requirements_updated": "Han canviat els requeriments de xarxa, reiniciant la cua", "networking_settings": "Xarxes", "networking_subtitle": "Gestiona la configuració del endpoint del servidor", @@ -1365,6 +1374,7 @@ "new_person": "Persona nova", "new_pin_code": "Nou codi PIN", "new_pin_code_subtitle": "Aquesta és la primera vegada que accedeixes a la carpeta bloquejada. Crea una codi PIN i accedeix de manera segura a aquesta pàgina", + "new_timeline": "Nova Línia de Temps", "new_user_created": "Nou usuari creat", "new_version_available": "NOVA VERSIÓ DISPONIBLE", "newest_first": "El més nou primer", @@ -1378,20 +1388,25 @@ "no_assets_message": "FEU CLIC PER PUJAR LA VOSTRA PRIMERA FOTO", "no_assets_to_show": "No hi ha elements per mostrar", "no_cast_devices_found": "No s'han trobat dispositius per transmetre", + "no_checksum_local": "Cap checksum disponible - no s'han pogut carregar els recursos locals", + "no_checksum_remote": "Cap checksum disponible - no s'ha pogut obtenir el recurs remot", "no_duplicates_found": "No s'han trobat duplicats.", "no_exif_info_available": "No hi ha informació d'exif disponible", "no_explore_results_message": "Penja més fotos per explorar la teva col·lecció.", "no_favorites_message": "Afegiu preferits per trobar les millors fotos i vídeos a l'instant", "no_libraries_message": "Creeu una llibreria externa per veure les vostres fotos i vídeos", + "no_local_assets_found": "No s'ha trobat cap recurs local amb aquest checksum", "no_locked_photos_message": "Les fotos i vídeos d'aquesta carpeta estan ocultes, i no es mostraran a mesura que navegues o cerques a la teva biblioteca.", "no_name": "Sense nom", "no_notifications": "No hi ha notificacions", "no_people_found": "No s'han trobat coincidències de persones", "no_places": "No hi ha llocs", + "no_remote_assets_found": "No s'ha trobat cap recurs remot amb aquest checksum", "no_results": "Sense resultats", "no_results_description": "Proveu un sinònim o una paraula clau més general", "no_shared_albums_message": "Creeu un àlbum per compartir fotos i vídeos amb persones a la vostra xarxa", "no_uploads_in_progress": "Cap pujada en progrés", + "not_available": "N/A", "not_in_any_album": "En cap àlbum", "not_selected": "No seleccionat", "note_apply_storage_label_to_previously_uploaded assets": "Nota: per aplicar l'etiqueta d'emmagatzematge als actius penjats anteriorment, executeu el", @@ -1513,6 +1528,7 @@ "port": "Port", "preferences_settings_subtitle": "Gestiona les preferències de l'aplicació", "preferences_settings_title": "Preferències", + "preparing": "Preparant", "preset": "Preestablert", "preview": "Previsualització", "previous": "Anterior", @@ -1578,6 +1594,7 @@ "read_changelog": "Llegeix el registre de canvis", "readonly_mode_disabled": "Mode de només lectura desactivat", "readonly_mode_enabled": "Mode de només lectura activat", + "ready_for_upload": "Llest per a pujar", "reassign": "Reassignar", "reassigned_assets_to_existing_person": "{count, plural, one {S'ha reassignat # recurs} other {S'han reassignat # recursos}} a {name, select, null {una persona existent} other {{name}}}", "reassigned_assets_to_new_person": "{count, plural, one {S'ha reassignat # recurs} other {S'han reassignat # recursos}} a una persona nova", @@ -1602,6 +1619,7 @@ "regenerating_thumbnails": "Regenerant les miniatures", "remote": "Remot", "remote_assets": "Recursos Remots", + "remote_media_summary": "Resum de Mitjans Remots", "remove": "Eliminar", "remove_assets_album_confirmation": "Confirmes que vols eliminar {count, plural, one {# recurs} other {# recursos}} de l'àlbum?", "remove_assets_shared_link_confirmation": "Esteu segur que voleu eliminar {count, plural, one {# recurs} other {# recursos}} d'aquest enllaç compartit?", @@ -1654,6 +1672,7 @@ "restore_user": "Restaurar l'usuari", "restored_asset": "Element restaurat", "resume": "Reprendre", + "resume_paused_jobs": "Reprèn {count, plural, one {# treball pausat} other {# treballs pausats}}", "retry_upload": "Torna a provar de pujar", "review_duplicates": "Revisar duplicats", "review_large_files": "Revisar fitxers grans", @@ -1876,6 +1895,7 @@ "show_slideshow_transition": "Mostra la transició de la presentació de diapositives", "show_supporter_badge": "Insígnia de contribuent", "show_supporter_badge_description": "Mostra una insígnia de contributor", + "show_text_search_menu": "Mostra el menú de cerca amb text", "shuffle": "Mescla", "sidebar": "Barra lateral", "sidebar_display_description": "Mostra un enllaç a la vista a la barra lateral", @@ -1906,6 +1926,7 @@ "stacktrace": "Traça de pila", "start": "Inicia", "start_date": "Data inicial", + "start_date_before_end_date": "La data d'inici ha de ser abans de la data de fi", "state": "Regió", "status": "Estat", "stop_casting": "Atura la transmisió", @@ -1930,6 +1951,8 @@ "sync_albums_manual_subtitle": "Sincronitza tots els vídeos i fotos penjats amb els àlbums de còpia de seguretat seleccionats", "sync_local": "Sincronitza Local", "sync_remote": "Sincronitza Remot", + "sync_status": "Estat de sincronització", + "sync_status_subtitle": "Observa i administra el sistema de sincronització", "sync_upload_album_setting_subtitle": "Creeu i pugeu les seves fotos i vídeos als àlbums seleccionats a Immich", "tag": "Etiqueta", "tag_assets": "Etiquetar actius", @@ -1989,6 +2012,7 @@ "trash_page_select_assets_btn": "Selecciona elements", "trash_page_title": "Paperera ({count})", "trashed_items_will_be_permanently_deleted_after": "Els elements que s'enviïn a la paperera s'eliminaran permanentment després de {days, plural, one {# dia} other {# dies}}.", + "troubleshoot": "Solució de problemes", "type": "Tipus", "unable_to_change_pin_code": "No es pot canviar el codi PIN", "unable_to_setup_pin_code": "No s'ha pogut configurar el codi PIN", @@ -2105,5 +2129,6 @@ "yes": "Sí", "you_dont_have_any_shared_links": "No tens cap enllaç compartit", "your_wifi_name": "Nom del teu Wi-Fi", - "zoom_image": "Ampliar Imatge" + "zoom_image": "Ampliar Imatge", + "zoom_to_bounds": "Amplia als límits" } diff --git a/i18n/cs.json b/i18n/cs.json index 4c42d2d3f1..ceebc9f401 100644 --- a/i18n/cs.json +++ b/i18n/cs.json @@ -28,6 +28,7 @@ "add_to_album": "Přidat do alba", "add_to_album_bottom_sheet_added": "Přidáno do {album}", "add_to_album_bottom_sheet_already_exists": "Je již v {album}", + "add_to_album_bottom_sheet_some_local_assets": "Některá místní aktiva nebylo možné přidat do alba", "add_to_album_toggle": "Přepnout výběr pro {album}", "add_to_albums": "Přidat do alb", "add_to_albums_count": "Přidat do alb ({count})", diff --git a/i18n/de.json b/i18n/de.json index a9deba04fa..4af1675ffc 100644 --- a/i18n/de.json +++ b/i18n/de.json @@ -28,6 +28,7 @@ "add_to_album": "Zu Album hinzufügen", "add_to_album_bottom_sheet_added": "Zu {album} hinzugefügt", "add_to_album_bottom_sheet_already_exists": "Bereits in {album}", + "add_to_album_bottom_sheet_some_local_assets": "Einige lokale Dateien konnten nicht zum Album hinzugefügt werden", "add_to_album_toggle": "Auswahl umschalten für {album}", "add_to_albums": "Zu Alben hinzufügen", "add_to_albums_count": "Zu Alben hinzufügen ({count})", diff --git a/i18n/el.json b/i18n/el.json index cb6708d711..6e2f543c1f 100644 --- a/i18n/el.json +++ b/i18n/el.json @@ -401,6 +401,8 @@ "advanced_settings_prefer_remote_title": "Προτίμηση απομακρυσμένων εικόνων", "advanced_settings_proxy_headers_subtitle": "Καθορισμός κεφαλίδων διακομιστή μεσολάβησης που το Immich πρέπει να στέλνει με κάθε αίτημα δικτύου", "advanced_settings_proxy_headers_title": "Κεφαλίδες διακομιστή μεσολάβησης", + "advanced_settings_readonly_mode_subtitle": "Ενεργοποιεί τη λειτουργία μόνο-για-ανάγνωση, όπου οι φωτογραφίες μπορούν μόνο να προβληθούν. Ενέργειες όπως επιλογή πολλών εικόνων, κοινή χρήση, αποστολή (casting) και διαγραφή είναι απενεργοποιημένες. Η ενεργοποίηση/απενεργοποίηση της λειτουργίας μόνο-για-ανάγνωση γίνεται μέσω της εικόνας του χρήστη από την κεντρική οθόνη", + "advanced_settings_readonly_mode_title": "Λειτουργία μόνο-για-ανάγνωση", "advanced_settings_self_signed_ssl_subtitle": "Παρακάμπτει τον έλεγχο πιστοποιητικού SSL του διακομιστή. Απαραίτητο για αυτο-υπογεγραμμένα πιστοποιητικά.", "advanced_settings_self_signed_ssl_title": "Να επιτρέπονται αυτο-υπογεγραμμένα πιστοποιητικά SSL", "advanced_settings_sync_remote_deletions_subtitle": "Αυτόματη διαγραφή ή επαναφορά ενός περιουσιακού στοιχείου σε αυτή τη συσκευή, όταν η ενέργεια αυτή πραγματοποιείται στο διαδίκτυο", @@ -428,6 +430,7 @@ "album_remove_user_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε τον/την {user};", "album_search_not_found": "Δε βρέθηκαν άλμπουμ που να ταιριάζουν με την αναζήτησή σας", "album_share_no_users": "Φαίνεται ότι έχετε κοινοποιήσει αυτό το άλμπουμ σε όλους τους χρήστες ή δεν έχετε χρήστες για να το κοινοποιήσετε.", + "album_summary": "Περίληψη άλμπουμ", "album_updated": "Το άλμπουμ, ενημερώθηκε", "album_updated_setting_description": "Λάβετε ειδοποίηση μέσω email όταν ένα κοινόχρηστο άλμπουμ έχει νέα αρχεία", "album_user_left": "Αποχωρήσατε από το {album}", @@ -466,6 +469,7 @@ "app_bar_signout_dialog_title": "Αποσύνδεση", "app_settings": "Ρυθμίσεις εφαρμογής", "appears_in": "Εμφανίζεται σε", + "apply_count": "Εφαρμογή ({count, number})", "archive": "Αρχείο", "archive_action_prompt": "Προστέθηκαν {count} στο Αρχείο", "archive_or_unarchive_photo": "Αρχειοθέτηση ή αποαρχειοθέτηση φωτογραφίας", @@ -498,6 +502,8 @@ "asset_restored_successfully": "Το στοιχείο αποκαταστάθηκε με επιτυχία", "asset_skipped": "Παραλείφθηκε", "asset_skipped_in_trash": "Στον κάδο απορριμμάτων", + "asset_trashed": "Το στοιχείο διαγράφηκε", + "asset_troubleshoot": "Αντιμετώπιση προβλήματος στοιχείου", "asset_uploaded": "Ανεβάστηκε", "asset_uploading": "Ανεβάζεται…", "asset_viewer_settings_subtitle": "Διαχείριση ρυθμίσεων προβολής συλλογής", @@ -531,8 +537,10 @@ "autoplay_slideshow": "Αυτόματη αναπαραγωγή παρουσίασης", "back": "Πίσω", "back_close_deselect": "Πίσω, κλείσιμο ή αποεπιλογή", + "background_backup_running_error": "Η δημιουργία αντιγράφων ασφάλειας στο παρασκήνιο εκτελείται ήδη, δεν μπορεί να ξεκινήσετε χειροκίνητο αντίγραφο ασφάλειας", "background_location_permission": "Άδεια τοποθεσίας στο παρασκήνιο", "background_location_permission_content": "Το Immich για να μπορεί να αλλάζει δίκτυα όταν τρέχει στο παρασκήνιο, πρέπει *πάντα* να έχει πρόσβαση στην ακριβή τοποθεσία ώστε η εφαρμογή να μπορεί να διαβάζει το όνομα του δικτύου Wi-Fi", + "background_options": "Επιλογές παρασκηνίου", "backup": "Αντίγραφο ασφαλείας", "backup_album_selection_page_albums_device": "Άλμπουμ στη συσκευή ({count})", "backup_album_selection_page_albums_tap": "Πάτημα για συμπερίληψη, διπλό πάτημα για εξαίρεση", @@ -540,6 +548,7 @@ "backup_album_selection_page_select_albums": "Επιλογή άλμπουμ", "backup_album_selection_page_selection_info": "Πληροφορίες επιλογής", "backup_album_selection_page_total_assets": "Συνολικά μοναδικά στοιχεία", + "backup_albums_sync": "Συγχρονισμός αντιγράφων ασφαλείας άλμπουμ", "backup_all": "Όλα", "backup_background_service_backup_failed_message": "Αποτυχία δημιουργίας αντιγράφων ασφαλείας. Επανάληψη…", "backup_background_service_connection_failed_message": "Αποτυχία σύνδεσης με το διακομιστή. Επανάληψη…", @@ -656,6 +665,8 @@ "change_pin_code": "Αλλαγή κωδικού PIN", "change_your_password": "Αλλάξτε τον κωδικό σας", "changed_visibility_successfully": "Η προβολή, άλλαξε με επιτυχία", + "charging": "Φόρτιση", + "charging_requirement_mobile_backup": "Η δημιουργία αντιγράφων ασφάλειας στο παρασκήνιο απαιτεί η συσκευή να φορτίζει", "check_corrupt_asset_backup": "Έλεγχος για κατεστραμμένα αντίγραφα ασφαλείας στοιχείων", "check_corrupt_asset_backup_button": "Εκτέλεση ελέγχου", "check_corrupt_asset_backup_description": "Εκτέλεσε αυτόν τον έλεγχο μόνο μέσω Wi-Fi και αφού έχουν αποθηκευτεί όλα τα αντίγραφα ασφαλείας των στοιχείων. Η διαδικασία μπορεί να διαρκέσει μερικά λεπτά.", @@ -742,6 +753,7 @@ "create_user": "Δημιουργία χρήστη", "created": "Δημιουργήθηκε", "created_at": "Δημιουργήθηκε", + "creating_linked_albums": "Δημιουργία συνδεδεμένων άλμπουμ...", "crop": "Αποκοπή", "curated_object_page_title": "Πράγματα", "current_device": "Τρέχουσα συσκευή", @@ -891,7 +903,9 @@ "error": "Σφάλμα", "error_change_sort_album": "Απέτυχε η αλλαγή σειράς του άλμπουμ", "error_delete_face": "Σφάλμα διαγραφής προσώπου από το στοιχείο", + "error_getting_places": "Σφάλμα κατά την ανάκτηση τοποθεσιών", "error_loading_image": "Σφάλμα κατά τη φόρτωση της εικόνας", + "error_loading_partners": "Σφάλμα κατά τη φόρτωση συνεργατών: {error}", "error_saving_image": "Σφάλμα: {error}", "error_tag_face_bounding_box": "Σφάλμα επισήμανσης προσώπου - δεν μπορούν να ληφθούν οι συντεταγμένες του πλαισίου οριοθέτησης", "error_title": "Σφάλμα - Κάτι πήγε στραβά", @@ -1056,6 +1070,7 @@ "favorites_page_no_favorites": "Δεν βρέθηκαν αγαπημένα στοιχεία", "feature_photo_updated": "Η φωτογραφία προβολής ενημερώθηκε", "features": "Χαρακτηριστικά", + "features_in_development": "Λειτουργίες υπό Ανάπτυξη", "features_setting_description": "Διαχειριστείτε τα χαρακτηριστικά της εφαρμογής", "file_name": "Όνομα αρχείου", "file_name_or_extension": "Όνομα αρχείου ή επέκταση", @@ -1076,12 +1091,15 @@ "gcast_enabled": "Μετάδοση περιεχομένου Google Cast", "gcast_enabled_description": "Αυτό το χαρακτηριστικό φορτώνει εξωτερικούς πόρους από τη Google για να λειτουργήσει.", "general": "Γενικά", + "geolocation_instruction_location": "Κάνε κλικ σε ένα στοιχείο με συντεταγμένες GPS για να χρησιμοποιήσεις την τοποθεσία του, ή επίλεξε απευθείας μια τοποθεσία από τον χάρτη", "get_help": "Ζητήστε βοήθεια", "get_wifiname_error": "Δεν ήταν δυνατή η λήψη του ονόματος Wi-Fi. Βεβαιωθείτε ότι έχετε δώσει τις απαραίτητες άδειες και ότι είστε συνδεδεμένοι σε δίκτυο Wi-Fi", "getting_started": "Ξεκινώντας", "go_back": "Πηγαίνετε πίσω", "go_to_folder": "Μετάβαση στο φάκελο", "go_to_search": "Πηγαίνετε στην αναζήτηση", + "gps": "GPS", + "gps_missing": "Χωρίς GPS", "grant_permission": "Επιτρέψτε την άδεια", "group_albums_by": "Ομαδοποίηση άλμπουμ κατά...", "group_country": "Ομαδοποίηση κατά χώρα", @@ -1217,6 +1235,7 @@ "local": "Τοπικά", "local_asset_cast_failed": "Αδυναμία μετάδοσης στοιχείου που δεν έχει ανέβει στον διακομιστή", "local_assets": "Τοπικά στοιχεία", + "local_media_summary": "Περίληψη τοπικών πολυμέσων", "local_network": "Τοπικό δίκτυο", "local_network_sheet_info": "Η εφαρμογή θα συνδεθεί με τον διακομιστή μέσω αυτού του URL όταν χρησιμοποιείται το καθορισμένο δίκτυο Wi-Fi", "location_permission": "Άδεια τοποθεσίας", @@ -1228,6 +1247,7 @@ "location_picker_longitude_hint": "Εισαγάγετε εδώ το γεωγραφικό σας μήκος", "lock": "Κλείδωμα", "locked_folder": "Κλειδωμένος φάκελος", + "log_detail_title": "Λεπτομέρεια καταγραφής", "log_out": "Αποσύνδεση", "log_out_all_devices": "Αποσύνδεση από Όλες τις Συσκευές", "logged_in_as": "Συνδεδεμένος ως {user}", @@ -1258,6 +1278,7 @@ "login_password_changed_success": "Ο κωδικός πρόσβασης ενημερώθηκε με επιτυχία", "logout_all_device_confirmation": "Είστε βέβαιοι ότι θέλετε να αποσυνδεθείτε από όλες τις συσκευές;", "logout_this_device_confirmation": "Είστε βέβαιοι ότι θέλετε να αποσυνδεθείτε από αυτήν τη συσκευή;", + "logs": "Καταγραφές", "longitude": "Γεωγραφικό μήκος", "look": "Εμφάνιση", "loop_videos": "Επανάληψη βίντεο", @@ -1265,6 +1286,7 @@ "main_branch_warning": "Χρησιμοποιείτε μια έκδοση σε ανάπτυξη· συνιστούμε ανεπιφύλακτα τη χρήση μιας τελικής έκδοσης!", "main_menu": "Κύριο μενού", "make": "Κατασκευαστής", + "manage_geolocation": "Διαχείριση τοποθεσίας", "manage_shared_links": "Διαχείριση κοινόχρηστων συνδέσμων", "manage_sharing_with_partners": "Διαχειριστείτε την κοινή χρήση με συνεργάτες", "manage_the_app_settings": "Διαχειριστείτε τις ρυθμίσεις της εφαρμογής", @@ -1299,6 +1321,7 @@ "mark_as_read": "Επισήμανση ως αναγνωσμένο", "marked_all_as_read": "Όλα επισημάνθηκαν ως αναγνωσμένα", "matches": "Αντιστοιχίες", + "matching_assets": "Αντιστοιχία στοιχείων", "media_type": "Τύπος πολυμέσου", "memories": "Αναμνήσεις", "memories_all_caught_up": "Συγχρονισμένα", @@ -1339,6 +1362,7 @@ "name_or_nickname": "Όνομα ή ψευδώνυμο", "network_requirement_photos_upload": "Χρήση δεδομένων κινητής τηλεφωνίας για τη δημιουργία αντιγράφων ασφαλείας των φωτογραφιών", "network_requirement_videos_upload": "Χρήση δεδομένων κινητής τηλεφωνίας για τη δημιουργία αντιγράφων ασφαλείας των βίντεο", + "network_requirements": "Απαιτήσεις Δυκτίου", "network_requirements_updated": "Οι απαιτήσεις δικτύου άλλαξαν, γίνεται επαναφορά της ουράς αντιγράφων ασφαλείας", "networking_settings": "Δικτύωση", "networking_subtitle": "Διαχείριση ρυθμίσεων τελικών σημείων διακομιστή", @@ -1349,6 +1373,7 @@ "new_person": "Νέο άτομο", "new_pin_code": "Νέος κωδικός PIN", "new_pin_code_subtitle": "Αυτή είναι η πρώτη φορά που αποκτάτε πρόσβαση στον κλειδωμένο φάκελο. Δημιουργήστε έναν κωδικό PIN για ασφαλή πρόσβαση σε αυτή τη σελίδα", + "new_timeline": "Νέο Χρονολόγιο", "new_user_created": "Ο νέος χρήστης δημιουργήθηκε", "new_version_available": "ΔΙΑΘΕΣΙΜΗ ΝΕΑ ΕΚΔΟΣΗ", "newest_first": "Τα νεότερα πρώτα", @@ -1362,20 +1387,25 @@ "no_assets_message": "ΚΑΝΤΕ ΚΛΙΚ ΓΙΑ ΝΑ ΑΝΕΒΑΣΕΤΕ ΤΗΝ ΠΡΩΤΗ ΣΑΣ ΦΩΤΟΓΡΑΦΙΑ", "no_assets_to_show": "Δεν υπάρχουν στοιχεία προς εμφάνιση", "no_cast_devices_found": "Δε βρέθηκαν συσκευές μετάδοσης", + "no_checksum_local": "Δεν υπάρχει διαθέσιμο checksum για έλεγχο ακεραιότητας – δεν μπορούν να ανακτηθούν τα τοπικά στοιχεία", + "no_checksum_remote": "Δεν υπάρχει διαθέσιμο checksum για έλεγχο ακεραιότητας – δεν μπορούν να ανακτηθούν τα απομακρυσμένα στοιχεία", "no_duplicates_found": "Δεν βρέθηκαν διπλότυπα.", "no_exif_info_available": "Καμία πληροφορία exif διαθέσιμη", "no_explore_results_message": "Ανεβάστε περισσότερες φωτογραφίες για να περιηγηθείτε στη συλλογή σας.", "no_favorites_message": "Προσθέστε αγαπημένα για να βρείτε γρήγορα τις καλύτερες φωτογραφίες και τα βίντεό σας", "no_libraries_message": "Δημιουργήστε μια εξωτερική βιβλιοθήκη για να προβάλετε τις φωτογραφίες και τα βίντεό σας", + "no_local_assets_found": "Δεν βρέθηκαν τοπικά στοιχεία με αυτό το checksum", "no_locked_photos_message": "Οι φωτογραφίες και τα βίντεο στον κλειδωμένο φάκελο, είναι κρυμμένες και δεν θα εμφανίζονται κατά την περιήγηση ή την αναζήτηση στη βιβλιοθήκη σας.", "no_name": "Χωρίς Όνομα", "no_notifications": "Καμία ειδοποίηση", "no_people_found": "Δεν βρέθηκαν άτομα που να ταιριάζουν", "no_places": "Καμία τοποθεσία", + "no_remote_assets_found": "Δεν βρέθηκαν απομακρυσμένα στοιχεία με αυτό το checksum", "no_results": "Κανένα αποτέλεσμα", "no_results_description": "Δοκιμάστε ένα συνώνυμο ή πιο γενική λέξη-κλειδί", "no_shared_albums_message": "Δημιουργήστε ένα άλμπουμ για να μοιράζεστε φωτογραφίες και βίντεο με άτομα στο δίκτυό σας", "no_uploads_in_progress": "Καμία μεταφόρτωση σε εξέλιξη", + "not_available": "Μ/Δ (Μη Διαθέσιμο)", "not_in_any_album": "Σε κανένα άλμπουμ", "not_selected": "Δεν επιλέχθηκε", "note_apply_storage_label_to_previously_uploaded assets": "Σημείωση: Για να εφαρμόσετε την Ετικέτα Αποθήκευσης σε στοιχεία που έχουν μεταφορτωθεί προηγουμένως, εκτελέστε το", @@ -1410,6 +1440,8 @@ "open_the_search_filters": "Ανοίξτε τα φίλτρα αναζήτησης", "options": "Επιλογές", "or": "ή", + "organize_into_albums": "Οργάνωση σε άλμπουμ", + "organize_into_albums_description": "Τοποθετείστε τις υπάρχουσες φωτογραφίες σε άλμπουμ χρησιμοποιώντας τις τρέχουσες ρυθμίσεις συγχρονισμού", "organize_your_library": "Οργανώστε τη βιβλιοθήκη σας", "original": "πρωτότυπο", "other": "Άλλες", @@ -1495,6 +1527,7 @@ "port": "Θύρα", "preferences_settings_subtitle": "Διαχειριστείτε τις προτιμήσεις της εφαρμογής", "preferences_settings_title": "Προτιμήσεις", + "preparing": "Προετοιμασία", "preset": "Προκαθορισμένη ρύθμιση", "preview": "Προεπισκόπηση", "previous": "Προηγούμενο", @@ -1511,6 +1544,7 @@ "profile_drawer_client_out_of_date_minor": "Παρακαλώ ενημερώστε την εφαρμογή στην πιο πρόσφατη δευτερεύουσα έκδοση.", "profile_drawer_client_server_up_to_date": "Ο πελάτης και ο διακομιστής είναι ενημερωμένοι", "profile_drawer_github": "GitHub", + "profile_drawer_readonly_mode": "Η λειτουργία μόνο-για-ανάγνωση ενεργοποιήθηκε. Κρατήστε πατημένο το εικονίδιο του χρήστη για απενεργοποίηση.", "profile_drawer_server_out_of_date_major": "Παρακαλώ ενημερώστε τον διακομιστή στην πιο πρόσφατη κύρια έκδοση.", "profile_drawer_server_out_of_date_minor": "Παρακαλώ ενημερώστε τον διακομιστή στην πιο πρόσφατη δευτερεύουσα έκδοση.", "profile_image_of_user": "Εικόνα προφίλ του χρήστη {user}", @@ -1549,6 +1583,7 @@ "purchase_server_description_2": "Κατάσταση υποστηρικτή", "purchase_server_title": "Διακομιστής", "purchase_settings_server_activated": "Η διαχείριση του κλειδιού προϊόντος του διακομιστή γίνεται από τον διαχειριστή", + "query_asset_id": "Αναζήτηση ID Στοιχείου", "queue_status": "Τοποθέτηση στη ουρά {count} από {total}", "rating": "Αξιολόγηση με αστέρια", "rating_clear": "Εκκαθάριση αξιολόγησης", @@ -1556,6 +1591,9 @@ "rating_description": "Εμφάνιση της αξιολόγησης EXIF στον πίνακα πληροφοριών", "reaction_options": "Επιλογές αντίδρασης", "read_changelog": "Διαβάστε το Αρχείο Καταγραφής Αλλαγών", + "readonly_mode_disabled": "Η λειτουργία μόνο-για-ανάγνωση απενεργοποιήθηκε", + "readonly_mode_enabled": "Η λειτουργία μόνο-για-ανάγνωση ενεργοποιήθηκε", + "ready_for_upload": "Έτοιμο για μεταφόρτωση", "reassign": "Ανάθεση", "reassigned_assets_to_existing_person": "Η ανάθεση {count, plural, one {# αρχείου} other {# αρχείων}} στον/στην {name, select, null {έναν/μία υπάρχοντα/ουσα χρήστη} other {{name}}}", "reassigned_assets_to_new_person": "Η ανάθεση {count, plural, one {# αρχείου} other {# αρχείων}} σε νέο άτομο", @@ -1580,6 +1618,7 @@ "regenerating_thumbnails": "Οι μικρογραφίες αναγεννώνται", "remote": "Απομακρυσμένος", "remote_assets": "Απομακρυσμένα στοιχεία", + "remote_media_summary": "Περίληψη απομακρυσμένων πολυμέσων", "remove": "Αφαίρεση", "remove_assets_album_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε {count, plural, one {# στοιχείο} other {# στοιχεία}} από το άλμπουμ;", "remove_assets_shared_link_confirmation": "Είστε σίγουροι ότι θέλετε να αφαιρέσετε {count, plural, one {# στοιχείο} other {# στοιχεία}} από αυτόν τον κοινόχρηστο σύνδεσμο;", @@ -1632,6 +1671,7 @@ "restore_user": "Επαναφορά χρήστη", "restored_asset": "Ανακτήθηκε το αρχείο", "resume": "Συνέχιση", + "resume_paused_jobs": "Συνέχιση {count, plural, one {# σε παύση εργασία} other {# σε παύση εργασίες}}", "retry_upload": "Επανάληψη ανεβάσματος", "review_duplicates": "Προβολή διπλότυπων", "review_large_files": "Επισκόπηση μεγάλων αρχείων", @@ -1725,6 +1765,7 @@ "select_user_for_sharing_page_err_album": "Αποτυχία δημιουργίας άλπουμ", "selected": "Επιλεγμένοι", "selected_count": "{count, plural, other {# επιλεγμένοι}}", + "selected_gps_coordinates": "Επιλεγμένες συντεταγμένες GPS", "send_message": "Αποστολή μηνύματος", "send_welcome_email": "Αποστολή email καλωσορίσματος", "server_endpoint": "Τελικό σημείο Διακομιστή", @@ -1853,6 +1894,7 @@ "show_slideshow_transition": "Εμφάνιση μετάβασης παρουσίασης", "show_supporter_badge": "Σήμα υποστηρικτή", "show_supporter_badge_description": "Εμφάνιση σήματος υποστηρικτή", + "show_text_search_menu": "Εμφάνιση μενού αναζήτησης κειμένου", "shuffle": "Ανάμειξη", "sidebar": "Πλαϊνή μπάρα", "sidebar_display_description": "Εμφάνιση συνδέσμου για προβολή στην πλαϊνή μπάρα", @@ -1883,6 +1925,7 @@ "stacktrace": "Καταγραφή στοίβας", "start": "Έναρξη", "start_date": "Από", + "start_date_before_end_date": "Η ημερομηνία έναρξης πρέπει να είναι πριν από την ημερομηνία λήξης", "state": "Νομός", "status": "Κατάσταση", "stop_casting": "Διακοπή μετάδοσης", @@ -1907,6 +1950,8 @@ "sync_albums_manual_subtitle": "Συγχρονίστε όλα τα μεταφορτωμένα βίντεο και φωτογραφίες με τα επιλεγμένα εφεδρικά άλμπουμ", "sync_local": "Τοπικός Συγχρονισμός", "sync_remote": "Απομακρυσμένος Συγχρονισμός", + "sync_status": "Κατάσταση συγχρονισμού", + "sync_status_subtitle": "Προβολή και διαχείριση του συστήματος συγχρονισμού", "sync_upload_album_setting_subtitle": "Δημιουργήστε και ανεβάστε τις φωτογραφίες και τα βίντεό σας στα επιλεγμένα άλμπουμ στο Immich", "tag": "Ετικέτα", "tag_assets": "Ετικετοποίηση στοιχείων", @@ -1944,7 +1989,9 @@ "to_change_password": "Αλλαγή κωδικού πρόσβασης", "to_favorite": "Αγαπημένο", "to_login": "Είσοδος", + "to_multi_select": "για πολλαπλή επιλογή", "to_parent": "Μεταβείτε στο γονικό φάκελο", + "to_select": "για επιλογή", "to_trash": "Κάδος απορριμμάτων", "toggle_settings": "Εναλλαγή ρυθμίσεων", "total": "Σύνολο", @@ -1964,6 +2011,7 @@ "trash_page_select_assets_btn": "Επιλέξτε στοιχεία", "trash_page_title": "Κάδος Απορριμμάτων ({count})", "trashed_items_will_be_permanently_deleted_after": "Τα στοιχεία που βρίσκονται στον κάδο απορριμμάτων θα διαγραφούν οριστικά μετά από {days, plural, one {# ημέρα} other {# ημέρες}}.", + "troubleshoot": "Επίλυση προβλημάτων", "type": "Τύπος", "unable_to_change_pin_code": "Αδυναμία αλλαγής κωδικού PIN", "unable_to_setup_pin_code": "Αδυναμία ρύθμισης κωδικού PIN", @@ -1994,6 +2042,7 @@ "unstacked_assets_count": "Αποστοιβάξατε {count, plural, one {# στοιχείο} other {# στοιχεία}}", "untagged": "Χωρίς ετικέτα", "up_next": "Ακολουθεί", + "update_location_action_prompt": "Ενημέρωση τοποθεσίας για {count} επιλεγμένα στοιχεία με:", "updated_at": "Ενημερωμένο", "updated_password": "Ο κωδικός πρόσβασης ενημερώθηκε", "upload": "Μεταφόρτωση", @@ -2060,6 +2109,7 @@ "view_next_asset": "Προβολή επόμενου στοιχείου", "view_previous_asset": "Προβολή προηγούμενου στοιχείου", "view_qr_code": "Προβολή κωδικού QR", + "view_similar_photos": "Προβολή παρόμοιων φωτογραφιών", "view_stack": "Προβολή της στοίβας", "view_user": "Προβολή Χρήστη", "viewer_remove_from_stack": "Κατάργηση από τη Στοίβα", @@ -2078,5 +2128,6 @@ "yes": "Ναι", "you_dont_have_any_shared_links": "Δεν έχετε κοινόχρηστους συνδέσμους", "your_wifi_name": "Το όνομα του Wi-Fi σας", - "zoom_image": "Ζουμ Εικόνας" + "zoom_image": "Ζουμ Εικόνας", + "zoom_to_bounds": "Εστίαση στα όρια" } diff --git a/i18n/es.json b/i18n/es.json index 40ea723ded..d2cd6924c4 100644 --- a/i18n/es.json +++ b/i18n/es.json @@ -28,6 +28,7 @@ "add_to_album": "Incluir en álbum", "add_to_album_bottom_sheet_added": "Agregado a {album}", "add_to_album_bottom_sheet_already_exists": "Ya se encuentra en {album}", + "add_to_album_bottom_sheet_some_local_assets": "Algunos recursos locales no se pudieron añadir al álbum", "add_to_album_toggle": "Alternar selección para el {album}", "add_to_albums": "Incluir en álbumes", "add_to_albums_count": "Incluir en {count} álbumes", diff --git a/i18n/et.json b/i18n/et.json index 3683f142f3..d451606dae 100644 --- a/i18n/et.json +++ b/i18n/et.json @@ -28,6 +28,7 @@ "add_to_album": "Lisa albumisse", "add_to_album_bottom_sheet_added": "Lisatud albumisse {album}", "add_to_album_bottom_sheet_already_exists": "On juba albumis {album}", + "add_to_album_bottom_sheet_some_local_assets": "Kõiki lokaalseid üksuseid ei õnnestunud albumisse lisada", "add_to_album_toggle": "Muuda albumi {album} valikut", "add_to_albums": "Lisa albumitesse", "add_to_albums_count": "Lisa albumitesse ({count})", diff --git a/i18n/fa.json b/i18n/fa.json index 3b0be9a9b1..76f8d956fc 100644 --- a/i18n/fa.json +++ b/i18n/fa.json @@ -13,6 +13,7 @@ "add_a_location": "افزودن یک مکان", "add_a_name": "افزودن نام", "add_a_title": "افزودن عنوان", + "add_birthday": "افزودن تاریخ تولد", "add_exclusion_pattern": "افزودن الگوی استثنا", "add_import_path": "افزودن مسیر ورودی", "add_location": "افزودن مکان", @@ -22,10 +23,13 @@ "add_photos": "افزودن عکس ها", "add_to": "افزودن به …", "add_to_album": "افزودن به آلبوم", + "add_to_album_bottom_sheet_added": "به آلبوم {album} اضافه شد", + "add_to_album_bottom_sheet_already_exists": "قبلا در آلبوم {album} موجود است", + "add_to_album_bottom_sheet_some_local_assets": "برخی از محتواهای محلی را نشد به آلبوم اضافه کرد", "add_to_shared_album": "افزودن به آلبوم اشتراکی", "added_to_archive": "به آرشیو اضافه شد", "added_to_favorites": "به علاقه مندی ها اضافه شد", - "added_to_favorites_count": "{count} تا اضافه شد به علاقه مندی ها", + "added_to_favorites_count": "{count, number} تا به علاقه مندی ها اضافه شد", "admin": { "add_exclusion_pattern_description": "الگوهای استثنا را اضافه کنید. پشتیبانی از گلابینگ با استفاده از *, ** و ? وجود دارد. برای نادیده گرفتن تمام فایل‌ها در هر دایرکتوری با نام \"Raw\"، از \"**/Raw/**\" استفاده کنید. برای نادیده گرفتن تمام فایل‌هایی که با \".tif\" پایان می‌یابند، از \"**/*.tif\" استفاده کنید. برای نادیده گرفتن یک مسیر مطلق، از \"/path/to/ignore/**\" استفاده کنید.", "authentication_settings": "تنظیمات احراز هویت", diff --git a/i18n/fi.json b/i18n/fi.json index d2b36cf4d3..769b528f4c 100644 --- a/i18n/fi.json +++ b/i18n/fi.json @@ -123,7 +123,13 @@ "logging_enable_description": "Ota lokikirjaus käyttöön", "logging_level_description": "Kun käytössä, mitä lokituksen tasoa käytetään.", "logging_settings": "Lokit", - "machine_learning_availability_checks": "Saatavyystarkastukset", + "machine_learning_availability_checks": "Saatavuustarkastukset", + "machine_learning_availability_checks_description": "Automaattisesti havaitse ja suosi vapaita koneoppimisen palvelimia", + "machine_learning_availability_checks_enabled": "Laita päälle saatavuus tarkistukset", + "machine_learning_availability_checks_interval": "Tarkastusväli", + "machine_learning_availability_checks_interval_description": "Aikaväli millisekunneissa saavutettavuus tarkistuksille", + "machine_learning_availability_checks_timeout": "Pyynnön aikakatkaisu", + "machine_learning_availability_checks_timeout_description": "Aikakatkaisu aika millisekunneissa saatavuus tarkistuksille", "machine_learning_clip_model": "CLIP-malli", "machine_learning_clip_model_description": "Käytettävän CLIP-mallin nimi toimivien mallien listasta. Huomaa että sinun täytyy suorittaa \"Älykäs etsintä\"-työ uudelleen vaihdettuasi käytettävää mallia.", "machine_learning_duplicate_detection": "Kaksoiskappaleiden tunnistus", @@ -424,6 +430,7 @@ "album_remove_user_confirmation": "Oletko varma että haluat poistaa {user}?", "album_search_not_found": "Haullasi ei löytynyt yhtään albumia", "album_share_no_users": "Näyttää että olet jakanut tämän albumin kaikkien kanssa, tai sinulla ei ole käyttäjiä joille jakaa.", + "album_summary": "Albumi tiivistelmä", "album_updated": "Albumi päivitetty", "album_updated_setting_description": "Saa sähköpostia kun jaetussa albumissa on uutta sisältöä", "album_user_left": "Poistuttiin albumista {album}", @@ -495,6 +502,7 @@ "asset_restored_successfully": "Kohde palautettu onnistuneesti", "asset_skipped": "Ohitettu", "asset_skipped_in_trash": "Roskakorissa", + "asset_trashed": "Kohde poistettu", "asset_uploaded": "Lähetetty", "asset_uploading": "Ladataan…", "asset_viewer_settings_subtitle": "Galleriakatseluohjelman asetusten hallinta", @@ -528,8 +536,10 @@ "autoplay_slideshow": "Toista diaesitys automaattisesti", "back": "Takaisin", "back_close_deselect": "Palaa, sulje tai poista valinnat", + "background_backup_running_error": "Tausta varmuuskopiointi on aktiivinen, ei voida aloittaa manuaalista varmuuskopiointia", "background_location_permission": "Taustasijainnin käyttöoikeus", "background_location_permission_content": "Jotta sovellus voi vaihtaa verkkoa taustalla toimiessaan, Immichillä on *aina* oltava pääsy tarkkaan sijaintiin, jotta se voi lukea Wi-Fi-verkon nimen", + "background_options": "Tausta valinnat", "backup": "Varmuuskopiointi", "backup_album_selection_page_albums_device": "Laitteen albumit ({count})", "backup_album_selection_page_albums_tap": "Napauta sisällyttääksesi, kaksoisnapauta jättääksesi pois", diff --git a/i18n/fr.json b/i18n/fr.json index c0a76c69fe..d5b6e10ba8 100644 --- a/i18n/fr.json +++ b/i18n/fr.json @@ -28,6 +28,7 @@ "add_to_album": "Ajouter à l'album", "add_to_album_bottom_sheet_added": "Ajouté à {album}", "add_to_album_bottom_sheet_already_exists": "Déjà dans {album}", + "add_to_album_bottom_sheet_some_local_assets": "Certains médias n'ont pas pu être ajoutés à l'album", "add_to_album_toggle": "Basculer la sélection pour {album}", "add_to_albums": "Ajouter aux albums", "add_to_albums_count": "Ajouter aux albums ({count})", @@ -598,6 +599,7 @@ "backup_controller_page_turn_on": "Activer la sauvegarde au premier plan", "backup_controller_page_uploading_file_info": "Envoi des informations du fichier", "backup_err_only_album": "Impossible de retirer le seul album", + "backup_error_sync_failed": "Échec de la synchronisation. Impossible de démarrer la sauvegarde.", "backup_info_card_assets": "éléments", "backup_manual_cancelled": "Annulé", "backup_manual_in_progress": "Envoi déjà en cours. Réessayez plus tard", diff --git a/i18n/he.json b/i18n/he.json index 3bf4f703e8..5f71e2c8a8 100644 --- a/i18n/he.json +++ b/i18n/he.json @@ -124,8 +124,12 @@ "logging_level_description": "כאשר פועל, באיזה רמת יומן לתעד.", "logging_settings": "רישום ביומן", "machine_learning_availability_checks": "בדיקת זמינות", + "machine_learning_availability_checks_description": "זהה ותעדף אוטומטית שרתי למידת מכונה זמינים", "machine_learning_availability_checks_enabled": "הפעלת בדיקות זמינות", "machine_learning_availability_checks_interval": "תזמון בדיקה", + "machine_learning_availability_checks_interval_description": "מרווח זמן במילישניות בין בדיקות זמינות", + "machine_learning_availability_checks_timeout": "פסק זמן לבקשה", + "machine_learning_availability_checks_timeout_description": "פסק זמן במילישניות עבור בדיקות זמינות", "machine_learning_clip_model": "מודל CLIP", "machine_learning_clip_model_description": "שמו של מודל CLIP רשום כאן. שים לב שעליך להפעיל מחדש את המשימה 'חיפוש חכם' עבור כל התמונות בעת שינוי מודל.", "machine_learning_duplicate_detection": "איתור כפילויות", @@ -498,6 +502,8 @@ "asset_restored_successfully": "תמונה שוחזרה בהצלחה", "asset_skipped": "דילג", "asset_skipped_in_trash": "באשפה", + "asset_trashed": "התמונה הועברה לאשפה", + "asset_troubleshoot": "פתרון בעיות בתמונות", "asset_uploaded": "הועלה", "asset_uploading": "מעלה…", "asset_viewer_settings_subtitle": "ניהול הגדרות מציג הגלריה שלך", @@ -531,8 +537,10 @@ "autoplay_slideshow": "מצגת תמונות אוטומטית", "back": "חזרה", "back_close_deselect": "חזור, סגור, או בטל בחירה", + "background_backup_running_error": "גיבוי ברקע פועל כעת, לא ניתן להפעיל גיבוי ידני", "background_location_permission": "הרשאת מיקום ברקע", "background_location_permission_content": "כדי להחליף רשתות בעת ריצה ברקע, היישום צריך *תמיד* גישה למיקום מדויק על מנת לקרוא את השם של רשת האינטרנט האלחוטי", + "background_options": "אפשרויות רקע", "backup": "גיבוי", "backup_album_selection_page_albums_device": "({count}) אלבומים במכשיר", "backup_album_selection_page_albums_tap": "הקש כדי לכלול, הקש פעמיים כדי להחריג", @@ -540,6 +548,7 @@ "backup_album_selection_page_select_albums": "בחירת אלבומים", "backup_album_selection_page_selection_info": "פרטי בחירה", "backup_album_selection_page_total_assets": "סה״כ תמונות ייחודיות", + "backup_albums_sync": "סנכרון אלבומי גיבוי", "backup_all": "הכל", "backup_background_service_backup_failed_message": "נכשל בגיבוי תמונות. מנסה שוב…", "backup_background_service_connection_failed_message": "נכשל בהתחברות לשרת. מנסה שוב…", @@ -656,6 +665,8 @@ "change_pin_code": "שנה קוד PIN", "change_your_password": "החלף את הסיסמה שלך", "changed_visibility_successfully": "הנראות שונתה בהצלחה", + "charging": "טוען", + "charging_requirement_mobile_backup": "גיבוי ברקע דורש טעינה של המכשיר", "check_corrupt_asset_backup": "בדוק גיבויים פגומים של תמונות", "check_corrupt_asset_backup_button": "בצע בדיקה", "check_corrupt_asset_backup_description": "הרץ בדיקה זו רק על Wi-Fi ולאחר שכל התמונות גובו. ההליך עשוי לקחת כמה דקות.", @@ -891,7 +902,9 @@ "error": "שגיאה", "error_change_sort_album": "שינוי סדר מיון אלבום נכשל", "error_delete_face": "שגיאה במחיקת פנים מתמונה", + "error_getting_places": "שגיאה בקבלת מקומות", "error_loading_image": "שגיאה בטעינת התמונה", + "error_loading_partners": "שגיאה בטעינת שותפים: {error}", "error_saving_image": "שגיאה: {error}", "error_tag_face_bounding_box": "שגיאה בתיוג הפנים – לא ניתן לקבל את קואורדינטות המסגרת", "error_title": "שגיאה - משהו השתבש", @@ -1056,6 +1069,7 @@ "favorites_page_no_favorites": "לא נמצאו תמונות מועדפים", "feature_photo_updated": "תמונה מייצגת עודכנה", "features": "תכונות", + "features_in_development": "תכונות בפיתוח", "features_setting_description": "ניהול תכונות היישום", "file_name": "שם הקובץ", "file_name_or_extension": "שם קובץ או סיומת", @@ -1220,6 +1234,7 @@ "local": "מקומי", "local_asset_cast_failed": "לא ניתן לשדר תמונה שלא הועלתה לשרת", "local_assets": "תמונות מקומיות", + "local_media_summary": "סיכום של מדיה מקומית", "local_network": "רשת מקומית", "local_network_sheet_info": "היישום יתחבר לשרת דרך הכתובת הזאת כאשר משתמשים ברשת האינטרנט האלחוטי שמצוינת", "location_permission": "הרשאת מיקום", @@ -1231,6 +1246,7 @@ "location_picker_longitude_hint": "הזן את קו האורך שלך כאן", "lock": "נעל", "locked_folder": "תיקיה נעולה", + "log_detail_title": "פרטי יומן", "log_out": "התנתק", "log_out_all_devices": "התנתק מכל המכשירים", "logged_in_as": "מחובר כ {user}", @@ -1261,6 +1277,7 @@ "login_password_changed_success": "סיסמה עודכנה בהצלחה", "logout_all_device_confirmation": "האם באמת ברצונך להתנתק מכל המכשירים?", "logout_this_device_confirmation": "האם באמת ברצונך להתנתק מהמכשיר הזה?", + "logs": "יומנים", "longitude": "קו אורך", "look": "מראה", "loop_videos": "הפעלה חוזרת של סרטונים", @@ -1303,6 +1320,7 @@ "mark_as_read": "סמן כנקרא", "marked_all_as_read": "כל ההתראות סומנו כנקראו", "matches": "התאמות", + "matching_assets": "תמונות תואמות", "media_type": "סוג מדיה", "memories": "זכרונות", "memories_all_caught_up": "ראית הכל", @@ -1343,6 +1361,7 @@ "name_or_nickname": "שם או כינוי", "network_requirement_photos_upload": "השתמש בנתונים ניידים לגיבוי תמונות", "network_requirement_videos_upload": "השתמש בנתונים ניידים לגיבוי סרטונים", + "network_requirements": "דרישות רשת", "network_requirements_updated": "דרישות הרשת השתנו, תור הגיבוי אופס", "networking_settings": "רשת", "networking_subtitle": "ניהול הגדרות נקודת קצה שרת", @@ -1353,6 +1372,7 @@ "new_person": "אדם חדש", "new_pin_code": "קוד PIN חדש", "new_pin_code_subtitle": "זאת הפעם הראשונה שנכנסת לתיקיה הנעולה. צור קוד PIN כדי לאבטח את הגישה לדף זה", + "new_timeline": "ציר הזמן החדש", "new_user_created": "משתמש חדש נוצר", "new_version_available": "גרסה חדשה זמינה", "newest_first": "החדש ביותר ראשון", @@ -1366,20 +1386,25 @@ "no_assets_message": "לחץ כדי להעלות את התמונה הראשונה שלך", "no_assets_to_show": "אין תמונות להצגה", "no_cast_devices_found": "לא נמצאו מכשירי שידור", + "no_checksum_local": "אין Checksum זמין - לא ניתן לאחזר תמונות מקומיות", + "no_checksum_remote": "אין Checksum זמין - לא ניתן לאחזר תמונות מהשרת", "no_duplicates_found": "לא נמצאו כפילויות.", "no_exif_info_available": "אין מידע זמין על מטא-נתונים (exif)", "no_explore_results_message": "העלה תמונות נוספות כדי לחקור את האוסף שלך.", "no_favorites_message": "הוסף מועדפים כדי למצוא במהירות את התמונות והסרטונים הכי טובים שלך", "no_libraries_message": "צור ספרייה חיצונית כדי לראות את התמונות והסרטונים שלך", + "no_local_assets_found": "לא נמצאו תמונות עם Checksum זהה", "no_locked_photos_message": "תמונות וסרטונים בתיקייה הנעולה מוסתרים ולא יופיעו בזמן הגלישה או החיפוש בספרייה שלך.", "no_name": "אין שם", "no_notifications": "אין התראות", "no_people_found": "לא נמצאו אנשים תואמים", "no_places": "אין מקומות", + "no_remote_assets_found": "לא נמצאו תמונות בשרת עם Checksum זהה", "no_results": "אין תוצאות", "no_results_description": "נסה להשתמש במילה נרדפת או במילת מפתח יותר כללית", "no_shared_albums_message": "צור אלבום כדי לשתף תמונות וסרטונים עם אנשים ברשת שלך", "no_uploads_in_progress": "אין העלאות בתהליך", + "not_available": "לא רלוונטי", "not_in_any_album": "לא בשום אלבום", "not_selected": "לא נבחרו", "note_apply_storage_label_to_previously_uploaded assets": "הערה: כדי להחיל את תווית האחסון על תמונות שהועלו בעבר, הפעל את", @@ -1501,6 +1526,7 @@ "port": "יציאה", "preferences_settings_subtitle": "ניהול העדפות יישום", "preferences_settings_title": "העדפות", + "preparing": "בהכנה", "preset": "הגדרות קבועות מראש", "preview": "תצוגה מקדימה", "previous": "הקודם", @@ -1867,6 +1893,7 @@ "show_slideshow_transition": "הצג מעבר מצגת", "show_supporter_badge": "תג תומך", "show_supporter_badge_description": "הצג תג תומך", + "show_text_search_menu": "הצג תפריט חיפוש טקסט", "shuffle": "ערבוב", "sidebar": "סרגל צד", "sidebar_display_description": "הצג קישור לתצוגה בסרגל הצד", @@ -1897,6 +1924,7 @@ "stacktrace": "Stack trace", "start": "התחל", "start_date": "תאריך התחלה", + "start_date_before_end_date": "תאריך ההתחלה חייב להיות לפני תאריך הסיום", "state": "מדינה", "status": "מצב", "stop_casting": "הפסקת שידור", @@ -2099,5 +2127,6 @@ "yes": "כן", "you_dont_have_any_shared_links": "אין לך קישורים משותפים", "your_wifi_name": "שם אינטרנט אלחוטי שלך", - "zoom_image": "זום לתמונה" + "zoom_image": "זום לתמונה", + "zoom_to_bounds": "התמקד באזור" } diff --git a/i18n/hu.json b/i18n/hu.json index 131df91a79..f000e89517 100644 --- a/i18n/hu.json +++ b/i18n/hu.json @@ -548,6 +548,7 @@ "backup_album_selection_page_select_albums": "Válassz albumokat", "backup_album_selection_page_selection_info": "Összegzés", "backup_album_selection_page_total_assets": "Összes egyedi elem", + "backup_albums_sync": "Backup albumok szinkronizálása", "backup_all": "Összes", "backup_background_service_backup_failed_message": "Az elemek mentése sikertelen. Újrapróbálkozás…", "backup_background_service_connection_failed_message": "A szerverhez csatlakozás sikertelen. Újrapróbálkozás…", @@ -1386,20 +1387,25 @@ "no_assets_message": "KATTINTS AZ ELSŐ FÉNYKÉP FELTÖLTÉSÉHEZ", "no_assets_to_show": "Nincs megjeleníthető elem", "no_cast_devices_found": "Nem található eszköz vetítéshez", + "no_checksum_local": "Nincs elérhető ellenőrzőösszeg - a helyi eszközök nem kérhetők le", + "no_checksum_remote": "Nincs elérhető ellenőrzőösszeg - a távoli eszköz nem kérhető le", "no_duplicates_found": "Nem találhatók duplikátumok.", "no_exif_info_available": "Nincs elérhető Exif információ", "no_explore_results_message": "Tölts fel több képet, hogy böngészhesd a gyűjteményed.", "no_favorites_message": "Add hozzá a kedvencekhez, hogy gyorsan megtaláld a legjobb képeidet és videóidat", "no_libraries_message": "Hozz létre külső képtárat a fényképeid és videóid megtekintéséhez", + "no_local_assets_found": "Nem találhatók helyi eszközök ezzel az ellenőrzőösszeggel", "no_locked_photos_message": "A zárolt mappában elhelyezett fotók és videók rejtettek, és nem jelennek meg a könyvtárad böngészése vagy keresése közben sem.", "no_name": "Nincs Név", "no_notifications": "Nincsenek értesítések", "no_people_found": "Nem található személy", "no_places": "Nincsenek helyek", + "no_remote_assets_found": "Nem találhatók távoli eszközök ezzel az ellenőrzőösszeggel", "no_results": "Nincs találat", "no_results_description": "Próbálkozz szinonimákkal vagy általánosabb kulcsszavakkal", "no_shared_albums_message": "Hozz létre egy új albumot, hogy megoszthasd fényképeid és videóid másokkal", "no_uploads_in_progress": "Nincs folyamatban lévő feltöltés", + "not_available": "N/A", "not_in_any_album": "Nincs albumban", "not_selected": "Nincs kiválasztva", "note_apply_storage_label_to_previously_uploaded assets": "Megjegyzés: a korábban feltöltött elemek Tárhely Címkézéséhez futtasd a(z)", @@ -1434,6 +1440,8 @@ "open_the_search_filters": "Keresési szűrők megnyitása", "options": "Beállítások", "or": "vagy", + "organize_into_albums": "Albumokba rendezés", + "organize_into_albums_description": "Meglévő fotók albumokba helyezése, a jelenlegi szinkronizációs beállítások alapján", "organize_your_library": "Rendszerezd a képtáradat", "original": "eredeti", "other": "Egyéb", @@ -1519,6 +1527,7 @@ "port": "Port", "preferences_settings_subtitle": "Alkalmazásbeállítások kezelése", "preferences_settings_title": "Beállítások", + "preparing": "Előkészítés", "preset": "Sablon", "preview": "Előnézet", "previous": "Előző", @@ -1535,6 +1544,7 @@ "profile_drawer_client_out_of_date_minor": "A mobilalkalmazás elavult. Kérjük, frissítsd a legfrisebb alverzióra.", "profile_drawer_client_server_up_to_date": "A Kliens és a Szerver is naprakész", "profile_drawer_github": "GitHub", + "profile_drawer_readonly_mode": "Csak olvasható mód engedélyezve. A kilépéshez hosszan nyomja meg a felhasználói avatar ikont.", "profile_drawer_server_out_of_date_major": "A szerver elavult. Kérjük, frissítsd a legfrisebb főverzióra.", "profile_drawer_server_out_of_date_minor": "A szerver elavult. Kérjük, frissítsd a legfrisebb alverzióra.", "profile_image_of_user": "{user} profilképe", @@ -1573,6 +1583,7 @@ "purchase_server_description_2": "Támogató státusz", "purchase_server_title": "Szerver", "purchase_settings_server_activated": "A szerver termékkulcsot az admin kezeli", + "query_asset_id": "Lekérdezési eszköz azonosítója", "queue_status": "Feldolgozva {count}/{total}", "rating": "Értékelés csillagokkal", "rating_clear": "Értékelés törlése", @@ -1580,6 +1591,9 @@ "rating_description": "Exif értékelés megjelenítése az infópanelen", "reaction_options": "Reakció lehetőségek", "read_changelog": "Változásnapló Elolvasása", + "readonly_mode_disabled": "Csak olvasható mód kikapcsolva", + "readonly_mode_enabled": "Csak olvasható mód bekapcsolva", + "ready_for_upload": "Készen áll a feltöltésre", "reassign": "Hozzárendel", "reassigned_assets_to_existing_person": "{count, plural, other {# elem}} hozzárendelve{name, select, null { egy létező személyhez} other {: {name}}}", "reassigned_assets_to_new_person": "{count, plural, other {# elem}} hozzárendelve egy új személyhez", @@ -1604,6 +1618,7 @@ "regenerating_thumbnails": "Bélyegképek újragenerálása folyamatban", "remote": "Távoli", "remote_assets": "Távoli Elemek", + "remote_media_summary": "Távoli médiaösszefoglaló", "remove": "Eltávolítás", "remove_assets_album_confirmation": "Biztosan el szeretnél távolítani {count, plural, one {# elemet} other {# elemet}} az albumból?", "remove_assets_shared_link_confirmation": "Biztosan el szeretnél távolítani {count, plural, one {# elemet} other {# elemet}} ebből a megosztott linkből?", @@ -1656,6 +1671,7 @@ "restore_user": "Felhasználó visszaállítása", "restored_asset": "Visszaállított elem", "resume": "Folytatás", + "resume_paused_jobs": "Folytatás {count, plural, one {# paused job} other {# paused jobs}}", "retry_upload": "Feltöltés újrapróbálása", "review_duplicates": "Duplikátumok áttekintése", "review_large_files": "Nagy fájlok áttekintése", @@ -1749,6 +1765,7 @@ "select_user_for_sharing_page_err_album": "Az album létrehozása sikertelen", "selected": "Kiválasztott", "selected_count": "{count, plural, other {# kiválasztva}}", + "selected_gps_coordinates": "Kiválasztott GPS Kordináták", "send_message": "Üzenet küldése", "send_welcome_email": "Üdvözlő email küldése", "server_endpoint": "Szerver Végpont", @@ -1877,6 +1894,7 @@ "show_slideshow_transition": "Vetítés áttűnési effekt mutatása", "show_supporter_badge": "Támogató jelvény", "show_supporter_badge_description": "Támogató jelvény mutatása", + "show_text_search_menu": "Mutasd a szövegkeresési menüt", "shuffle": "Véletlenszerű", "sidebar": "Oldalsáv", "sidebar_display_description": "Nézet link megjelenítése az oldalsávban", @@ -1907,6 +1925,7 @@ "stacktrace": "Hiba leírása", "start": "Elindít", "start_date": "Kezdő dátum", + "start_date_before_end_date": "A kezdeti dátumnak a befejezési dátum előtt kell lennie", "state": "Megye/Állam", "status": "Állapot", "stop_casting": "Vetítés megszüntetése", @@ -1970,7 +1989,9 @@ "to_change_password": "Jelszó megváltoztatása", "to_favorite": "Kedvenc", "to_login": "Bejelentkezés", + "to_multi_select": "több elem kiválasztásához", "to_parent": "Egy szinttel feljebb", + "to_select": "a kiválasztáshoz", "to_trash": "Lomtárba helyezés", "toggle_settings": "Beállítások átállítása", "total": "Összesen", @@ -1990,6 +2011,7 @@ "trash_page_select_assets_btn": "Elemek kiválasztása", "trash_page_title": "Lomtár ({count})", "trashed_items_will_be_permanently_deleted_after": "A lomtárban lévő elemek véglegesen törlésre kerülnek {days, plural, other {# nap}} múlva.", + "troubleshoot": "Hibaelhárítás", "type": "Típus", "unable_to_change_pin_code": "Sikertelen PIN kód változtatás", "unable_to_setup_pin_code": "Sikertelen PIN kód beállítás", @@ -2106,5 +2128,6 @@ "yes": "Igen", "you_dont_have_any_shared_links": "Nincsenek megosztott linkjeid", "your_wifi_name": "A Wi-Fi hálózatod neve", - "zoom_image": "Kép Nagyítása" + "zoom_image": "Kép Nagyítása", + "zoom_to_bounds": "Nagyítás a határokhoz" } diff --git a/i18n/it.json b/i18n/it.json index 39c296a0e7..a86dd78ca6 100644 --- a/i18n/it.json +++ b/i18n/it.json @@ -28,6 +28,7 @@ "add_to_album": "Aggiungi all'album", "add_to_album_bottom_sheet_added": "Aggiunto in {album}", "add_to_album_bottom_sheet_already_exists": "Già presente in {album}", + "add_to_album_bottom_sheet_some_local_assets": "Alcune risorse locali non possono essere aggiunte all'album", "add_to_album_toggle": "Attiva/disattiva selezione per {album}", "add_to_albums": "Aggiungi ad album", "add_to_albums_count": "Aggiungi ad album ({count})", @@ -617,7 +618,7 @@ "blurred_background": "Sfondo sfocato", "bugs_and_feature_requests": "Bug & Richieste di nuove funzionalità", "build": "Compilazione", - "build_image": "Compila Immagine", + "build_image": "Immagine Compilata", "bulk_delete_duplicates_confirmation": "Sei sicuro di voler cancellare {count, plural, one {# asset duplicato} other {# assets duplicati}}? Questa operazione manterrà l'asset più pesante di ogni gruppo e cancellerà permanentemente tutti gli altri duplicati. Non puoi annullare questa operazione!", "bulk_keep_duplicates_confirmation": "Sei sicuro di voler tenere {count, plural, one {# asset duplicato} other {# assets duplicati}}? Questa operazione risolverà tutti i gruppi duplicati senza cancellare nulla.", "bulk_trash_duplicates_confirmation": "Sei davvero sicuro di voler cancellare {count, plural, one {# asset duplicato} other {# assets duplicati}}? Questa operazione manterrà l'asset più pesante di ogni gruppo e cancellerà permanentemente tutti gli altri duplicati.", @@ -733,7 +734,7 @@ "copy_to_clipboard": "Copia negli appunti", "country": "Nazione", "cover": "Riempi la finestra", - "covers": "Copre", + "covers": "Copertine", "create": "Crea", "create_album": "Crea album", "create_album_page_untitled": "Senza titolo", @@ -766,9 +767,9 @@ "daily_title_text_date_year": "E, dd MMM, yyyy", "dark": "Scuro", "dark_theme": "Imposta tema scuro", - "date_after": "Data dopo", + "date_after": "Dopo la data", "date_and_time": "Data e ora", - "date_before": "Data prima", + "date_before": "Prima della data", "date_format": "E, d LLL, y • hh:mm", "date_of_birth_saved": "Data di nascita salvata con successo", "date_range": "Intervallo di date", @@ -1172,7 +1173,7 @@ "in_archive": "In archivio", "include_archived": "Includi Archiviati", "include_shared_albums": "Includi album condivisi", - "include_shared_partner_assets": "Includi asset condivisi del compagno", + "include_shared_partner_assets": "Includi elementi condivisi dai compagni", "individual_share": "Condivisione individuale", "individual_shares": "Condivisioni individuali", "info": "Info", @@ -1720,11 +1721,11 @@ "search_no_people": "Nessuna persona", "search_no_people_named": "Nessuna persona chiamate \"{name}\"", "search_no_result": "Nessun risultato trovato, prova con un termine o combinazione diversi", - "search_options": "Opzioni Ricerca", + "search_options": "Opzioni di ricerca", "search_page_categories": "Categoria", "search_page_motion_photos": "Foto in movimento", - "search_page_no_objects": "Nessuna informazione relativa all'oggetto disponibile", - "search_page_no_places": "Nessun informazione sul luogo disponibile", + "search_page_no_objects": "Nessuna informazione sugli oggetti disponibile", + "search_page_no_places": "Nessuna informazione sui luoghi disponibile", "search_page_screenshots": "Screenshot", "search_page_search_photos_videos": "Ricerca le tue foto e i tuoi video", "search_page_selfies": "Selfie", @@ -1920,7 +1921,7 @@ "stack_action_prompt": "{count} elementi raggruppati", "stack_duplicates": "Raggruppa i duplicati", "stack_select_one_photo": "Seleziona una foto principale per il gruppo", - "stack_selected_photos": "Impila foto selezionate", + "stack_selected_photos": "Raggruppa foto selezionate", "stacked_assets_count": "{count, plural, one {Raggruppato # asset} other {Raggruppati # asset}}", "stacktrace": "Traccia dell'errore", "start": "Avvia", @@ -2037,7 +2038,7 @@ "unselect_all": "Deseleziona tutto", "unselect_all_duplicates": "Deseleziona tutti i duplicati", "unselect_all_in": "Deseleziona tutto in {group}", - "unstack": "Rimuovi dal gruppo", + "unstack": "Separa dal gruppo", "unstack_action_prompt": "{count} separati", "unstacked_assets_count": "{count, plural, one {Separato # asset} other {Separati # asset}}", "untagged": "Senza tag", @@ -2112,9 +2113,9 @@ "view_similar_photos": "Visualizza le foto simili", "view_stack": "Visualizza Raggruppamento", "view_user": "Visualizza Utente", - "viewer_remove_from_stack": "Rimuovi dalla pila", + "viewer_remove_from_stack": "Rimuovi dal gruppo", "viewer_stack_use_as_main_asset": "Usa come risorsa principale", - "viewer_unstack": "Rimuovi dal gruppo", + "viewer_unstack": "Separa dal gruppo", "visibility_changed": "Visibilità modificata per {count, plural, one {# persona} other {# persone}}", "waiting": "In Attesa", "warning": "Attenzione", @@ -2125,8 +2126,8 @@ "wrong_pin_code": "Codice PIN errato", "year": "Anno", "years_ago": "{years, plural, one {# anno} other {# anni}} fa", - "yes": "Si", - "you_dont_have_any_shared_links": "Non è presente alcun link condiviso", + "yes": "Sì", + "you_dont_have_any_shared_links": "Non hai nessun link condiviso", "your_wifi_name": "Nome della tua rete Wi-Fi", "zoom_image": "Ingrandisci immagine", "zoom_to_bounds": "Ingrandisci fino ai bordi" diff --git a/i18n/ko.json b/i18n/ko.json index 815f1b2b2f..3707501ec8 100644 --- a/i18n/ko.json +++ b/i18n/ko.json @@ -28,6 +28,7 @@ "add_to_album": "앨범에 추가", "add_to_album_bottom_sheet_added": "{album}에 추가됨", "add_to_album_bottom_sheet_already_exists": "이미 {album}에 있음", + "add_to_album_bottom_sheet_some_local_assets": "몇 개의 로컬 항목이 앨범에 추가되지 않았습니다", "add_to_album_toggle": "{album} 선택/해제", "add_to_albums": "여러 앨범에 추가", "add_to_albums_count": "여러 앨범에 추가 ({count})", @@ -123,6 +124,13 @@ "logging_enable_description": "로그 기록 활성화", "logging_level_description": "활성화 시 사용할 로그 레벨을 선택합니다.", "logging_settings": "로깅", + "machine_learning_availability_checks": "가용성 확인", + "machine_learning_availability_checks_description": "사용 가능한 머신 러닝 서버를 자동으로 감지하고 우선적으로 선택합니다", + "machine_learning_availability_checks_enabled": "가용성 확인 활성화", + "machine_learning_availability_checks_interval": "확인 주기", + "machine_learning_availability_checks_interval_description": "가용성 확인 주기 (밀리초 단위)", + "machine_learning_availability_checks_timeout": "요청 타임아웃", + "machine_learning_availability_checks_timeout_description": "가용성 확인 요청 타임아웃 (밀리초 단위)", "machine_learning_clip_model": "CLIP 모델", "machine_learning_clip_model_description": "CLIP 모델의 종류는 이곳을 참조하세요. 한국어 등 여러 언어로 검색하려면 Multilingual CLIP 모델을 선택하세요. 모델을 변경한 경우 모든 이미지의 '스마트 검색' 작업을 다시 실행해야 합니다.", "machine_learning_duplicate_detection": "비슷한 항목 감지", @@ -394,6 +402,7 @@ "advanced_settings_prefer_remote_title": "서버 이미지 선호", "advanced_settings_proxy_headers_subtitle": "Immich가 네트워크 요청 시 사용할 프록시 헤더를 정의합니다.", "advanced_settings_proxy_headers_title": "프록시 헤더", + "advanced_settings_readonly_mode_subtitle": "읽기 전용 모드를 활성화하면 여러 이미지 선택, 공유, 캐스트, 삭제 동작이 모두 비활성화됩니다. 메인 화면에서 사용자 프로필을 통해 읽기 전용 모드의 활성 상태를 전환하세요", "advanced_settings_readonly_mode_title": "읽기 전용 모드", "advanced_settings_self_signed_ssl_subtitle": "서버 엔드포인트의 SSL 인증서 검증을 건너뜁니다. 자체 서명 인증서를 사용하는 경우 활성화하세요.", "advanced_settings_self_signed_ssl_title": "자체 서명된 SSL 인증서 허용", @@ -422,6 +431,7 @@ "album_remove_user_confirmation": "{user}님을 앨범에서 제거하시겠습니까?", "album_search_not_found": "검색 결과에 해당하는 앨범이 없습니다.", "album_share_no_users": "이미 모든 사용자와 앨범을 공유했거나 공유할 사용자가 없습니다.", + "album_summary": "앨범 요약", "album_updated": "항목 추가 알림", "album_updated_setting_description": "공유 앨범에 항목이 추가된 경우 이메일 알림 받기", "album_user_left": "{album} 앨범에서 나옴", @@ -493,6 +503,8 @@ "asset_restored_successfully": "항목이 복원되었습니다.", "asset_skipped": "건너뜀", "asset_skipped_in_trash": "휴지통의 항목", + "asset_trashed": "항목 삭제됨", + "asset_troubleshoot": "항목 트러블슈팅", "asset_uploaded": "업로드 완료", "asset_uploading": "업로드 중…", "asset_viewer_settings_subtitle": "갤러리 보기 설정을 관리합니다.", @@ -526,8 +538,10 @@ "autoplay_slideshow": "슬라이드 쇼 자동 재생", "back": "뒤로", "back_close_deselect": "뒤로, 닫기 또는 선택 해제", + "background_backup_running_error": "백그라운드 백업이 현재 진행 중이므로 수동 백업을 시작할 수 없습니다", "background_location_permission": "백그라운드 위치 권한", "background_location_permission_content": "Immich가 백그라운드에서 실행 중일 때 네트워크를 전환하려면 Wi-Fi 네트워크 이름을 확인해야 하며, 이를 위해 '정확한 위치' 권한을 항상 허용해야 합니다.", + "background_options": "백그라운드 옵션", "backup": "백업", "backup_album_selection_page_albums_device": "기기의 앨범 ({count})", "backup_album_selection_page_albums_tap": "탭하여 포함, 두 번 탭하여 제외", @@ -535,6 +549,7 @@ "backup_album_selection_page_select_albums": "앨범 선택", "backup_album_selection_page_selection_info": "선택한 앨범", "backup_album_selection_page_total_assets": "전체 항목", + "backup_albums_sync": "앨범 동기화 백업", "backup_all": "모두", "backup_background_service_backup_failed_message": "항목 백업에 실패했습니다. 다시 시도하는 중…", "backup_background_service_connection_failed_message": "서버 연결에 실패했습니다. 다시 시도하는 중…", @@ -651,6 +666,8 @@ "change_pin_code": "PIN 코드 변경", "change_your_password": "사용자 계정의 비밀번호를 변경합니다.", "changed_visibility_successfully": "숨김 여부가 변경되었습니다.", + "charging": "충전 중", + "charging_requirement_mobile_backup": "백그라운드 백업은 기기 충전 상태에서 가능합니다", "check_corrupt_asset_backup": "백업된 항목의 손상 여부 확인", "check_corrupt_asset_backup_button": "확인 수행", "check_corrupt_asset_backup_description": "이 검사는 모든 항목이 백업된 후 Wi-Fi가 연결된 상태에서만 실행하세요. 이 작업은 몇 분 정도 소요될 수 있습니다.", @@ -737,6 +754,7 @@ "create_user": "사용자 계정 생성", "created": "생성됨", "created_at": "생성됨", + "creating_linked_albums": "링크 연결된 앨범 생성 중...", "crop": "자르기", "curated_object_page_title": "사물", "current_device": "현재 기기", @@ -886,7 +904,9 @@ "error": "오류", "error_change_sort_album": "앨범 표시 순서 변경 실패", "error_delete_face": "항목에서 얼굴 삭제 중 오류 발생", + "error_getting_places": "장소 정보 입력 실패", "error_loading_image": "이미지를 불러오는 중 오류 발생", + "error_loading_partners": "파트너 불러오기 실패: {error}", "error_saving_image": "오류: {error}", "error_tag_face_bounding_box": "얼굴 태그 실패 - 얼굴의 위치를 가져올 수 없습니다.", "error_title": "오류 - 문제가 발생했습니다", @@ -1051,6 +1071,7 @@ "favorites_page_no_favorites": "즐겨찾기된 항목 없음", "feature_photo_updated": "대표 사진 업데이트됨", "features": "기능", + "features_in_development": "개발 중인 기능", "features_setting_description": "사진 및 동영상 관리 기능을 설정합니다.", "file_name": "파일 이름", "file_name_or_extension": "파일명 또는 확장자", @@ -1214,6 +1235,7 @@ "local": "로컬", "local_asset_cast_failed": "서버에 업로드되지 않은 항목을 캐스팅할 수 없음", "local_assets": "로컬 항목", + "local_media_summary": "로컬 미디어 요약", "local_network": "로컬 네트워크", "local_network_sheet_info": "지정된 Wi-Fi를 사용할 때 앱이 아래 URL로 서버에 연결합니다.", "location_permission": "위치 권한", @@ -1225,6 +1247,7 @@ "location_picker_longitude_hint": "여기에 경도를 입력하세요", "lock": "잠금", "locked_folder": "잠금 폴더", + "log_detail_title": "상세 로그", "log_out": "로그아웃", "log_out_all_devices": "모든 기기에서 로그아웃", "logged_in_as": "{user}로 로그인됨", @@ -1255,6 +1278,7 @@ "login_password_changed_success": "비밀번호가 변경되었습니다.", "logout_all_device_confirmation": "모든 기기에서 로그아웃하시겠습니까?", "logout_this_device_confirmation": "이 기기에서 로그아웃하시겠습니까?", + "logs": "로그", "longitude": "경도", "look": "보기", "loop_videos": "동영상 반복", @@ -1297,6 +1321,7 @@ "mark_as_read": "읽음으로 표시", "marked_all_as_read": "모두 읽음으로 표시했습니다.", "matches": "일치", + "matching_assets": "일치하는 항목", "media_type": "미디어 종류", "memories": "추억", "memories_all_caught_up": "모두 확인함", @@ -1337,6 +1362,7 @@ "name_or_nickname": "이름 또는 닉네임", "network_requirement_photos_upload": "사진 백업에 모바일 데이터 사용", "network_requirement_videos_upload": "동영상 백업에 모바일 데이터 사용", + "network_requirements": "네트워크 요구사항", "network_requirements_updated": "네트워크 상태가 변경되었습니다. 백업 대기열을 초기화합니다.", "networking_settings": "연결", "networking_subtitle": "서버 엔드포인트 설정을 관리합니다.", @@ -1347,6 +1373,7 @@ "new_person": "새 인물 생성", "new_pin_code": "새 PIN 코드", "new_pin_code_subtitle": "잠금 폴더에 처음 접근하셨습니다. 이곳에 안전하게 접근하기 위한 PIN 코드를 설정하세요.", + "new_timeline": "새 타임라인", "new_user_created": "사용자 계정이 생성되었습니다.", "new_version_available": "새 버전 사용 가능", "newest_first": "최신순", @@ -1493,6 +1520,7 @@ "port": "포트", "preferences_settings_subtitle": "앱 개인 설정을 관리합니다.", "preferences_settings_title": "개인 설정", + "preparing": "준비 중", "preset": "프리셋", "preview": "미리 보기", "previous": "이전", @@ -1509,6 +1537,7 @@ "profile_drawer_client_out_of_date_minor": "모바일 앱이 최신 버전이 아닙니다. 최신 버전으로 업데이트하세요.", "profile_drawer_client_server_up_to_date": "클라이언트와 서버가 최신 상태입니다.", "profile_drawer_github": "Github", + "profile_drawer_readonly_mode": "읽기 전용 모드 활성화. 유저 아바타 아이콘을 길게 눌러 해제할 수 있습니다.", "profile_drawer_server_out_of_date_major": "서버 버전이 최신이 아닙니다. 최신 버전으로 업데이트하세요.", "profile_drawer_server_out_of_date_minor": "서버 버전이 최신이 아닙니다. 최신 버전으로 업데이트하세요.", "profile_image_of_user": "{user}님의 프로필 이미지", @@ -1554,6 +1583,9 @@ "rating_description": "상세 정보 패널에 EXIF 등급 태그 표시", "reaction_options": "반응 옵션", "read_changelog": "변경 내역 보기", + "readonly_mode_disabled": "읽기 전용 모드 비활성화", + "readonly_mode_enabled": "읽기 전용 모드 활성화", + "ready_for_upload": "업로드 준비 완료", "reassign": "다시 할당", "reassigned_assets_to_existing_person": "{count, plural, one {항목 #개} other {항목 #개}}를 {name, select, null {기존 인물} other {기존 인물 {name}}}에게 재지정했습니다.", "reassigned_assets_to_new_person": "{count, plural, one {항목 #개} other {항목 #개}}를 새 인물에게 재지정했습니다.", @@ -1578,6 +1610,7 @@ "regenerating_thumbnails": "섬네일을 다시 생성하는 중...", "remote": "원격", "remote_assets": "원격 항목", + "remote_media_summary": "원격 미디어 요약", "remove": "제거", "remove_assets_album_confirmation": "앨범에서 항목 {count, plural, one {#개} other {#개}}를 제거하시겠습니까?", "remove_assets_shared_link_confirmation": "공유 링크에서 항목 {count, plural, one {#개} other {#개}}를 제거하시겠습니까?", @@ -1851,6 +1884,7 @@ "show_slideshow_transition": "슬라이드 전환 표시", "show_supporter_badge": "서포터 배지", "show_supporter_badge_description": "서포터 배지 표시", + "show_text_search_menu": "텍스트 검색 메뉴 표시", "shuffle": "셔플", "sidebar": "사이드바", "sidebar_display_description": "보기 링크를 사이드바에 표시", @@ -1881,6 +1915,7 @@ "stacktrace": "스택 추적", "start": "시작", "start_date": "시작일", + "start_date_before_end_date": "시작일은 종료일보다 이전이어야 합니다", "state": "지역", "status": "상태", "stop_casting": "캐스팅 중단", @@ -1905,6 +1940,8 @@ "sync_albums_manual_subtitle": "업로드한 모든 동영상과 사진을 선택한 백업 앨범에 동기화", "sync_local": "로컬 동기화", "sync_remote": "원격 동기화", + "sync_status": "동기화 상태", + "sync_status_subtitle": "동기화 시스템 확인 및 관리", "sync_upload_album_setting_subtitle": "선택한 앨범을 Immich에 생성하고 사진 및 동영상 업로드", "tag": "태그", "tag_assets": "항목 태그", @@ -1964,6 +2001,7 @@ "trash_page_select_assets_btn": "항목 선택", "trash_page_title": "휴지통 ({count})", "trashed_items_will_be_permanently_deleted_after": "휴지통으로 이동된 항목은 {days, plural, one {#일} other {#일}} 후 영구적으로 삭제됩니다.", + "troubleshoot": "트러블슈팅", "type": "형식", "unable_to_change_pin_code": "PIN 코드를 변경할 수 없음", "unable_to_setup_pin_code": "PIN 코드를 설정할 수 없음", @@ -1994,6 +2032,7 @@ "unstacked_assets_count": "항목 {count, plural, one {#개} other {#개}}의 스택을 풀었습니다.", "untagged": "태그 해제됨", "up_next": "다음", + "update_location_action_prompt": "선택한 {count}개 항목 위치 업데이트:", "updated_at": "업데이트됨", "updated_password": "비밀번호가 변경되었습니다.", "upload": "업로드", @@ -2060,6 +2099,7 @@ "view_next_asset": "다음 항목 보기", "view_previous_asset": "이전 항목 보기", "view_qr_code": "QR 코드 보기", + "view_similar_photos": "비슷한 사진 보기", "view_stack": "스택 보기", "view_user": "사용자 보기", "viewer_remove_from_stack": "스택에서 제거", @@ -2078,5 +2118,6 @@ "yes": "네", "you_dont_have_any_shared_links": "공유 링크가 없습니다.", "your_wifi_name": "Wi-Fi 네트워크 이름", - "zoom_image": "이미지 확대" + "zoom_image": "이미지 확대", + "zoom_to_bounds": "화면에 맞춰 확대" } diff --git a/i18n/lv.json b/i18n/lv.json index fa4981fd0e..941d1c59f7 100644 --- a/i18n/lv.json +++ b/i18n/lv.json @@ -44,7 +44,7 @@ "authentication_settings_description": "Paroļu, OAuth un citu autentifikācijas iestatījumu pārvaldība", "authentication_settings_disable_all": "Vai tiešām vēlaties atspējot visas pieteikšanās metodes? Pieteikšanās tiks pilnībā atspējota.", "authentication_settings_reenable": "Lai atkārtoti iespējotu, izmantojiet Servera Komandu.", - "background_task_job": "Fona Uzdevumi", + "background_task_job": "Fona uzdevumi", "backup_database": "Izveidot datu bāzes izrakstu", "backup_database_enable_description": "Iespējot datu bāzes izrakstus", "backup_keep_last_amount": "Iepriekšējo izrakstu daudzums, kas jāsaglabā", @@ -62,7 +62,7 @@ "create_job": "Izveidot uzdevumu", "cron_expression": "Cron izteiksme", "disable_login": "Atspējot pieteikšanos", - "duplicate_detection_job_description": "Palaidiet mašīnmācīšanos uz failiem, lai noteiktu līdzīgus attēlus. Paļaujas uz viedo meklēšanu", + "duplicate_detection_job_description": "Analizēt failus ar mašīnmācīšanos, lai noteiktu līdzīgus attēlus. Šī funkcija izmanto viedo meklēšanu", "external_library_management": "Ārējo bibliotēku pārvaldība", "face_detection": "Seju noteikšana", "image_format": "Formāts", @@ -176,6 +176,7 @@ "server_settings_description": "Servera iestatījumu pārvaldība", "server_welcome_message": "Sveiciena ziņa", "server_welcome_message_description": "Ziņojums, kas tiek parādīts pieslēgšanās lapā.", + "smart_search_job_description": "Analizēt failus ar mašīnmācīšanos lai sagatavotu datus viedajai meklēšanai", "storage_template_date_time_sample": "Laika paraugs {date}", "storage_template_migration": "Krātuves veidņu migrācija", "storage_template_migration_job": "Krātuves veidņu migrācijas uzdevums", @@ -225,14 +226,15 @@ "user_settings_description": "Lietotāju iestatījumu pārvaldība", "version_check_enabled_description": "Ieslēgt versijas pārbaudi", "version_check_implications": "Versiju pārbaudes funkcija ir atkarīga no periodiskas saziņas ar github.com", - "version_check_settings": "Versijas pārbaude" + "version_check_settings": "Versijas pārbaude", + "version_check_settings_description": "Ieslēgt/izslēgt paziņojumus par jaunu versiju" }, "admin_email": "Administratora e-pasts", "admin_password": "Administratora parole", "administration": "Administrēšana", "advanced": "Papildu", "advanced_settings_log_level_title": "Žurnalēšanas līmenis: {level}", - "advanced_settings_prefer_remote_subtitle": "Dažās ierīcēs sīktēli no ierīcē esošajiem resursiem tiek ielādēti ļoti lēni. Aktivizējiet šo iestatījumu, lai tā vietā ielādētu attālus attēlus.", + "advanced_settings_prefer_remote_subtitle": "Dažās ierīcēs sīktēli no ierīces atmiņas ielādējas ļoti lēni. Aktivizējiet šo iestatījumu, lai tā vietā ielādētu attālus attēlus.", "advanced_settings_prefer_remote_title": "Dot priekšroku attāliem attēliem", "advanced_settings_proxy_headers_title": "Starpniekservera galvenes", "advanced_settings_self_signed_ssl_subtitle": "Izlaiž servera galapunkta SSL sertifikātu verifikāciju. Nepieciešams pašparakstītajiem sertifikātiem.", @@ -270,7 +272,7 @@ "albums_default_sort_order_description": "Sākotnējā failu kārtošanas secība, veidojot jaunus albumus.", "albums_feature_description": "Failu kolekcijas, kuras var koplietot ar citiem lietotājiem.", "albums_on_device_count": "Albumi ierīcē ({count})", - "all": "Viss", + "all": "Visi", "all_albums": "Visi albumi", "all_people": "Visas personas", "all_videos": "Visi video", @@ -303,7 +305,7 @@ "asset_list_group_by_sub_title": "Grupēt pēc", "asset_list_layout_settings_dynamic_layout_title": "Dinamiskais izkārtojums", "asset_list_layout_settings_group_automatically": "Automātiski", - "asset_list_layout_settings_group_by": "Grupēt aktīvus pēc", + "asset_list_layout_settings_group_by": "Grupēt failus pēc", "asset_list_layout_settings_group_by_month_day": "Mēnesis + diena", "asset_list_layout_sub_title": "Izvietojums", "asset_list_settings_subtitle": "Fotorežģa izkārtojuma iestatījumi", @@ -312,7 +314,7 @@ "asset_skipped_in_trash": "Atkritnē", "asset_uploaded": "Augšupielādēts", "asset_uploading": "Augšupielādē…", - "asset_viewer_settings_title": "Aktīvu Skatītājs", + "asset_viewer_settings_title": "Failu skatītājs", "assets": "Faili", "assets_added_count": "Pievienoja {count, plural, one {# failu} other {# failus}}", "assets_added_to_album_count": "Pievienoja albumam {count, plural, one {# failu} other {# failus}}", @@ -473,11 +475,12 @@ "control_bottom_app_bar_create_new_album": "Izveidot jaunu albumu", "control_bottom_app_bar_delete_from_immich": "Dzēst no Immich", "control_bottom_app_bar_delete_from_local": "Dzēst no ierīces", - "control_bottom_app_bar_edit_location": "Rediģēt Atrašanās Vietu", - "control_bottom_app_bar_edit_time": "Rediģēt Datumu un Laiku", - "control_bottom_app_bar_share_to": "Kopīgot Uz", + "control_bottom_app_bar_edit_location": "Rediģēt atrašanās vietu", + "control_bottom_app_bar_edit_time": "Rediģēt datumu un laiku", + "control_bottom_app_bar_share_to": "Kopīgot uz", "control_bottom_app_bar_trash_from_immich": "Pārvietot uz Atkritni", "copy_error": "Kopēšanas kļūda", + "copy_to_clipboard": "Kopēt starpliktuvē", "country": "Valsts", "create": "Izveidot", "create_album": "Izveidot albumu", @@ -499,6 +502,7 @@ "custom_locale_description": "Formatēt datumus un skaitļus atbilstoši valodai un reģionam", "custom_url": "Pielāgots URL", "daily_title_text_date_year": "E, MMM dd, gggg", + "dark_theme": "Pārslēgt tumšo tēmu", "date_after": "Datums pēc", "date_and_time": "Datums un Laiks", "date_before": "Datums pirms", @@ -653,12 +657,14 @@ "expired": "Derīguma termiņš beidzās", "explore": "Izpētīt", "export": "Eksportēt", + "export_as_json": "Eksportēt kā JSON", "export_database": "Eksportēt datubāzi", "export_database_description": "Eksportēt SQLite datubāzi", "extension": "Paplašinājums", "external": "Ārējs", + "external_libraries": "Ārējas bibliotēkas", "external_network": "Ārējs tīkls", - "external_network_sheet_info": "When not on the preferred WiFi network, the app will connect to the server through the first of the below URLs it can reach, starting from top to bottom", + "external_network_sheet_info": "Kad nav pieejams izvēlētais Wi-Fi tīkls, aplikācija pieslēgsies serverim lietojot pirmo strādājošo URL no saraksta, sākot ar augšējo", "face_unassigned": "Nepiešķirts", "failed": "Neizdevās", "failed_to_authenticate": "Neizdevās autentificēties", @@ -699,11 +705,11 @@ "group_owner": "Grupēt pēc īpašnieka", "group_places_by": "Grupēt vietas pēc...", "group_year": "Grupēt pēc gada", - "haptic_feedback_switch": "Iestatīt haptisku reakciju", + "haptic_feedback_switch": "Iespējot haptisku reakciju", "haptic_feedback_title": "Haptiska Reakcija", - "has_quota": "Ir kvota", + "has_quota": "Kvota", "hash_asset": "Veidot faila jaucējvērtību", - "hashed_assets": "Faili ar izveidotām jaucējvērtībām", + "hashed_assets": "Faili ar jaucējvērtībām", "hashing": "Veido jaucējvērtības", "header_settings_field_validator_msg": "Vērtība nevar būt tukša", "hide_all_people": "Paslēpt visas personas", @@ -747,6 +753,7 @@ "in_archive": "Arhīvā", "include_archived": "Iekļaut arhivētos", "include_shared_albums": "Iekļaut koplietotos albumus", + "include_shared_partner_assets": "Iekļaut partneru koplietotos failus", "info": "Informācija", "interval": { "day_at_onepm": "Katru dienu 13.00", @@ -761,6 +768,7 @@ "ios_debug_info_last_sync_at": "Pēdējā sinhronizācija {dateTime}", "ios_debug_info_no_processes_queued": "Nav ierindotu fona procesu", "ios_debug_info_processing_ran_at": "Apstrāde notika {dateTime}", + "items_count": "{count, plural, one {# vienums} other {# vienumi}}", "jobs": "Uzdevumi", "keep": "Paturēt", "keep_all": "Paturēt visus", @@ -794,6 +802,7 @@ "linked_oauth_account": "Piesaistītais OAuth konts", "list": "Saraksts", "loading": "Ielādē", + "local": "Lokāli", "local_network": "Lokālais tīkls", "location_permission": "Atrašanās vietas atļauja", "location_permission_content": "Lai izmantotu automātiskās pārslēgšanās funkciju, Immich ir nepieciešama precīzas atrašanās vietas atļauja, lai varētu nolasīt pašreizējā Wi-Fi tīkla nosaukumu", @@ -849,11 +858,11 @@ "map_marker_with_image": "Kartes marķieris ar attēlu", "map_no_location_permission_content": "Atrašanās vietas atļauja ir nepieciešama, lai parādītu jūsu pašreizējās atrašanās vietas aktīvus. Vai vēlaties to atļaut tagad?", "map_no_location_permission_title": "Atrašanās vietas Atļaujas liegtas", - "map_settings": "Kartes Iestatījumi", + "map_settings": "Kartes iestatījumi", "map_settings_dark_mode": "Tumšais režīms", "map_settings_date_range_option_day": "Pēdējās 24 stundas", "map_settings_date_range_option_days": "Pēdējās {days} dienas", - "map_settings_date_range_option_year": "Pēdējo gadu", + "map_settings_date_range_option_year": "Pēdējais gads", "map_settings_date_range_option_years": "Pēdējie {years} gadi", "map_settings_dialog_title": "Kartes Iestatījumi", "map_settings_include_show_archived": "Iekļaut Arhivētos", @@ -862,7 +871,7 @@ "map_settings_theme_settings": "Kartes Dizains", "map_zoom_to_see_photos": "Attāliniet, lai redzētu fotoattēlus", "matches": "Atbilstības", - "media_type": "Multivides veids", + "media_type": "Faila veids", "memories": "Atmiņas", "memories_all_caught_up": "Šobrīd, tas arī viss", "memories_check_back_tomorrow": "Atgriezies rīt, lai skatītu vairāk atmiņu", @@ -899,6 +908,7 @@ "network_requirement_photos_upload": "Izmantot mobilo datu pārraidi, lai dublētu fotoattēlus", "network_requirement_videos_upload": "Izmantot mobilo datu pārraidi, lai dublētu video", "network_requirements": "Tīkla prasības", + "networking_settings": "Tīkla iestatījumi", "networking_subtitle": "Pārvaldīt servera galapunktu iestatījumus", "never": "nekad", "new_album": "Jauns albums", @@ -906,6 +916,7 @@ "new_password": "Jaunā parole", "new_person": "Jauna persona", "new_pin_code": "Jaunais PIN kods", + "new_timeline": "Jaunā laikjosla", "new_user_created": "Izveidots jauns lietotājs", "new_version_available": "PIEEJAMA JAUNA VERSIJA", "next": "Nākamais", @@ -930,8 +941,8 @@ "nothing_here_yet": "Šeit vēl nekā nav", "notification_permission_dialog_content": "Lai iespējotu paziņojumus, atveriet Iestatījumi un atlasiet Atļaut.", "notification_permission_list_tile_content": "Piešķirt atļauju, lai iespējotu paziņojumus.", - "notification_permission_list_tile_enable_button": "Iespējot Paziņojumus", - "notification_permission_list_tile_title": "Paziņojumu Atļaujas", + "notification_permission_list_tile_enable_button": "Iespējot paziņojumus", + "notification_permission_list_tile_title": "Paziņojumu atļaujas", "notification_toggle_setting_description": "Ieslēgt e-pasta paziņojumus", "notifications": "Paziņojumi", "notifications_setting_description": "Paziņojumu pārvaldība", @@ -972,6 +983,7 @@ "partner_page_select_partner": "Izvēlēties partneri", "partner_page_shared_to_title": "Kopīgots uz", "partner_page_stop_sharing_content": "{partner} vairs nevarēs piekļūt jūsu fotoattēliem.", + "partner_sharing": "Koplietošana ar partneriem", "partners": "Partneri", "password": "Parole", "password_does_not_match": "Parole nesakrīt", @@ -1069,8 +1081,10 @@ "refreshes_every_file": "Vēlreiz nolasa esošos un jaunos failus", "refreshing_faces": "Atsvaidzina sejas", "refreshing_metadata": "Atsvaidzina metadatus", + "remote": "Attāli", "remove": "Noņemt", "remove_assets_title": "Izņemt failus?", + "remove_custom_date_range": "Novākt pielāgoto datuma intervālu", "remove_deleted_assets": "Izņemt dzēstos failus", "remove_from_album": "Noņemt no albuma", "remove_from_album_action_prompt": "No albuma izņemti {count} faili", @@ -1085,6 +1099,8 @@ "removed_from_archive": "Noņēma no arhīva", "removed_from_favorites": "Noņēma no izlases", "removed_from_favorites_count": "{count, plural, other {Izņēma #}} no izlases", + "removed_memory": "Noņēma atmiņu", + "removed_photo_from_memory": "Noņēma fotogrāfiju no atmiņas", "rename": "Pārsaukt", "repair": "Remonts", "replace_with_upload": "Aizstāt ar augšupielādi", @@ -1095,6 +1111,7 @@ "reset_password": "Atiestatīt paroli", "reset_people_visibility": "Atiestatīt personu redzamību", "reset_pin_code": "Atiestatīt PIN kodu", + "reset_sqlite": "Atiestatīt SQLite datubāzi", "reset_to_default": "Atiestatīt noklusējuma iestatījumus", "resolve_duplicates": "Atrisināt dublēšanās gadījumus", "resolved_all_duplicates": "Visi dublikāti ir atrisināti", @@ -1143,6 +1160,7 @@ "search_for_existing_person": "Meklēt esošu personu", "search_no_people": "Nav personu", "search_no_people_named": "Nav personas ar vārdu \"{name}\"", + "search_options": "Meklēšanas iespējas", "search_page_categories": "Kategorijas", "search_page_motion_photos": "Kustību Fotoattēli", "search_page_no_objects": "Informācija par Objektiem nav pieejama", @@ -1155,6 +1173,8 @@ "search_page_your_map": "Jūsu Karte", "search_people": "Meklēt personas", "search_result_page_new_search_hint": "Jauns Meklējums", + "search_settings": "Meklēt iestatījumos", + "search_state": "Meklēt pēc štata...", "search_suggestion_list_smart_search_hint_1": "Viedā meklēšana pēc noklusējuma ir iespējota, lai meklētu metadatos, izmanto sintaksi ", "search_suggestion_list_smart_search_hint_2": "m:jūsu-meklēšanas-frāze", "search_type": "Meklēšanas veids", @@ -1194,13 +1214,14 @@ "setting_notifications_notify_minutes": "{count} minūtes", "setting_notifications_notify_never": "nekad", "setting_notifications_notify_seconds": "{count} sekundes", - "setting_notifications_single_progress_subtitle": "Detalizēta augšupielādes progresa informācija par katru aktīvu", + "setting_notifications_single_progress_subtitle": "Detalizēta augšupielādes progresa informācija par katru failu", "setting_notifications_single_progress_title": "Rādīt fona dublējuma detalizēto progresu", "setting_notifications_subtitle": "Paziņojumu preferenču pielāgošana", "setting_notifications_total_progress_subtitle": "Kopējais augšupielādes progress (pabeigti/kopējie faili)", "setting_notifications_total_progress_title": "Rādīt fona dublējuma kopējo progresu", "setting_video_viewer_looping_title": "Cikliski", "setting_video_viewer_original_video_subtitle": "Straumējot video no servera, izmantot oriģinālu, pat ja ir pieejama pārkodēšana. Tas var izraisīt buferēšanu. Lokāli pieejamie video tiek atskaņoti oriģinālajā kvalitātē, neatkarīgi no šīs iestatījuma.", + "setting_video_viewer_original_video_title": "Vienmēr izmantot oriģinālo video", "settings": "Iestatījumi", "settings_require_restart": "Lūdzu, restartējiet Immich, lai lietotu šo iestatījumu", "setup_pin_code": "Uzstādīt PIN kodu", @@ -1287,7 +1308,7 @@ "slideshow_settings": "Slīdrādes iestatījumi", "sort_albums_by": "Kārtot albumus pēc...", "sort_created": "Izveides datums", - "sort_items": "Vienību skaits", + "sort_items": "Vienumu skaits", "sort_modified": "Izmaiņu datums", "sort_newest": "Jaunākā fotogrāfija", "sort_oldest": "Vecākā fotogrāfija", @@ -1313,7 +1334,7 @@ "sync_status": "Sinhronizācijas statuss", "sync_status_subtitle": "Skatīt un pārvaldīt sinhronizācijas sistēmu", "theme": "Dizains", - "theme_setting_asset_list_storage_indicator_title": "Rādīt krātuves indikatoru uz aktīvu elementiem", + "theme_setting_asset_list_storage_indicator_title": "Rādīt krātuves indikatoru uz attēliem režga skatā", "theme_setting_asset_list_tiles_per_row_title": "Failu skaits rindā ({count})", "theme_setting_colorful_interface_subtitle": "Piemērot pamatkrāsu fona virsmām.", "theme_setting_colorful_interface_title": "Krāsaina saskarne", @@ -1345,7 +1366,7 @@ "trash_emptied": "Atkritne iztukšota", "trash_no_results_message": "Šeit parādīsies uz atkritni pārvietotās fotogrāfijas un video.", "trash_page_delete_all": "Dzēst Visu", - "trash_page_empty_trash_dialog_content": "Vai vēlaties iztukšot savus izmestos aktīvus? Tie tiks neatgriezeniski izņemti no Immich", + "trash_page_empty_trash_dialog_content": "Vai vēlaties iztukšot savus izmestos failus? Tie tiks neatgriezeniski izņemti no Immich", "trash_page_info": "Atkritnes vienumi tiks neatgriezeniski dzēsti pēc {days} dienām", "trash_page_no_assets": "Atkritnē nav aktīvu", "trash_page_restore_all": "Atjaunot Visu", diff --git a/i18n/mk.json b/i18n/mk.json index 86694ce346..8430ae117e 100644 --- a/i18n/mk.json +++ b/i18n/mk.json @@ -15,6 +15,7 @@ "add_a_name": "Додади име", "add_a_title": "Додади наслов", "add_birthday": "Додади роденден", + "add_endpoint": "Додади крајна точка", "add_exclusion_pattern": "Додади шаблон за исклучување", "add_import_path": "Додади патека за импортирање", "add_location": "Додади локација", @@ -22,9 +23,13 @@ "add_partner": "Додади партнер", "add_path": "Додади патека", "add_photos": "Додади слики", + "add_tag": "Додади ознака", "add_to": "Додади во…", "add_to_album": "Додади во албум", "add_to_album_bottom_sheet_added": "Додадено во {album}", + "add_to_album_bottom_sheet_already_exists": "Веќе во {album}", + "add_to_album_bottom_sheet_some_local_assets": "Некои локални ресурси не можеа да се додадат во албумот", + "add_to_album_toggle": "Промени ја селекцијата за {album}", "add_to_albums": "Додади во албуми", "add_to_albums_count": "Додади во албуми ({count})", "add_to_shared_album": "Додади во споделен албум", @@ -44,8 +49,15 @@ "backup_database": "Креирај резервна копија од базата на податоци", "backup_database_enable_description": "Овозможи резервни копии од базата на податоци", "backup_keep_last_amount": "Количина на претходни резервни копии за чување", - "backup_settings": "Поставки за резервни копии", - "backup_settings_description": "Управувај со поставки за резервни копии на базата на податоци", + "backup_onboarding_1_description": "надворешна копија во облакот или на друга физичка локација.", + "backup_onboarding_2_description": "локални копии на различни уреди. Ова ги вклучува и основните фјалови и резервна копија од истите фајлови локално.", + "backup_onboarding_3_description": "сите копии од твоите податоци, вклучувајќи и оргиналните фајлови. Ова вклучува и 1 надворешна копија и 2 локални копии.", + "backup_onboarding_description": "3-2-1 стратегија за резервна копија е препорачано за да ги заштити твоите податоци. Потребно е да чуваш резервни копии од твоите прикачени фотографии/видеа како и базата за податоци на Immich за целосно решение за зачувување на резервна копија", + "backup_onboarding_footer": "Повеќе информации околу правење резервни копии за Immich, ве молам да се референцирате на документацијата", + "backup_onboarding_parts_title": "3-2-1 резервна копија вклучува:", + "backup_onboarding_title": "Резервни копии", + "backup_settings": "Поставки извезување база на податоци", + "backup_settings_description": "Управувај со поставки за извезување на базата на податоци", "cleared_jobs": "Исчистени задачи за: {job}", "config_set_by_file": "Конгигурацијата е моментално поставена од конфигурациска датотека", "confirm_delete_library": "Дали сте сигурни дека сакате да ја избришете библиотеката {library}?", @@ -53,19 +65,40 @@ "confirm_email_below": "За да потврдите, внесете \"{email}\" доле", "confirm_reprocess_all_faces": "Дали сте сигурни дека сакате да се обработат одново сите лица? Ова ќе ги избрише и сите именувани луѓе.", "confirm_user_password_reset": "Дали сте сигурни дека сакате да се поништи лозинката на {user}?", + "confirm_user_pin_code_reset": "Дали сигурно сакаш да го смените ПИН кодот за {user}", "create_job": "Создади задача", "cron_expression": "Cron израз", "cron_expression_description": "Подеси го интервалот на скенирање користејќи го cron форматот. За повеќе информации погледнете на пр. Crontab Guru", "cron_expression_presets": "Предефинирани Cron изрази", "disable_login": "Оневозможи најава", "duplicate_detection_job_description": "Пушти машинско учење на средствата за да се откријат слични слики. Се потпира на Smart Search", + "external_library_management": "Менаџмент на Надворешна Библиотека", + "face_detection": "Детекција на лице", "force_delete_user_warning": "ПРЕДУПРЕДУВАЊЕ: Ова веднаш ќе го отстрани корисникот и сите средства. Оваа акција не може да се поништи и датотеките нема да може да се вратат назад.", "image_format": "Формат", + "image_format_description": "WebP создава помали фајлви отколку JPEG, но е по спор при енкодирање.", + "image_fullsize_enabled": "Овозможи целосна-големина на генерирање на слика", + "image_fullsize_quality_description": "Целосна-големина на слика со квалитет од 1-100. Повисокто е подобро, но создава поголеми фајлови.", + "image_fullsize_title": "Поставки за Целосна-големина на Слика", + "image_prefer_embedded_preview": "Претпочитан вграден преглед", + "image_preview_title": "Поставки за Преглед", "image_quality": "Квалитет", "image_resolution": "Резолуција", "image_settings": "Поставки за слики", + "job_concurrency": "{job} конкурентност", + "job_created": "Креирана задача", + "job_not_concurrency_safe": "Оваа задача не е конкуретно-безбедна.", + "job_settings": "Поставки за задача", + "job_settings_description": "Управувај со конкурентност на задачи", + "job_status": "Статус на задачи", + "library_created": "Креирана библиотека: {library}", + "library_deleted": "Библиотеката е избришана", + "library_import_path_description": "Предложи папка за внес. Оваа папка, вклучува и под папки, ќе биде скенирана за слики и видеа.", "library_scanning": "Периодично скенирање", + "library_scanning_description": "Подеси периодично скениранје на библиотеката", + "library_scanning_enable_description": "Овозможи периодично скениранје на библиотеката", "library_settings": "Екстерна библиотека", + "library_settings_description": "Управувај со подесувањата за надворешната библиотека", "logging_enable_description": "Вклучи евидентирање", "logging_settings": "Евидентирање", "map_dark_style": "Темен стил", diff --git a/i18n/nl.json b/i18n/nl.json index 0b5ae82326..82846668d8 100644 --- a/i18n/nl.json +++ b/i18n/nl.json @@ -28,6 +28,7 @@ "add_to_album": "Aan album toevoegen", "add_to_album_bottom_sheet_added": "Toegevoegd aan {album}", "add_to_album_bottom_sheet_already_exists": "Staat al in {album}", + "add_to_album_bottom_sheet_some_local_assets": "Sommige lokale items konden niet aan album toegevoegd worden", "add_to_album_toggle": "Selectie inschakelen voor {album}", "add_to_albums": "Toevoegen aan albums", "add_to_albums_count": "Toevoegen aan albums ({count})", @@ -2106,14 +2107,14 @@ "view_link": "Bekijk link", "view_links": "Links bekijken", "view_name": "Bekijken", - "view_next_asset": "Bekijk volgende item", - "view_previous_asset": "Bekijk vorige item", + "view_next_asset": "Bekijk volgend item", + "view_previous_asset": "Bekijk vorig item", "view_qr_code": "QR-code bekijken", "view_similar_photos": "Bekijk vergelijkbare foto's", "view_stack": "Bekijk stapel", "view_user": "Bekijk gebruiker", - "viewer_remove_from_stack": "Verwijder van Stapel", - "viewer_stack_use_as_main_asset": "Gebruik als Hoofd Item", + "viewer_remove_from_stack": "Verwijder van stapel", + "viewer_stack_use_as_main_asset": "Zet bovenaan de stapel", "viewer_unstack": "Ontstapel", "visibility_changed": "Zichtbaarheid gewijzigd voor {count, plural, one {# persoon} other {# mensen}}", "waiting": "Wachtend", diff --git a/i18n/pl.json b/i18n/pl.json index 04337fcebf..f2016bd1ce 100644 --- a/i18n/pl.json +++ b/i18n/pl.json @@ -28,6 +28,7 @@ "add_to_album": "Dodaj do albumu", "add_to_album_bottom_sheet_added": "Dodano do {album}", "add_to_album_bottom_sheet_already_exists": "Już jest w {album}", + "add_to_album_bottom_sheet_some_local_assets": "Niektóre lokalne zasoby nie mogły zostać dodane do albumu", "add_to_album_toggle": "Przełącz wybieranie dla {album}", "add_to_albums": "Dodaj do albumów", "add_to_albums_count": "Dodaj do albumów ({count})", @@ -1694,7 +1695,7 @@ "search_albums": "Przeszukaj albumy", "search_by_context": "Wyszukaj według treści", "search_by_description": "Wyszukaj według opisu", - "search_by_description_example": "Jednodniowa wycieczka górska w Bieszczady", + "search_by_description_example": "Całodniowa wycieczka w Bieszczady", "search_by_filename": "Szukaj według nazwy pliku lub rozszerzenia", "search_by_filename_example": "np. IMG_1234.JPG lub PNG", "search_camera_make": "Wyszukaj markę aparatu...", diff --git a/i18n/pt.json b/i18n/pt.json index 4859e7e9a6..b05c9288a8 100644 --- a/i18n/pt.json +++ b/i18n/pt.json @@ -28,6 +28,7 @@ "add_to_album": "Adicionar ao álbum", "add_to_album_bottom_sheet_added": "Adicionado a {album}", "add_to_album_bottom_sheet_already_exists": "Já existe em {album}", + "add_to_album_bottom_sheet_some_local_assets": "Alguns conteúdos locais não puderam ser adicionados no álbum", "add_to_album_toggle": "Alternar seleção para {album}", "add_to_albums": "Adicionar aos álbuns", "add_to_albums_count": "Adicionar aos álbuns ({count})", @@ -125,10 +126,11 @@ "logging_settings": "Registo", "machine_learning_availability_checks": "Verificação de disponibilidade", "machine_learning_availability_checks_description": "Detectar automaticamente e dar preferência aos servidores de aprendizagem automática disponíveis", - "machine_learning_availability_checks_enabled": "Activar confirmações de disponibilidade", + "machine_learning_availability_checks_enabled": "Ativar confirmações de disponibilidade", "machine_learning_availability_checks_interval": "Confirmação de intervalo", "machine_learning_availability_checks_interval_description": "Intervalo, em milisegundos, entre confirmações de disponibilidade", "machine_learning_availability_checks_timeout": "Tempo limite para requisição", + "machine_learning_availability_checks_timeout_description": "Tempo limite em milissegundos para verificações de disponibilidade", "machine_learning_clip_model": "Modelo CLIP", "machine_learning_clip_model_description": "O nome do modelo CLIP definido aqui. Tome nota de que é necessário voltar a executar a tarefa de \"Pesquisa Inteligente\" para todas as imagens depois de alterar o modelo.", "machine_learning_duplicate_detection": "Deteção de Itens Duplicados", @@ -400,7 +402,7 @@ "advanced_settings_prefer_remote_title": "Preferir imagens do servidor", "advanced_settings_proxy_headers_subtitle": "Defina os cabeçalhos do proxy que o Immich deve enviar em todas comunicações com a rede", "advanced_settings_proxy_headers_title": "Cabeçalhos do Proxy", - "advanced_settings_readonly_mode_subtitle": "Activa o modo somente leitura, onde as fotos podem ser visualizadas. Recursos como selecionar várias imagens, partilhar, transmitir e excluir ficam deactivados. Activar/Desactivar o modo somente leitura via avatar do utilizador na janela principal", + "advanced_settings_readonly_mode_subtitle": "Ativa o modo somente leitura, onde as fotos podem ser visualizadas. Recursos como selecionar várias imagens, partilhar, transmitir e excluir ficam deactivados. Ativar/Desativar o modo somente leitura via avatar do utilizador na janela principal", "advanced_settings_readonly_mode_title": "Modo somente leitura", "advanced_settings_self_signed_ssl_subtitle": "Não validar o certificado SSL com o endereço do servidor. Isto é necessário para certificados auto-assinados.", "advanced_settings_self_signed_ssl_title": "Permitir certificados SSL auto-assinados", @@ -501,6 +503,8 @@ "asset_restored_successfully": "Arquivo restaurado com sucesso", "asset_skipped": "Ignorado", "asset_skipped_in_trash": "Na reciclagem", + "asset_trashed": "Ficheiro apagado", + "asset_troubleshoot": "Resolução de problemas com conteúdos", "asset_uploaded": "Enviado", "asset_uploading": "A enviar…", "asset_viewer_settings_subtitle": "Gerenciar as configurações do visualizador da galeria", @@ -534,8 +538,10 @@ "autoplay_slideshow": "Apresentação automática de diapositivos", "back": "Voltar", "back_close_deselect": "Voltar, fechar ou desmarcar", + "background_backup_running_error": "Com a cópia de segurança de fundo em execução, não é possível inicar uma manual", "background_location_permission": "Permissão de localização em segundo plano", "background_location_permission_content": "Para que seja possível trocar a URL quando estiver executando em segundo plano, o Immich deve *sempre* ter a permissão de localização precisa para que o aplicativo consiga ler o nome da rede Wi-Fi", + "background_options": "Opções de fundo", "backup": "Cópia de segurança", "backup_album_selection_page_albums_device": "Álbuns no dispositivo ({count})", "backup_album_selection_page_albums_tap": "Toque para incluir, duplo toque para excluir", @@ -543,6 +549,7 @@ "backup_album_selection_page_select_albums": "Selecione Álbuns", "backup_album_selection_page_selection_info": "Informações da Seleção", "backup_album_selection_page_total_assets": "Total de arquivos únicos", + "backup_albums_sync": "Cópia de segurança de sincronização de álbuns", "backup_all": "Tudo", "backup_background_service_backup_failed_message": "Ocorreu um erro ao efetuar cópia de segurança dos ficheiros. A tentar de novo…", "backup_background_service_connection_failed_message": "Ocorreu um erro na ligação ao servidor. A tentar de novo…", @@ -659,6 +666,8 @@ "change_pin_code": "Alterar código PIN", "change_your_password": "Alterar a sua palavra-passe", "changed_visibility_successfully": "Visibilidade alterada com sucesso", + "charging": "A carregar", + "charging_requirement_mobile_backup": "Cópia de segurança de fundo necesssita que o dispositivo esteja a carregar", "check_corrupt_asset_backup": "Verificar por backups corrompidos", "check_corrupt_asset_backup_button": "Verificar", "check_corrupt_asset_backup_description": "Execute esta verificação somente em uma rede Wi-Fi e quando o backup de todos os arquivos já estiver concluído. O processo demora alguns minutos.", @@ -745,6 +754,7 @@ "create_user": "Criar utilizador", "created": "Criado", "created_at": "Criado a", + "creating_linked_albums": "A criar albuns ligados...", "crop": "Cortar", "curated_object_page_title": "Objetos", "current_device": "Dispositivo atual", @@ -894,7 +904,9 @@ "error": "Erro", "error_change_sort_album": "Ocorreu um erro ao mudar a ordem de exibição", "error_delete_face": "Falha ao remover rosto do ficheiro", + "error_getting_places": "Erro ao obter locais", "error_loading_image": "Erro ao carregar a imagem", + "error_loading_partners": "Erro a carregar parceiros: {error}", "error_saving_image": "Erro: {error}", "error_tag_face_bounding_box": "Erro ao marcar o rosto - não foi possível localizar o rosto", "error_title": "Erro - Algo correu mal", @@ -1059,6 +1071,7 @@ "favorites_page_no_favorites": "Nenhum favorito encontrado", "feature_photo_updated": "Foto principal atualizada", "features": "Funcionalidades", + "features_in_development": "Funcionalidades em Desenvolvimento", "features_setting_description": "Configurar as funcionalidades da aplicação", "file_name": "Nome do ficheiro", "file_name_or_extension": "Nome do ficheiro ou extensão", @@ -1223,6 +1236,7 @@ "local": "Local", "local_asset_cast_failed": "Não é possível transmitir um ficheiro que não tenha sido enviado antes para o servidor", "local_assets": "Ficheiros Locais", + "local_media_summary": "Sumário de conteúdo local", "local_network": "Rede local", "local_network_sheet_info": "O aplicativo irá se conectar ao servidor através desta URL quando estiver na rede Wi-Fi especificada", "location_permission": "Permissão de localização", @@ -1234,6 +1248,7 @@ "location_picker_longitude_hint": "Digite a longitude", "lock": "Trancar", "locked_folder": "Pasta Trancada", + "log_detail_title": "Detalhes de registo", "log_out": "Sair", "log_out_all_devices": "Terminar a sessão de todos os dispositivos", "logged_in_as": "Utilizador atual: {user}", @@ -1248,7 +1263,7 @@ "login_form_endpoint_url": "URL do servidor", "login_form_err_http": "Por favor especifique http:// ou https://", "login_form_err_invalid_email": "Email Inválido", - "login_form_err_invalid_url": "URL inválida", + "login_form_err_invalid_url": "URL inválido", "login_form_err_leading_whitespace": "Espaço em branco no início", "login_form_err_trailing_whitespace": "Espaço em branco no fim", "login_form_failed_get_oauth_server_config": "Ocorreu um erro ao iniciar sessão com o OAuth, verifique o URL do servidor", @@ -1264,6 +1279,7 @@ "login_password_changed_success": "Palavra-passe atualizada com sucesso", "logout_all_device_confirmation": "Tem a certeza de que deseja terminar a sessão em todos os dispositivos?", "logout_this_device_confirmation": "Tem a certeza de que deseja terminar a sessão deste dispositivo?", + "logs": "Logs", "longitude": "Longitude", "look": "Estilo", "loop_videos": "Repetir vídeos", @@ -1306,6 +1322,7 @@ "mark_as_read": "Marcar como lido", "marked_all_as_read": "Tudo marcado como lido", "matches": "Correspondências", + "matching_assets": "Conteúdos coincidentes", "media_type": "Tipo de média", "memories": "Memórias", "memories_all_caught_up": "Finalizamos por hoje", @@ -1346,6 +1363,7 @@ "name_or_nickname": "Nome ou alcunha", "network_requirement_photos_upload": "Usar dados móveis para fazer backup de fotos", "network_requirement_videos_upload": "Usar dados móveis para fazer backup de vídeos", + "network_requirements": "Requisitos de rede", "network_requirements_updated": "Requisitos de rede alterados, redefinindo fila de backup", "networking_settings": "Conexões", "networking_subtitle": "Gerencie a conexão do servidor", @@ -1356,6 +1374,7 @@ "new_person": "Nova Pessoa", "new_pin_code": "Novo código PIN", "new_pin_code_subtitle": "Esta é a primeira vez que acede à pasta trancada. Crie um código PIN para aceder a esta página de forma segura", + "new_timeline": "Nova Linha do Tempo", "new_user_created": "Novo utilizador criado", "new_version_available": "NOVA VERSÃO DISPONÍVEL", "newest_first": "Mais recente primeiro", @@ -1369,6 +1388,7 @@ "no_assets_message": "FAÇA CLIQUE PARA CARREGAR A SUA PRIMEIRA FOTO", "no_assets_to_show": "Não há arquivos para exibir", "no_cast_devices_found": "Nenhum dispositivo de transmissão encontrado", + "no_checksum_local": "Sem cálculo de verificação disponível - não pode capturar conteúdos locais", "no_duplicates_found": "Nenhum item duplicado foi encontrado.", "no_exif_info_available": "Sem informações exif disponíveis", "no_explore_results_message": "Carregue mais fotos para explorar a sua coleção.", @@ -1383,6 +1403,7 @@ "no_results_description": "Tente um sinónimo ou uma palavra-chave mais comum", "no_shared_albums_message": "Crie um álbum para partilhar fotos e vídeos com pessoas na sua rede", "no_uploads_in_progress": "Nenhum carregamento em curso", + "not_available": "N/A", "not_in_any_album": "Não está em nenhum álbum", "not_selected": "Não selecionado", "note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar o Rótulo de Armazenamento a ficheiros carregados anteriormente, execute o", @@ -1504,6 +1525,7 @@ "port": "Porta", "preferences_settings_subtitle": "Gerenciar preferências do aplicativo", "preferences_settings_title": "Preferências", + "preparing": "A Preparar", "preset": "Predefinição", "preview": "Pré-visualizar", "previous": "Anterior", @@ -1567,8 +1589,9 @@ "rating_description": "Mostrar a classificação EXIF no painel de informações", "reaction_options": "Opções de reação", "read_changelog": "Ler Novidades", - "readonly_mode_disabled": "Modo somente leitura desactivado", - "readonly_mode_enabled": "Modo somente leitura activado", + "readonly_mode_disabled": "Modo somente leitura desativado", + "readonly_mode_enabled": "Modo somente leitura ativado", + "ready_for_upload": "Pronto para upload", "reassign": "Reatribuir", "reassigned_assets_to_existing_person": "Reatribuir {count, plural, one {# ficheiro} other {# ficheiros}} para {name, select, null {uma pessoa existente} other {{name}}}", "reassigned_assets_to_new_person": "Reatribuído {count, plural, one {# ficheiro} other {# ficheiros}} a uma nova pessoa", @@ -1868,6 +1891,7 @@ "show_slideshow_transition": "Mostrar transições no Modo de Apresentação", "show_supporter_badge": "Emblema de apoiante", "show_supporter_badge_description": "Mostrar um emblema de apoiante", + "show_text_search_menu": "Mostrar menu de pesquisa de texto", "shuffle": "Aleatório", "sidebar": "Barra lateral", "sidebar_display_description": "Mostrar um link para a vista na barra lateral", @@ -1898,6 +1922,7 @@ "stacktrace": "Stacktrace", "start": "Iniciar", "start_date": "Data de início", + "start_date_before_end_date": "A data de início deve ser anterior à data de fim", "state": "Estado/Distrito", "status": "Estado", "stop_casting": "Parar transmissão", @@ -2014,7 +2039,7 @@ "unstacked_assets_count": "Desempilhados {count, plural, one {# ficheiro} other {# ficheiros}}", "untagged": "Marcador removido", "up_next": "A seguir", - "update_location_action_prompt": "Actualize a localização de {count} activos seleccionados com:", + "update_location_action_prompt": "Atualize a localização de {count} ficheiros selecionados com:", "updated_at": "Atualizado a", "updated_password": "Palavra-passe atualizada", "upload": "Carregar", diff --git a/i18n/pt_BR.json b/i18n/pt_BR.json index d6ead94cd6..03471cef46 100644 --- a/i18n/pt_BR.json +++ b/i18n/pt_BR.json @@ -28,6 +28,7 @@ "add_to_album": "Adicionar ao álbum", "add_to_album_bottom_sheet_added": "Adicionado ao {album}", "add_to_album_bottom_sheet_already_exists": "Já existe em {album}", + "add_to_album_bottom_sheet_some_local_assets": "Alguns arquivos / mídias não puderam ser adicionados ao álbum", "add_to_album_toggle": "Alternar a seleção de {album}", "add_to_albums": "Adicionar aos álbuns", "add_to_albums_count": "Adicionar aos álbuns ({count})", diff --git a/i18n/ro.json b/i18n/ro.json index 637460ae34..76e87c0cb6 100644 --- a/i18n/ro.json +++ b/i18n/ro.json @@ -1,12 +1,12 @@ { "about": "Despre", "account": "Cont", - "account_settings": "Setări Cont", + "account_settings": "Setări cont", "acknowledge": "Văzut", "action": "Acţiune", "action_common_update": "Actualizează", "actions": "Acţiuni", - "active": "Activ", + "active": "Active", "activity": "Activitate", "activity_changed": "Activitatea este {enabled, select, true {activată} other {dezactivată}}", "add": "Adaugă", @@ -28,6 +28,7 @@ "add_to_album": "Adaugă în album", "add_to_album_bottom_sheet_added": "Adăugat în {album}", "add_to_album_bottom_sheet_already_exists": "Deja în {album}", + "add_to_album_bottom_sheet_some_local_assets": "Unele resurse locale nu au putut fi adăugate la album", "add_to_album_toggle": "Selectează/deselectează {album}", "add_to_albums": "Adaugă la albume", "add_to_albums_count": "Adaugă la albume ({count})", @@ -40,12 +41,12 @@ "add_exclusion_pattern_description": "Adăugați modele de excludere. Globing folosind *, ** și ? este suportat. Pentru a ignora toate fișierele din orice director numit „Raw”, utilizați „**/Raw/**”. Pentru a ignora toate fișierele care se termină în „.tif”, utilizați „**/*.tif”. Pentru a ignora o cale absolută, utilizați „/path/to/ignore/**”.", "admin_user": "Utilizator admin", "asset_offline_description": "Acest material din biblioteca externă nu se mai găsește pe disc și a fost mutat în coșul de gunoi. Dacă fișierul a fost mutat în bibliotecă, verificați cronologia pentru noul material corespunzător. Pentru a restabili acest material, asigurați-vă că calea fișierului de mai jos poate fi accesată de Immich și scanați biblioteca.", - "authentication_settings": "Setări de Autentificare", + "authentication_settings": "Setări de autentificare", "authentication_settings_description": "Gestionează parola, OAuth și alte setări de autentificare", "authentication_settings_disable_all": "Ești sigur că vrei sa dezactivezi toate metodele de autentificare? Autentificarea va fi complet dezactivată.", "authentication_settings_reenable": "Pentru a reactiva, folosește Comandă Server.", "background_task_job": "Activități de Fundal", - "backup_database": "Salvare Bază de Date", + "backup_database": "Salvare bază de date", "backup_database_enable_description": "Activare salvarea bazei de date", "backup_keep_last_amount": "Număr de copii de rezervă anterioare de păstrat", "backup_onboarding_1_description": "copie externă în cloud sau într-o altă locație fizică.", @@ -72,9 +73,9 @@ "disable_login": "Dezactivați autentificarea", "duplicate_detection_job_description": "Rulați învățarea automată pe materiale pentru a detecta imagini similare. Se bazează pe Căutare Inteligentă", "exclusion_pattern_description": "Modelele de excludere vă permit să ignorați fișierele și folderele atunci când vă scanați biblioteca. Acest lucru este util dacă aveți foldere care conțin fișiere pe care nu doriți să le importați, cum ar fi fișierele RAW.", - "external_library_management": "Managementul Bibliotecii Externe", + "external_library_management": "Gestionarea bibliotecilor externe", "face_detection": "Detecție facială", - "face_detection_description": "Detectează fețele din fișiere folosind învățare automată. Pentru videoclipuri, este luată în considerare doar miniatura. „Reînprospătează” (re)procesează toate fișierele. „Resetează” adaugă în coadă fișierele care nu au fost încă procesate. Fețele detectate vor fi puse în coadă pentru recunoașterea facială după finalizarea detectării feței, grupându-le în persoane existente sau noi.", + "face_detection_description": "Detectează fețele din fișiere folosind învățare automată. Pentru videoclipuri, este luată în considerare doar miniatura. „Reîmprospătează” (re)procesează toate fișierele. „Resetează” adaugă în coadă fișierele care nu au fost încă procesate. Fețele detectate vor fi puse în coadă pentru recunoașterea facială după finalizarea detectării feței, grupându-le în persoane existente sau noi.", "facial_recognition_job_description": "Grupați fețele detectate în persoane. Acest pas rulează după ce Detectarea Feței este finalizată. „Resetează” (re)grupează toate fețele. „Lipsă” adaugă în coadă fețe care nu au o persoană desemnată.", "failed_job_command": "Comanda {command} a eșuat pentru jobul: {job}", "force_delete_user_warning": "AVERTISMENT: Acest lucru va elimina imediat utilizatorul și toate activele sale. Acest lucru nu poate fi anulat și fișierele nu pot fi recuperate.", @@ -91,30 +92,30 @@ "image_prefer_wide_gamut_setting_description": "Utilizați Display P3 pentru miniaturi. Acest lucru păstrează mai bine vibrația imaginilor cu spații de culoare largi, dar imaginile pot apărea diferit pe dispozitivele cu o versiune mai veche de browser. Imaginile sRGB sunt păstrate ca sRGB pentru a evita schimbările de culoare.", "image_preview_description": "Imagine de dimensiune medie cu metadate eliminate, utilizată la vizualizarea unui singur element și pentru învățarea automată", "image_preview_quality_description": "Calitatea previzualizării de la 1 la 100. O valoare mai mare oferă o calitate mai bună, dar produce fișiere mai mari și poate reduce receptivitatea aplicației. Setarea unei valori scăzute poate afecta calitatea învățării automate.", - "image_preview_title": "Previzualizați Setările", + "image_preview_title": "Previzualizați setările", "image_quality": "Calitate", "image_resolution": "Rezolutie", "image_resolution_description": "Rezoluțiile mai mari pot păstra mai multe detalii, dar necesită mai mult timp pentru a fi codificate, au dimensiuni mai mari ale fișierelor și pot reduce răspunsul aplicației.", - "image_settings": "Setări Imagine", + "image_settings": "Setări imagine", "image_settings_description": "Gestionează calitatea și rezoluția imaginilor generate", "image_thumbnail_description": "Miniatură mică cu metadate eliminate, utilizată la vizualizarea grupurilor de fotografii, cum ar fi în cronologia principală", "image_thumbnail_quality_description": "Calitatea miniaturii de la 1 la 100. O valoare mai mare oferă o calitate mai bună, dar produce fișiere mai mari și poate reduce receptivitatea aplicației.", - "image_thumbnail_title": "Setari Miniaturi", + "image_thumbnail_title": "Setari miniaturi", "job_concurrency": "Concurență {job}", "job_created": "Sarcină creată", "job_not_concurrency_safe": "Această sarcină nu este sigură pentru a rula în concurență.", - "job_settings": "Setări Sarcină", + "job_settings": "Setări sarcină", "job_settings_description": "Administrează concurența sarcinilor", - "job_status": "Starea Sarcinii", + "job_status": "Starea sarcinii", "jobs_delayed": "{jobCount, plural, other {# întârziat}}", "jobs_failed": "{jobCount, plural, other {# eșuat}}", - "library_created": "Librărie creată:{library}", + "library_created": "Librărie creată: {library}", "library_deleted": "Bibliotecă ștearsă", "library_import_path_description": "Specificați un folder pentru a îl importa. Acest folder, inclusiv sub-folderele, vor fi scanate pentru imagini și videoclipuri.", - "library_scanning": "Scanare Periodică", + "library_scanning": "Scanare periodică", "library_scanning_description": "Configurează scanarea periodică pentru bibliotecă", "library_scanning_enable_description": "Activează scanarea periodică pentru bibliotecă", - "library_settings": "Bibliotecă Externă", + "library_settings": "Bibliotecă externă", "library_settings_description": "Administrează setările pentru biblioteci externe", "library_tasks_description": "Scanează bibliotecile externe de active noi sau modificate", "library_watching_enable_description": "Urmărește bibliotecile externe pentru schimbări ale fișierelor", @@ -128,9 +129,11 @@ "machine_learning_availability_checks_enabled": "Activează verificare disponibilitate", "machine_learning_availability_checks_interval": "Interval verificare", "machine_learning_availability_checks_interval_description": "Interval in milisecunde între verificările de disponibilitate", + "machine_learning_availability_checks_timeout": "Timp de expirare cerere", + "machine_learning_availability_checks_timeout_description": "Timp de așteptare în milisecunde pentru verificările de disponibilitate", "machine_learning_clip_model": "Model CLIP", "machine_learning_clip_model_description": "Numele unui model CLIP listat aici. Rețineți că trebuie să rulați din nou funcția „Smart Search” pentru toate imaginile la schimbarea unui model.", - "machine_learning_duplicate_detection": "Detectare Duplicate", + "machine_learning_duplicate_detection": "Detectare duplicate", "machine_learning_duplicate_detection_enabled": "Activează detectarea duplicatelor", "machine_learning_duplicate_detection_enabled_description": "Dacă este dezactivată, elementele identice vor fi în continuare de-duplicate.", "machine_learning_duplicate_detection_setting_description": "Utilizați încorporările CLIP pentru a găsi dubluri probabile", @@ -157,11 +160,11 @@ "machine_learning_smart_search_enabled": "Activați căutarea inteligentă", "machine_learning_smart_search_enabled_description": "Dacă este dezactivată, imaginile nu vor fi codificate pentru căutarea inteligentă.", "machine_learning_url_description": "URL-ul serverului de învățare automată. Dacă sunt furnizate mai multe URL-uri, fiecare server va fi încercat pe rând, până când unul răspunde cu succes, în ordine de la primul până la ultimul. Serverele care nu răspund vor fi ignorate temporar până revin online.", - "manage_concurrency": "Gestionarea Simultaneității", + "manage_concurrency": "Gestionarea simultaneității", "manage_log_settings": "Administrați setările jurnalului", "map_dark_style": "Mod întunecat", "map_enable_description": "Activați funcțiile hărții", - "map_gps_settings": "Setări Hartă & GPS", + "map_gps_settings": "Setări hartă & GPS", "map_gps_settings_description": "Gestionare setări Hartă & GPS (localizare inversă)", "map_implications": "Caracteristica hărții se bazează pe un serviciu extern de planșe (tiles.immich.cloud)", "map_light_style": "Mod deschis", @@ -178,7 +181,7 @@ "metadata_extraction_job_description": "Extragere informații metadate din fiecare fișier cum ar fi localizare GPS, fețe și rezoluție,", "metadata_faces_import_setting": "Activare import fețe", "metadata_faces_import_setting_description": "Importă fețe din datele EXIF ale imaginii și din fișiere tip \"sidecar\"", - "metadata_settings": "Setări Metadate", + "metadata_settings": "Setări metadate", "metadata_settings_description": "Gestionează setările pentru metadate", "migration_job": "Migrare", "migration_job_description": "Migrați miniaturile pentru elemente și fețe la cea mai recentă structură de foldere", @@ -256,7 +259,7 @@ "send_welcome_email": "Trimite email de bun-venit", "server_external_domain_settings": "Domeniu extern", "server_external_domain_settings_description": "Domeniu pentru distribuire publicǎ a scurtǎturilor, incluzând http(s)://", - "server_public_users": "Utilizatori Publici", + "server_public_users": "Utilizatori publici", "server_public_users_description": "Toți utilizatorii (nume și e-mail) sunt listați atunci când adăugați un utilizator la albumele partajate. Când este dezactivată, lista de utilizatori va fi disponibilă numai pentru utilizatorii admin.", "server_settings": "Setǎri Server", "server_settings_description": "Gestioneazǎ setǎrile serverului", @@ -278,7 +281,7 @@ "storage_template_more_details": "Pentru mai multe detalii despre aceasta caracteristică, accesați Șablon stocare si implicațiile", "storage_template_onboarding_description_v2": "Când este activată, această funcție va organiza automat fișierele pe baza șablonului definit de către utilizator. Pentru mai multe informații, accesează documentația.", "storage_template_path_length": "Limita de lungime pentru calea aproximativă: {length, number}/{limit, number}", - "storage_template_settings": "Șablon Stocare", + "storage_template_settings": "Șablon stocare", "storage_template_settings_description": "Gestionează structura folderelor și numele fișierelor pentru elementele încărcate", "storage_template_user_label": "{label} este eticheta de stocare a utilizatorului", "system_settings": "Setǎri de Sistem", @@ -294,9 +297,9 @@ "template_settings_description": "Gestionați șabloanele personalizate pentru notificări", "theme_custom_css_settings": "CSS personalizat", "theme_custom_css_settings_description": "Foile de stil în cascadă (CSS) permit personalizarea designului Immich.", - "theme_settings": "Setări Temă", + "theme_settings": "Setări temă", "theme_settings_description": "Gestionează personalizarea interfeței web Immich", - "thumbnail_generation_job": "Generare Miniaturi", + "thumbnail_generation_job": "Generare miniaturi", "thumbnail_generation_job_description": "Generează miniaturi mari, mici și estompate pentru fiecare resursă, precum și miniaturi pentru fiecare persoană", "transcoding_acceleration_api": "API de accelerare", "transcoding_acceleration_api_description": "API-ul care va interacționa cu dispozitivul tău pentru a accelera transcodarea. Această setare este 'cel mai bun efort': va reveni la transcodarea software în caz de eșec. VP9 poate funcționa sau nu, în funcție de hardware-ul tău.", @@ -322,7 +325,7 @@ "transcoding_disabled_description": "Nu transcodifică niciun videoclip; acest lucru poate afecta redarea pe anumite dispozitive", "transcoding_encoding_options": "Opțiuni codificare", "transcoding_encoding_options_description": "Setează codecuri , calitatea, rezoluția și alte opțiuni pentru videoclipuri codificare", - "transcoding_hardware_acceleration": "Accelerare Hardware", + "transcoding_hardware_acceleration": "Accelerare hardware", "transcoding_hardware_acceleration_description": "Experimental: transcodare mai rapidă, dar poate reduce calitatea la aceeași rată de biți", "transcoding_hardware_decoding": "Decodare hardware", "transcoding_hardware_decoding_setting_description": "Se aplică doar pentru NVENC, QSV și RKMPP. Activează accelerarea completă în loc de doar accelerarea codificării. S-ar putea să nu funcționeze pentru toate videoclipurile.", @@ -342,7 +345,7 @@ "transcoding_reference_frames": "Cadre de referință", "transcoding_reference_frames_description": "Numărul de cadre de referință atunci când se comprimă un cadru dat. Valorile mai mari îmbunătățesc eficiența compresiei, dar încetinesc codarea. 0 setează această valoare automat.", "transcoding_required_description": "Numai videoclipuri care nu sunt într-un format acceptat", - "transcoding_settings": "Setări de Transcodare Video", + "transcoding_settings": "Setări de transcodare video", "transcoding_settings_description": "Gestionează care videoclipuri să transcodam și cum să le procesam", "transcoding_target_resolution": "Rezoluția țintă", "transcoding_target_resolution_description": "Rezoluțiile mai mari pot păstra mai multe detalii, dar necesită mai mult timp pentru codare, au dimensiuni mai mari ale fișierelor și pot reduce răspunsul aplicației.", @@ -373,23 +376,23 @@ "user_delete_immediately": "Contul și resursele utilizatorului {user} vor fi puse în coadă pentru ștergere permanentă imediat.", "user_delete_immediately_checkbox": "Pune utilizatorul și resursele în coadă pentru ștergere imediată", "user_details": "Detalii utilizator", - "user_management": "Gestionarea Utilizatorilor", + "user_management": "Gestionarea utilizatorilor", "user_password_has_been_reset": "Parola utilizatorului a fost resetată:", "user_password_reset_description": "Vă rugăm să furnizați utilizatorului parola temporară și să îi informați că va trebui să o schimbe la următoarea autentificare.", "user_restore_description": "Contul utilizatorului {user} va fi restaurat.", "user_restore_scheduled_removal": "Restaurare utilizator - ștergere programată pe {date, date, long}", - "user_settings": "Setǎri Utilizator", + "user_settings": "Setǎri utilizator", "user_settings_description": "Gestioneazǎ setǎrile utilizatorului", "user_successfully_removed": "Utilizatorul {email} a fost eliminat cu succes.", "version_check_enabled_description": "Activează verificarea versiunii", "version_check_implications": "Funcția de verificare a versiunii se bazează pe comunicarea periodică cu github.com", - "version_check_settings": "Verificare Versiune", + "version_check_settings": "Verificare versiune", "version_check_settings_description": "Activeazǎ/dezactiveazǎ notificarea unei noi versiuni", "video_conversion_job": "Transcodați videoclipuri", "video_conversion_job_description": "Transcodați videoclipurile pentru o compatibilitate mai mare cu browserele și dispozitivele" }, - "admin_email": "E-mail Administrator", - "admin_password": "Parolă Administrator", + "admin_email": "E-mail administrator", + "admin_password": "Parolă administrator", "administration": "Administrare", "advanced": "Avansat", "advanced_settings_enable_alternate_media_filter_subtitle": "Utilizați această opțiune pentru a filtra conținutul media în timpul sincronizării pe baza unor criterii alternative. Încercați numai dacă întâmpinați probleme cu aplicația la detectarea tuturor albumelor.", @@ -399,7 +402,7 @@ "advanced_settings_prefer_remote_title": "Preferă fotografii la distanță", "advanced_settings_proxy_headers_subtitle": "Definește antetele proxy pe care Immich ar trebui să le trimită cu fiecare solicitare de rețea", "advanced_settings_proxy_headers_title": "Antete Proxy", - "advanced_settings_readonly_mode_subtitle": "Activează modul doar-citire, în care fotografiile pot fi doar vizualizate, iar acțiuni precum selectarea mai multor imagini, partajarea, redarea pe alt dispozitiv sau ștergerea sunt dezactivate. Activează/Dezactivează modul doar-citire din avatarul utilizatorului de pe ecranul principal.", + "advanced_settings_readonly_mode_subtitle": "Activează modul doar-citire, în care fotografiile pot fi doar vizualizate, iar acțiuni precum selectarea mai multor imagini, partajarea, redarea pe alt dispozitiv sau ștergerea sunt dezactivate. Activează/Dezactivează modul doar-citire din avatarul utilizatorului de pe ecranul principal", "advanced_settings_readonly_mode_title": "Mod doar-citire", "advanced_settings_self_signed_ssl_subtitle": "Omite verificare certificate SSL pentru distinația server-ului, necesar pentru certificate auto-semnate.", "advanced_settings_self_signed_ssl_title": "Permite certificate SSL auto-semnate", @@ -528,6 +531,7 @@ "assets_trashed_count": "Mutat în coșul de gunoi {count, plural, one {# resursă} other {# resurse}}", "assets_trashed_from_server": "{count} resursă(e) eliminate de pe serverul Immich", "assets_were_part_of_album_count": "{count, plural, one {Resursa era} other {Resursele erau}} deja parte din album", + "assets_were_part_of_albums_count": "{count, plural, one {Asset was} other {Assets were}} deja parte din albume", "authorized_devices": "Dispozitive Autorizate", "automatic_endpoint_switching_subtitle": "Conectează-te local prin rețeaua Wi‐Fi configurată când este valabilă și prin rețele alternative în caz contrar", "automatic_endpoint_switching_title": "Alternare URL automată", @@ -537,6 +541,7 @@ "background_backup_running_error": "Procesul de backup în fundal este activ, nu se poate porni backup manual", "background_location_permission": "Permisiune locație în fundal", "background_location_permission_content": "Pentru a putea schimba rețeaua activă în fundal, Immich are nevoie de acces *permanent* la locația precisă pentru a citi numele rețelei Wi-Fi", + "background_options": "Opțiuni de fundal", "backup": "Backup", "backup_album_selection_page_albums_device": "Albume în dispozitiv ({count})", "backup_album_selection_page_albums_tap": "Apasă odata pentru a include, de două ori pentru a exclude", @@ -544,6 +549,7 @@ "backup_album_selection_page_select_albums": "Selectează albume", "backup_album_selection_page_selection_info": "Informații selecție", "backup_album_selection_page_total_assets": "Total resurse unice", + "backup_albums_sync": "Sincronizarea albumelor de backup", "backup_all": "Toate", "backup_background_service_backup_failed_message": "Eșuare backup resurse. Reîncercare…", "backup_background_service_connection_failed_message": "Conectare la server eșuată. Reîncercare…", @@ -583,7 +589,7 @@ "backup_controller_page_remainder": "Rămas(e)", "backup_controller_page_remainder_sub": "Fotografii și videoclipuri din selecție rămase pentru backup", "backup_controller_page_server_storage": "Stocare server", - "backup_controller_page_start_backup": "Începe backup", + "backup_controller_page_start_backup": "Începe copia de rezervă", "backup_controller_page_status_off": "Backup-ul automat în prim-plan este oprit", "backup_controller_page_status_on": "Backup-ul automat în prim-plan este pornit", "backup_controller_page_storage_format": "{used} din {total} folosit", @@ -598,7 +604,8 @@ "backup_manual_in_progress": "Încărcarea este deja în curs. Încearcă din nou mai târziu", "backup_manual_success": "Succes", "backup_manual_title": "Status încărcare", - "backup_options_page_title": "Opțiuni Backup", + "backup_options": "Opțiuni copie de rezervă", + "backup_options_page_title": "Opțiuni copie de rezervă", "backup_setting_subtitle": "Schimbă opțiuni pentru backup în prim-plan și în fundal", "backup_settings_subtitle": "Gestionați setările de încărcare", "backward": "În sens invers", @@ -609,7 +616,7 @@ "birthdate_saved": "Data nașterii salvată cu succes", "birthdate_set_description": "Data nașterii este utilizată pentru a calcula vârsta acestei persoane la momentul realizării fotografiei.", "blurred_background": "Fundal neclar", - "bugs_and_feature_requests": "Erori și Solicitări de Caracteristici", + "bugs_and_feature_requests": "Erori și solicitări de caracteristici", "build": "Versiunea", "build_image": "Versiune Imagine", "bulk_delete_duplicates_confirmation": "Ești sigur că vrei să ștergi în masă {count, plural, one {# resursă duplicată} other {# resurse duplicate}}? Aceasta va păstra cea mai mare resursă din fiecare grup și va șterge permanent toate celelalte duplicate. Nu poți anula această acțiune!", @@ -659,6 +666,8 @@ "change_pin_code": "Schimbă codul PIN", "change_your_password": "Schimbă-ți parola", "changed_visibility_successfully": "Schimbare vizibilitate cu succes", + "charging": "Încărcare", + "charging_requirement_mobile_backup": "Pentru copia de rezervă în fundal, dispozitivul trebuie să fie în curs de încărcare", "check_corrupt_asset_backup": "Verifică copii de rezervă a resurselor corupte", "check_corrupt_asset_backup_button": "Efectuează verificarea", "check_corrupt_asset_backup_description": "Rulează această verificare doar prin Wi-Fi și doar după ce toate resursele au fost salvate în copia de rezerva. Procedura poate dura câteva minute.", @@ -710,7 +719,7 @@ "control_bottom_app_bar_delete_from_immich": "Șterge din Immich", "control_bottom_app_bar_delete_from_local": "Șterge din dispozitiv", "control_bottom_app_bar_edit_location": "Editează locație", - "control_bottom_app_bar_edit_time": "Editează Data și Ora", + "control_bottom_app_bar_edit_time": "Editează data și ora", "control_bottom_app_bar_share_link": "Partajează linkul", "control_bottom_app_bar_share_to": "Distribuire către", "control_bottom_app_bar_trash_from_immich": "Mută în coș", @@ -745,6 +754,7 @@ "create_user": "Creează utilizator", "created": "Creat", "created_at": "Creat", + "creating_linked_albums": "Crearea albumelor cu link...", "crop": "Decupează", "curated_object_page_title": "Obiecte", "current_device": "Dispozitiv curent", @@ -764,6 +774,7 @@ "date_of_birth_saved": "Data nașterii salvată cu succes", "date_range": "Interval de date", "day": "Zi", + "days": "Zile", "deduplicate_all": "Deduplicați Toate", "deduplication_criteria_1": "Marimea imagini în octeți", "deduplication_criteria_2": "Numărul de date EXIF", @@ -848,10 +859,12 @@ "edit": "Editare", "edit_album": "Editare album", "edit_avatar": "Editare avatar", - "edit_birthday": "Editează ziua de naștere", + "edit_birthday": "Modifică ziua de naștere", "edit_date": "Editare dată", "edit_date_and_time": "Editare dată și oră", "edit_date_and_time_action_prompt": "{count} data și ora modificării", + "edit_date_and_time_by_offset": "Schimbă data prin decalaj", + "edit_date_and_time_by_offset_interval": "Noul interval de date: {from} - {to}", "edit_description": "Editează descrierea", "edit_description_prompt": "Vă rugăm să selectați o descriere nouă:", "edit_exclusion_pattern": "Editarea modelului de excludere", @@ -861,7 +874,7 @@ "edit_key": "Tastă de editare", "edit_link": "Editare link", "edit_location": "Editare locație", - "edit_location_action_prompt": "{count} locație(i) editată(e)", + "edit_location_action_prompt": "{count} locație(i) modificată(e)", "edit_location_dialog_title": "Locație", "edit_name": "Editare nume", "edit_people": "Editare persoane", @@ -891,7 +904,9 @@ "error": "Eroare", "error_change_sort_album": "Nu s-a putut modifica ordinea de sortare a albumului", "error_delete_face": "Eroare la ștergerea feței din activ", + "error_getting_places": "Eroare la obținerea locațiilor", "error_loading_image": "Eroare la încărcarea imaginii", + "error_loading_partners": "Eroare la încărcarea partenerilor: {error}", "error_saving_image": "Eroare: {error}", "error_tag_face_bounding_box": "Eroare la etichetarea feței - nu se pot obține coordonatele casetei de delimitare", "error_title": "Eroare - ceva nu a mers", @@ -924,6 +939,7 @@ "failed_to_load_notifications": "Nu s-au putut încărca notificările", "failed_to_load_people": "Eșec la încărcarea persoanelor", "failed_to_remove_product_key": "Eșec la eliminarea cheii de produs", + "failed_to_reset_pin_code": "Nu s-a reușit resetarea codului PIN", "failed_to_stack_assets": "Eșec la combinarea resurselor", "failed_to_unstack_assets": "Eșec la desfășurarea resurselor", "failed_to_update_notification_status": "Nu s-a putut actualiza starea notificării", @@ -932,6 +948,7 @@ "paths_validation_failed": "{paths, plural, one {# cale} other {# căi}} nu a trecut validarea", "profile_picture_transparent_pixels": "Pozele de profil nu pot avea pixeli transparenți. Te rugăm să mărești imaginea și/sau să o muți.", "quota_higher_than_disk_size": "Ați stabilit o valoare a spațiului de stocare mai mare decât dimensiunea discului", + "something_went_wrong": "Ceva nu a mers bine", "unable_to_add_album_users": "Imposibil de adăugat utilizatori în album", "unable_to_add_assets_to_shared_link": "Imposibil de adăugat resurse la link-ul partajat", "unable_to_add_comment": "Imposibil de adăugat comentariu", @@ -1039,7 +1056,7 @@ "export_database_description": "Exportați baza de date SQLite", "extension": "Extensie", "external": "Extern", - "external_libraries": "Biblioteci Externe", + "external_libraries": "Biblioteci externe", "external_network": "Rețea externă", "external_network_sheet_info": "Când nu se află în rețeaua Wi-Fi preferată, aplicația se va conecta la server prin prima dintre adresele URL de mai jos pe care o poate accesa, începând de sus în jos", "face_unassigned": "Nealocat", @@ -1054,6 +1071,7 @@ "favorites_page_no_favorites": "Nu au fost găsite resurse favorite", "feature_photo_updated": "Fotografie caracteristică actualizată", "features": "Caracteristici", + "features_in_development": "Funcții în dezvoltare", "features_setting_description": "Gestionați funcțiile aplicației", "file_name": "Nume de fișier", "file_name_or_extension": "Numele sau extensia fișierului", @@ -1063,21 +1081,26 @@ "filter_people": "Filtrați persoanele", "filter_places": "Filtrează locurile", "find_them_fast": "Găsiți-le rapid prin căutare după nume", + "first": "Primul", "fix_incorrect_match": "Remediați potrivirea incorectă", "folder": "Dosar", "folder_not_found": "Dosar negăsit", "folders": "Foldere", "folders_feature_description": "Răsfoire în conținutul folderului pentru fotografiile și videoclipurile din sistemul de fișiere", + "forgot_pin_code_question": "Ai uitat codul PIN?", "forward": "Redirecționare", "gcast_enabled": "Google Cast", "gcast_enabled_description": "Această funcție încarcă resurse externe de la Google pentru a funcționa.", "general": "General", + "geolocation_instruction_location": "Apasă pe o resursă cu coordonate GPS pentru a folosi locația sa, sau selectează direct o locație de pe hartă", "get_help": "Obțineți Ajutor", "get_wifiname_error": "Nu s-a putut obține numele rețelei Wi-Fi. Asigurați-vă că ați acordat permisiunile necesare și că sunteți conectat la o rețea Wi-Fi", "getting_started": "Noțiuni de Bază", "go_back": "Întoarcere", "go_to_folder": "Accesați folderul", "go_to_search": "Spre căutare", + "gps": "GPS", + "gps_missing": "Fără GPS", "grant_permission": "Acordați permisiunea", "group_albums_by": "Grupați albume de...", "group_country": "Grupare după țară", @@ -1088,6 +1111,9 @@ "haptic_feedback_switch": "Activează feedback-ul haptic", "haptic_feedback_title": "Feedback haptic", "has_quota": "Are spațiu de stocare", + "hash_asset": "Hash-ul resursei", + "hashed_assets": "Resurse hashed", + "hashing": "Generare hash", "header_settings_add_header_tip": "Adăugați antet", "header_settings_field_validator_msg": "Valoarea nu poate fi goală", "header_settings_header_name_input": "Numele antetului", @@ -1114,11 +1140,12 @@ "home_page_favorite_err_partner": "Momentan nu se pot adăuga fișierele partenerului la favorite, omitere", "home_page_first_time_notice": "Dacă este prima dată când utilizezi aplicația, te rugăm să te asiguri că alegi unul sau mai multe albume de backup, astfel încât cronologia să poată fi populată cu fotografiile și videoclipurile din aceste albume", "home_page_locked_error_local": "Nu se pot muta resursele locale în folderul blocat, se omit", - "home_page_locked_error_partner": "Nu se pot muta materialele partenerului în folderul blocat, se omit.", + "home_page_locked_error_partner": "Nu se pot muta resursele partenerului în folderul blocat, se omit.", "home_page_share_err_local": "Nu se pot distribui fișiere locale prin link, omitere", "home_page_upload_err_limit": "Se pot încărca maxim 30 de resurse odată, omitere", "host": "Gazdă", "hour": "Oră", + "hours": "Ore", "id": "ID", "idle": "Inactiv", "ignore_icloud_photos": "Ignoră fotografiile din iCloud", @@ -1178,10 +1205,13 @@ "language_no_results_title": "Nu au fost găsite limbi", "language_search_hint": "Căutați limbi...", "language_setting_description": "Selectați limba preferată", + "large_files": "Fișiere mari", + "last": "Ultimul", "last_seen": "Văzut ultima dată", "latest_version": "Ultima Versiune", "latitude": "Latitudine", "leave": "Părăsiți", + "leave_album": "Părăsește albumul", "lens_model": "Model obiectiv", "let_others_respond": "Permite altora să răspundă", "level": "Nivel", @@ -1195,6 +1225,7 @@ "library_page_sort_title": "Titlu album", "licenses": "Licențe", "light": "Lumină", + "like": "Îmi place", "like_deleted": "Preferat șters", "link_motion_video": "Link video în mișcare", "link_to_oauth": "Link către OAuth", @@ -1205,6 +1236,7 @@ "local": "Local", "local_asset_cast_failed": "Nu se poate converti un element care nu este încărcat pe server", "local_assets": "Asset-uri locale", + "local_media_summary": "Rezumatul fișierelor media locale", "local_network": "Rețea locală", "local_network_sheet_info": "Aplicația se va conecta la server prin intermediul acestei adrese URL atunci când utilizează rețeaua Wi-Fi specificată", "location_permission": "Permisiunea de locație", @@ -1216,6 +1248,7 @@ "location_picker_longitude_hint": "Introdu longitudinea aici", "lock": "Blocare", "locked_folder": "Dosar blocat", + "log_detail_title": "Detalii jurnal", "log_out": "Deconectare", "log_out_all_devices": "Deconectați-vă de la toate dispozitivele", "logged_in_as": "Conectat ca {user}", @@ -1246,6 +1279,7 @@ "login_password_changed_success": "Parola a fost actualizată cu succes", "logout_all_device_confirmation": "Sigur doriți să deconectați toate dispozitivele?", "logout_this_device_confirmation": "Sigur doriți să deconectați acest dispozitiv?", + "logs": "Jurnale", "longitude": "Longitudine", "look": "Examinare", "loop_videos": "Buclă videoclipuri", @@ -1253,6 +1287,7 @@ "main_branch_warning": "Utilizați o versiune de dezvoltare; vă recomandăm insistent să utilizați o versiune de lansare!", "main_menu": "Meniu principal", "make": "Face", + "manage_geolocation": "Gestionați locația", "manage_shared_links": "Administrați link-urile distribuite", "manage_sharing_with_partners": "Gestionați partajarea cu partenerii", "manage_the_app_settings": "Gestionați setările aplicației", @@ -1261,7 +1296,7 @@ "manage_your_devices": "Gestionați-vă dispozitivele conectate", "manage_your_oauth_connection": "Gestionați-vă conexiunea OAuth", "map": "Hartă", - "map_assets_in_bounds": "{count, plural, one {# poză} other {# poze}}", + "map_assets_in_bounds": "{count, plural, =0 {Nu există fotografii în această zonă} one {# fotografie} other {# fotografii}}", "map_cannot_get_user_location": "Nu se poate obține locația utilizatorului", "map_location_dialog_yes": "Da", "map_location_picker_page_use_location": "Folosește această locație", @@ -1287,6 +1322,7 @@ "mark_as_read": "Marchează ca citit", "marked_all_as_read": "Marcate toate ca citite", "matches": "Corespunde", + "matching_assets": "Resurse similare", "media_type": "Tip media", "memories": "Amintiri", "memories_all_caught_up": "Sunteți la zi", @@ -1304,7 +1340,8 @@ "merge_people_successfully": "Persoane îmbinate cu succes", "merged_people_count": "Imbinate {count, plural, one {# persoană} other {# persoane}}", "minimize": "Minimizare", - "minute": "Minute", + "minute": "Minut", + "minutes": "Minute", "missing": "Lipsă", "model": "Model", "month": "Lună", @@ -1324,6 +1361,10 @@ "my_albums": "Albumele mele", "name": "Nume", "name_or_nickname": "Nume sau poreclǎ", + "network_requirement_photos_upload": "Utilizați datele mobile pentru a face copii de rezervă ale fotografiilor", + "network_requirement_videos_upload": "Utilizați datele mobile pentru a face copii de rezervă ale videoclipurilor", + "network_requirements": "Cerințe privind rețeaua", + "network_requirements_updated": "Cerințele rețelei s-au modificat, resetarea cozii copiei de rezervă", "networking_settings": "Rețele", "networking_subtitle": "Gestionați setările endpoint-ului serverului", "never": "Niciodată", @@ -1333,6 +1374,7 @@ "new_person": "Persoanǎ nouǎ", "new_pin_code": "Cod PIN nou", "new_pin_code_subtitle": "Aceasta este prima dată când accesați folderul blocat. Creați un cod PIN pentru a accesa în siguranță această pagină", + "new_timeline": "Noua cronologie", "new_user_created": "Utilizator nou creat", "new_version_available": "VERSIUNE NOUĂ DISPONIBILĂ", "newest_first": "Cel mai nou primul", @@ -1346,20 +1388,25 @@ "no_assets_message": "CLICK PENTRU A ÎNCĂRCA PRIMA TA FOTOGRAFIE", "no_assets_to_show": "Nicio resursă de afișat", "no_cast_devices_found": "Nu s-au găsit dispozitive de difuzare", + "no_checksum_local": "Nu există checksum – nu se pot prelua resursele locale", + "no_checksum_remote": "Nu există checksum – nu se pot prelua resursele la distanță", "no_duplicates_found": "Nu au fost găsite duplicate.", "no_exif_info_available": "Nu există informații exif disponibile", "no_explore_results_message": "Încarcați mai multe fotografii pentru a vă explora colecția.", "no_favorites_message": "Adăugați favorite pentru a găsi rapid cele mai bune fotografii și videoclipuri", "no_libraries_message": "Creați o bibliotecă externă pentru a vă vizualiza fotografiile și videoclipurile", + "no_local_assets_found": "Nicio resursă locală găsită cu acest checksum", "no_locked_photos_message": "Fotografiile și videoclipurile din folderul blocat sunt ascunse și nu vor apărea atunci când răsfoiți sau căutați în bibliotecă.", "no_name": "Fără Nume", "no_notifications": "Nicio notificare", "no_people_found": "Nu au fost găsite persoane potrivite căutării", "no_places": "Nu există locuri", + "no_remote_assets_found": "Nicio resursă de la distanță găsită cu acest checksum", "no_results": "Fără rezultate", "no_results_description": "Încercați un sinonim sau un cuvânt cheie mai general", "no_shared_albums_message": "Creați un album pentru a partaja fotografii și videoclipuri cu persoanele din rețeaua dvs", "no_uploads_in_progress": "Nicio încărcare în curs", + "not_available": "N/A", "not_in_any_album": "Nu există în niciun album", "not_selected": "Neselectat", "note_apply_storage_label_to_previously_uploaded assets": "Notă: Pentru a aplica eticheta de stocare la resursele încărcate anterior, rulați", @@ -1375,6 +1422,7 @@ "oauth": "OAuth", "official_immich_resources": "Resurse Oficiale Immich", "offline": "Offline", + "offset": "Decalaj", "ok": "Bine", "oldest_first": "Cel mai vechi mai întâi", "on_this_device": "Pe acest dispozitiv", @@ -1393,6 +1441,8 @@ "open_the_search_filters": "Deschideți filtrele de căutare", "options": "Opțiuni", "or": "sau", + "organize_into_albums": "Organizați în albume", + "organize_into_albums_description": "Pune fotografiile existente în albume folosind setările curente de sincronizare", "organize_your_library": "Organizează-ți biblioteca", "original": "original", "other": "Alte", @@ -1452,6 +1502,9 @@ "permission_onboarding_permission_limited": "Permisiune limitată. Pentru a permite Immich să facă copii de siguranță și să gestioneze întreaga colecție de galerii, acordă permisiuni pentru fotografii și videoclipuri în Setări.", "permission_onboarding_request": "Immich necesită permisiunea de a vizualiza fotografiile și videoclipurile tale.", "person": "Persoanǎ", + "person_age_months": "{months, plural, one {# month} other {# months}} vechime", + "person_age_year_months": "1 year, {months, plural, one {# month} other {# months}} vechime", + "person_age_years": "{years, plural, other {# years}} vechime", "person_birthdate": "Născut pe {date}", "person_hidden": "{name}{hidden, select, true { (ascuns)} other {}}", "photo_shared_all_users": "Se pare că ți-ai partajat fotografiile tuturor utilizatorilor sau că nu ai niciun utilizator căruia să le distribui.", @@ -1475,6 +1528,7 @@ "port": "Port", "preferences_settings_subtitle": "Gestionați preferințele aplicației", "preferences_settings_title": "Preferințe", + "preparing": "Se prepară", "preset": "Presetat", "preview": "Previzualizare", "previous": "Anterior", @@ -1491,6 +1545,7 @@ "profile_drawer_client_out_of_date_minor": "Aplicația nu folosește ultima versiune. Te rugăm să actualizezi la ultima versiune minoră.", "profile_drawer_client_server_up_to_date": "Aplicația client și server-ul sunt actualizate", "profile_drawer_github": "GitHub", + "profile_drawer_readonly_mode": "Mod doar citire activat. Ține apăsat pe pictograma avatarului utilizatorului pentru a ieși.", "profile_drawer_server_out_of_date_major": "Server-ul nu folosește ultima versiune. Te rugăm să actualizezi la ultima versiune majoră.", "profile_drawer_server_out_of_date_minor": "Server-ul nu folosește ultima versiune. Te rugăm să actulizezi la ultima versiune minoră.", "profile_image_of_user": "Imagine de profil a lui {user}", @@ -1529,6 +1584,7 @@ "purchase_server_description_2": "Statutul de suporter", "purchase_server_title": "Server", "purchase_settings_server_activated": "Cheia de produs a serverului este gestionată de administrator", + "query_asset_id": "Interoghează ID-ul resursei", "queue_status": "Se pun în coadă {count}/{total}", "rating": "Evaluare cu stele", "rating_clear": "Anulați evaluarea", @@ -1536,6 +1592,9 @@ "rating_description": "Afișați evaluarea EXIF în panoul de informații", "reaction_options": "Opțiuni de reacție", "read_changelog": "Citiți Jurnalul de Modificări", + "readonly_mode_disabled": "Modul doar citire dezactivat", + "readonly_mode_enabled": "Modul doar citire activat", + "ready_for_upload": "Pregătit pentru încărcare", "reassign": "Reatribuiți", "reassigned_assets_to_existing_person": "Re-alocat {count, plural, one {# resursă} other {# resurse}} to {name, select, null {unei persoane existente} other {{name}}}", "reassigned_assets_to_new_person": "Re-alocat {count, plural, one {# resursă} other {# resurse}} unei noi persoane", @@ -1560,6 +1619,7 @@ "regenerating_thumbnails": "Se regenerează miniaturile", "remote": "De la distanță", "remote_assets": "Elemente la distanță", + "remote_media_summary": "Rezumat media de la distanță", "remove": "Eliminați", "remove_assets_album_confirmation": "Sigur doriți să eliminați {count, plural, one {# resursă} other {# resurse}} din album?", "remove_assets_shared_link_confirmation": "Sigur doriți să eliminați {count, plural, one {# resursă} other {# resurse}} din acest link comun?", @@ -1597,6 +1657,9 @@ "reset_password": "Resetare parolă", "reset_people_visibility": "Resetați vizibilitatea persoanelor", "reset_pin_code": "Resetare cod PIN", + "reset_pin_code_description": "Dacă ți-ai uitat codul PIN, poți contacta administratorul serverului pentru a-l reseta", + "reset_pin_code_success": "Codul PIN a fost resetat cu succes", + "reset_pin_code_with_password": "Puteți reseta oricând codul PIN cu ajutorul parolei", "reset_sqlite": "Resetare bază de date SQLite", "reset_sqlite_confirmation": "Sigur doriți să resetați baza de date SQLite? Va trebui să vă deconectați și să vă conectați din nou pentru a resincroniza datele", "reset_sqlite_success": "Resetarea cu succes a bazei de date SQLite", @@ -1609,8 +1672,10 @@ "restore_user": "Restabiliți utilizatorul", "restored_asset": "Resursă restaurată", "resume": "Reluare", + "resume_paused_jobs": "Reluați {count, plural, one {# paused job} other {# paused jobs}}", "retry_upload": "Reîncercați încărcarea", "review_duplicates": "Examinați duplicatele", + "review_large_files": "Revizuirea fișierelor mari", "role": "Rol", "role_editor": "Editor", "role_viewer": "Vizualizator", @@ -1622,7 +1687,7 @@ "saved_settings": "Setări salvate", "say_something": "Spuneți ceva", "scaffold_body_error_occurred": "A apărut o eroare", - "scan_all_libraries": "Scanați Toate Bibliotecile", + "scan_all_libraries": "Scanați toate bibliotecile", "scan_library": "Scanare", "scan_settings": "Setări Scanare", "scanning_for_album": "Se scanează după album...", @@ -1701,6 +1766,7 @@ "select_user_for_sharing_page_err_album": "Creare album eșuată", "selected": "Selectat", "selected_count": "{count, plural, other {# selectat}}", + "selected_gps_coordinates": "Coordonate GPS selectate", "send_message": "Trimiteți mesaj", "send_welcome_email": "Trimiteți email de bun venit", "server_endpoint": "Endpoint server", @@ -1709,7 +1775,7 @@ "server_offline": "Serverul este offline", "server_online": "Server online", "server_privacy": "Confidențialitatea serverului", - "server_stats": "Statistici Server", + "server_stats": "Statistici server", "server_version": "Versiune Server", "set": "Setați", "set_as_album_cover": "Setați ca și copertă a albumului", @@ -1768,6 +1834,7 @@ "shared_link_clipboard_copied_massage": "Copiat în clipboard", "shared_link_clipboard_text": "Link: {link}\nParolă: {password}", "shared_link_create_error": "Eroare în timpul creării linkului de distribuire", + "shared_link_custom_url_description": "Accesează acest link partajat cu un URL personalizat", "shared_link_edit_description_hint": "Introdu descrierea distribuirii", "shared_link_edit_expire_after_option_day": "1 zi", "shared_link_edit_expire_after_option_days": "{count} zile", @@ -1793,6 +1860,7 @@ "shared_link_info_chip_metadata": "EXIF", "shared_link_manage_links": "Administrează link-urile distribuite", "shared_link_options": "Opțiuni de link partajat", + "shared_link_password_description": "Solicită o parolă pentru a accesa acest link partajat", "shared_links": "Link-uri distribuite", "shared_links_description": "Partajare imagini și clipuri printr-un link", "shared_photos_and_videos_count": "{assetCount, plural, other {# fotografii și videoclipuri partajate.}}", @@ -1827,6 +1895,7 @@ "show_slideshow_transition": "Afișați tranziția de prezentare", "show_supporter_badge": "Insigna suporterului", "show_supporter_badge_description": "Arată o insignă de suporter", + "show_text_search_menu": "Afișează meniul de căutare text", "shuffle": "Amestecați", "sidebar": "Bara laterală", "sidebar_display_description": "Afișați un link către vizualizare în bara laterală", @@ -1842,6 +1911,7 @@ "sort_created": "Data creării", "sort_items": "Numărul de articole", "sort_modified": "Data modificării", + "sort_newest": "Cea mai nouă fotografie", "sort_oldest": "Cea mai veche fotografie", "sort_people_by_similarity": "Sortează oameni după asemanare", "sort_recent": "Cea mai recentă fotografie", @@ -1856,6 +1926,7 @@ "stacktrace": "Urmă stivă", "start": "Început", "start_date": "Data de începere", + "start_date_before_end_date": "Data de început trebuie să fie înainte de data de sfârșit", "state": "Situaţie", "status": "Stare", "stop_casting": "Opriți difuzarea", @@ -1880,6 +1951,8 @@ "sync_albums_manual_subtitle": "Sincronizează toate videoclipurile și fotografiile încărcate cu albumele de rezervă selectate", "sync_local": "Sincronizare locală", "sync_remote": "Sincronizare la distanță", + "sync_status": "Status-ul sincronizării", + "sync_status_subtitle": "Vizualizează și gestionează sistemul de sincronizare", "sync_upload_album_setting_subtitle": "Creează și încarcă fotografiile și videoclipurile tale în albumele selectate de pe Immich", "tag": "Etichetă", "tag_assets": "Eticheta resurselor", @@ -1917,7 +1990,9 @@ "to_change_password": "Schimbaţi parola", "to_favorite": "Favorit", "to_login": "Conectare", + "to_multi_select": "pentru selecție multiplă", "to_parent": "Du-te la părinte", + "to_select": "a selecta", "to_trash": "Coș de gunoi", "toggle_settings": "Activați setările", "total": "Total", @@ -1937,6 +2012,7 @@ "trash_page_select_assets_btn": "Selectează resurse", "trash_page_title": "Coș ({count})", "trashed_items_will_be_permanently_deleted_after": "Elementele din coșul de gunoi vor fi șterse definitiv după {days, plural, one {# zi} other {# zile}}.", + "troubleshoot": "Depanați", "type": "Tip", "unable_to_change_pin_code": "Nu se poate schimba codul PIN", "unable_to_setup_pin_code": "Nu se poate configura codul PIN", @@ -1963,10 +2039,11 @@ "unselect_all_duplicates": "Deselectați toate duplicatele", "unselect_all_in": "Deselectați toate din {group}", "unstack": "Dezasamblați", - "unstack_action_prompt": "{count} unstacked", + "unstack_action_prompt": "{count} neîmpachetate", "unstacked_assets_count": "Nestivuit {count, plural, one {# resursă} other {# resurse}}", "untagged": "Neetichetat", "up_next": "Mai departe", + "update_location_action_prompt": "Actualizează locația pentru {count} resurse selectate cu:", "updated_at": "Actualizat", "updated_password": "Parolă actualizată", "upload": "Încărcați", @@ -2033,13 +2110,14 @@ "view_next_asset": "Vizualizați următoarea resursă", "view_previous_asset": "Vizualizați resursa anterioară", "view_qr_code": "Vezi cod QR", + "view_similar_photos": "Vizualizați poze similare", "view_stack": "Vizualizați Stiva", "view_user": "Vizualizare utilizator", "viewer_remove_from_stack": "Șterge din grup", "viewer_stack_use_as_main_asset": "Folosește ca resursă principală", "viewer_unstack": "Anulează grup", "visibility_changed": "Vizibilitatea schimbată pentru {count, plural, one {# persoană} other {# persoane}}", - "waiting": "Așteptați", + "waiting": "În așteptare", "warning": "Avertisment", "week": "Sǎptǎmânǎ", "welcome": "Bun venit", @@ -2051,5 +2129,6 @@ "yes": "Da", "you_dont_have_any_shared_links": "Nu aveți linkuri partajate", "your_wifi_name": "Numele rețelei tale WiFi", - "zoom_image": "Măriți Imaginea" + "zoom_image": "Măriți Imaginea", + "zoom_to_bounds": "Mărește la margini" } diff --git a/i18n/ru.json b/i18n/ru.json index 60c271af16..f17b5ce364 100644 --- a/i18n/ru.json +++ b/i18n/ru.json @@ -28,6 +28,7 @@ "add_to_album": "Добавить в альбом", "add_to_album_bottom_sheet_added": "Добавлено в альбом {album}", "add_to_album_bottom_sheet_already_exists": "Уже в альбоме {album}", + "add_to_album_bottom_sheet_some_local_assets": "Некоторые объекты не добавлены в альбом, поскольку еще не загружены на сервер", "add_to_album_toggle": "Переключить выделение для альбома {album}", "add_to_albums": "Добавить в альбомы", "add_to_albums_count": "Добавить в альбомы ({count})", @@ -39,7 +40,7 @@ "admin": { "add_exclusion_pattern_description": "Добавьте шаблоны исключений. Поддерживаются символы подстановки *, ** и ?. Чтобы игнорировать все файлы в любом каталоге с именем \"Raw\", укажите \"**/Raw/**\". Чтобы игнорировать все файлы, заканчивающиеся на \".tif\", используйте \"**/*.tif\". Чтобы игнорировать путь целиком, укажите \"/path/to/ignore/**\".", "admin_user": "Администратор", - "asset_offline_description": "Этот файл внешней библиотеки не был найден на диске и был перемещён в корзину. Если файл был перемещён внутри библиотеки, проверьте временную шкалу, чтобы найти новый соответствующий ресурс. Чтобы восстановить файл, убедитесь, что путь ниже доступен для Immich и выполните сканирование библиотеки.", + "asset_offline_description": "Этот объект из внешней библиотеки не был обнаружен на диске и поэтому перемещён в корзину. Если файл объекта был перемещён внутри библиотеки, проверьте временную шкалу, чтобы найти новый соответствующий объект. Чтобы восстановить файл, убедитесь, что следующий путь доступен для Immich, и выполните сканирование библиотеки.", "authentication_settings": "Настройки аутентификации", "authentication_settings_description": "Управление паролями, OAuth и другими настройками аутентификации", "authentication_settings_disable_all": "Вы уверены, что хотите отключить все методы входа? Вход будет полностью отключен.", @@ -77,7 +78,7 @@ "face_detection_description": "Обнаруживает лица на объектах с использованием машинного обучения. Для видео анализируется только миниатюра. Кнопка \"Обновить\" запускает повторную обработку всех объектов. \"Сброс\" — дополнительно удаляет все имеющиеся данные о лицах. \"Отсутствующие\" — ставит в очередь объекты, которые ещё не были обработаны. Обнаруженные лица помещаются в очередь для задачи Распознавание лиц и последующей их привязки к существующим или новым людям.", "facial_recognition_job_description": "Группирует и назначает обнаруженные лица людям. Выполняется после завершения задачи Обнаружение лиц. Кнопка \"Сброс\" (пере)назначает все лица. \"Отсутствующие\" — добавляет в очередь обработки лица, не привязанные к человеку.", "failed_job_command": "Команда {command} не выполнена для задачи: {job}", - "force_delete_user_warning": "ПРЕДУПРЕЖДЕНИЕ: Это приведет к немедленному удалению пользователя и его ресурсов. Это действие невозможно отменить, и файлы не могут быть восстановлены.", + "force_delete_user_warning": "ПРЕДУПРЕЖДЕНИЕ: Это приведет к немедленному удалению пользователя и всех его объектов. Это действие невозможно отменить, файлы не смогут быть восстановлены.", "image_format": "Формат", "image_format_description": "WebP создает файлы меньшего размера, чем JPEG, но кодирует медленнее.", "image_fullsize_description": "Полноразмерное изображение без метаданных, используется при увеличении", @@ -275,7 +276,7 @@ "storage_template_hash_verification_enabled_description": "Включает проверку хеша, не отключайте её, если не уверены в последствиях", "storage_template_migration": "Применение шаблона хранилища", "storage_template_migration_description": "Применяет текущий {template} к ранее загруженным объектам", - "storage_template_migration_info": "Расширения файлов всегда будут сохраняться в нижнем регистре. Изменения в шаблоне будут применяться только к новым ресурсам. Чтобы применить шаблон к ранее загруженным ресурсам, запустите {job}.", + "storage_template_migration_info": "Расширения файлов всегда будут сохраняться в нижнем регистре. Изменения в шаблоне будут применяться только к новым объектам. Чтобы применить шаблон к ранее загруженным объектам, запустите {job}.", "storage_template_migration_job": "Задача по применению шаблона хранилища", "storage_template_more_details": "Для получения дополнительной информации об этой функции обратитесь к разделам документации Шаблон хранилища и Структура хранения файлов", "storage_template_onboarding_description_v2": "Если эта функция включена, она автоматически организует файлы на основе заданного пользователем шаблона. Для получения дополнительной информации обратитесь к документации.", @@ -425,7 +426,7 @@ "album_leave": "Покинуть альбом?", "album_leave_confirmation": "Вы уверены, что хотите покинуть {album}?", "album_name": "Название альбома", - "album_options": "Действия с альбомом", + "album_options": "Параметры альбома", "album_remove_user": "Удалить пользователя?", "album_remove_user_confirmation": "Вы уверены, что хотите удалить пользователя {user}?", "album_search_not_found": "Не найдено альбомов по вашему запросу", @@ -506,8 +507,8 @@ "asset_troubleshoot": "Данные для диагностики", "asset_uploaded": "Загружено", "asset_uploading": "Загрузка…", - "asset_viewer_settings_subtitle": "Настройка параметров отображения", - "asset_viewer_settings_title": "Просмотр изображений", + "asset_viewer_settings_subtitle": "Параметры отображения", + "asset_viewer_settings_title": "Просмотр объектов", "assets": "Объекты", "assets_added_count": "{count, plural, one {Добавлен # объект} many {Добавлено # объектов} other {Добавлено # объекта}}", "assets_added_to_album_count": "В альбом {count, plural, one {добавлен # объект} many {добавлено # объектов} other {добавлено # объекта}}", @@ -598,6 +599,7 @@ "backup_controller_page_turn_on": "Включить", "backup_controller_page_uploading_file_info": "Информация о загружаемом файле", "backup_err_only_album": "Невозможно удалить единственный альбом", + "backup_error_sync_failed": "Сбой синхронизации. Невозможно запустить резервное копирование.", "backup_info_card_assets": "объектов", "backup_manual_cancelled": "Отменено", "backup_manual_in_progress": "Загрузка в процессе. Попробуйте позже", @@ -703,7 +705,7 @@ "confirm": "Подтвердить", "confirm_admin_password": "Подтвердите пароль администратора", "confirm_delete_face": "Удалить лицо человека {name} из этого объекта?", - "confirm_delete_shared_link": "Вы уверены, что хотите удалить эту публичную ссылку?", + "confirm_delete_shared_link": "Вы действительно хотите удалить эту публичную ссылку?", "confirm_keep_this_delete_others": "Все остальные объекты в группе будут удалены, кроме этого объекта. Вы уверены, что хотите продолжить?", "confirm_new_pin_code": "Подтвердите новый PIN-код", "confirm_password": "Подтвердите пароль", @@ -718,13 +720,13 @@ "control_bottom_app_bar_delete_from_immich": "Удалить из Immich", "control_bottom_app_bar_delete_from_local": "Удалить с устройства", "control_bottom_app_bar_edit_location": "Изменить место", - "control_bottom_app_bar_edit_time": "Изменить дату и время", - "control_bottom_app_bar_share_link": "Поделиться ссылкой", + "control_bottom_app_bar_edit_time": "Изменить дату", + "control_bottom_app_bar_share_link": "Создать ссылку", "control_bottom_app_bar_share_to": "Поделиться с", "control_bottom_app_bar_trash_from_immich": "В корзину", "copied_image_to_clipboard": "Изображение скопировано в буфер обмена.", "copied_to_clipboard": "Скопировано в буфер обмена!", - "copy_error": "Ошибка копирования", + "copy_error": "Скопировать ошибку", "copy_file_path": "Копировать путь к файлу", "copy_image": "Копировать", "copy_link": "Копировать ссылку", @@ -740,7 +742,7 @@ "create_library": "Создать библиотеку", "create_link": "Создать ссылку", "create_link_to_share": "Создать ссылку общего доступа", - "create_link_to_share_description": "Разрешить всем, у кого есть ссылка, просмотреть выбранные фотографии", + "create_link_to_share_description": "Разрешить всем, у кого есть ссылка, просматривать выбранные фотографии", "create_new": "СОЗДАТЬ НОВЫЙ", "create_new_person": "Добавить нового человека", "create_new_person_hint": "Назначить выбранные объекты на нового человека", @@ -765,7 +767,7 @@ "daily_title_text_date": "E, MMM dd", "daily_title_text_date_year": "E, MMM dd, yyyy", "dark": "Тёмная", - "dark_theme": "Тёмная тема", + "dark_theme": "Включить/выключить тёмную тему", "date_after": "Дата после", "date_and_time": "Дата и Время", "date_before": "Дата до", @@ -911,22 +913,22 @@ "error_title": "Ошибка - Что-то пошло не так", "errors": { "cannot_navigate_next_asset": "Не удалось перейти к следующему объекту", - "cannot_navigate_previous_asset": "Не удалось перейти к предыдущему ресурсу", + "cannot_navigate_previous_asset": "Не удалось перейти к предыдущему объекту", "cant_apply_changes": "Не удается применить изменения", "cant_change_activity": "Не удается {enabled, select, true {отключить} other {включить}} активность", - "cant_change_asset_favorite": "Не удалось изменить статус \"избранное\" для ресурса", + "cant_change_asset_favorite": "Не удалось изменить статус \"Избранное\" для объекта", "cant_change_metadata_assets_count": "Не удалось изменить метаданные у {count, plural, one {# объекта} other {# объектов}}", "cant_get_faces": "Не удается получить лица", "cant_get_number_of_comments": "Не удается получить количество комментариев", "cant_search_people": "Не удается выполнить поиск людей", "cant_search_places": "Не удается выполнить поиск мест", - "error_adding_assets_to_album": "Ошибка при добавлении ресурсов в альбом", + "error_adding_assets_to_album": "Ошибка при добавлении объектов в альбом", "error_adding_users_to_album": "Ошибка при добавлении пользователей в альбом", "error_deleting_shared_user": "Ошибка при удалении пользователя с общим доступом", "error_downloading": "Ошибка при загрузке {filename}", "error_hiding_buy_button": "Ошибка скрытия кнопки", - "error_removing_assets_from_album": "Ошибка при удалении ресурсов из альбома, проверьте консоль для получения дополнительной информации", - "error_selecting_all_assets": "Ошибка при выборе всех ресурсов", + "error_removing_assets_from_album": "Ошибка при удалении объектов из альбома, проверьте консоль для получения дополнительной информации", + "error_selecting_all_assets": "Ошибка при выборе всех объектов", "exclusion_pattern_already_exists": "Такая модель исключения уже существует.", "failed_to_create_album": "Не удалось создать альбом", "failed_to_create_shared_link": "Не удалось создать публичную ссылку", @@ -1347,9 +1349,9 @@ "monthly_title_text_date_format": "MMMM y", "more": "Дополнительные действия", "move": "Переместить", - "move_off_locked_folder": "Переместить из личной папки", + "move_off_locked_folder": "Убрать из личной папки", "move_to_lock_folder_action_prompt": "Объекты добавлены в личную папку ({count} шт.)", - "move_to_locked_folder": "Переместить в личную папку", + "move_to_locked_folder": "В личную папку", "move_to_locked_folder_confirmation": "Эти фото и видео будут удалены из всех альбомов и будут доступны только в личной папке", "moved_to_archive": "{count, plural, one {# объект перемещён} many {# объектов перемещены} other {# объекта перемещены}} в архив", "moved_to_library": "{count, plural, one {# объект перемещён} many {# объектов перемещены} other {# объекта перемещены}} в библиотеку", @@ -1408,7 +1410,7 @@ "not_available": "Нет данных", "not_in_any_album": "Ни в одном альбоме", "not_selected": "Не выбрано", - "note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить метку хранилища к ранее загруженным ресурсам, запустите", + "note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить метку хранилища к ранее загруженным объектам, запустите", "notes": "Примечание", "nothing_here_yet": "Здесь пока ничего нет", "notification_permission_dialog_content": "Чтобы включить уведомления, перейдите в «Настройки» и выберите «Разрешить».", @@ -1539,7 +1541,7 @@ "primary": "Главное", "privacy": "Конфиденциальность", "profile": "Профиль", - "profile_drawer_app_logs": "Журнал", + "profile_drawer_app_logs": "Журнал событий", "profile_drawer_client_out_of_date_major": "Версия мобильного приложения устарела. Пожалуйста, обновите его.", "profile_drawer_client_out_of_date_minor": "Версия мобильного приложения устарела. Пожалуйста, обновите его.", "profile_drawer_client_server_up_to_date": "Клиент и сервер обновлены", @@ -1590,14 +1592,14 @@ "rating_count": "{count, plural, one {# звезда} many {# звезд} other {# звезды}}", "rating_description": "Система оценки объектов в панели информации", "reaction_options": "Действия с отметкой", - "read_changelog": "Прочитать список изменений", + "read_changelog": "История релизов", "readonly_mode_disabled": "Режим «только просмотр» отключён", "readonly_mode_enabled": "Режим «только просмотр» включён", "ready_for_upload": "Готово к загрузке", "reassign": "Переназначить", "reassigned_assets_to_existing_person": "Лица на {count, plural, one {# объекте} other {# объектах}} переназначены на {name, select, null {другого человека} other {человека с именем {name}}}", "reassigned_assets_to_new_person": "Лица на {count, plural, one {# объекте} other {# объектах}} переназначены на нового человека", - "reassing_hint": "Назначить выбранные ресурсы указанному человеку", + "reassing_hint": "Назначить выбранные объекты указанному человеку", "recent": "Недавние", "recent-albums": "Недавние альбомы", "recent_searches": "Недавние поисковые запросы", @@ -1630,7 +1632,7 @@ "remove_from_favorites": "Удалить из избранного", "remove_from_lock_folder_action_prompt": "Объекты удалены из личной папки ({count} шт.)", "remove_from_locked_folder": "Удалить из личной папки", - "remove_from_locked_folder_confirmation": "Вы действительно хотите переместить эти фото и видео из личной папки? Они станут доступны в вашей библиотеке.", + "remove_from_locked_folder_confirmation": "Вы хотите убрать выделенные объекты из личной папки? Они снова станут доступны в вашей библиотеке.", "remove_from_shared_link": "Удалить из публичной ссылки", "remove_memory": "Удалить воспоминание", "remove_photo_from_memory": "Удалить фото из воспоминания", @@ -1791,7 +1793,7 @@ "setting_image_viewer_preview_title": "Загружать уменьшенное изображение", "setting_image_viewer_title": "Изображения", "setting_languages_apply": "Применить", - "setting_languages_subtitle": "Изменить язык приложения", + "setting_languages_subtitle": "Изменение языка приложения", "setting_notifications_notify_failures_grace_period": "Уведомлять об ошибках фонового резервного копирования: {duration}", "setting_notifications_notify_hours": "{count} ч.", "setting_notifications_notify_immediately": "немедленно", @@ -1800,7 +1802,7 @@ "setting_notifications_notify_seconds": "{count} сек.", "setting_notifications_single_progress_subtitle": "Подробная информация о ходе загрузки для каждого объекта", "setting_notifications_single_progress_title": "Показать ход выполнения фонового резервного копирования", - "setting_notifications_subtitle": "Настройка параметров уведомлений", + "setting_notifications_subtitle": "Параметры уведомлений", "setting_notifications_total_progress_subtitle": "Общий прогресс загрузки (выполнено/всего объектов)", "setting_notifications_total_progress_title": "Показать общий прогресс фонового резервного копирования", "setting_video_viewer_looping_title": "Циклическое воспроизведение", @@ -1833,17 +1835,17 @@ "shared_link_clipboard_copied_massage": "Скопировано в буфер обмена", "shared_link_clipboard_text": "Ссылка: {link}\nПароль: {password}", "shared_link_create_error": "Ошибка при создании публичной ссылки", - "shared_link_custom_url_description": "Доступ к этой общей ссылке с помощью заданного пользователем URL-адреса", - "shared_link_edit_description_hint": "Введите описание публичного доступа", + "shared_link_custom_url_description": "Пользовательский URL-адрес общего доступа", + "shared_link_edit_description_hint": "Введите описание", "shared_link_edit_expire_after_option_day": "1 день", "shared_link_edit_expire_after_option_days": "{count} дней", "shared_link_edit_expire_after_option_hour": "1 час", "shared_link_edit_expire_after_option_hours": "{count} часов", "shared_link_edit_expire_after_option_minute": "1 минуту", "shared_link_edit_expire_after_option_minutes": "{count} минут", - "shared_link_edit_expire_after_option_months": "{count} месяцев", + "shared_link_edit_expire_after_option_months": "{count} месяца", "shared_link_edit_expire_after_option_year": "{count} лет", - "shared_link_edit_password_hint": "Введите пароль для публичного доступа", + "shared_link_edit_password_hint": "Защитите доступ паролем", "shared_link_edit_submit_button": "Обновить ссылку", "shared_link_error_server_url_fetch": "Невозможно запросить URL с сервера", "shared_link_expires_day": "Истечёт через {count} день", @@ -1859,7 +1861,7 @@ "shared_link_info_chip_metadata": "EXIF", "shared_link_manage_links": "Управление публичными ссылками", "shared_link_options": "Действия со ссылкой", - "shared_link_password_description": "Требовать пароль для доступа к этой общей ссылке", + "shared_link_password_description": "Требовать пароль для доступа к объектам", "shared_links": "Публичные ссылки", "shared_links_description": "Делитесь фотографиями и видео по ссылке", "shared_photos_and_videos_count": "{assetCount, plural, other {# фото и видео.}}", @@ -1874,7 +1876,7 @@ "sharing_silver_appbar_create_shared_album": "Создать общий альбом", "sharing_silver_appbar_share_partner": "Поделиться с партнёром", "shift_to_permanent_delete": "нажмите ⇧ чтобы удалить объект навсегда", - "show_album_options": "Показать параметры альбома", + "show_album_options": "Действия с альбомом", "show_albums": "Показать альбомы", "show_all_people": "Показать всех людей", "show_and_hide_people": "Показать и скрыть людей", diff --git a/i18n/sk.json b/i18n/sk.json index 6c009deea1..2fdd6ca07a 100644 --- a/i18n/sk.json +++ b/i18n/sk.json @@ -28,6 +28,7 @@ "add_to_album": "Pridať do albumu", "add_to_album_bottom_sheet_added": "Pridané do {album}", "add_to_album_bottom_sheet_already_exists": "Už je v {album}", + "add_to_album_bottom_sheet_some_local_assets": "Niektoré lokálne súbory nebolo možné pridať do albumu", "add_to_album_toggle": "Prepnúť výber pre {album}", "add_to_albums": "Pridať do albumov", "add_to_albums_count": "Pridať do albumov ({count})", diff --git a/i18n/sl.json b/i18n/sl.json index 23701836f2..7a1aef509a 100644 --- a/i18n/sl.json +++ b/i18n/sl.json @@ -28,6 +28,7 @@ "add_to_album": "Dodaj v album", "add_to_album_bottom_sheet_added": "Dodano v {album}", "add_to_album_bottom_sheet_already_exists": "Že v {album}", + "add_to_album_bottom_sheet_some_local_assets": "Nekaterih lokalnih sredstev ni bilo mogoče dodati v album", "add_to_album_toggle": "Preklopi izbiro za {album}", "add_to_albums": "Dodaj v albume", "add_to_albums_count": "Dodaj v albume ({count})", diff --git a/i18n/tr.json b/i18n/tr.json index 710d20a580..38d1a4c227 100644 --- a/i18n/tr.json +++ b/i18n/tr.json @@ -20,7 +20,7 @@ "add_import_path": "İçe aktarma yolu ekle", "add_location": "Konum ekle", "add_more_users": "Daha fazla kullanıcı ekle", - "add_partner": "Partner ekle", + "add_partner": "Ortak ekle", "add_path": "Yol ekle", "add_photos": "Fotoğraf ekle", "add_tag": "Etiket ekle", @@ -1117,7 +1117,7 @@ "header_settings_field_validator_msg": "Değer boş olamaz", "header_settings_header_name_input": "Header adı", "header_settings_header_value_input": "Header değeri", - "headers_settings_tile_subtitle": "Uygulamanın her ağ isteğiyle birlikte göndermesi gereken proxy header'ları tanımlayın", + "headers_settings_tile_subtitle": "Uygulamanın her ağ isteğinde göndermesi gereken proxy başlıklarını tanımlayın", "headers_settings_tile_title": "Özel proxy headers", "hi_user": "Merhaba {name} {email}", "hide_all_people": "Tüm kişileri gizle", @@ -1129,11 +1129,11 @@ "home_page_add_to_album_conflicts": "{album} albümüne {added} öğe eklendi. {failed} öğe zaten albümdeydi.", "home_page_add_to_album_err_local": "Yerel öğeler henüz albümlere eklenemiyor, atlanıyor", "home_page_add_to_album_success": "{album} albümüne {added} öğe eklendi.", - "home_page_album_err_partner": "Partner öğeler henüz bir albüme eklenemiyor, atlanıyor", + "home_page_album_err_partner": "Ortak öğeler henüz bir albüme eklenemiyor, atlanıyor", "home_page_archive_err_local": "Yerel öğeler henüz arşivlenemiyor, atlanıyor", - "home_page_archive_err_partner": "Partner öğeler henüz arşivlenemiyor, atlanıyor", + "home_page_archive_err_partner": "Ortak öğeler henüz arşivlenemiyor, atlanıyor", "home_page_building_timeline": "Zaman çizelgesi oluşturuluyor", - "home_page_delete_err_partner": "Partner öğeler silinemez, atlanıyor", + "home_page_delete_err_partner": "Ortak öğeler silinemez, atlanıyor", "home_page_delete_remote_err_local": "Uzaktan silme seçimindeki yerel öğeler atlanıyor", "home_page_favorite_err_local": "Yerel öğeler henüz favorilere eklenemiyor, atlanıyor", "home_page_favorite_err_partner": "Ortak öğeler henüz favorilere eklenemiyor, atlanıyor", @@ -1236,7 +1236,7 @@ "local_asset_cast_failed": "Sunucuya yüklenmemiş bir öğe yansıtılamaz", "local_assets": "Yerel Öğeler", "local_media_summary": "Yerel Medya Özeti", - "local_network": "Yerel Wi-Fi", + "local_network": "Yerel ağ", "local_network_sheet_info": "Uygulama belirlenmiş Wi-Fi ağını kullanırken bu URL üzerinden sunucuya bağlanacaktır", "location_permission": "Konum izni", "location_permission_content": "Otomatik geçiş özelliğinin çalışabilmesi için Immich'in mevcut Wi-Fi ağının adını bilmesi, bunu sağlamak için de tam konum iznine ihtiyacı vardır", @@ -1313,7 +1313,7 @@ "map_settings_date_range_option_years": "Son {years} yıl", "map_settings_dialog_title": "Harita Ayarları", "map_settings_include_show_archived": "Arşivdekileri dahil et", - "map_settings_include_show_partners": "Partnerleri Dahil Et", + "map_settings_include_show_partners": "Ortakları Dahil Et", "map_settings_only_show_favorites": "Sadece Favorileri Göster", "map_settings_theme_settings": "Harita Teması", "map_zoom_to_see_photos": "Fotoğrafları görmek için uzaklaştırın", @@ -1456,13 +1456,13 @@ "partner_can_access_location": "Fotoğraf ve videolarınızın çekildiği konum", "partner_list_user_photos": "{user} fotoğrafları", "partner_list_view_all": "Tümünü gör", - "partner_page_empty_message": "Fotoğraflarınız henüz hiçbir partnerle paylaşılmadı.", + "partner_page_empty_message": "Fotoğraflarınız henüz hiçbir ortakla paylaşılmadı.", "partner_page_no_more_users": "Eklenecek başka kullanıcı yok", - "partner_page_partner_add_failed": "Partner eklenemedi", - "partner_page_select_partner": "Partner seç", + "partner_page_partner_add_failed": "Ortak eklenemedi", + "partner_page_select_partner": "Ortak seç", "partner_page_shared_to_title": "Paylaşıldı", "partner_page_stop_sharing_content": "{partner} artık fotoğraflarınıza erişemeyecek.", - "partner_sharing": "Ortak paylaşımı", + "partner_sharing": "Ortak Paylaşımı", "partners": "Ortaklar", "password": "Şifre", "password_does_not_match": "Şifre eşleşmiyor", @@ -1785,7 +1785,7 @@ "set_slideshow_to_fullscreen": "Slayt gösterisini tam ekran yap", "set_stack_primary_asset": "Birincil öğe olarak ayarla", "setting_image_viewer_help": "Görüntüleyici önce küçük resmi gösterir, ardından orta boy önizlemeyi (etkinleştirilmişse) ve son olarak orijinali (etkinleştirilmişse) gösterir.", - "setting_image_viewer_original_subtitle": "Orijinal tam çözünürlüklü görüntüyü göstermek için etkinleştirin. Veri kullanımını azaltmak için devre dışı bırakın (hem ağ hem de cihaz önbelleği).", + "setting_image_viewer_original_subtitle": "Orijinal tam çözünürlüklü görüntüyü (büyük!) yüklemek için etkinleştirin. Veri kullanımını azaltmak için devre dışı bırakın (hem ağ hem de cihaz önbelleği).", "setting_image_viewer_original_title": "Orijinal görüntüyü göster", "setting_image_viewer_preview_subtitle": "Orta çözünürlüklü bir görüntü göstermek için etkinleştirin. Orijinali doğrudan göstermek veya yalnızca küçük resmi kullanmak için devre dışı bırakın.", "setting_image_viewer_preview_title": "Önizleme görüntüsü göster", @@ -1872,7 +1872,7 @@ "sharing_page_empty_list": "LİSTEYİ BOŞALT", "sharing_sidebar_description": "Yan panelde paylaşılanlara kısa yol göster", "sharing_silver_appbar_create_shared_album": "Yeni paylaşılan albüm", - "sharing_silver_appbar_share_partner": "Partnerle paylaş", + "sharing_silver_appbar_share_partner": "Ortakla paylaş", "shift_to_permanent_delete": "Öğeyi kalıcı olarak silmek için ⇧ tuşuna basın", "show_album_options": "Albüm ayarlarını göster", "show_albums": "Albümleri göster", @@ -1978,7 +1978,7 @@ "theme_setting_system_primary_color_title": "Sistem rengini kullan", "theme_setting_system_theme_switch": "Otomatik (sistem ayarına göre)", "theme_setting_theme_subtitle": "Uygulama teması seç", - "theme_setting_three_stage_loading_subtitle": "Üç aşamalı yükleme, yükleme performansını artırabilir ancak önemli ölçüde daha yüksek ağ yüküne sebep olur", + "theme_setting_three_stage_loading_subtitle": "Üç aşamalı yükleme, yükleme performansını artırabilir ancak ağ yükünü önemli ölçüde artırır", "theme_setting_three_stage_loading_title": "Üç aşamalı yüklemeyi etkinleştir", "they_will_be_merged_together": "Birlikte birleştirilecekler", "third_party_resources": "Üçüncü taraf kaynaklar", @@ -2083,7 +2083,7 @@ "username": "Kullanıcı adı", "users": "Kullanıcılar", "users_added_to_album_count": "Albüme {count, plural, one {# user} other {# users}} eklendi", - "utilities": "Yardımcı Uygulamalar", + "utilities": "Yardımcı Programlar", "validate": "Doğrula", "validate_endpoint_error": "Lütfen geçerli bir URL girin", "variables": "Değişkenler", diff --git a/i18n/uk.json b/i18n/uk.json index f34f581315..a664fc9aa0 100644 --- a/i18n/uk.json +++ b/i18n/uk.json @@ -28,6 +28,7 @@ "add_to_album": "Додати у альбом", "add_to_album_bottom_sheet_added": "Додано до {album}", "add_to_album_bottom_sheet_already_exists": "Вже є в {album}", + "add_to_album_bottom_sheet_some_local_assets": "Деякі локальні ресурси не вдалося додати до альбому", "add_to_album_toggle": "Перемикання вибору для {album}", "add_to_albums": "Додати до альбомів", "add_to_albums_count": "Додати до альбомів ({count})", @@ -598,6 +599,7 @@ "backup_controller_page_turn_on": "Увімкнути резервне копіювання в активному режимі", "backup_controller_page_uploading_file_info": "Завантажую інформацію про файл", "backup_err_only_album": "Не можу видалити єдиний альбом", + "backup_error_sync_failed": "Помилка синхронізації. Не вдається обробити резервну копію.", "backup_info_card_assets": "елементи", "backup_manual_cancelled": "Скасовано", "backup_manual_in_progress": "Завантаження вже відбувається. Спробуйте згодом", diff --git a/i18n/zh_Hant.json b/i18n/zh_Hant.json index b972639153..fe9108c116 100644 --- a/i18n/zh_Hant.json +++ b/i18n/zh_Hant.json @@ -28,6 +28,7 @@ "add_to_album": "加入到相簿", "add_to_album_bottom_sheet_added": "新增到 {album}", "add_to_album_bottom_sheet_already_exists": "已在 {album} 中", + "add_to_album_bottom_sheet_some_local_assets": "無法將某些本地資產添加到相册", "add_to_album_toggle": "選擇相簿{album}", "add_to_albums": "加入相簿", "add_to_albums_count": "將({count})個項目加入相簿", @@ -123,6 +124,13 @@ "logging_enable_description": "啟用日誌記錄", "logging_level_description": "啟用時的日誌層級。", "logging_settings": "日誌", + "machine_learning_availability_checks": "可用性檢查", + "machine_learning_availability_checks_description": "自動檢測並優先選擇可用的機器學習服務器", + "machine_learning_availability_checks_enabled": "啟用可用性檢查", + "machine_learning_availability_checks_interval": "檢查間隔", + "machine_learning_availability_checks_interval_description": "可用性檢查之間的間隔(毫秒)", + "machine_learning_availability_checks_timeout": "請求超時", + "machine_learning_availability_checks_timeout_description": "可用性檢查超時(毫秒)", "machine_learning_clip_model": "CLIP 模型", "machine_learning_clip_model_description": "這裡有份 CLIP 模型名單。注意:更換模型後須對所有圖片重新執行「智慧搜尋」任務。", "machine_learning_duplicate_detection": "重複項目偵測", @@ -423,6 +431,7 @@ "album_remove_user_confirmation": "確定要移除 {user} 嗎?", "album_search_not_found": "找不到符合搜尋條件的相簿", "album_share_no_users": "看來您與所有使用者共享了這本相簿,或沒有其他使用者可供分享。", + "album_summary": "相册摘要", "album_updated": "更新相簿時", "album_updated_setting_description": "當共享相簿有新項目時用電子郵件通知我", "album_user_left": "離開 {album}", @@ -461,6 +470,7 @@ "app_bar_signout_dialog_title": "登出", "app_settings": "應用程式設定", "appears_in": "出現於", + "apply_count": "應用({count, number})", "archive": "封存", "archive_action_prompt": "已將 ({count}) 個加入進封存", "archive_or_unarchive_photo": "封存或取消封存照片", @@ -493,6 +503,8 @@ "asset_restored_successfully": "媒體復原成功", "asset_skipped": "已跳過", "asset_skipped_in_trash": "已在垃圾桶", + "asset_trashed": "資產被丟棄", + "asset_troubleshoot": "資產故障排除", "asset_uploaded": "已上傳", "asset_uploading": "上傳中…", "asset_viewer_settings_subtitle": "管理您的媒體庫檢視器設定", @@ -526,8 +538,10 @@ "autoplay_slideshow": "自動播放幻燈片", "back": "返回", "back_close_deselect": "返回、關閉及取消選取", + "background_backup_running_error": "後臺備份當前正在運行,無法啟動手動備份", "background_location_permission": "背景存取位置權限", "background_location_permission_content": "為了在背景執行時切換網路,Immich 必須始終具有精確位置存取權限,才能讀取 Wi-Fi 網路名稱", + "background_options": "背景選項", "backup": "備份", "backup_album_selection_page_albums_device": "裝置上的相簿({count})", "backup_album_selection_page_albums_tap": "點一下以選取,點兩下以排除", @@ -535,6 +549,7 @@ "backup_album_selection_page_select_albums": "選取相簿", "backup_album_selection_page_selection_info": "選取資訊", "backup_album_selection_page_total_assets": "總不重複媒體數", + "backup_albums_sync": "備份相册同步", "backup_all": "全部", "backup_background_service_backup_failed_message": "備份媒體失敗。正在重試…", "backup_background_service_connection_failed_message": "連線伺服器失敗。正在重試…", @@ -651,6 +666,8 @@ "change_pin_code": "變更 PIN 碼", "change_your_password": "變更您的密碼", "changed_visibility_successfully": "已成功變更可見性", + "charging": "充電", + "charging_requirement_mobile_backup": "後臺備份要求設備正在充電", "check_corrupt_asset_backup": "檢查損毀的備份項目", "check_corrupt_asset_backup_button": "執行檢查", "check_corrupt_asset_backup_description": "僅在連接 Wi-Fi 且所有媒體已完成備份後執行此檢查。此程序可能需要數分鐘。", @@ -737,6 +754,7 @@ "create_user": "建立使用者", "created": "建立於", "created_at": "建立於", + "creating_linked_albums": "創建連結相册 ...", "crop": "裁剪", "curated_object_page_title": "事物", "current_device": "目前裝置", @@ -886,7 +904,9 @@ "error": "錯誤", "error_change_sort_album": "變更相簿排序失敗", "error_delete_face": "從媒體刪除臉孔時失敗", + "error_getting_places": "獲取位置時出錯", "error_loading_image": "圖片載入錯誤", + "error_loading_partners": "加載合作夥伴時出錯:{error}", "error_saving_image": "錯誤:{error}", "error_tag_face_bounding_box": "標記臉部錯誤 - 無法取得邊界框坐標", "error_title": "錯誤 - 發生錯誤", @@ -1051,6 +1071,7 @@ "favorites_page_no_favorites": "未找到收藏項目", "feature_photo_updated": "特色照片已更新", "features": "功能", + "features_in_development": "發展中的特點", "features_setting_description": "管理應用程式功能", "file_name": "檔案名稱", "file_name_or_extension": "檔案名稱或副檔名", @@ -1078,6 +1099,8 @@ "go_back": "返回", "go_to_folder": "前往資料夾", "go_to_search": "前往搜尋", + "gps": "GPS", + "gps_missing": "無GPS", "grant_permission": "授予權限", "group_albums_by": "分類群組的方式...", "group_country": "按照國家分類", @@ -1213,6 +1236,7 @@ "local": "本地", "local_asset_cast_failed": "無法轉換未上傳至伺服器的項目", "local_assets": "本地項目", + "local_media_summary": "當地媒體摘要", "local_network": "本地網路", "local_network_sheet_info": "當使用指定的 Wi-Fi 網路時,應用程式將透過此網址連線至伺服器", "location_permission": "位置權限", @@ -1224,6 +1248,7 @@ "location_picker_longitude_hint": "請在此處輸入您的經度值", "lock": "鎖定", "locked_folder": "鎖定的資料夾", + "log_detail_title": "日誌詳細資訊", "log_out": "登出", "log_out_all_devices": "登出所有裝置", "logged_in_as": "以{user}身分登入", @@ -1254,6 +1279,7 @@ "login_password_changed_success": "密碼更新成功", "logout_all_device_confirmation": "您確定要登出所有裝置嗎?", "logout_this_device_confirmation": "要登出這臺裝置嗎?", + "logs": "日誌", "longitude": "經度", "look": "樣貌", "loop_videos": "重播影片", @@ -1296,6 +1322,7 @@ "mark_as_read": "標記為已讀", "marked_all_as_read": "已全部標記為已讀", "matches": "相符", + "matching_assets": "匹配資產", "media_type": "媒體類型", "memories": "回憶", "memories_all_caught_up": "已全部看完", @@ -1336,6 +1363,7 @@ "name_or_nickname": "名稱或暱稱", "network_requirement_photos_upload": "使用行動網路流量備份照片", "network_requirement_videos_upload": "使用行動網路流量備份影片", + "network_requirements": "網絡要求", "network_requirements_updated": "網絡需求已變更,現重置備份佇列", "networking_settings": "網路", "networking_subtitle": "管理伺服器端點設定", @@ -1346,6 +1374,7 @@ "new_person": "新的人物", "new_pin_code": "新 PIN 碼", "new_pin_code_subtitle": "這是您第一次存取鎖定的資料夾。建立 PIN 碼以安全存取此頁面", + "new_timeline": "新時間軸", "new_user_created": "已建立新使用者", "new_version_available": "新版本已發布", "newest_first": "最新優先", @@ -1359,20 +1388,25 @@ "no_assets_message": "按這裡上傳您的第一張照片", "no_assets_to_show": "無項目展示", "no_cast_devices_found": "沒有找到 Google Cast 裝置", + "no_checksum_local": "沒有可用的校驗和-無法獲取本地資產", + "no_checksum_remote": "沒有可用的校驗和-無法獲取遠程資產", "no_duplicates_found": "沒發現重複項目。", "no_exif_info_available": "沒有可用的 Exif 資訊", "no_explore_results_message": "上傳更多照片以利探索。", "no_favorites_message": "加入收藏,加速尋找影像", "no_libraries_message": "建立外部媒體庫以查看您的照片和影片", + "no_local_assets_found": "未找到具有此校驗和的本地資產", "no_locked_photos_message": "鎖定的資料夾中的照片和影片會被隱藏,當您瀏覽或搜尋圖庫時不會顯示。", "no_name": "無名", "no_notifications": "沒有通知", "no_people_found": "找不到符合的人物", "no_places": "沒有地點", + "no_remote_assets_found": "未找到具有此校驗和的遠程資產", "no_results": "沒有結果", "no_results_description": "試試同義詞或更通用的關鍵字吧", "no_shared_albums_message": "建立相簿分享照片和影片", "no_uploads_in_progress": "沒有正在上傳的項目", + "not_available": "不適用", "not_in_any_album": "不在任何相簿中", "not_selected": "未選擇", "note_apply_storage_label_to_previously_uploaded assets": "*註:執行套用儲存標籤前先上傳項目", @@ -1407,6 +1441,8 @@ "open_the_search_filters": "開啟搜尋篩選器", "options": "選項", "or": "或", + "organize_into_albums": "整理成相册", + "organize_into_albums_description": "使用當前同步設定將現有照片放入相册", "organize_your_library": "整理您的圖庫", "original": "原圖", "other": "其他", @@ -1492,6 +1528,7 @@ "port": "埠口", "preferences_settings_subtitle": "管理應用程式偏好設定", "preferences_settings_title": "偏好設定", + "preparing": "準備", "preset": "預設", "preview": "預覽", "previous": "上一張", @@ -1557,6 +1594,7 @@ "read_changelog": "閱覽變更日誌", "readonly_mode_disabled": "唯讀模式已關閉", "readonly_mode_enabled": "唯讀模式已開啟", + "ready_for_upload": "已準備好上傳", "reassign": "重新指定", "reassigned_assets_to_existing_person": "已將 {count, plural, other {# 個檔案}}重新指定給{name, select, null {現有的人} other {{name}}}", "reassigned_assets_to_new_person": "已將 {count, plural, other {# 個檔案}}重新指定給一位新人物", @@ -1581,6 +1619,7 @@ "regenerating_thumbnails": "重新產生縮圖中", "remote": "遠端", "remote_assets": "遠端項目", + "remote_media_summary": "遠程媒體摘要", "remove": "移除", "remove_assets_album_confirmation": "確定要從相簿中移除 {count, plural, other {# 個檔案}}嗎?", "remove_assets_shared_link_confirmation": "確定刪除共享連結中{count, plural, other {# 個項目}}嗎?", @@ -1727,7 +1766,7 @@ "select_user_for_sharing_page_err_album": "新增相簿失敗", "selected": "已選擇", "selected_count": "{count, plural, other {選了 # 項}}", - "selected_gps_coordinates": "已選擇的 GPS 座標", + "selected_gps_coordinates": "選定的GPS座標", "send_message": "傳訊息", "send_welcome_email": "傳送歡迎電子郵件", "server_endpoint": "伺服器端點", @@ -1856,6 +1895,7 @@ "show_slideshow_transition": "顯示幻燈片轉場", "show_supporter_badge": "擁護者徽章", "show_supporter_badge_description": "顯示擁護者徽章", + "show_text_search_menu": "顯示文字蒐索選單", "shuffle": "隨機排序", "sidebar": "側邊欄", "sidebar_display_description": "在側邊欄中顯示鏈結", @@ -1886,6 +1926,7 @@ "stacktrace": "堆疊追蹤", "start": "開始", "start_date": "開始日期", + "start_date_before_end_date": "開始日期必須早於結束日期", "state": "地區", "status": "狀態", "stop_casting": "停止casting", @@ -2088,5 +2129,6 @@ "yes": "是", "you_dont_have_any_shared_links": "您沒有任何共享連結", "your_wifi_name": "您的 Wi-Fi 名稱", - "zoom_image": "縮放圖片" + "zoom_image": "縮放圖片", + "zoom_to_bounds": "縮放到邊界" } diff --git a/i18n/zh_SIMPLIFIED.json b/i18n/zh_SIMPLIFIED.json index 5b29640d63..1f1455aa19 100644 --- a/i18n/zh_SIMPLIFIED.json +++ b/i18n/zh_SIMPLIFIED.json @@ -28,6 +28,7 @@ "add_to_album": "添加到相册", "add_to_album_bottom_sheet_added": "添加到相册 “{album}”", "add_to_album_bottom_sheet_already_exists": "已在相册“ {album} ” 中", + "add_to_album_bottom_sheet_some_local_assets": "某些本地资产无法添加到相册", "add_to_album_toggle": "选择相册 {album}", "add_to_albums": "添加到相册", "add_to_albums_count": "添加到相册({count}个)", @@ -464,7 +465,7 @@ "api_key_description": "该应用密钥只会显示一次。请确保在关闭窗口前复制下来。", "api_key_empty": "API 密钥名称不可为空", "api_keys": "API 密钥", - "app_bar_signout_dialog_content": "确定退出登录?", + "app_bar_signout_dialog_content": "是否确定退出登录?", "app_bar_signout_dialog_ok": "是", "app_bar_signout_dialog_title": "退出登录", "app_settings": "应用设置", @@ -1898,7 +1899,7 @@ "shuffle": "随机", "sidebar": "侧边栏", "sidebar_display_description": "在侧边栏中显示链接", - "sign_out": "注销", + "sign_out": "退出登录", "sign_up": "注册", "size": "大小", "skip_to_content": "跳转到内容", From a498166cb6308a63948065fe0b8aa4d20dee097e Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 29 Sep 2025 18:52:32 +0000 Subject: [PATCH 56/60] chore: version v1.144.0 --- cli/package.json | 2 +- docs/static/archived-versions.json | 4 ++++ e2e/package.json | 2 +- machine-learning/pyproject.toml | 2 +- mobile/android/fastlane/Fastfile | 4 ++-- mobile/ios/fastlane/Fastfile | 2 +- mobile/openapi/README.md | 2 +- mobile/pubspec.yaml | 2 +- open-api/immich-openapi-specs.json | 2 +- open-api/typescript-sdk/package.json | 2 +- open-api/typescript-sdk/src/fetch-client.ts | 2 +- server/package.json | 2 +- web/package.json | 2 +- 13 files changed, 17 insertions(+), 13 deletions(-) diff --git a/cli/package.json b/cli/package.json index ce10484d80..c56f401d61 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@immich/cli", - "version": "2.2.92", + "version": "2.2.93", "description": "Command Line Interface (CLI) for Immich", "type": "module", "exports": "./dist/index.js", diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index e2466370f0..0dbe8cc5c6 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -1,4 +1,8 @@ [ + { + "label": "v1.144.0", + "url": "https://docs.v1.144.0.archive.immich.app" + }, { "label": "v1.143.1", "url": "https://docs.v1.143.1.archive.immich.app" diff --git a/e2e/package.json b/e2e/package.json index 8362046578..ec6055d444 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -1,6 +1,6 @@ { "name": "immich-e2e", - "version": "1.143.1", + "version": "1.144.0", "description": "", "main": "index.js", "type": "module", diff --git a/machine-learning/pyproject.toml b/machine-learning/pyproject.toml index 07ebc83330..9adb2095ab 100644 --- a/machine-learning/pyproject.toml +++ b/machine-learning/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "immich-ml" -version = "1.143.1" +version = "minor" description = "" authors = [{ name = "Hau Tran", email = "alex.tran1502@gmail.com" }] requires-python = ">=3.10,<4.0" diff --git a/mobile/android/fastlane/Fastfile b/mobile/android/fastlane/Fastfile index 1ce506c73d..1b635b8766 100644 --- a/mobile/android/fastlane/Fastfile +++ b/mobile/android/fastlane/Fastfile @@ -35,8 +35,8 @@ platform :android do task: 'bundle', build_type: 'Release', properties: { - "android.injected.version.code" => 3017, - "android.injected.version.name" => "1.143.1", + "android.injected.version.code" => 3018, + "android.injected.version.name" => "1.144.0", } ) upload_to_play_store(skip_upload_apk: true, skip_upload_images: true, skip_upload_screenshots: true, aab: '../build/app/outputs/bundle/release/app-release.aab') diff --git a/mobile/ios/fastlane/Fastfile b/mobile/ios/fastlane/Fastfile index 998f78f768..60e4e2cb81 100644 --- a/mobile/ios/fastlane/Fastfile +++ b/mobile/ios/fastlane/Fastfile @@ -22,7 +22,7 @@ platform :ios do path: "./Runner.xcodeproj", ) increment_version_number( - version_number: "1.143.1" + version_number: "1.144.0" ) increment_build_number( build_number: latest_testflight_build_number + 1, diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index 665bcb7e62..ca8fc43533 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -3,7 +3,7 @@ Immich API This Dart package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 1.143.1 +- API version: 1.144.0 - Generator version: 7.8.0 - Build package: org.openapitools.codegen.languages.DartClientCodegen diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index 3b6dbd310f..acee66d15b 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -2,7 +2,7 @@ name: immich_mobile description: Immich - selfhosted backup media file on mobile phone publish_to: 'none' -version: 1.143.1+3017 +version: 1.144.0+3018 environment: sdk: '>=3.8.0 <4.0.0' diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index 3071996d81..38437dae5e 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -9858,7 +9858,7 @@ "info": { "title": "Immich", "description": "Immich API", - "version": "1.143.1", + "version": "1.144.0", "contact": {} }, "tags": [], diff --git a/open-api/typescript-sdk/package.json b/open-api/typescript-sdk/package.json index afc8bf95e2..3be908b169 100644 --- a/open-api/typescript-sdk/package.json +++ b/open-api/typescript-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@immich/sdk", - "version": "1.143.1", + "version": "1.144.0", "description": "Auto-generated TypeScript SDK for the Immich API", "type": "module", "main": "./build/index.js", diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index 69a785d188..38ec162718 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1,6 +1,6 @@ /** * Immich - * 1.143.1 + * 1.144.0 * DO NOT MODIFY - This file has been generated using oazapfts. * See https://www.npmjs.com/package/oazapfts */ diff --git a/server/package.json b/server/package.json index 850431f406..168798a722 100644 --- a/server/package.json +++ b/server/package.json @@ -1,6 +1,6 @@ { "name": "immich", - "version": "1.143.1", + "version": "1.144.0", "description": "", "author": "", "private": true, diff --git a/web/package.json b/web/package.json index 425c1027c6..24f4c98b91 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "immich-web", - "version": "1.143.1", + "version": "1.144.0", "license": "GNU Affero General Public License version 3", "type": "module", "scripts": { From d0a872622a17dd80811fa28dcb30d113d7b9e5c5 Mon Sep 17 00:00:00 2001 From: bo0tzz Date: Mon, 29 Sep 2025 21:45:27 +0200 Subject: [PATCH 57/60] fix: bump ml pyproject.toml correctly (#22488) * fix: bump ml pyproject.toml correctly * fix: correct version in pyproject.toml --- machine-learning/pyproject.toml | 2 +- misc/release/pump-version.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/machine-learning/pyproject.toml b/machine-learning/pyproject.toml index 9adb2095ab..63b7c37cc2 100644 --- a/machine-learning/pyproject.toml +++ b/machine-learning/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "immich-ml" -version = "minor" +version = "1.144.0" description = "" authors = [{ name = "Hau Tran", email = "alex.tran1502@gmail.com" }] requires-python = ">=3.10,<4.0" diff --git a/misc/release/pump-version.sh b/misc/release/pump-version.sh index 8c4c772bd9..65a2e70e50 100755 --- a/misc/release/pump-version.sh +++ b/misc/release/pump-version.sh @@ -80,7 +80,7 @@ if [ "$CURRENT_SERVER" != "$NEXT_SERVER" ]; then jq --arg version "$NEXT_SERVER" '.version = $version' e2e/package.json > e2e/package.json.tmp && mv e2e/package.json.tmp e2e/package.json pnpm install --frozen-lockfile --prefix e2e - uvx --from=toml-cli toml set --toml-path=machine-learning/pyproject.toml project.version "$SERVER_PUMP" + uvx --from=toml-cli toml set --toml-path=machine-learning/pyproject.toml project.version "$NEXT_SERVER" fi if [ "$CURRENT_MOBILE" != "$NEXT_MOBILE" ]; then From f1f8c8e7a37eead203912a95deac0712cd04f92c Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 29 Sep 2025 19:49:34 +0000 Subject: [PATCH 58/60] chore: version v1.144.1 --- cli/package.json | 2 +- docs/static/archived-versions.json | 4 ++++ e2e/package.json | 2 +- machine-learning/pyproject.toml | 2 +- mobile/android/fastlane/Fastfile | 4 ++-- mobile/ios/fastlane/Fastfile | 2 +- mobile/openapi/README.md | 2 +- mobile/pubspec.yaml | 2 +- open-api/immich-openapi-specs.json | 2 +- open-api/typescript-sdk/package.json | 2 +- open-api/typescript-sdk/src/fetch-client.ts | 2 +- server/package.json | 2 +- web/package.json | 2 +- 13 files changed, 17 insertions(+), 13 deletions(-) diff --git a/cli/package.json b/cli/package.json index c56f401d61..d2ae9063b4 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@immich/cli", - "version": "2.2.93", + "version": "2.2.94", "description": "Command Line Interface (CLI) for Immich", "type": "module", "exports": "./dist/index.js", diff --git a/docs/static/archived-versions.json b/docs/static/archived-versions.json index 0dbe8cc5c6..cd3d8e079a 100644 --- a/docs/static/archived-versions.json +++ b/docs/static/archived-versions.json @@ -1,4 +1,8 @@ [ + { + "label": "v1.144.1", + "url": "https://docs.v1.144.1.archive.immich.app" + }, { "label": "v1.144.0", "url": "https://docs.v1.144.0.archive.immich.app" diff --git a/e2e/package.json b/e2e/package.json index ec6055d444..38b9ac949a 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -1,6 +1,6 @@ { "name": "immich-e2e", - "version": "1.144.0", + "version": "1.144.1", "description": "", "main": "index.js", "type": "module", diff --git a/machine-learning/pyproject.toml b/machine-learning/pyproject.toml index 63b7c37cc2..3eee4a5e2d 100644 --- a/machine-learning/pyproject.toml +++ b/machine-learning/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "immich-ml" -version = "1.144.0" +version = "1.144.1" description = "" authors = [{ name = "Hau Tran", email = "alex.tran1502@gmail.com" }] requires-python = ">=3.10,<4.0" diff --git a/mobile/android/fastlane/Fastfile b/mobile/android/fastlane/Fastfile index 1b635b8766..25a366957e 100644 --- a/mobile/android/fastlane/Fastfile +++ b/mobile/android/fastlane/Fastfile @@ -35,8 +35,8 @@ platform :android do task: 'bundle', build_type: 'Release', properties: { - "android.injected.version.code" => 3018, - "android.injected.version.name" => "1.144.0", + "android.injected.version.code" => 3019, + "android.injected.version.name" => "1.144.1", } ) upload_to_play_store(skip_upload_apk: true, skip_upload_images: true, skip_upload_screenshots: true, aab: '../build/app/outputs/bundle/release/app-release.aab') diff --git a/mobile/ios/fastlane/Fastfile b/mobile/ios/fastlane/Fastfile index 60e4e2cb81..cd3310e9a2 100644 --- a/mobile/ios/fastlane/Fastfile +++ b/mobile/ios/fastlane/Fastfile @@ -22,7 +22,7 @@ platform :ios do path: "./Runner.xcodeproj", ) increment_version_number( - version_number: "1.144.0" + version_number: "1.144.1" ) increment_build_number( build_number: latest_testflight_build_number + 1, diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index ca8fc43533..84140a882d 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -3,7 +3,7 @@ Immich API This Dart package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: -- API version: 1.144.0 +- API version: 1.144.1 - Generator version: 7.8.0 - Build package: org.openapitools.codegen.languages.DartClientCodegen diff --git a/mobile/pubspec.yaml b/mobile/pubspec.yaml index acee66d15b..b0b6399b67 100644 --- a/mobile/pubspec.yaml +++ b/mobile/pubspec.yaml @@ -2,7 +2,7 @@ name: immich_mobile description: Immich - selfhosted backup media file on mobile phone publish_to: 'none' -version: 1.144.0+3018 +version: 1.144.1+3019 environment: sdk: '>=3.8.0 <4.0.0' diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index 38437dae5e..9c5e6c6c60 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -9858,7 +9858,7 @@ "info": { "title": "Immich", "description": "Immich API", - "version": "1.144.0", + "version": "1.144.1", "contact": {} }, "tags": [], diff --git a/open-api/typescript-sdk/package.json b/open-api/typescript-sdk/package.json index 3be908b169..ed568efac5 100644 --- a/open-api/typescript-sdk/package.json +++ b/open-api/typescript-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@immich/sdk", - "version": "1.144.0", + "version": "1.144.1", "description": "Auto-generated TypeScript SDK for the Immich API", "type": "module", "main": "./build/index.js", diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index 38ec162718..2a786c33f8 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1,6 +1,6 @@ /** * Immich - * 1.144.0 + * 1.144.1 * DO NOT MODIFY - This file has been generated using oazapfts. * See https://www.npmjs.com/package/oazapfts */ diff --git a/server/package.json b/server/package.json index 168798a722..e503989eac 100644 --- a/server/package.json +++ b/server/package.json @@ -1,6 +1,6 @@ { "name": "immich", - "version": "1.144.0", + "version": "1.144.1", "description": "", "author": "", "private": true, diff --git a/web/package.json b/web/package.json index 24f4c98b91..4b9a301e8b 100644 --- a/web/package.json +++ b/web/package.json @@ -1,6 +1,6 @@ { "name": "immich-web", - "version": "1.144.0", + "version": "1.144.1", "license": "GNU Affero General Public License version 3", "type": "module", "scripts": { From 8f1bc7e821fc1aac71e2922982797bef8ac99598 Mon Sep 17 00:00:00 2001 From: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> Date: Tue, 30 Sep 2025 18:49:03 +0530 Subject: [PATCH 59/60] fix: show un-hashed remainder assets (#22492) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> --- .../lib/infrastructure/repositories/backup.repository.dart | 7 +++++-- mobile/lib/providers/backup/drift_backup.provider.dart | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/mobile/lib/infrastructure/repositories/backup.repository.dart b/mobile/lib/infrastructure/repositories/backup.repository.dart index cc6fd7dfe3..0241711d4b 100644 --- a/mobile/lib/infrastructure/repositories/backup.repository.dart +++ b/mobile/lib/infrastructure/repositories/backup.repository.dart @@ -81,7 +81,7 @@ class DriftBackupRepository extends DriftDatabaseRepository { ); } - Future> getCandidates(String userId) async { + Future> getCandidates(String userId, {bool onlyHashed = true}) async { final selectedAlbumIds = _db.localAlbumEntity.selectOnly(distinct: true) ..addColumns([_db.localAlbumEntity.id]) ..where(_db.localAlbumEntity.backupSelection.equalsValue(BackupSelection.selected)); @@ -89,7 +89,6 @@ class DriftBackupRepository extends DriftDatabaseRepository { final query = _db.localAssetEntity.select() ..where( (lae) => - lae.checksum.isNotNull() & existsQuery( _db.localAlbumAssetEntity.selectOnly() ..addColumns([_db.localAlbumAssetEntity.assetId]) @@ -109,6 +108,10 @@ class DriftBackupRepository extends DriftDatabaseRepository { ) ..orderBy([(localAsset) => OrderingTerm.desc(localAsset.createdAt)]); + if (onlyHashed) { + query.where((lae) => lae.checksum.isNotNull()); + } + return query.map((localAsset) => localAsset.toDto()).get(); } } diff --git a/mobile/lib/providers/backup/drift_backup.provider.dart b/mobile/lib/providers/backup/drift_backup.provider.dart index c045cc4f9f..f52fc654f2 100644 --- a/mobile/lib/providers/backup/drift_backup.provider.dart +++ b/mobile/lib/providers/backup/drift_backup.provider.dart @@ -405,7 +405,7 @@ final driftBackupCandidateProvider = FutureProvider.autoDispose return []; } - return ref.read(backupRepositoryProvider).getCandidates(user.id); + return ref.read(backupRepositoryProvider).getCandidates(user.id, onlyHashed: false); }); final driftCandidateBackupAlbumInfoProvider = FutureProvider.autoDispose.family, String>(( From 6c67bbd5286b6bbb76add6d4cf20f04c5a75892e Mon Sep 17 00:00:00 2001 From: Alex Date: Tue, 30 Sep 2025 08:19:24 -0500 Subject: [PATCH 60/60] chore: post release tasks (#22487) --- mobile/ios/Runner.xcodeproj/project.pbxproj | 18 +++++++++--------- mobile/ios/Runner/Info.plist | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mobile/ios/Runner.xcodeproj/project.pbxproj b/mobile/ios/Runner.xcodeproj/project.pbxproj index cb9dbc60bd..09f749bcd2 100644 --- a/mobile/ios/Runner.xcodeproj/project.pbxproj +++ b/mobile/ios/Runner.xcodeproj/project.pbxproj @@ -705,7 +705,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -849,7 +849,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -879,7 +879,7 @@ CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_BITCODE = NO; @@ -913,7 +913,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -956,7 +956,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -996,7 +996,7 @@ CODE_SIGN_ENTITLEMENTS = WidgetExtension/WidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; GCC_C_LANGUAGE_STANDARD = gnu17; @@ -1035,7 +1035,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; @@ -1079,7 +1079,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; @@ -1120,7 +1120,7 @@ CODE_SIGN_ENTITLEMENTS = ShareExtension/ShareExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 226; + CURRENT_PROJECT_VERSION = 227; CUSTOM_GROUP_ID = group.app.immich.share; DEVELOPMENT_TEAM = 2F67MQ8R79; ENABLE_USER_SCRIPT_SANDBOXING = YES; diff --git a/mobile/ios/Runner/Info.plist b/mobile/ios/Runner/Info.plist index 93a10c1a79..f32980bb38 100644 --- a/mobile/ios/Runner/Info.plist +++ b/mobile/ios/Runner/Info.plist @@ -80,7 +80,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.143.1 + 1.144.0 CFBundleSignature ???? CFBundleURLTypes @@ -107,7 +107,7 @@ CFBundleVersion - 226 + 227 FLTEnableImpeller ITSAppUsesNonExemptEncryption

`$Oj^l_I$LE7P%Pkx_ji7AhD-L9$Q!RU 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¥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