{{#app-view class="kv list" loading=isLoading}} {{#block-slot 'breadcrumbs'}}
    {{#if (not-eq parent.Key '/') }}
  1. Key / Values
  2. {{/if}} {{#each (slice 0 -2 (split parent.Key '/')) as |breadcrumb index|}}
  3. {{breadcrumb}}
  4. {{/each}}
{{/block-slot}} {{#block-slot 'header'}}

{{#if (eq parent.Key '/') }} Key / Value {{else}} {{ take 1 (drop 1 (reverse (split parent.Key '/'))) }} {{/if}}

{{/block-slot}} {{#block-slot 'toolbar'}} {{#if (gt items.length 0) }}
{{freetext-filter onchange=(action 'filter') value=filter.s placeholder="Search by name"}}
{{/if}} {{/block-slot}} {{#block-slot 'actions'}} {{#if (not-eq parent.Key '/') }} Create {{else}} Create {{/if}} {{/block-slot}} {{#block-slot 'content'}} {{#if (gt filtered.length 0)}} {{#tabular-collection items=(sort-by 'isFolder:desc' filtered) as |item index| }} {{#block-slot 'header'}} Name {{/block-slot}} {{#block-slot 'row'}} {{right-trim (left-trim item.Key parent.Key) '/'}} {{/block-slot}} {{#block-slot 'actions' as |index change checked|}} {{#confirmation-dialog confirming=false index=index message='Are you sure you want to delete this key?'}} {{#block-slot 'action' as |confirm|}} {{#action-group index=index onchange=(action change) checked=(if (eq checked index) 'checked')}} {{/action-group}} {{/block-slot}} {{#block-slot 'dialog' as |execute cancel message|}}

{{message}}

{{/block-slot}} {{/confirmation-dialog}} {{/block-slot}} {{/tabular-collection}} {{else}}

There are no Key / Value pairs.

{{/if}} {{/block-slot}} {{/app-view}}