diff --git a/src/features/accounts/components/account-dialog.tsx b/src/features/accounts/components/account-dialog.tsx index 1e302d5..d5337a1 100644 --- a/src/features/accounts/components/account-dialog.tsx +++ b/src/features/accounts/components/account-dialog.tsx @@ -23,7 +23,7 @@ import { } from "@/shared/components/ui/dialog"; import { useControlledState } from "@/shared/hooks/use-controlled-state"; import { useFormState } from "@/shared/hooks/use-form-state"; -import { deriveNameFromLogo, normalizeLogo } from "@/shared/lib/logo"; +import { getLogoDisplayName, normalizeLogo } from "@/shared/lib/logo"; import { formatInitialBalanceInput, normalizeDecimalInput, @@ -66,7 +66,7 @@ const buildInitialValues = ({ }): AccountFormValues => { const fallbackLogo = logoOptions[0] ?? ""; const selectedLogo = normalizeLogo(account?.logo) || fallbackLogo; - const derivedName = deriveNameFromLogo(selectedLogo); + const derivedName = getLogoDisplayName(selectedLogo); return { name: account?.name ?? derivedName, diff --git a/src/features/cards/components/card-dialog.tsx b/src/features/cards/components/card-dialog.tsx index 60f4588..f0ba3a8 100644 --- a/src/features/cards/components/card-dialog.tsx +++ b/src/features/cards/components/card-dialog.tsx @@ -24,7 +24,7 @@ import { DEFAULT_CARD_BRANDS, DEFAULT_CARD_STATUS, } from "@/shared/lib/cards/constants"; -import { deriveNameFromLogo, normalizeLogo } from "@/shared/lib/logo"; +import { getLogoDisplayName, normalizeLogo } from "@/shared/lib/logo"; import { formatLimitInput, normalizeDecimalInput, @@ -59,7 +59,7 @@ const buildInitialValues = ({ }): CardFormValues => { const fallbackLogo = logoOptions[0] ?? ""; const selectedLogo = normalizeLogo(card?.logo) || fallbackLogo; - const derivedName = deriveNameFromLogo(selectedLogo); + const derivedName = getLogoDisplayName(selectedLogo); return { name: card?.name ?? derivedName, diff --git a/src/shared/components/logo-picker/logo-picker.tsx b/src/shared/components/logo-picker/logo-picker.tsx index a31b7ee..a0d207c 100644 --- a/src/shared/components/logo-picker/logo-picker.tsx +++ b/src/shared/components/logo-picker/logo-picker.tsx @@ -10,7 +10,11 @@ import { DialogTitle, } from "@/shared/components/ui/dialog"; import { Input } from "@/shared/components/ui/input"; -import { deriveNameFromLogo, resolveLogoSrc } from "@/shared/lib/logo"; +import { + getLogoDisplayName, + normalizeForSearch, + resolveLogoSrc, +} from "@/shared/lib/logo"; import { cn } from "@/shared/utils/ui"; const DEFAULT_BASE_PATH = "/logos"; @@ -35,7 +39,7 @@ export function LogoPickerTrigger({ className, }: LogoPickerTriggerProps) { const hasLogo = Boolean(selectedLogo); - const selectedLogoLabel = deriveNameFromLogo(selectedLogo); + const selectedLogoLabel = getLogoDisplayName(selectedLogo); const selectedLogoPath = hasLogo && selectedLogo ? resolveLogoSrc(selectedLogo, { basePath }) : null; @@ -102,8 +106,8 @@ export function LogoPickerDialog({ const filteredLogos = logos.filter((logo) => { if (!search.trim()) return true; - const logoLabel = deriveNameFromLogo(logo).toLowerCase(); - return logoLabel.includes(search.toLowerCase().trim()); + const logoLabel = getLogoDisplayName(logo); + return normalizeForSearch(logoLabel).includes(normalizeForSearch(search)); }); const handleOpenChange = (isOpen: boolean) => { @@ -145,7 +149,7 @@ export function LogoPickerDialog({
{filteredLogos.map((logo) => { const isActive = value === logo; - const logoLabel = deriveNameFromLogo(logo); + const logoLabel = getLogoDisplayName(logo); return (