Methods
-
<inner> dateFormat(date)
-
Format a date into a SolarNet UTC date format.
Parameters:
Name Type Description date
Date the date to format
Returns:
the formatted date value -
yyyy-MM-dd
- Type
- string
-
<inner> dateParser(str)
-
Parse a UTC date string, from a variety of supported formats.
Parameters:
Name Type Description str
String the string to parse into a date
Returns:
the parsed
Date
, ornull
if the date can't be parsed- Type
- Date
-
<inner> dateTimeFormat(date)
-
Format a date into a SolarNet UTC date/time format.
Parameters:
Name Type Description date
Date the date to format
Returns:
the formatted date value -
yyyy-MM-dd HH:mm
- Type
- string
-
<inner> dateTimeParse(str)
-
Parse a SolarNet UTC date/time.
Parameters:
Name Type Description str
string the string to parse - `yyyy-MM-dd HH:mm
Returns:
the parsed date, or
null
- Type
- Date
-
<inner> dateTimeUrlFormat(date)
-
Format a date into a SolarNet URL UTC date/time format.
Parameters:
Name Type Description date
Date the date to format
Returns:
the formatted date value -
yyyy-MM-dd'T'HH:mm
- Type
- string
-
<inner> dateTimeUrlParse(str)
-
Parse a SolarNet URL UTC date/time value.
Parameters:
Name Type Description str
string the string to parse -
yyyy-MM-dd'T'HH:mm
Returns:
the parsed date, or
null
- Type
- Date
-
<inner> displayScaleForValue(value)
-
Get an appropriate multiplier value for scaling a given value to a more display-friendly form.
This will return values suitable for passing to module:format~displayUnitsForScale.
Parameters:
Name Type Description value
number the value to get a display scale factor for, for example the maximum value in a range of values
Returns:
the display scale factor
- Type
- number
-
<inner> displayUnitsForScale(baseUnit, scale)
-
Get an appropriate display unit for a given base unit and scale factor.
Use this method to render scaled data value units. Typically you would first call module:module:format~displayScaleForValue, passing in the largest expected value in a set of data, and then pass the result to this method to generate a display unit for the base unit for that data.
For example, given a base unit of
W
(watts) and a maximum data value of10000
:const fmt = import { * } from 'format/scale'; const displayScale = fmt.displayScaleForValue(10000); const displayUnit = fmt.displayUnitForScale('W', displayScale);
The
displayUnit
result in that example would bekW
.Parameters:
Name Type Description baseUnit
string the base unit, for example
W
orWh
scale
number the unit scale, which must be a recognized SI scale, such as
1000
fork
Returns:
the display unit value
- Type
- string
-
<inner> iso8601Date(date [, includeTime])
-
Format a date into an ISO 8601 timestamp or date string, in the UTC time zone.
Parameters:
Name Type Argument Default Description date
Date the date to format
includeTime
boolean <optional>
false true
to format as a timestamp,false
as just a dateReturns:
the formatted date string
- Type
- string
-
<inner> seasonForDate(date)
-
Get a UTC season constant for a date. Seasons are groups of 3 months, e.g. Spring, Summer, Autumn, Winter.
The returned value will be a number between 0 and 3, where:
- (Mar, Apr, May) =
0
- (Jun, Jul, Aug) =
1
- (Sep, Oct, Nov) =
2
- (Dec, Jan, Feb) =
3
Parameters:
Name Type Description date
Date | number either a date to get the season for, or a number representing the UTC month of a date
Returns:
a season constant number, from 0 - 3
- Type
- number
- (Mar, Apr, May) =
-
<inner> timestampFormat(date)
-
Format a date into a SolarNet UTC timestamp format.
Parameters:
Name Type Description date
Date the date to format
Returns:
the formatted date value -
yyyy-MM-dd HH:mm:ss.SSS'Z'
- Type
- string
-
<inner> timestampParse(str)
-
Parse a SolarNet UTC timestamp value.
Parameters:
Name Type Description str
string the string to parse - `yyyy-MM-dd HH:mm:ss.SSS'Z'
Returns:
the parsed date, or
null
- Type
- Date