diff --git a/packages/core/src/components/sections/Hero/DefaultComponents.ts b/packages/core/src/components/sections/Hero/DefaultComponents.ts new file mode 100644 index 0000000000..2fd2da4a23 --- /dev/null +++ b/packages/core/src/components/sections/Hero/DefaultComponents.ts @@ -0,0 +1,11 @@ +import { + Hero as UIHero, + HeroImage as UIHeroImage, + HeroHeader as UIHeroHeader, +} from '@faststore/ui' + +export const HeroDefaultComponents = { + Hero: UIHero, + HeroImage: UIHeroImage, + HeroHeader: UIHeroHeader, +} diff --git a/packages/core/src/components/sections/Hero/Hero.tsx b/packages/core/src/components/sections/Hero/Hero.tsx index cf1b60da2d..3e30e89486 100644 --- a/packages/core/src/components/sections/Hero/Hero.tsx +++ b/packages/core/src/components/sections/Hero/Hero.tsx @@ -4,11 +4,8 @@ import { } from '@faststore/ui' import { ReactNode } from 'react' import { Image } from 'src/components/ui/Image' -import { - Hero as HeroWrapper, - HeroImage, - HeroHeader, -} from 'src/components/sections/Hero/Overrides' + +import { useOverrideComponents } from 'src/sdk/overrides/OverrideContext' import Section from '../Section' @@ -36,16 +33,22 @@ const Hero = ({ title, subtitle, image, - variant = HeroWrapper.props.variant ?? 'primary', - colorVariant = HeroWrapper.props.colorVariant ?? 'main', + variant = 'primary', + colorVariant = 'main', icon, }: HeroProps) => { + const { + Hero: HeroWrapper, + HeroImage, + HeroHeader, + } = useOverrideComponents<'Hero'>() + return (
+) diff --git a/packages/core/src/components/sections/Hero/Overrides.tsx b/packages/core/src/components/sections/Hero/Overrides.tsx deleted file mode 100644 index 5044b0f075..0000000000 --- a/packages/core/src/components/sections/Hero/Overrides.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { - Hero as UIHero, - HeroImage as UIHeroImage, - HeroHeader as UIHeroHeader, -} from '@faststore/ui' - -import { getSectionOverrides } from 'src/sdk/overrides/overrides' -import { override } from 'src/customizations/src/components/overrides/Hero' -import type { SectionOverrideDefinition } from 'src/typings/overridesDefinition' - -const { Hero, HeroImage, HeroHeader } = getSectionOverrides( - { - Hero: UIHero, - HeroImage: UIHeroImage, - HeroHeader: UIHeroHeader, - }, - override as SectionOverrideDefinition<'Hero'> -) - -export { Hero, HeroImage, HeroHeader } diff --git a/packages/core/src/sdk/overrides/sections.tsx b/packages/core/src/sdk/overrides/sections.tsx index f3adb770bf..bc87c6a5e0 100644 --- a/packages/core/src/sdk/overrides/sections.tsx +++ b/packages/core/src/sdk/overrides/sections.tsx @@ -1,11 +1,14 @@ import Alert from '../../components/sections/Alert' +import Hero from '../../components/sections/Hero' import type { DefaultSectionComponentsDefinitions } from '../../typings/overridesDefinition' import type { SectionsOverrides } from '../../typings/overrides' import { AlertDefaultComponents } from '../../components/sections/Alert/DefaultComponents' +import { HeroDefaultComponents } from '../../components/sections/Hero/DefaultComponents' export const Sections = { Alert, + Hero, } export const DefaultComponents: Partial< @@ -15,4 +18,5 @@ export const DefaultComponents: Partial< > > = { Alert: AlertDefaultComponents, + Hero: HeroDefaultComponents, } diff --git a/packages/core/src/typings/overrides.ts b/packages/core/src/typings/overrides.ts index ce776714d6..95058a9836 100644 --- a/packages/core/src/typings/overrides.ts +++ b/packages/core/src/typings/overrides.ts @@ -47,7 +47,7 @@ export type SectionOverride = { }[keyof SectionsOverrides] /** TODO: every use of this type should be replaced by SectionsOverrides after all sections are supported */ -export type SupportedSectionsOverridesV2 = Pick +export type SupportedSectionsOverridesV2 = Pick /** * Originally, these types were defined in their respective Overrides file