Skip to content

Commit a344f17

Browse files
authored
Added support for default values in parameter select (#200)
1 parent 66b42b7 commit a344f17

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

src/chart/ParameterSelectionChart.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ const NeoParameterSelectionChart = (props: ChartProps) => {
5050
// In case the components gets (re)loaded with a different/non-existing selected parameter, set the text to the current global parameter value.
5151
if (query && value != currentValue && currentValue != inputText) {
5252
setValue(currentValue);
53-
setInputText(currentValue);
53+
setInputText(value == defaultValue ? "" : currentValue);
5454
setExtraRecords([]);
5555
}
5656

@@ -63,23 +63,22 @@ const NeoParameterSelectionChart = (props: ChartProps) => {
6363
const settings = (props.settings) ? props.settings : {};
6464
const helperText = settings.helperText;
6565
const clearParameterOnFieldClear = settings.clearParameterOnFieldClear;
66-
67-
66+
const defaultValue = props.settings && props.settings["defaultValue"] && props.settings["defaultValue"].length > 0 ? props.settings["defaultValue"] : "";
6867
return <div>
6968
{type == "Free Text" ?
7069
<div style={{ width: "100%" }}>
7170
<NeoField
7271
key={"freetext"}
7372
label={helperText ? helperText : label + " " + property}
74-
defaultValue={""}
73+
defaultValue={defaultValue}
7574
value={value}
7675
variant="outlined"
7776
placeholder={"Enter text here..."}
7877
style={{ maxWidth: "calc(100% - 30px)", marginLeft: "15px", marginTop: "5px", width: "calc(100% - 80px)" }}
7978
onChange={(newValue) => {
8079
// TODO: i want this to be a proper wait instead of triggering on the first character.
8180
if (newValue == null && clearParameterOnFieldClear) {
82-
setValue("");
81+
setValue(defaultValue);
8382
} else {
8483
setValue(newValue);
8584
}
@@ -108,6 +107,8 @@ const NeoParameterSelectionChart = (props: ChartProps) => {
108107
}
109108
if (newValue == null && clearParameterOnFieldClear) {
110109
props.setGlobalParameter(parameter, undefined);
110+
} else if (newValue == null) {
111+
props.setGlobalParameter(parameter, defaultValue);
111112
} else {
112113
props.setGlobalParameter(parameter, newValue);
113114
}

src/config/ReportConfig.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1257,6 +1257,11 @@ export const REPORT_TYPES = {
12571257
values: [true, false],
12581258
default: true
12591259
},
1260+
"defaultValue": {
1261+
label: "Default Value (Override)",
1262+
type: SELECTION_TYPES.TEXT,
1263+
default: ""
1264+
},
12601265
"clearParameterOnFieldClear": {
12611266
label: "Clear Parameter on Field Reset",
12621267
type: SELECTION_TYPES.LIST,

0 commit comments

Comments
 (0)