SassNumber
Hierarchy
- Value
- SassNumber
Index
Constructors
Accessors
Methods
Constructors
constructor
- new
Sass Number(value: number, unit?: string | {
denominatorUnits?: string[] | List<string>;
numeratorUnits?: string[] | List<string>;
}): SassNumber -
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.
Parameters
Returns SassNumber
Accessors
as Int
as List
- get asList(): List<Value>
-
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.
Returns List<Value>
An immutable List from the
immutablepackage.
denominator Units
- get denominatorUnits(): List<string>
-
This number's denominator units as an immutable List from the
immutablepackage.Returns List<string>
has Brackets
- get hasBrackets(): boolean
-
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.
Returns boolean
has Units
- get hasUnits(): boolean
-
Whether this number has any numerator or denominator units.
Returns boolean
is Int
- get isInt(): boolean
-
Whether value is an integer according to Sass's equality logic.
Returns boolean
is Truthy
- get isTruthy(): boolean
-
Whether the value counts as
truein an@ifstatement and other contexts.Returns boolean
numerator Units
- get numeratorUnits(): List<string>
-
This number's numerator units as an immutable List from the
immutablepackage.Returns List<string>
real Null
separator
- get separator(): ListSeparator
-
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.
Returns ListSeparator
value
- get value(): number
-
This number's numeric value.
Returns number
Methods
assert Boolean
- assert
Boolean(name?: string): SassBoolean -
Throws if
thisisn't a SassBoolean.⚠️ Heads up!
Functions should generally use isTruthy rather than requiring a literal boolean.
Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassBoolean
-
assert Calculation
- assert
Calculation(name?: string): SassCalculation -
Throws if
thisisn't a SassCalculation.Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassCalculation
-
assert Color
assert Function
- assert
Function(name?: string): SassFunction -
Throws if
thisisn't a SassFunction.Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassFunction
-
assert In Range
- assert
In Range(min: number, max: number, name?: string): number -
Returns value if it's within
minandmax. If value is equal tominormaxaccording to Sass's equality, returnsminormaxrespectively. Otherwise, throws an error.Parameters
-
min: number
-
max: number
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
assert Int
- assert
Int(name?: string): number -
If value is an integer according to isInt, returns it rounded to that integer. Otherwise, throws an error.
Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
assert Map
assert Mixin
assert No Units
- assert
No Units(name?: string): SassNumber -
If this number has no units, returns it. Otherwise, throws an error.
Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
assert Number
- assert
Number(name?: string): SassNumber -
Throws if
thisisn't a SassNumber.Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
assert String
- assert
String(name?: string): SassString -
Throws if
thisisn't a SassString.Parameters
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassString
-
assert Unit
- assert
Unit(unit: string, name?: string): SassNumber -
If this number has
unitas its only unit (and as a numerator), returns this number. Otherwise, throws an error.Parameters
-
unit: string
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
coerce
- coerce(newNumerators: string[] | List<string>, newDenominators: string[] | List<string>, name?: string): SassNumber
-
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convert this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Throws
Errorif this number's units are incompatible withnewNumeratorsandnewDenominators.Parameters
-
newNumerators: string[] | List<string>
The numerator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
newDenominators: string[] | List<string>
The denominator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
coerce To Match
- coerce
To Match(other: SassNumber, name?: string, otherName?: string): SassNumber -
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertToMatch this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Throws
Errorif this number's units are incompatible withother's units.Parameters
-
other: SassNumber
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting. -
OptionalotherName: stringThe name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
coerce Value
- coerce
Value(newNumerators: string[] | List<string>, newDenominators: string[] | List<string>, name?: string): number -
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertValue this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Throws
Errorif this number's units are incompatible withnewNumeratorsandnewDenominators.Parameters
-
newNumerators: string[] | List<string>
The numerator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
newDenominators: string[] | List<string>
The denominator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
coerce Value To Match
- coerce
Value To Match(other: SassNumber, name?: string, otherName?: string): number -
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Unlike convertValueToMatch this does not throw an error if this number is unitless and either
newNumeratorsornewDenominatorsare not empty, or vice-versa. Instead, it treats all unitless numbers as convertible to and from all units without changing the value.Throws
Errorif this number's units are incompatible withother's units.Parameters
-
other: SassNumber
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting. -
OptionalotherName: stringThe name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
compatible With Unit
convert
- convert(newNumerators: string[] | List<string>, newDenominators: string[] | List<string>, name?: string): SassNumber
-
Returns a copy of this number, converted to the units represented by
newNumeratorsandnewDenominators.Throws
Errorif this number's units are incompatible withnewNumeratorsandnewDenominators; or if this number is unitless and eithernewNumeratorsornewDenominatorsare not empty, or vice-versa.Parameters
-
newNumerators: string[] | List<string>
The numerator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
newDenominators: string[] | List<string>
The denominator units to convert this number to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
convert To Match
- convert
To Match(other: SassNumber, name?: string, otherName?: string): SassNumber -
Returns a copy of this number, converted to the same units as
other.Throws
Errorif this number's units are incompatible withother's units, or if either number is unitless but the other is not.Parameters
-
other: SassNumber
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting. -
OptionalotherName: stringThe name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns SassNumber
-
convert Value
- convert
Value(newNumerators: string[] | List<string>, newDenominators: string[] | List<string>, name?: string): number -
Returns value, converted to the units represented by
newNumeratorsandnewDenominators.Throws
Errorif this number's units are incompatible withnewNumeratorsandnewDenominators; or if this number is unitless and eithernewNumeratorsornewDenominatorsare not empty, or vice-versa.Parameters
-
newNumerators: string[] | List<string>
The numerator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
newDenominators: string[] | List<string>
The denominator units to convert value to. This may be either a plain JavaScript array or an immutable List from the
immutablepackage. -
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
convert Value To Match
- convert
Value To Match(other: SassNumber, name?: string, otherName?: string): number -
Returns value, converted to the same units as
other.Throws
Errorif this number's units are incompatible withother's units, or if either number is unitless but the other is not.Parameters
-
other: SassNumber
-
Optionalname: stringThe name of the function argument
thiscame from (without the$) if it came from an argument. Used for error reporting. -
OptionalotherName: stringThe name of the function argument
othercame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
equals
get
- get(index: number): undefined | Value
-
Returns the value at index
indexin this value as a list, orundefinedifindexisn'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
immutablepackage: unlike Sass the index of the first element is 0, but like Sass negative numbers index from the end of the list.Parameters
-
index: number
Returns undefined | Value
-
has Unit
hash Code
sass Index To List Index
- sass
Index To List Index(sassIndex: Value, name?: string): number -
Converts
sassIndexinto 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.
Throws
ErrorIfsassIndexisn't a number, if that number isn't an integer, or if that integer isn't a valid index for asList.Parameters
-
sassIndex: Value
The Sass-style index into this as a list.
-
Optionalname: stringThe name of the function argument
sassIndexcame from (without the$) if it came from an argument. Used for error reporting.
Returns number
-
Sass's number type.