Prevent timestamps being overwritten when syncing EXIF

This commit is contained in:
Sam Becker 2024-02-21 23:13:39 -06:00
parent 551b4d4ec3
commit 92d13d586c
2 changed files with 15 additions and 11 deletions

View File

@ -155,7 +155,10 @@ export const convertPhotoToFormData = (
export const convertExifToFormData = (
data: ExifData,
filmSimulation?: FilmSimulation,
): Record<keyof PhotoExif, string | undefined> => ({
): Omit<
Record<keyof PhotoExif, string | undefined>,
'takenAt' | 'takenAtNaive'
> => ({
aspectRatio: getAspectRatioFromExif(data).toString(),
make: data.tags?.Make,
model: data.tags?.Model,
@ -170,15 +173,14 @@ export const convertExifToFormData = (
longitude:
!GEO_PRIVACY_ENABLED ? data.tags?.GPSLongitude?.toString() : undefined,
filmSimulation,
takenAt: data.tags?.DateTimeOriginal
? convertTimestampWithOffsetToPostgresString(
data.tags?.DateTimeOriginal,
...data.tags?.DateTimeOriginal && {
takenAt: convertTimestampWithOffsetToPostgresString(
data.tags.DateTimeOriginal,
getOffsetFromExif(data),
)
: undefined,
takenAtNaive: data.tags?.DateTimeOriginal
? convertTimestampToNaivePostgresString(data.tags?.DateTimeOriginal)
: undefined,
),
takenAtNaive:
convertTimestampToNaivePostgresString(data.tags.DateTimeOriginal),
},
});
// PREPARE FORM FOR DB INSERT

View File

@ -36,8 +36,8 @@ export interface PhotoExif {
latitude?: number
longitude?: number
filmSimulation?: FilmSimulation
takenAt: string
takenAtNaive: string
takenAt?: string
takenAtNaive?: string
}
// Raw db insert
@ -51,6 +51,8 @@ export interface PhotoDbInsert extends PhotoExif {
locationName?: string
priorityOrder?: number
hidden?: boolean
takenAt: string
takenAtNaive: string
}
// Raw db response