mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
29 lines
542 B
TypeScript
29 lines
542 B
TypeScript
import type {
|
|
Range,
|
|
} from './types';
|
|
|
|
export const testRange = (value: unknown, range: Range): boolean => {
|
|
if (typeof value === 'number') {
|
|
if (value < range.min) {
|
|
return false;
|
|
}
|
|
|
|
if (value === range.min && !range.minInclusive) {
|
|
return false;
|
|
}
|
|
|
|
if (value > range.max) {
|
|
return false;
|
|
}
|
|
|
|
if (value === range.max && !range.maxInclusive) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
// @todo handle non-numeric ranges -- https://github.com/gajus/liqe/issues/3
|
|
|
|
return false;
|
|
};
|