diff --git a/components/layout/dynamic-content-manager/dynamic-content-manager.tsx b/components/layout/dynamic-content-manager/dynamic-content-manager.tsx index eafa16706..9740b4223 100644 --- a/components/layout/dynamic-content-manager/dynamic-content-manager.tsx +++ b/components/layout/dynamic-content-manager/dynamic-content-manager.tsx @@ -7,7 +7,80 @@ import ReusableSection from '@/components/modules/reusable-section/reusable-sect import Slider from '@/components/modules/slider/slider'; import USPSection from '@/components/modules/usp-section/usp-section'; import { InformationCircleIcon } from '@heroicons/react/24/outline'; -import { Suspense } from 'react'; +interface getContentComponentProps { + _type: string; + _key: number; + disabled: boolean; +} + +const getContentComponent = ({ _type, _key, disabled, ...rest }: getContentComponentProps) => { + let Component: any; + + switch (_type) { + case 'hero': + if (disabled !== true) { + Component = Hero; + } else { + return; + } + break; + case 'slider': + if (disabled !== true) { + Component = Slider; + } else { + return; + } + break; + case 'filteredProductList': + if (disabled !== true) { + Component = FilteredProductList; + } else { + return; + } + break; + case 'blurbSection': + if (disabled !== true) { + Component = BlurbSection; + } else { + return; + } + break; + case 'uspSection': + if (disabled !== true) { + Component = USPSection; + } else { + return; + } + break; + case 'reusableSection': + if (disabled !== true) { + Component = ReusableSection; + } else { + return; + } + break; + default: + return ( +