MCPcopy
hub / github.com/formatjs/formatjs / DefaultNumberOption

Function DefaultNumberOption

packages/ecma402-abstract/DefaultNumberOption.ts:8–23  ·  view source on GitHub ↗
(
  inputVal: unknown,
  min: number,
  max: number,
  fallback: F
)

Source from the content-addressed store, hash-verified

6 * @param fallback
7 */
8export function DefaultNumberOption<F extends number | undefined>(
9 inputVal: unknown,
10 min: number,
11 max: number,
12 fallback: F
13): F extends number ? number : number | undefined {
14 if (inputVal === undefined) {
15 // @ts-expect-error
16 return fallback
17 }
18 const val = Number(inputVal)
19 if (isNaN(val) || val < min || val > max) {
20 throw new RangeError(`${val} is outside of range [${min}, ${max}]`)
21 }
22 return Math.floor(val)
23}

Callers 2

GetNumberOptionFunction · 0.85

Calls 1

floorMethod · 0.80

Tested by

no test coverage detected