chore(FontSearch): move to widgets layer

This commit is contained in:
Ilia Mashkov
2026-01-24 15:35:26 +03:00
parent 4b01b1592d
commit cf08f7adfa
7 changed files with 117 additions and 36 deletions

View File

@@ -15,5 +15,5 @@ export { filterManager } from './model/state/manager.svelte';
export {
FilterControls,
Filters,
FontSearch,
SuggestedFonts,
} from './ui';

View File

@@ -1,33 +0,0 @@
<!--
Component: FontSearch
Combines search input with font list display
-->
<script lang="ts">
import { fontshareStore } from '$entities/Font';
import { SearchBar } from '$shared/ui';
import { onMount } from 'svelte';
import { mapManagerToParams } from '../../lib';
import { filterManager } from '../../model';
import SuggestedFonts from '../SuggestedFonts/SuggestedFonts.svelte';
onMount(() => {
/**
* The Pairing:
* We "plug" this manager into the global store.
* addBinding returns a function that removes this binding when the component unmounts.
*/
const unbind = fontshareStore.addBinding(() => mapManagerToParams(filterManager));
return unbind;
});
</script>
<SearchBar
id="font-search"
class="w-full"
placeholder="Search fonts by name..."
bind:value={filterManager.queryValue}
>
<SuggestedFonts />
</SearchBar>

View File

@@ -1,9 +1,9 @@
import Filters from './Filters/Filters.svelte';
import FilterControls from './FiltersControl/FilterControls.svelte';
import FontSearch from './FontSearch/FontSearch.svelte';
import SuggestedFonts from './SuggestedFonts/SuggestedFonts.svelte';
export {
FilterControls,
Filters,
FontSearch,
SuggestedFonts,
};