import type { ContactHeroSectionData } from "@/components/dashboard/contact-us/ContactHeroSection"
import type { ContactInfoSectionData } from "@/components/dashboard/contact-us/ContactInfoSection"
import type { ContactFormSectionData } from "@/components/dashboard/contact-us/ContactFormSection"
import type { WorkingHoursSectionData } from "@/components/dashboard/contact-us/WorkingHoursSection"
import type { SocialMediaSectionData } from "@/components/dashboard/contact-us/SocialMediaSection"

export interface ContactUsPageFormStateShape {
  hero: ContactHeroSectionData
  contactInfo: ContactInfoSectionData
  contactForm: ContactFormSectionData
  workingHours: WorkingHoursSectionData
  socialMedia: SocialMediaSectionData
}

export function createEmptyContactUsPageFormState(): ContactUsPageFormStateShape {
  return {
    hero: {
      eyebrow: "",
      title: "",
      description: "",
      imageEyebrow: "",
      image: "",
      imagePublicId: "",
      quickStats: [],
    },
    contactInfo: { items: [] },
    contactForm: {
      title: "",
      subtitle: "",
      fullNameLabel: "",
      emailAddressLabel: "",
      phoneNumberLabel: "",
      yourMessageLabel: "",
      subjectOptionsTitle: "",
      subjectOptions: [],
      buttonIcon: "",
      buttonText: "",
      buttonLink: "",
    },
    workingHours: { title: "", schedule: [], extraNote: "" },
    socialMedia: { title: "", socialLinks: [] },
  }
}
