1.6.12 (2026-08-17)
Fixed
- link animations can no longer collide with another plugin's: the flow and blink animations were emitted as raw
<style>tags declaring@keyframes link-flow-forwardand@keyframes link-blink. Animation names are global to the page, not scoped to the element that uses them, so any other panel on the same dashboard declaring an animation by either of those names would silently redefine ours — or have ours redefine theirs — with the winner decided by mount order. Both are now built with Emotion'skeyframes()helper, which hashes the rule body into a uniqueanimation-<hash>name, so a collision is impossible regardless of what else is on the dashboard. The animations themselves are unchanged - the export anchor is rendered by React instead of being spliced into the document: SVG and JSON export created an
<a>, appended it todocument.body, clicked it and removed it. That mutates the document outside the component's own subtree, and an unmount or a throw between the append and the remove would leave the node stranded in the DOM. The anchor is now part of the form's JSX and is driven through auseRef, so React owns its lifetime and it disappears with the component
Chores
- panel styling uses Grafana's theme tokens instead of literal values: the data-notice banner, both hover tooltips, the animation and status legends, and the colour scale carried hard-coded pixel sizes,
z-index: 9999/10000, and in one case a literalrgba(204, 204, 220, 0.25)border that could not follow a light/dark switch at all. These now read fromtheme.spacing(),theme.shape.radius.default,theme.typography.bodySmall.fontSize,theme.zIndexandtheme.colors. The notice maps totheme.zIndex.tooltipand the hover tooltips totheme.zIndex.portal, preserving the stacking order the old 9999/10000 pair produced. Twoz-index: 2values are deliberately left as-is: they stack an element directly above the map SVG rather than acting as an overlay layer, and no theme token expresses that. One visual nuance worth noting —theme.shape.radius.defaultis 2px where the literals were 4px, so those corners are slightly less rounded, which is the point of deferring to the theme
This Github draft release has been created for your plugin.
Note: if this is the first release for your plugin please consult the distributing-your-plugin section of the README
If you would like to submit this release to Grafana please consider the following steps:
- Check the Validate plugin step in the release workflow for any warnings that need attention
- Edit this draft release, adjust these notes accordingly and click Publish Release
- Navigate to https://grafana.com/auth/sign-in/ to sign into your account
- Once logged in click My Plugins in the admin navigation
- Click the Submit Plugin button
- Fill in the Plugin Submission form:
- Paste this .zip asset link in the Plugin URL field
- Paste this .zip.sha1 link in the SHA1 field
If the links above are not working, you must first edit this draft release and publish it.
This build has been attested. You can view the attestation details here
What's Changed
Full Changelog: v1.6.11...v1.6.12