
export const BLOG_CATEGORIES = ["Frontend", "UX", "Yazilim", "TypeScript", "Testing", "General"];

export const COLLECTION_CONFIGS = {
  announcement: {
    label: "Announcement",
    itemLabel: "Announcement",
    fileName: "site-settings.ts",
    exportName: "ANNOUNCEMENT_ITEMS",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "main-announcement" },
      { key: "text", label: "Text", type: "textarea", full: true, required: true, placeholder: "Bu hafta yeni bilesenler eklendi!" },
      { key: "actionLabel", label: "Action Label", required: true, placeholder: "Incele ->" },
      { key: "actionHref", label: "Action Link", type: "url", required: true, placeholder: "https://..." },
    ],
    card: (item) => ({
      title: item.id || "Announcement",
      meta: [item.actionLabel, item.actionHref],
      footer: item.text,
    }),
  },
  bookmarks: {
    label: "Bookmarks",
    itemLabel: "Bookmark",
    fileName: "bookmarks.ts",
    exportName: "BOOKMARKS",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "bookmark-poyraz-ui" },
      { key: "title", label: "Title", required: true, placeholder: "Poyraz UI" },
      { key: "href", label: "Link", type: "url", required: true, placeholder: "https://..." },
      { key: "tag", label: "Tag", required: true, placeholder: "UI Kit" },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "Short description" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Untitled bookmark",
      meta: [item.tag, item.href],
      footer: item.description,
    }),
  },
  certificates: {
    label: "Certificates",
    itemLabel: "Certificate",
    fileName: "certificates.ts",
    exportName: "certificates",
    fields: [
      { key: "name", label: "Name", required: true, placeholder: "Certificate name" },
      { key: "organization", label: "Organization", required: true, placeholder: "Udemy" },
      { key: "date", label: "Date", required: true, placeholder: "June 2025" },
      { key: "category", label: "Category", required: true, placeholder: "mobile" },
      { key: "image", label: "Image Path", required: true, placeholder: "/certificates/reactnative.png" },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "What this certificate represents" },
    ],
    card: (item) => ({
      title: item.name || "Untitled certificate",
      meta: [item.organization, item.date, item.category],
      footer: item.image,
    }),
  },
  education: {
    label: "Education",
    itemLabel: "Education Item",
    fileName: "education.ts",
    exportName: "EDUCATION",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "ostim-university" },
      { key: "title", label: "Title", required: true, placeholder: "Software Engineering - 2nd Year Student" },
      { key: "institution", label: "Institution", required: true, placeholder: "OSTIM Technical University" },
      { key: "period", label: "Period", required: true, placeholder: "2024 - Present" },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "Education summary" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Education",
      meta: [item.institution, item.period],
      footer: item.description,
    }),
  },
  experience: {
    label: "Experience",
    itemLabel: "Experience Item",
    fileName: "experience.ts",
    exportName: "EXPERIENCE",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "omedya-part-time" },
      { key: "role", label: "Role", required: true, placeholder: "Fullstack Developer" },
      { key: "company", label: "Company", required: true, placeholder: "Omedya Bilisim A.S" },
      { key: "period", label: "Period", required: true, placeholder: "August 2025 - Present" },
    ],
    card: (item) => ({
      title: item.role || item.id || "Experience",
      meta: [item.company, item.period],
    }),
  },
  references: {
    label: "References",
    itemLabel: "Reference",
    fileName: "references.ts",
    exportName: "REFERENCES",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "ali-korkmaz" },
      { key: "author", label: "Author", required: true, placeholder: "Ali Korkmaz" },
      { key: "role", label: "Role", required: true, placeholder: "Musteri - 2025" },
      { key: "avatar", label: "Avatar Path", required: true, placeholder: "/avatars/ali.png" },
      { key: "rating", label: "Rating", type: "number", min: 1, max: 5, step: 1, placeholder: "5" },
      { key: "profileHref", label: "Profile Link", type: "url", placeholder: "https://linkedin.com/in/..." },
      { key: "quote", label: "Quote", type: "textarea", full: true, required: true, placeholder: "Reference quote" },
    ],
    card: (item) => ({
      title: item.author || item.id || "Reference",
      meta: [item.role, item.rating ? `Rating: ${item.rating}` : ""],
      footer: item.quote,
    }),
  },
  projectsMobile: {
    label: "Projects Mobile",
    itemLabel: "Mobile Project",
    fileName: "projects.ts",
    exportName: "MOBILE_APPS",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "mobile-habit-flow" },
      { key: "title", label: "Title", required: true, placeholder: "Habit Flow" },
      { key: "badge", label: "Badge", placeholder: "React Native" },
      { key: "image", label: "Image Path", required: true, placeholder: "/images/hero1.png" },
      { key: "href", label: "Link", type: "url", placeholder: "https://..." },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "Project summary" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Project",
      meta: [item.badge, item.href],
      footer: item.description,
    }),
  },
  projectsWeb: {
    label: "Projects Web",
    itemLabel: "Web Project",
    fileName: "projects.ts",
    exportName: "WEB_APPS",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "web-portfolio" },
      { key: "title", label: "Title", required: true, placeholder: "Personal Portfolio" },
      { key: "badge", label: "Badge", placeholder: "Next.js" },
      { key: "image", label: "Image Path", required: true, placeholder: "/news/design.svg" },
      { key: "href", label: "Link", type: "url", placeholder: "https://..." },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "Project summary" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Project",
      meta: [item.badge, item.href],
      footer: item.description,
    }),
  },
  projectsFigma: {
    label: "Projects Figma",
    itemLabel: "Figma Template",
    fileName: "projects.ts",
    exportName: "FIGMA_TEMPLATES",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "figma-minimal-saas" },
      { key: "title", label: "Title", required: true, placeholder: "Minimal SaaS Landing Kit" },
      { key: "badge", label: "Badge", placeholder: "Figma" },
      { key: "image", label: "Image Path", required: true, placeholder: "/news/design.svg" },
      { key: "href", label: "Link", type: "url", placeholder: "https://..." },
      { key: "description", label: "Description", type: "textarea", full: true, required: true, placeholder: "Project summary" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Project",
      meta: [item.badge, item.href],
      footer: item.description,
    }),
  },
  community: {
    label: "Community",
    itemLabel: "Community Item",
    fileName: "volunteer-community.ts",
    exportName: "VOLUNTEER_COMMUNITY_ITEMS",
    fields: [
      { key: "id", label: "ID", required: true, placeholder: "youtube" },
      { key: "title", label: "Title", required: true, placeholder: "YouTube" },
      { key: "timeline", label: "Timeline", required: true, placeholder: "2025 - Present" },
      { key: "link", label: "Link", type: "url", placeholder: "https://..." },
      { key: "focus", label: "Focus", type: "textarea", full: true, required: true, placeholder: "Community contribution summary" },
    ],
    card: (item) => ({
      title: item.title || item.id || "Community",
      meta: [item.timeline, item.link],
      footer: item.focus,
    }),
  },
  youtube: {
    label: "YouTube Videos",
    itemLabel: "Video Link",
    fileName: "youtube-videos.ts",
    exportName: "YOUTUBE_VIDEO_LINKS",
    fields: [
      { key: "url", label: "Video URL", type: "url", required: true, placeholder: "https://www.youtube.com/watch?v=..." },
    ],
    deserializeItem: (raw) => ({ url: String(raw || "") }),
    serializeItem: (item) => String(item.url || "").trim(),
    card: (item) => ({
      title: item.url || "YouTube Link",
      meta: [],
    }),
  },
};

export const PODCAST_LABELS = {
  yazilim: "Podcast Yazilim",
  "masa-basi": "Podcast Masa Basi",
};
