mirror of
https://github.com/shadoll/sLogos.git
synced 2026-02-04 11:03:24 +00:00
feat: add addBrand prop to CardSmall, CardMiddle, List, and Home components for brand filtering
This commit is contained in:
@@ -8,8 +8,8 @@
|
|||||||
export let theme;
|
export let theme;
|
||||||
export let onCopy;
|
export let onCopy;
|
||||||
export let onDownload;
|
export let onDownload;
|
||||||
export let setSearchQuery;
|
|
||||||
export let allLogos = [];
|
export let allLogos = [];
|
||||||
|
export let addBrand = () => {};
|
||||||
export const setTheme = () => {};
|
export const setTheme = () => {};
|
||||||
|
|
||||||
function openPreview(logo) {
|
function openPreview(logo) {
|
||||||
@@ -63,13 +63,8 @@
|
|||||||
class="brand-filter-btn"
|
class="brand-filter-btn"
|
||||||
title="Filter by brand"
|
title="Filter by brand"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
console.log('CardSquare: Filtering by brand:', logo.brand);
|
console.log('CardMiddle: Filtering by brand:', logo.brand);
|
||||||
setSearchQuery(logo.brand);
|
addBrand(logo.brand);
|
||||||
// Update URL with search param
|
|
||||||
const params = new URLSearchParams(window.location.search);
|
|
||||||
params.set('search', logo.brand);
|
|
||||||
const newUrl = window.location.pathname + (params.toString() ? '?' + params.toString() : '');
|
|
||||||
history.replaceState(null, '', newUrl);
|
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none">
|
<svg width="16" height="16" viewBox="0 0 24 24" fill="none">
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
export let theme;
|
export let theme;
|
||||||
export let onCopy;
|
export let onCopy;
|
||||||
export let onDownload;
|
export let onDownload;
|
||||||
export let setSearchQuery;
|
|
||||||
export let allLogos = [];
|
export let allLogos = [];
|
||||||
|
export let addBrand = () => {};
|
||||||
export const setTheme = () => {};
|
export const setTheme = () => {};
|
||||||
|
|
||||||
function openPreview(logo) {
|
function openPreview(logo) {
|
||||||
@@ -64,12 +64,7 @@
|
|||||||
title="Filter by brand"
|
title="Filter by brand"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
console.log('CardList: Filtering by brand:', logo.brand);
|
console.log('CardList: Filtering by brand:', logo.brand);
|
||||||
setSearchQuery(logo.brand);
|
addBrand(logo.brand);
|
||||||
// Update URL with search param
|
|
||||||
const params = new URLSearchParams(window.location.search);
|
|
||||||
params.set('search', logo.brand);
|
|
||||||
const newUrl = window.location.pathname + (params.toString() ? '?' + params.toString() : '');
|
|
||||||
history.replaceState(null, '', newUrl);
|
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<svg width="16" height="16" viewBox="0 0 24 24" fill="none">
|
<svg width="16" height="16" viewBox="0 0 24 24" fill="none">
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
export let onDownload;
|
export let onDownload;
|
||||||
export let setSearchQuery;
|
export let setSearchQuery;
|
||||||
export let allLogos = [];
|
export let allLogos = [];
|
||||||
|
export let addBrand = () => {};
|
||||||
export let theme;
|
export let theme;
|
||||||
export let viewMode = "grid";
|
export let viewMode = "grid";
|
||||||
export let setTheme = () => {};
|
export let setTheme = () => {};
|
||||||
@@ -26,6 +27,7 @@
|
|||||||
{onDownload}
|
{onDownload}
|
||||||
{setSearchQuery}
|
{setSearchQuery}
|
||||||
{allLogos}
|
{allLogos}
|
||||||
|
{addBrand}
|
||||||
{setTheme}
|
{setTheme}
|
||||||
/>
|
/>
|
||||||
{:else if viewMode === "compact"}
|
{:else if viewMode === "compact"}
|
||||||
@@ -44,6 +46,7 @@
|
|||||||
{onDownload}
|
{onDownload}
|
||||||
{setSearchQuery}
|
{setSearchQuery}
|
||||||
{allLogos}
|
{allLogos}
|
||||||
|
{addBrand}
|
||||||
{setTheme}
|
{setTheme}
|
||||||
/>
|
/>
|
||||||
{/if}
|
{/if}
|
||||||
|
|||||||
@@ -220,6 +220,7 @@
|
|||||||
{onDownload}
|
{onDownload}
|
||||||
{setSearchQuery}
|
{setSearchQuery}
|
||||||
{allLogos}
|
{allLogos}
|
||||||
|
{addBrand}
|
||||||
{setTheme}
|
{setTheme}
|
||||||
/>
|
/>
|
||||||
</main>
|
</main>
|
||||||
|
|||||||
Reference in New Issue
Block a user