Dashboard Inputs and Defaults
When widgets on a dashboard define inputs, the dashboard can expose those as interactive controls. Users change input values to filter or customize what widgets display, without editing any code.
How inputs surface on a dashboard
- A widget defines inputs (e.g.,
production_lineof type text). - You place that widget on a dashboard.
- The dashboard automatically aggregates inputs from all its widgets.
- In view mode, a Dashboard Filters panel appears where users can set values for each input.
If multiple widgets define the same input key, they share the same value — changing it once updates all of them.
Setting defaults
In the dashboard editor, open the Dashboard Filter Settings panel:
- Find the input you want to configure.
- Enter a default value. This is what users see when they first open the dashboard.
Without a default, inputs start empty.
Setting dropdown options
For inputs where you want users to choose from a fixed list:
- In the Dashboard Filter Settings panel, find the input.
- Add options — a list of allowed values.
When options are set, the input renders as a dropdown instead of a free-text field.
How values flow to widgets
When a user changes an input on the dashboard:
- The new value is sent to every widget iframe on the dashboard.
- Each widget receives an
inputchangeevent. - Widgets that call
getValue("key")get the updated value.
This happens instantly — widgets can react to input changes without a page reload.
Input types
The input type (text, number, date, etc.) determines what control is shown:
| Type | Control |
|---|---|
| text | Text field |
| integer | Number field (whole numbers) |
| number | Number field (decimals allowed) |
| boolean | Toggle switch |
| date | Date picker |
| datetime | Date and time picker |
Tips
- Use consistent input keys across widgets that should respond to the same filter. For example, if three widgets all accept
production_line, they'll all update when the user selects a line. - Set sensible defaults so the dashboard shows useful data immediately, rather than requiring the user to fill in inputs first.
- See Widget Inputs for how to define inputs on the widget side.