Skip to content

hap-fluent / createScaleTransformer

Function: createScaleTransformer()

ts
function createScaleTransformer(
   fromMin, 
   fromMax, 
   toMin, 
toMax): ValueTransformer<number, number>;

Defined in: packages/hap-fluent/src/type-utils.ts:237

Create a ValueTransformer that linearly maps a value from one numeric range to another.

Parameters

ParameterTypeDescription
fromMinnumberSource range minimum.
fromMaxnumberSource range maximum.
toMinnumberTarget range minimum.
toMaxnumberTarget range maximum.

Returns

ValueTransformer<number, number>

A transformer function applying the linear mapping.

Example

typescript
// Convert percentage (0-100) to decimal (0-1)
const percentToDecimal = createScaleTransformer(0, 100, 0, 1);
percentToDecimal(50); // Returns 0.5

// Convert Homebridge 0-100 brightness to device 0-255 range
const brightnessToDevice = createScaleTransformer(0, 100, 0, 255);
brightnessToDevice(50); // Returns 127.5

Released under the Apache-2.0 License.