Skip to content

Loading Pulse

dvk-loading-pulse renders five data pulse bars that only scale and phase-shift: no rotation, no sweeping ring. The centre bar leads and the bars on either side follow, so the group reads as a single travelling wave. Use it as the default loading state on dashboards, panels, cards, and table empty states.

Loading data
html
<dvk-loading-pulse>Loading data</dvk-loading-pulse>
Syncing nodes
html
<dvk-loading-pulse colors="#48ff8a,#1e6b3c" size="72">Syncing nodes</dvk-loading-pulse>

Props

NameTypeDefaultNotes
colorstringemptyMoving bar color. Falls back to --dvk-color-primary and then #18f0ff.
secondary-colorstringemptyStatic track color behind each bar. Falls back to --dvk-color-secondary and then #2b7cff.
colorsstringemptyComma-separated bar and track colors.
sizenumber52Rendered SVG width in CSS pixels. The height follows the bar aspect ratio.
durnumber1.05Pulse cycle duration in seconds. Each bar starts at its own fraction of this value.
animatedbooleantrueEnables the bar pulse.
pausedbooleanfalseStops animation while keeping the resting bar profile visible.

Events

NameDetail
dvk-ready{ tagName }

Slots

NameDescription
defaultLoading status text rendered below the pulse bars.

CSS Variables

NameMeaning
--dvk-loading-pulse-sizeSVG display width. The size attribute sets this inline.
--dvk-loading-pulse-gapGap between the pulse bars and the status text.
--dvk-loading-pulse-tip-colorStatus text color.
--dvk-loading-pulse-tip-font-sizeStatus text font size.
--dvk-loading-pulse-tip-line-heightStatus text line height.
--dvk-loading-pulse-tip-letter-spacingStatus text letter spacing. The status text is uppercased.

Parts

PartDescription
rootLoading layout wrapper.
graphicSVG graphic.
barShared group for each pulse bar.
bar-trackStatic track behind a bar.
bar-fillMoving bar that scales around its own centre.
tipStatus text wrapper.