mirror of
https://github.com/Art051/immich.git
synced 2025-08-11 19:29:00 +00:00
fix(server): better metadata extraction for images (#2653)
This commit is contained in:
19
server/apps/microservices/src/utils/numbers.ts
Normal file
19
server/apps/microservices/src/utils/numbers.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
export function isDecimalNumber(num: number): boolean {
|
||||
return !Number.isNaN(num) && Number.isFinite(num);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if `num` is a valid number and is between `start` and `end` (inclusive)
|
||||
*/
|
||||
export function isNumberInRange(num: number, start: number, end: number): boolean {
|
||||
return isDecimalNumber(num) && num >= start && num <= end;
|
||||
}
|
||||
|
||||
export function toNumberOrNull(input: number | string | null | undefined): number | null {
|
||||
if (input === null || input === undefined) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const num = typeof input === 'string' ? Number.parseFloat(input) : input;
|
||||
return isDecimalNumber(num) ? num : null;
|
||||
}
|
||||
Reference in New Issue
Block a user