cockpit.js: Utilities

cockpit.js: Utilities — Various utility functions

cockpit.format()

string = cockpit.format(template, args)
string = cockpit.format(template, [arg, ...])

Format a string interpolating args into template using shell like syntax. The args may be either an array or javascript object. The template can contain fields that look like $name or ${name} or $0. Numeric fields are used with array args and start at zero.

In the second form, multiple arg arguments may be passed directly, and interpolated as as numeric fields in the template.

All falsy arguments except the numbers 0 and 0.0are replaced by an empty string.

cockpit.format_number()

string = cockpit.format_number(number, [precision])

Formats number into a displayable string. If the number is not an integer, it is rounded to the given number of decimal places, defaulting to 3. If the number is near zero, but not quite zero it is rounded to the smallest non-zero value of the given precision; i.e. ±0.001 for default precision 3.

If number is null or undefined an empty string will be returned.

cockpit.format_bytes()

string = cockpit.format_bytes(number, [factor])
array = cockpit.format_bytes(number, [factor, options])

Formats number into a displayable string with a suffix, such as KB or MB. Returns an array of the formatted number and the suffix if options.separate is set to true.

If specifying 1000 or 1024 is specified as a factor then an appropriate suffix will be chosen. By default the factor is 1000. You can pass a string suffix as a factor in which case the resulting number will be formatted with the same suffix.

If the number is less than the factor or an unknown factor was passed in, then the formatted number is returned without a suffix. If options.separate is true, returns an array of [formatted_number, suffix] or [formatted_number] if returned without a suffix.

By default, non-integer numbers will be formatted with 3 digits of precision. This can be changed with options.precision.

If number is null or undefined an empty string or an array without a suffix will be returned.

cockpit.format_bytes_per_sec()

 string = cockpit.format_bytes_per_sec(number, [factor])
 array = cockpit.format_bytes_per_sec(number, [factor, options])

Format number of bytes into a displayable speed string.

If specifying 1000 or 1024 is specified as a factor then an appropriate suffix will be chosen. By default the factor is 1000. You can pass a string suffix as a factor in which case the resulting number will be formatted with the same suffix.

If the number is less than the factor or an unknown factor was passed in, then the formatted number is returned without a suffix. If options.separate is true, returns an array of [formatted_number, suffix] or [formatted_number] if returned without a suffix.

By default, non-integer numbers will be formatted with 3 digits of precision. This can be changed with options.precision.

If number is null or undefined an empty string or array will be returned.

cockpit.format_bits_per_sec()

  string = cockpit.format_bits_per_sec(number, [factor])
 array = cockpit.format_bytes_per_sec(number, [factor, options])

Format number of bits into a displayable speed string.

If specifying 1000 or 1024 is specified as a factor then an appropriate suffix will be chosen. By default the factor is 1000. You can pass a string suffix as a factor in which case the resulting number will be formatted with the same suffix.

If the number is less than the factor or an unknown factor was passed in, then the formatted number is returned without a suffix. If options.separate is true, returns an array of [formatted_number, suffix] or [formatted_number] if returned without a suffix.

By default, non-integer numbers will be formatted with 3 digits of precision. This can be changed with options.precision.

If number is null or undefined an empty string or array will be returned.

cockpit.info

cockpit.info["version"]
cockpit.info["build"]

This object contains information about cockpit itself. Note that when cockpit is running on multiple servers, this only reflects the server that was connected to. The following fields are defined:

"build"

A string containing build details.

"version"

A string containing the cockpit version number. It is almost always incorrect to use this to make a decision in code.

cockpit.event_target

cockpit.event_target(object, [handlers])

Adds an EventTarget implementation to the object. Optionally store the handlers in handlers if its specified.