This is an automated email from the ASF dual-hosted git repository.
maximebeauchemin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to refs/heads/master by this push:
new 149d634 Add duration formatter for numeric data (#8136)
149d634 is described below
commit 149d6344acd421cede0ae03939c4c433379e727e
Author: Ville Brofeldt <[email protected]>
AuthorDate: Fri Aug 30 07:29:08 2019 +0300
Add duration formatter for numeric data (#8136)
* Add duration formatter
* Remove sec and min formatters and add subMillisecond option
---
superset/assets/src/explore/controls.jsx | 2 ++
superset/assets/src/setup/setupFormatters.js | 6 ++++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/superset/assets/src/explore/controls.jsx
b/superset/assets/src/explore/controls.jsx
index 449cccc..523a390 100644
--- a/superset/assets/src/explore/controls.jsx
+++ b/superset/assets/src/explore/controls.jsx
@@ -88,6 +88,8 @@ const D3_FORMAT_OPTIONS = [
[',.3f', ',.3f (12345.432 => 12,345.432)'],
['+,', '+, (12345.432 => +12,345.432)'],
['$,.2f', '$,.2f (12345.432 => $12,345.43)'],
+ ['DURATION', 'Duration in ms (66000 => 1m 6s)'],
+ ['DURATION_SUB', 'Duration in ms (100.40008 => 100ms 400µs 80ns)'],
];
const ROW_LIMIT_OPTIONS = [10, 50, 100, 250, 500, 1000, 5000, 10000, 50000];
diff --git a/superset/assets/src/setup/setupFormatters.js
b/superset/assets/src/setup/setupFormatters.js
index 7d6bd2c..9972cae 100644
--- a/superset/assets/src/setup/setupFormatters.js
+++ b/superset/assets/src/setup/setupFormatters.js
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { getNumberFormatter, getNumberFormatterRegistry, NumberFormats } from
'@superset-ui/number-format';
+import { createDurationFormatter, getNumberFormatter,
getNumberFormatterRegistry, NumberFormats } from '@superset-ui/number-format';
import { getTimeFormatterRegistry, smartDateFormatter,
smartDateVerboseFormatter } from '@superset-ui/time-format';
export default function setupFormatters() {
@@ -54,7 +54,9 @@ export default function setupFormatters() {
.registerValue('.0%f', getNumberFormatter('.1%'))
.registerValue('$,0', getNumberFormatter('$,.4f'))
.registerValue('$,0f', getNumberFormatter('$,.4f'))
- .registerValue('$,.f', getNumberFormatter('$,.4f'));
+ .registerValue('$,.f', getNumberFormatter('$,.4f'))
+ .registerValue('DURATION', createDurationFormatter())
+ .registerValue('DURATION_SUB', createDurationFormatter({
formatSubMilliseconds: true }));
getTimeFormatterRegistry()
.registerValue('smart_date', smartDateFormatter)