120 lines
3.3 KiB
Handlebars
120 lines
3.3 KiB
Handlebars
<Form::Input
|
|
@placeholder='Search'
|
|
@prefixIcon={{this.Magnify}}
|
|
@value={{this.q}}
|
|
@onChange={{this.searchTextChanged}}
|
|
/>
|
|
|
|
{{!-- <div class='flex items-center mb-4'>
|
|
<div class='flex items-center ml-auto'>
|
|
<Icons::Check class='mr-1' @size='18' />
|
|
Hits:
|
|
{{@model.data.estimatedTotalHits}}
|
|
<Icons::ClockOutline class='ml-6 mr-1' @size='18' />
|
|
Time spent:
|
|
{{@model.data.processingTimeMs}}
|
|
ms
|
|
</div>
|
|
</div> --}}
|
|
|
|
<LinkTo
|
|
@route='admin.indexes.item.documents.new'
|
|
@model={{@model.index}}
|
|
class='block mb-4'
|
|
>
|
|
Create new document
|
|
</LinkTo>
|
|
|
|
{{#if (gt @model.data.estimatedTotalHits 0)}}
|
|
<RoyalTable
|
|
@data={{@model.data.hits}}
|
|
@sortingProp={{this.sort}}
|
|
@onSort={{this.onSort}}
|
|
class='w-full'
|
|
as |Column data|
|
|
>
|
|
<Column
|
|
@name={{capitalize @model.index.primaryKey}}
|
|
@prop={{@model.index.primaryKey}}
|
|
@sortable={{includes @model.index.primaryKey @model.sortableAttributes}}
|
|
>
|
|
<LinkTo
|
|
@route='admin.indexes.item.documents.document'
|
|
@model={{get data @model.index.primaryKey}}
|
|
>
|
|
{{get data @model.index.primaryKey}}
|
|
</LinkTo>
|
|
</Column>
|
|
{{#each-in @model.stats.fieldDistribution as |field|}}
|
|
{{#if (not-eq field @model.index.primaryKey)}}
|
|
<Column
|
|
@name={{capitalize field}}
|
|
@prop={{field}}
|
|
@sortable={{includes field @model.sortableAttributes}}
|
|
>
|
|
{{#let (get data field) as |value|}}
|
|
{{if (eq (type-of value) 'object') (stringify value) value}}
|
|
{{/let}}
|
|
</Column>
|
|
{{/if}}
|
|
{{/each-in}}
|
|
<Column class='relative'>
|
|
{{#let
|
|
(array @model.index.uid (get data @model.index.primaryKey))
|
|
'flex items-center px-4 py-2 text-sm hover:bg-base-6 hover:text-base-1'
|
|
as |models linkClasses|
|
|
}}
|
|
<Menu as |menu|>
|
|
<menu.Button class='inline-flex items-center'>
|
|
<Icons::DotsHorizontal />
|
|
</menu.Button>
|
|
<menu.Items
|
|
class='absolute z-dropdown right-0 w-28 mt-2 py-1 origin-top-right bg-base-7 border rounded shadow-sm outline-none'
|
|
>
|
|
<LinkTo
|
|
@route='admin.indexes.item.documents.document'
|
|
@models={{models}}
|
|
class={{linkClasses}}
|
|
>
|
|
<Icons::FileDocumentOutline @size={{18}} class='mr-1' />
|
|
View
|
|
</LinkTo>
|
|
<LinkTo
|
|
@route='admin.indexes.item.documents.document.edit'
|
|
@models={{models}}
|
|
class={{linkClasses}}
|
|
>
|
|
<Icons::PencilOutline @size={{18}} class='mr-1' />
|
|
Edit
|
|
</LinkTo>
|
|
<LinkTo
|
|
@route='admin.indexes.item.documents.document.delete'
|
|
@models={{models}}
|
|
class={{linkClasses}}
|
|
>
|
|
<Icons::TrashCanOutline @size={{18}} class='mr-1' />
|
|
Delete
|
|
</LinkTo>
|
|
</menu.Items>
|
|
</Menu>
|
|
{{/let}}
|
|
</Column>
|
|
</RoyalTable>
|
|
|
|
<div class='flex items-center'>
|
|
{{this.fromHits}}
|
|
—
|
|
{{this.toHits}}
|
|
of
|
|
{{@model.data.estimatedTotalHits}}
|
|
|
|
<Pagination
|
|
@count={{@model.data.estimatedTotalHits}}
|
|
@current={{this.page}}
|
|
@perPage={{@model.data.limit}}
|
|
class='ml-auto'
|
|
/>
|
|
</div>
|
|
{{else}}
|
|
No results found
|
|
{{/if}}
|