Implement Site Builder Metadata and Enhance Wizard Functionality

- Introduced new models for Site Builder options, including BusinessType, AudienceProfile, BrandPersonality, and HeroImageryDirection.
- Added serializers and views to handle metadata for dropdowns in the Site Builder wizard.
- Updated the SiteBuilderWizard component to load and display metadata, improving user experience with dynamic options.
- Enhanced BusinessDetailsStep and StyleStep components to utilize new metadata for business types and brand personalities.
- Refactored state management in builderStore to include metadata loading and error handling.
- Updated API service to fetch Site Builder metadata, ensuring seamless integration with the frontend.
This commit is contained in:
IGNY8 VPS (Salman)
2025-11-18 12:31:59 +00:00
parent 5d97ab6e49
commit 26ec2ae03e
13 changed files with 1062 additions and 96 deletions

View File

@@ -11,7 +11,13 @@ import { useSiteStore } from '../../store/siteStore';
import { useSectorStore } from '../../store/sectorStore';
import { useAuthStore } from '../../store/authStore';
export default function SiteAndSectorSelector() {
interface SiteAndSectorSelectorProps {
hideSectorSelector?: boolean;
}
export default function SiteAndSectorSelector({
hideSectorSelector = false,
}: SiteAndSectorSelectorProps) {
const toast = useToast();
const { activeSite, setActiveSite, loadActiveSite } = useSiteStore();
const { activeSector, sectors, setActiveSector, loading: sectorsLoading } = useSectorStore();
@@ -170,7 +176,7 @@ export default function SiteAndSectorSelector() {
</div>
{/* Sector Selector */}
{!sectorsLoading && sectors.length > 0 && (
{!hideSectorSelector && !sectorsLoading && sectors.length > 0 && (
<div className="relative inline-block">
<button
ref={sectorButtonRef}