mirror of
https://github.com/status-im/consul.git
synced 2025-01-13 15:26:48 +00:00
bb95738321
Adds a 'status' for the filtering/searching in the UI, without this its not super clear that you are filtering a recordset due to the menu selections being hidden once closed. You can also use the pills in this status view to delete individual filters.
71 lines
1.9 KiB
Handlebars
71 lines
1.9 KiB
Handlebars
{{#let
|
|
|
|
(hash
|
|
value=(or sortBy "Status:asc")
|
|
change=(action (mut sortBy) value="target.selected")
|
|
)
|
|
|
|
(hash
|
|
status=(hash
|
|
value=(if status (split status ',') undefined)
|
|
change=(action (mut status) value="target.selectedItems")
|
|
)
|
|
source=(hash
|
|
value=(if source (split source ',') undefined)
|
|
change=(action (mut source) value="target.selectedItems")
|
|
)
|
|
searchproperty=(hash
|
|
value=(if (not-eq searchproperty undefined)
|
|
(split searchproperty ',')
|
|
searchProperties
|
|
)
|
|
change=(action (mut searchproperty) value="target.selectedItems")
|
|
default=searchProperties
|
|
)
|
|
)
|
|
|
|
(reject-by 'Service.Kind' 'connect-proxy' item.Services)
|
|
|
|
as |sort filters items|}}
|
|
<div class="tab-section">
|
|
{{#if (gt items.length 0) }}
|
|
<input type="checkbox" id="toolbar-toggle" />
|
|
<Consul::ServiceInstance::SearchBar
|
|
@sources={{get (collection items) 'ExternalSources'}}
|
|
@search={{search}}
|
|
@onsearch={{action (mut search) value="target.value"}}
|
|
@searchproperties={{searchProperties}}
|
|
|
|
@sort={{sort}}
|
|
|
|
@filter={{filters}}
|
|
/>
|
|
{{/if}}
|
|
{{! filter out any sidecar proxies }}
|
|
<DataCollection
|
|
@type="service-instance"
|
|
@sort={{sort.value}}
|
|
@filters={{filters}}
|
|
@search={{search}}
|
|
@items={{items}}
|
|
as |collection|>
|
|
<collection.Collection>
|
|
<Consul::ServiceInstance::List
|
|
@node={{item}}
|
|
@routeName="dc.services.show"
|
|
@items={{collection.items}}
|
|
@checks={{checks}}
|
|
/>
|
|
</collection.Collection>
|
|
<collection.Empty>
|
|
<EmptyState>
|
|
<BlockSlot @name="body">
|
|
<p>
|
|
This node has no service instances{{#if (gt items.length 0)}} matching that search{{/if}}.
|
|
</p>
|
|
</BlockSlot>
|
|
</EmptyState>
|
|
</collection.Empty>
|
|
</DataCollection>
|
|
</div>
|
|
{{/let}} |