immich/server/src/dtos
Afonso Mendonça Ribeiro 95c1f0efeb
fix: timestamp handling for database backup in Web UI (#27359)
* Fix #26502: Fix timestamp handling for database backup in Web UI

Frontend parsed backup timestamps as UTC, but they were in the
server's local timezone, causing wrong relative times.

Add `timezone` field to DatabaseBackupDto to expose server timezone.
Update frontend to parse timestamps using this timezone.
Convert timestamps to user's local timezone before rendering.
Fallback to browser timezone if server timezone is missing.

Ensures correct relative time display in Web UI.

* fix: regenerate open-api types and remove custom backup type

- Ran `make open-api` to update types based on backend changes
- Removed custom BackupWithTimezone type in MaintenanceBackupsList
- Updated timezone props to use the newly generated native type

* fix: simplify timezone handling for database backups

- Updated DatabaseBackupDto to make timezone a required property
- Removed manual DateTime.local().zoneName fallbacks
- Cleaned up type casts after regenerating OpenAPI types

* fix: Add missing newline at end of spec file
2026-04-06 17:27:48 +02:00
..
activity.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
album-response.dto.spec.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
album.dto.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
api-key.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
asset-ids.response.dto.ts feat(server): resolve duplicates (#25316) 2026-03-26 18:33:55 +00:00
asset-media-response.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
asset-media.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
asset-response.dto.spec.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
asset-response.dto.ts feat(server): add checksum algorithm field (#26573) 2026-03-26 18:20:25 +00:00
asset.dto.ts refactor: star rating (#26357) 2026-02-26 14:54:20 +01:00
auth.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
bbox.dto.ts feat(web): map timeline sidepanel (#26532) 2026-02-26 12:03:23 -05:00
database-backup.dto.ts fix: timestamp handling for database backup in Web UI (#27359) 2026-04-06 17:27:48 +02:00
download.dto.ts fix: Download the edited version when downloading multiple photos (#26259) 2026-02-18 21:47:45 +00:00
duplicate.dto.ts feat(server): resolve duplicates (#25316) 2026-03-26 18:33:55 +00:00
editing.dto.ts feat(server): SyncAssetEditV1 (#26446) 2026-02-25 18:12:41 +00:00
env.dto.ts feat: add support for helmet configuration (#27058) 2026-03-26 17:41:23 +00:00
exif.dto.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
job.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
library.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
license.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
maintenance.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
map.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
memory.dto.ts fix(server): accept showAt and hideAt for creating memories (#26429) 2026-02-23 21:26:34 +00:00
model-config.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
notification.dto.ts fix: null validation (#25891) 2026-02-04 12:27:52 -05:00
ocr.dto.ts feat: getAssetOcr endpoint (#23331) 2025-10-28 20:57:03 +00:00
onboarding.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
partner.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
person.dto.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
plugin-manifest.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
plugin.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
queue-legacy.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
queue.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
search.dto.ts chore(docs): withPeople parameter description (#27262) 2026-03-26 11:50:29 +01:00
server.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
session.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
shared-link.dto.ts feat: shared link login (#25678) 2026-02-12 12:08:38 -05:00
stack.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
sync.dto.ts feat(server): SyncAssetEditV1 (#26446) 2026-02-25 18:12:41 +00:00
system-config.dto.ts fix(server): opus handling as accepted audio codec in transcode policy (#26736) 2026-03-07 13:08:42 -05:00
system-metadata.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
tag.dto.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
time-bucket.dto.ts feat(web): map timeline sidepanel (#26532) 2026-02-26 12:03:23 -05:00
trash.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
user-preferences.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
user-profile.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00
user.dto.spec.ts fix(server): avoid server error for invalid email data type (#10978) 2024-07-10 07:58:06 -04:00
user.dto.ts chore: upgrade to kysely 0.28.11 (#26744) 2026-03-11 16:17:31 +01:00
workflow.dto.ts docs(openapi): add descriptions to OpenAPI specification (#25185) 2026-01-29 08:49:15 -05:00