b1d5409d1c
Add totals to some listing views, remove healthcheck totals 1. Adds markup to render totals for Services, Nodes, Intentions and v1 ACLs 2. Removes counts from healthcheck filters, and therefore simplify text, moving the copy to the templates 3. Alter test to reflect the fact that the text of the buttons are no static in the component template rather than a dynamic attribute
72 lines
2.6 KiB
Handlebars
72 lines
2.6 KiB
Handlebars
{{#app-view class="node list"}}
|
|
{{#block-slot 'header'}}
|
|
<h1>
|
|
Nodes <em>{{format-number items.length}} total</em>
|
|
</h1>
|
|
<label for="toolbar-toggle"></label>
|
|
{{/block-slot}}
|
|
{{#block-slot 'toolbar'}}
|
|
{{#if (gt items.length 0) }}
|
|
{{catalog-filter searchable=(array searchableHealthy searchableUnhealthy) search=s status=filters.status onchange=(action 'filter')}}
|
|
{{/if}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'content'}}
|
|
{{#if (gt unhealthy.length 0) }}
|
|
<div class="unhealthy">
|
|
<h2>Unhealthy Nodes</h2>
|
|
<div>
|
|
{{! think about 2 differing views here }}
|
|
<ul>
|
|
{{#changeable-set dispatcher=searchableUnhealthy}}
|
|
{{#block-slot 'set' as |unhealthy|}}
|
|
{{#each unhealthy as |item|}}
|
|
{{healthchecked-resource
|
|
tagName='li'
|
|
data-test-node=item.Node
|
|
href=(href-to 'dc.nodes.show' item.Node)
|
|
name=item.Node
|
|
address=item.Address
|
|
checks=item.Checks
|
|
}}
|
|
{{/each}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'empty'}}
|
|
<p>
|
|
There are no unhealthy nodes for that search.
|
|
</p>
|
|
{{/block-slot}}
|
|
{{/changeable-set}}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{{/if}}
|
|
{{#if (gt healthy.length 0) }}
|
|
<div class="healthy">
|
|
<h2>Healthy Nodes</h2>
|
|
{{#changeable-set dispatcher=searchableHealthy}}
|
|
{{#block-slot 'set' as |healthy|}}
|
|
{{#list-collection cellHeight=92 items=healthy as |item index|}}
|
|
{{healthchecked-resource
|
|
data-test-node=item.Node
|
|
href=(href-to 'dc.nodes.show' item.Node)
|
|
name=item.Node
|
|
address=item.Address
|
|
status=item.Checks.[0].Status
|
|
}}
|
|
{{/list-collection}}
|
|
{{/block-slot}}
|
|
{{#block-slot 'empty'}}
|
|
<p>
|
|
There are no healthy nodes for that search.
|
|
</p>
|
|
{{/block-slot}}
|
|
{{/changeable-set}}
|
|
</div>
|
|
{{/if}}
|
|
{{#if (and (eq healthy.length 0) (eq unhealthy.length 0)) }}
|
|
<p>
|
|
There are no nodes.
|
|
</p>
|
|
{{/if}}
|
|
{{/block-slot}}
|
|
{{/app-view}} |