58 lines
2.4 KiB
Handlebars
58 lines
2.4 KiB
Handlebars
|
<DataWriter
|
||
|
@sink={{concat '/' dc '/' nspace '/kv/'}}
|
||
|
@type="kv"
|
||
|
@label="key"
|
||
|
@ondelete={{action ondelete}}
|
||
|
as |writer|>
|
||
|
<BlockSlot @name="content">
|
||
|
{{#if (gt items.length 0)}}
|
||
|
<TabularCollection class="consul-kv-list" @items={{items}} as |item index|>
|
||
|
<BlockSlot @name="header">
|
||
|
<th>Name</th>
|
||
|
</BlockSlot>
|
||
|
<BlockSlot @name="row">
|
||
|
<td data-test-kv={{item.Key}} class={{if item.isFolder 'folder' 'file' }}>
|
||
|
<a href={{href-to (if item.isFolder 'dc.kv.folder' 'dc.kv.edit') item.Key}}>{{right-trim (left-trim item.Key parent.Key) '/'}}</a>
|
||
|
</td>
|
||
|
</BlockSlot>
|
||
|
<BlockSlot @name="actions" as |index change checked|>
|
||
|
<PopoverMenu @expanded={{if (eq checked index) true false}} @onchange={{action change index}} @keyboardAccess={{false}}>
|
||
|
<BlockSlot @name="trigger">
|
||
|
More
|
||
|
</BlockSlot>
|
||
|
<BlockSlot @name="menu" as |confirm send keypressClick|>
|
||
|
<li role="none">
|
||
|
<a data-test-edit role="menuitem" tabindex="-1" href={{href-to (if item.isFolder 'dc.kv.folder' 'dc.kv.edit') item.Key}}>{{if item.isFolder 'View' 'Edit'}}</a>
|
||
|
</li>
|
||
|
<li role="none" class="dangerous">
|
||
|
<label for={{confirm}} role="menuitem" tabindex="-1" onkeypress={{keypressClick}} data-test-delete>Delete</label>
|
||
|
<div role="menu">
|
||
|
<div class="confirmation-alert warning">
|
||
|
<div>
|
||
|
<header>
|
||
|
Confirm Delete
|
||
|
</header>
|
||
|
<p>
|
||
|
Are you sure you want to delete this key?
|
||
|
</p>
|
||
|
</div>
|
||
|
<ul>
|
||
|
<li class="dangerous">
|
||
|
<button tabindex="-1" type="button" class="type-delete" onclick={{queue (action change) (action writer.delete item)}}>Delete</button>
|
||
|
</li>
|
||
|
<li>
|
||
|
<label for={{confirm}}>Cancel</label>
|
||
|
</li>
|
||
|
</ul>
|
||
|
</div>
|
||
|
</div>
|
||
|
</li>
|
||
|
</BlockSlot>
|
||
|
</PopoverMenu>
|
||
|
</BlockSlot>
|
||
|
</TabularCollection>
|
||
|
{{else}}
|
||
|
{{yield}}
|
||
|
{{/if}}
|
||
|
</BlockSlot>
|
||
|
</DataWriter>
|