better quick search UX (preserves expanded state()

This commit is contained in:
Jan Prochazka 2021-09-25 13:07:38 +02:00
parent 7699cca6b9
commit 34fce0ef58
3 changed files with 21 additions and 16 deletions

View File

@ -52,8 +52,9 @@
</div>
{/if}
{#each filtered as item}
{#each items as item}
<AppObjectListItem
isHidden={!item.isMatched}
{...$$restProps}
{module}
data={item.data}

View File

@ -69,8 +69,9 @@
/>
{/each}
{:else}
{#each filtered as data}
{#each list as data}
<AppObjectListItem
isHidden={!filtered.includes(data)}
{module}
{subItemsComponent}
{expandOnClick}

View File

@ -10,6 +10,7 @@
import { tick } from 'svelte';
import { plusExpandIcon } from '../icons/expandIcons';
export let isHidden;
export let filter;
export let module;
export let data;
@ -38,21 +39,23 @@
$: if (!expandable && isExpanded) isExpanded = false;
</script>
<svelte:component
this={module.default}
{data}
on:click={handleExpand}
on:expand={handleExpandButton}
expandIcon={getExpandIcon(expandable, subItemsComponent, isExpanded, expandIconFunc)}
{checkedObjectsStore}
{module}
{disableContextMenu}
/>
{#if !isHidden}
<svelte:component
this={module.default}
{data}
on:click={handleExpand}
on:expand={handleExpandButton}
expandIcon={getExpandIcon(expandable, subItemsComponent, isExpanded, expandIconFunc)}
{checkedObjectsStore}
{module}
{disableContextMenu}
/>
{#if isExpanded && subItemsComponent}
<div class="subitems">
<svelte:component this={subItemsComponent} {data} {filter} />
</div>
{#if isExpanded && subItemsComponent}
<div class="subitems">
<svelte:component this={subItemsComponent} {data} {filter} />
</div>
{/if}
{/if}
<style>