mirror of
https://github.com/immich-app/immich.git
synced 2025-12-29 08:10:36 -05:00
* allow different thumbnail and preview quality, better config structure * update web and api * wording * remove empty line?
38 lines
1.6 KiB
TypeScript
38 lines
1.6 KiB
TypeScript
import { MigrationInterface, QueryRunner } from 'typeorm';
|
|
|
|
export class SeparateQualityForThumbnailAndPreview1727471863507 implements MigrationInterface {
|
|
public async up(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(`
|
|
update system_metadata
|
|
set value = jsonb_set(value, '{image}', jsonb_strip_nulls(
|
|
jsonb_build_object(
|
|
'preview', jsonb_build_object(
|
|
'format', value->'image'->'previewFormat',
|
|
'quality', value->'image'->'quality',
|
|
'size', value->'image'->'previewSize'),
|
|
'thumbnail', jsonb_build_object(
|
|
'format', value->'image'->'thumbnailFormat',
|
|
'quality', value->'image'->'quality',
|
|
'size', value->'image'->'thumbnailSize'),
|
|
'extractEmbedded', value->'extractEmbedded',
|
|
'colorspace', value->'colorspace'
|
|
)))
|
|
where key = 'system-config'`);
|
|
}
|
|
|
|
public async down(queryRunner: QueryRunner): Promise<void> {
|
|
await queryRunner.query(`
|
|
update system_metadata
|
|
set value = jsonb_set(value, '{image}', jsonb_strip_nulls(jsonb_build_object(
|
|
'previewFormat', value->'image'->'preview'->'format',
|
|
'previewSize', value->'image'->'preview'->'size',
|
|
'thumbnailFormat', value->'image'->'thumbnail'->'format',
|
|
'thumbnailSize', value->'image'->'thumbnail'->'size',
|
|
'extractEmbedded', value->'extractEmbedded',
|
|
'colorspace', value->'colorspace',
|
|
'quality', value->'image'->'preview'->'quality'
|
|
)))
|
|
where key = 'system-config'`);
|
|
}
|
|
}
|