KC's Workspace
    Preparing search index...

    Sass's number type.

    Hierarchy (View Summary)

    Index
    • 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

      • value: number

        The number's numeric value.

      • Optionalunit:
            | string
            | {
                denominatorUnits?: string[]
                | List<string>;
                numeratorUnits?: string[] | List<string>;
            }

        If this is a string, it's used as the single numerator unit for the number.

        • string
        • {
              denominatorUnits?: string[] | List<string>;
              numeratorUnits?: string[] | List<string>;
          }
          • 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.

      Returns SassNumber

    • get asInt(): number | null

      If value is an integer according to isInt, returns value rounded to that integer. If it's not an integer, returns null.

      Returns number | null

    • 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 immutable package.

    • 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

    • get hasUnits(): boolean

      Whether this number has any numerator or denominator units.

      Returns boolean

    • get isInt(): boolean

      Whether value is an integer according to Sass's equality logic.

      Returns boolean

    • get isTruthy(): boolean

      Whether the value counts as true in an @if statement and other contexts.

      Returns boolean

    • get realNull(): Value | null

      Returns JavaScript's null value if this is sassNull, and returns this otherwise.

      Returns Value | null

    • 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

    • get value(): number

      This number's numeric value.

      Returns number

    • Throws if this isn't a SassBoolean.

      Heads up! Functions should generally use isTruthy rather than requiring a literal boolean.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassBoolean

    • Throws if this isn't a SassColor.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassColor

    • Throws if this isn't a SassFunction.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassFunction

    • 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.

      Parameters

      • min: number
      • max: number
      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns number

    • If value is an integer according to isInt, returns it rounded to that integer. Otherwise, throws an error.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns number

    • Throws if this isn't a SassMap.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassMap

    • Throws if this isn't a SassMixin.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassMixin

    • If this number has no units, returns it. Otherwise, throws an error.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassNumber

    • Throws if this isn't a SassNumber.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassNumber

    • Throws if this isn't a SassString.

      Parameters

      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassString

    • If this number has unit as its only unit (and as a numerator), returns this number. Otherwise, throws an error.

      Parameters

      • unit: string
      • Optionalname: string

        The name of the function argument this came from (without the $) if it came from an argument. Used for error reporting.

      Returns SassNumber

    • 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.

      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 immutable package.

      • 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 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 SassNumber

      Error if this number's units are incompatible with newNumerators and newDenominators.

    • 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.

      Parameters

      • other: SassNumber
      • 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 SassNumber

      Error if this number's units are incompatible with other's units.

    • 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.

      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 immutable package.

      • 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 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 number

      Error if this number's units are incompatible with newNumerators and newDenominators.

    • 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.

      Parameters

      • other: SassNumber
      • 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 number

      Error if this number's units are incompatible with other's units.

    • Whether this has exactly one numerator unit, and that unit is compatible with unit.

      Parameters

      • unit: string

      Returns boolean

    • Returns a copy of this number, converted to the units represented by newNumerators and newDenominators.

      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 immutable package.

      • 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 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 SassNumber

      Error if this number's units are incompatible with newNumerators and newDenominators; or if this number is unitless and either newNumerators or newDenominators are not empty, or vice-versa.

    • Returns a copy of this number, converted to the same units as other.

      Parameters

      • other: SassNumber
      • 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 SassNumber

      Error if this number's units are incompatible with other's units, or if either number is unitless but the other is not.

    • Returns value, converted to the units represented by newNumerators and newDenominators.

      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 immutable package.

      • 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 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 number

      Error if this number's units are incompatible with newNumerators and newDenominators; or if this number is unitless and either newNumerators or newDenominators are not empty, or vice-versa.

    • Returns value, converted to the same units as other.

      Parameters

      • other: SassNumber
      • 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 number

      Error if this number's units are incompatible with other's units, or if either number is unitless but the other is not.

    • Returns whether this represents the same value as other.

      Parameters

      Returns boolean

    • 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.

      Parameters

      • index: number

      Returns Value | undefined

    • Returns a hash code that can be used to store this in a hash map.

      Returns number

    • Whether this number has unit as its only unit (and as a numerator).

      Parameters

      • unit: string

      Returns boolean

    • 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.

      Parameters

      • sassIndex: Value

        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.

      Returns number

      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.

      Returns SassMap | null