Class: ValueFactory
Factories and helpers, used as Value.number(3) or Value.equals(a, b). The factories copy
structured payloads so a caller mutating its input cannot change a value already on the bus.
The structured factories (singleChannel, rgbw, tunableWhite, t5) round and clamp to what the
wire carries; none of them validates or throws. Use ValueSchema for untrusted input and
Converter for coercion.
Constructors
Constructor
new ValueFactory():
ValueFactory
Returns
ValueFactory
Properties
types
readonlytypes: readonly ("string"|"number"|"boolean"|"null"|"singleChannel"|"rgbw"|"tunableWhite"|"t5")[]
every value type, in a stable order for UIs and schemas
Methods
null()
null():
object
Returns
object
type
type:
"null"
boolean()
boolean(
value):object
Parameters
value
boolean
Returns
object
type
type:
"boolean"
value
value:
boolean
number()
number(
value):object
Parameters
value
number
Returns
object
type
type:
"number"
value
value:
number
string()
string(
value):object
Parameters
value
string
Returns
object
type
type:
"string"
value
value:
string
singleChannel()
singleChannel(
value):object
structured factories normalise to wire resolution: whole percent (clamped 0–100), 0.1 s fades
Parameters
value
Returns
object
type
type:
"singleChannel"
value
value:
SingleChannel
rgbw()
rgbw(
value):object
Parameters
value
Returns
object
type
type:
"rgbw"
value
value:
Rgbw
tunableWhite()
tunableWhite(
value):object
Parameters
value
Returns
object
type
type:
"tunableWhite"
value
value:
TunableWhite
t5()
t5(
value):object
masks outside 0–31 or non-integers become 0 (no button)
Parameters
value
Returns
object
type
type:
"t5"
value
value:
T5
isType()
isType(
type): type is "string" | "number" | "boolean" | "null" | "singleChannel" | "rgbw" | "tunableWhite" | "t5"
type guard for strings from outside (HTTP, config)
Parameters
type
string
Returns
type is "string" | "number" | "boolean" | "null" | "singleChannel" | "rgbw" | "tunableWhite" | "t5"
equals()
equals(
a,b):boolean
structural equality; 0 equals -0, and NaN equals NaN so repeated NaN readings dedupe
Parameters
a
Value | undefined
b
Value | undefined
Returns
boolean