mirror of
https://github.com/nasa/openmct.git
synced 2024-12-19 21:27:52 +00:00
[Telemetry] Move formatter implementation
Move implementation of formatter used for display of domain values out of plot, and into the telemetry bundle, from which it can be exposed as a general-use service. WTD-599.
This commit is contained in:
parent
453b853a75
commit
b080f90f64
@ -1,48 +0,0 @@
|
||||
/*global define,moment*/
|
||||
|
||||
define(
|
||||
["../../lib/moment.min"],
|
||||
function () {
|
||||
"use strict";
|
||||
|
||||
// Date format to use for domain values; in particular,
|
||||
// use day-of-year instead of month/day
|
||||
var DATE_FORMAT = "YYYY-DDD HH:mm:ss";
|
||||
|
||||
/**
|
||||
* The PlotFormatter is responsible for formatting (as text
|
||||
* for display) values along either the domain or range of a
|
||||
* plot.
|
||||
*/
|
||||
function PlotFormatter() {
|
||||
function formatDomainValue(v) {
|
||||
return isNaN(v) ? "" : moment.utc(v).format(DATE_FORMAT);
|
||||
}
|
||||
|
||||
function formatRangeValue(v) {
|
||||
return isNaN(v) ? "" : v.toFixed(1);
|
||||
}
|
||||
|
||||
return {
|
||||
/**
|
||||
* Format a domain value.
|
||||
* @param {number} v the domain value; a timestamp
|
||||
* in milliseconds since start of 1970
|
||||
* @returns {string} a textual representation of the
|
||||
* data and time, suitable for display.
|
||||
*/
|
||||
formatDomainValue: formatDomainValue,
|
||||
/**
|
||||
* Format a range value.
|
||||
* @param {number} v the range value; a numeric value
|
||||
* @returns {string} a textual representation of the
|
||||
* value, suitable for display.
|
||||
*/
|
||||
formatRangeValue: formatRangeValue
|
||||
};
|
||||
}
|
||||
|
||||
return PlotFormatter;
|
||||
|
||||
}
|
||||
);
|
@ -5,18 +5,47 @@ define(
|
||||
function () {
|
||||
"use strict";
|
||||
|
||||
// Date format to use for domain values; in particular,
|
||||
// use day-of-year instead of month/day
|
||||
var DATE_FORMAT = "YYYY-DDD HH:mm:ss",
|
||||
VALUE_FORMAT_DIGITS = 3;
|
||||
|
||||
/**
|
||||
* The TelemetryFormatter is responsible for formatting (as text
|
||||
* for display) values along either the domain (usually time) or
|
||||
* the range (usually value) of a data series.
|
||||
* @constructor
|
||||
*/
|
||||
function TelemetryFormatter() {
|
||||
|
||||
function formatDomainValue(key, value) {
|
||||
|
||||
function formatDomainValue(v, key) {
|
||||
return isNaN(v) ? "" : moment.utc(v).format(DATE_FORMAT);
|
||||
}
|
||||
|
||||
function formatRangeValue(key, value) {
|
||||
|
||||
function formatRangeValue(v, key) {
|
||||
return isNaN(v) ? "" : v.toFixed(3);
|
||||
}
|
||||
|
||||
return {
|
||||
/**
|
||||
* Format a domain value.
|
||||
* @param {number} v the domain value; a timestamp
|
||||
* in milliseconds since start of 1970
|
||||
* @param {string} [key] the key which identifies the
|
||||
* domain; if unspecified or unknown, this will
|
||||
* be treated as a standard timestamp.
|
||||
* @returns {string} a textual representation of the
|
||||
* data and time, suitable for display.
|
||||
*/
|
||||
formatDomainValue: formatDomainValue,
|
||||
/**
|
||||
* Format a range value.
|
||||
* @param {number} v the range value; a numeric value
|
||||
* @param {string} [key] the key which identifies the
|
||||
* range; if unspecified or unknown, this will
|
||||
* be treated as a numeric value.
|
||||
* @returns {string} a textual representation of the
|
||||
* value, suitable for display.
|
||||
*/
|
||||
formatRangeValue: formatRangeValue
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user