From 793b0c9fe89dcfc057c0d152b3ff12bff5838cc6 Mon Sep 17 00:00:00 2001 From: Panagiotis Papadopoulos Date: Sun, 16 Feb 2025 15:27:18 +0100 Subject: [PATCH] feat(time_selector): add possibility to omit time scales --- .../type_widgets/options/time_selector.ts | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/public/app/widgets/type_widgets/options/time_selector.ts b/src/public/app/widgets/type_widgets/options/time_selector.ts index d364cb095..1bd413022 100644 --- a/src/public/app/widgets/type_widgets/options/time_selector.ts +++ b/src/public/app/widgets/type_widgets/options/time_selector.ts @@ -9,19 +9,22 @@ type TimeSelectorConstructor = { widgetLabelId: string; optionValueId: keyof OptionDefinitions; optionTimeScaleId: keyof OptionDefinitions; + includedTimeScales?: Set; }; +type TimeSelectorScale = "seconds" | "minutes" | "hours" | "days"; -const TPL = (options: Pick) => ` + +const TPL = (options: Omit) => `
@@ -42,6 +45,7 @@ export default class TimeSelector extends OptionsWidget { private widgetLabelId: string; private optionValueId: keyof OptionDefinitions; private optionTimeScaleId: keyof OptionDefinitions; + private includedTimeScales: Set; constructor(options: TimeSelectorConstructor) { super(); @@ -49,12 +53,14 @@ export default class TimeSelector extends OptionsWidget { this.widgetLabelId = options.widgetLabelId; this.optionValueId = options.optionValueId; this.optionTimeScaleId = options.optionTimeScaleId; + this.includedTimeScales = (!options.includedTimeScales) ? new Set(["seconds", "minutes", "hours", "days"]) : options.includedTimeScales; } doRender() { this.$widget = $(TPL({ widgetId: this.widgetId, - widgetLabelId: this.widgetLabelId + widgetLabelId: this.widgetLabelId, + includedTimeScales: this.includedTimeScales, })); this.$timeValueInput = this.$widget.find(`#${this.widgetId}`);