Creates a new number with more complex units than just a single numerator.
Upon construction, any compatible numerator and denominator units are simplified away according to the conversion factor between them.
The number's numeric value.
Optionalunit: If this is a string, it's used as the single numerator unit for the number.
OptionaldenominatorUnits?: string[] | List<string>If passed, these are the denominator units
to use for the number. This may be either a plain JavaScript array or an
immutable List from the immutable
package.
OptionalnumeratorUnits?: string[] | List<string>If passed, these are the numerator units to
use for the number. This may be either a plain JavaScript array or an
immutable List from the immutable
package.
This value as a list.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
An immutable List from the immutable
package.
This number's denominator units as an immutable List from the
immutable package.
Whether this value as a list has brackets.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
Whether this number has any numerator or denominator units.
Whether value is an integer according to Sass's equality logic.
Whether the value counts as true in an @if statement and other
contexts.
This number's numerator units as an immutable List from the
immutable package.
Returns JavaScript's null value if this is sassNull, and returns
this otherwise.
The separator for this value as a list.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
This number's numeric value.
Throws if this isn't a SassBoolean.
Heads up! Functions should generally use isTruthy rather than requiring a literal boolean.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Throws if this isn't a SassCalculation.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Throws if this isn't a SassFunction.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns value if it's within min and max. If value is
equal to min or max according to Sass's equality, returns min or
max respectively. Otherwise, throws an error.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
If this number has no units, returns it. Otherwise, throws an error.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Throws if this isn't a SassNumber.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Throws if this isn't a SassString.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
If this number has unit as its only unit (and as a numerator), returns
this number. Otherwise, throws an error.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns a copy of this number, converted to the units represented by
newNumerators and newDenominators.
Unlike convert this does not throw an error if this number is
unitless and either newNumerators or newDenominators are not empty, or
vice-versa. Instead, it treats all unitless numbers as convertible to and
from all units without changing the value.
The numerator units to convert this number to. This
may be either a plain JavaScript array or an immutable List from
the immutable package.
The denominator units to convert this number to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns a copy of this number, converted to the units represented by
newNumerators and newDenominators.
Unlike convertToMatch this does not throw an error if this number
is unitless and either newNumerators or newDenominators are not empty,
or vice-versa. Instead, it treats all unitless numbers as convertible to
and from all units without changing the value.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
OptionalotherName: string
The name of the function argument other came from
(without the $) if it came from an argument. Used for error reporting.
Returns value, converted to the units represented by
newNumerators and newDenominators.
Unlike convertValue this does not throw an error if this number
is unitless and either newNumerators or newDenominators are not empty,
or vice-versa. Instead, it treats all unitless numbers as convertible to
and from all units without changing the value.
The numerator units to convert value to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
The denominator units to convert value to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns value, converted to the units represented by
newNumerators and newDenominators.
Unlike convertValueToMatch this does not throw an error if this
number is unitless and either newNumerators or newDenominators are not
empty, or vice-versa. Instead, it treats all unitless numbers as
convertible to and from all units without changing the value.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
OptionalotherName: string
The name of the function argument other came from
(without the $) if it came from an argument. Used for error reporting.
Whether this has exactly one numerator unit, and that unit is compatible
with unit.
Returns a copy of this number, converted to the units represented by
newNumerators and newDenominators.
The numerator units to convert this number to. This
may be either a plain JavaScript array or an immutable List from
the immutable package.
The denominator units to convert this number to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns a copy of this number, converted to the same units as other.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
OptionalotherName: string
The name of the function argument other came from
(without the $) if it came from an argument. Used for error reporting.
Returns value, converted to the units represented by
newNumerators and newDenominators.
The numerator units to convert value to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
The denominator units to convert value to.
This may be either a plain JavaScript array or an immutable List
from the immutable package.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
Returns value, converted to the same units as other.
Optionalname: string
The name of the function argument this came from (without
the $) if it came from an argument. Used for error reporting.
OptionalotherName: string
The name of the function argument other came from
(without the $) if it came from an argument. Used for error reporting.
Returns the value at index index in this value as a list, or undefined
if index isn't valid for this list.
All SassScript values can be used as lists. Maps count as lists of pairs, and all other values count as single-value lists.
This is a shorthand for this.asList.get(index), although it may be more
efficient in some cases.
Heads up! This method uses the same indexing conventions as the
immutable package: unlike Sass the index of the first element is 0, but
like Sass negative numbers index from the end of the list.
Returns a hash code that can be used to store this in a hash map.
Whether this number has unit as its only unit (and as a numerator).
Converts sassIndex into a JavaScript-style index into the list returned
by asList.
Sass indexes are one-based, while JavaScript indexes are zero-based. Sass indexes may also be negative in order to index from the end of the list.
The Sass-style index into this as a list.
Optionalname: string
The name of the function argument sassIndex came from
(without the $) if it came from an argument. Used for error reporting.
Error If sassIndex isn't a number, if that number isn't an
integer, or if that integer isn't a valid index for asList.
Returns this as a map if it counts as one (empty lists count as empty
maps) or null if it doesn't.
Sass's number type.