mirror of
https://github.com/immich-app/immich.git
synced 2025-01-10 13:56:47 +01:00
7947f4db4c
* add migration * verify running migration populate new value * implemented service * generate api * FE works * FR Works * fix test * fix test fixture * fix test * fix test * consolidate api * fix test * added test * pr feedback * refactor * click ont humbnail to show feature selection as well
19 lines
681 B
TypeScript
19 lines
681 B
TypeScript
/**
|
|
* Calculate thumbnail size based on number of assets and viewport width
|
|
* @param assetCount Number of assets in the view
|
|
* @param viewWidth viewport width
|
|
* @returns thumbnail size
|
|
*/
|
|
export function getThumbnailSize(assetCount: number, viewWidth: number): number {
|
|
if (assetCount < 6) {
|
|
return Math.min(320, Math.floor(viewWidth / assetCount - assetCount));
|
|
} else {
|
|
if (viewWidth > 600) return viewWidth / 7 - 7;
|
|
else if (viewWidth > 400) return viewWidth / 4 - 6;
|
|
else if (viewWidth > 300) return viewWidth / 2 - 6;
|
|
else if (viewWidth > 200) return viewWidth / 2 - 6;
|
|
else if (viewWidth > 100) return viewWidth / 1 - 6;
|
|
}
|
|
|
|
return 300;
|
|
}
|