John Cowen d15cbc9f5a ui: Accessibility scan improvements (#9485)
* ui: Remove all vestiges of role=tabpanel

* Switch out tablist role for a label, default to Secondary

* Move healthcheckout-output headers to h2, ideally these would be outside the component

* Add aria-label for empty button

* Fix up non-unique ids in topology component

* Temporarily fixup h2 in KV > LockSession

* Fixup dl with no dt

* h3 > h2

* Fix up page objects that were reliant on ids
2021-01-05 10:06:38 +00:00

98 lines
2.5 KiB
Handlebars

{{on-window 'resize' (action this.getIconPositions)}}
{{#if (gt @lines.length 0)}}
<svg
{{did-insert this.getIconPositions}}
{{did-update this.getIconPositions @lines}}
viewBox={{concat @view.x ' ' @view.y ' ' @view.width ' ' @view.height}}
preserveAspectRatio="none"
>
<defs>
<marker
id={{concat this.guid '-allow-dot'}}
class="allow-dot"
viewBox="-2 -2 15 15"
refX="6"
refY="6"
markerWidth="6"
markerHeight="6"
>
<circle
cx="6"
cy="6"
r="6"
/>
</marker>
<marker
id={{concat this.guid '-allow-arrow'}}
class="allow-arrow"
viewBox="-1 -1 12 12"
refX="5"
refY="5"
markerWidth="6" markerHeight="6"
orient="auto-start-reverse"
>
<polygon points="0 0 10 5 0 10" />
</marker>
<marker
id={{concat this.guid '-deny-dot'}}
class="deny-dot"
viewBox="-2 -2 15 15"
refX="6"
refY="6"
markerWidth="6"
markerHeight="6"
>
<circle
cx="6"
cy="6"
r="6"
/>
</marker>
<marker
id={{concat this.guid '-deny-arrow'}}
class="deny-arrow"
viewBox="-1 -1 12 12"
refX="5"
refY="5"
markerWidth="6"
markerHeight="6"
orient="auto-start-reverse"
>
<polygon points="0 0 10 5 0 10" />
</marker>
</defs>
{{#each @lines as |line|}}
{{#if (eq line.permission 'deny')}}
<path
id={{concat this.guid line.id}}
d={{svg-curve line.dest src=line.src}}
marker-start={{concat 'url(#' this.guid '-deny-dot)'}}
marker-end={{concat 'url(#' this.guid '-deny-arrow)'}}
data-permission={{line.permission}}
/>
{{else}}
<path
id={{concat this.guid line.id}}
d={{svg-curve line.dest src=line.src}}
marker-start={{concat 'url(#' this.guid '-allow-dot)'}}
marker-end={{concat 'url(#' this.guid '-allow-arrow)'}}
data-permission={{line.permission}}
/>
{{/if}}
{{/each}}
</svg>
{{/if}}
{{#each @items as |item|}}
{{#if (or (not item.Intention.Allowed) item.Intention.HasPermissions)}}
<TopologyMetrics::Popover
@type={{if item.Intention.HasPermissions 'l7' 'deny'}}
@position={{find-by 'id' (concat this.guid item.Namespace item.Name) this.iconPositions}}
@item={{item}}
@oncreate={{action @oncreate item @service}}
/>
{{/if}}
{{/each}}