Include block results when searching for components

This commit is contained in:
Andrew Kingston 2022-06-07 15:08:46 +01:00
parent 081d29e0c4
commit aa6d483713
1 changed files with 23 additions and 27 deletions

View File

@ -76,11 +76,9 @@
return [] return []
} }
// Split list into either components or blocks initially // Remove blocks if there is no search string
if (section === "components") { if (!search) {
structure = structure.filter(category => category.name !== "Blocks") structure = structure.filter(category => category.name !== "Blocks")
} else {
structure = structure.filter(category => category.name === "Blocks")
} }
// Return only items which match the search string // Return only items which match the search string
@ -159,6 +157,13 @@
borderRight borderRight
> >
<Layout paddingX="L" paddingY="XL" gap="S"> <Layout paddingX="L" paddingY="XL" gap="S">
<Search
placeholder="Search"
value={searchString}
on:change={e => (searchString = e.detail)}
bind:inputRef={searchRef}
/>
{#if !searchString}
<ActionGroup compact justified> <ActionGroup compact justified>
<ActionButton <ActionButton
fullWidth fullWidth
@ -171,21 +176,12 @@
on:click={() => (section = "blocks")}>Blocks</ActionButton on:click={() => (section = "blocks")}>Blocks</ActionButton
> >
</ActionGroup> </ActionGroup>
{/if}
</Layout> </Layout>
<div> <div>
<Divider noMargin noGrid /> <Divider noMargin noGrid />
</div> </div>
{#if section === "components"} {#if searchString || section === "components"}
<Layout paddingX="L" paddingY="XL">
<Search
placeholder="Search"
value={searchString}
on:change={e => (searchString = e.detail)}
bind:inputRef={searchRef}
/>
</Layout>
{/if}
{#if section === "components"}
{#each filteredStructure as category} {#each filteredStructure as category}
<DetailSummary name={category.name} collapsible={false}> <DetailSummary name={category.name} collapsible={false}>
<div class="component-grid"> <div class="component-grid">