mirror of
https://github.com/pheralb/svgl.git
synced 2025-02-06 06:58:04 +08:00
⚙️ Add option to clear the search.
This commit is contained in:
parent
9b576529ae
commit
465835bdb2
@ -1,7 +1,9 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
export let searchTerm: string;
|
export let searchTerm: string;
|
||||||
export let placeholder: string = 'Search...';
|
export let placeholder: string = 'Search...';
|
||||||
|
export let clearSearch: () => void;
|
||||||
import MagnifyingGlass from 'phosphor-svelte/lib/MagnifyingGlass';
|
import MagnifyingGlass from 'phosphor-svelte/lib/MagnifyingGlass';
|
||||||
|
import X from 'phosphor-svelte/lib/X';
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="relative w-full">
|
<div class="relative w-full">
|
||||||
@ -18,4 +20,15 @@
|
|||||||
bind:value={searchTerm}
|
bind:value={searchTerm}
|
||||||
on:input
|
on:input
|
||||||
/>
|
/>
|
||||||
|
{#if searchTerm.length > 0}
|
||||||
|
<div class="absolute inset-y-0 right-0 flex items-center pr-3">
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
class="focus:outline-none focus:ring-1 focus:ring-neutral-300"
|
||||||
|
on:click={clearSearch}
|
||||||
|
>
|
||||||
|
<X size={18} />
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
@ -28,6 +28,11 @@
|
|||||||
return svgTitle.includes(searchTerm.toLowerCase());
|
return svgTitle.includes(searchTerm.toLowerCase());
|
||||||
}));
|
}));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const clearSearch = () => {
|
||||||
|
searchTerm = '';
|
||||||
|
searchSvgs();
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
@ -38,6 +43,7 @@
|
|||||||
<Search
|
<Search
|
||||||
bind:searchTerm
|
bind:searchTerm
|
||||||
on:input={searchSvgs}
|
on:input={searchSvgs}
|
||||||
|
clearSearch={() => clearSearch()}
|
||||||
placeholder={`Search ${filteredSvgs.length} logos...`}
|
placeholder={`Search ${filteredSvgs.length} logos...`}
|
||||||
/>
|
/>
|
||||||
<Grid>
|
<Grid>
|
||||||
|
@ -29,6 +29,11 @@
|
|||||||
return svgTitle.includes(searchTerm.toLowerCase());
|
return svgTitle.includes(searchTerm.toLowerCase());
|
||||||
}));
|
}));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const clearSearch = () => {
|
||||||
|
searchTerm = '';
|
||||||
|
searchSvgs();
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
@ -39,6 +44,7 @@
|
|||||||
<Search
|
<Search
|
||||||
bind:searchTerm
|
bind:searchTerm
|
||||||
on:input={searchSvgs}
|
on:input={searchSvgs}
|
||||||
|
clearSearch={() => clearSearch()}
|
||||||
placeholder={`Search ${filteredSvgs.length} ${category} logos...`}
|
placeholder={`Search ${filteredSvgs.length} ${category} logos...`}
|
||||||
/>
|
/>
|
||||||
<Grid>
|
<Grid>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user