Here are thoughts on the status indicator widget design.
I recommend looking at the Esri dashboard documentation and maybe some other dashboards if you can find them to see how they configure data feeds.
Similar to other widgets, there should be one or more dataPath properties to provide data for the widget.
Similar to other widgets, there needs to be a way to extract the needed values from the csv or JSON by columnName, propertyName, or attributeName (nor sure if we should stick with one name or accept multiple - in the future, a UI for building the configuration files will manage the names). For ideas, refer to TSTool table commands to see what command parameters are used to read tables. The data values needed for the widget will come from a row/object and multiple columns.
Probably need a way to query/filter to a row/object because we are probably not going to create a ton of little files for each indicator, for each municipality, etc. Instead, one file will be queried to match a row.
A selector will set a primary values, such as a county, basin, municipality, or station ID, which will allow matching the dataset row/object.
Need to handle missing input because not everything may be set until we I get data analysis workflows set. Always have a default.
The indicator icon is similar to map layer symbology. Do we provide configuration similar to a classification file and indicate indicator icon, color, etc.? Do not assume that it will always be green, yellow, red and 3 levels because hardcoding this will not meet requirements. Should such configuration be specified for each widget? Allow defining in dashboard and referencing it?
There may also be cases where the indicator icon is constant, such as when just reporting a data value with no indication of good/bad. In this case, the icon is static, such as a symbol for rain, or water level. Does this require a different widget or use the same?
Showing the trend requires understanding the time change. Is the change over an hour, a day, a year?
Here are thoughts on the status indicator widget design.
dataPath
properties to provide data for the widget.columnName
,propertyName
, orattributeName
(nor sure if we should stick with one name or accept multiple - in the future, a UI for building the configuration files will manage the names). For ideas, refer to TSTool table commands to see what command parameters are used to read tables. The data values needed for the widget will come from a row/object and multiple columns.