Instrument readouts and controls
Bar Graph <smart-bar-graph>
BarGraph is a segmented level meter, such as the column of lit blocks on an audio console or a vibration monitor.
Stylesheet
The component is styled by source/styles/default/smart.bargraph.css, which is included in smart.industrial-elements.css. It uses the theme's CSS variables and the Industrial tokens (--smart-industrial-*) described in the Themes and Styling guide, so it follows the theme applied to the page.
CSS variables
The component declares 5 CSS variables of its own, on the component itself. Set them in a rule that selects the component, loaded after the component's stylesheet: smart-bar-graph, or a class or an id on it. A value set on a container does not reach the component, because the component's own declaration replaces the inherited one.
smart-bar-graph {
--smart-bar-graph-width: ...;
--smart-bar-graph-height: ...;
--smart-bar-segment-off: ...;
--smart-bar-segment-on: ...;
--smart-bar-segment-gap: ...;
}
/* one instance */
#barGraph {
--smart-bar-graph-width: ...;
}
One variable is written inline by the component's script, and an inline value replaces any stylesheet rule:
--smart-bar-segment-gapis written on the bar from thesegmentGapproperty.
Set it through the property rather than in CSS.
Themes
Two ISA-101 themes ship with the package: smart.industrial.css and smart.industrial-dark.css. Load one after the base theme and set theme="industrial" or theme="industrial-dark" on the body element. The demo page switches between the three.
<link rel="stylesheet" href="node_modules/smart-industrial/source/styles/smart.default.css" /> <link rel="stylesheet" href="node_modules/smart-industrial/source/styles/smart.industrial-elements.css" /> <link rel="stylesheet" href="node_modules/smart-industrial/source/styles/smart.industrial.css" /> <body theme="industrial">