/** Maps web frontend paths to React Navigation screen names */
export function pathToScreen(path: string): { screen: string; params?: Record<string, string> } {
  if (path === '/dashboard') return { screen: 'Dashboard' };
  if (path === '/calendar') return { screen: 'Calendar' };
  if (path === '/consultations') return { screen: 'Consultations' };
  if (path === '/ask-dr-ai') return { screen: 'AskDrAi' };
  if (path === '/profile') return { screen: 'Profile' };
  if (path === '/settings') return { screen: 'Settings' };
  if (path === '/account-locked') return { screen: 'AccountLocked' };
  if (path === '/pos') return { screen: 'Pos' };
  if (path === '/inventory') return { screen: 'Inventory' };
  if (path === '/reports') return { screen: 'Reports' };
  if (path === '/customer/booking') return { screen: 'CustomerBooking' };
  if (path === '/help-support') return { screen: 'HelpSupport' };
  if (path === '/superadmin/help') return { screen: 'PlatformHelpSupport' };
  if (path === '/guide') return { screen: 'GuidePublic' };
  if (path.startsWith('/guide/pages/')) {
    return { screen: 'GuideView', params: { slug: path.split('/')[3] || '' } };
  }
  if (path === '/blog') return { screen: 'BlogPublic' };
  if (path.startsWith('/blog/') && path !== '/blog') {
    return { screen: 'BlogView', params: { slug: path.split('/')[2] || '' } };
  }
  if (path === '/faq') return { screen: 'FaqPublic' };
  if (path.startsWith('/faq/pages/')) {
    return { screen: 'FaqView', params: { slug: path.split('/')[3] || '' } };
  }
  if (path === '/contact') return { screen: 'Contact' };
  if (path === '/partners') return { screen: 'Partners' };
  if (path === '/terms') return { screen: 'Legal', params: { page: 'terms' } };
  if (path === '/privacy') return { screen: 'Legal', params: { page: 'privacy' } };
  if (path === '/about') return { screen: 'Legal', params: { page: 'about' } };

  if (path.startsWith('/resources/')) {
    const resource = path.split('/')[2];
    if (resource === 'notification-settings') return { screen: 'NotificationSettings' };
    if (resource === 'diagnoses') return { screen: 'DiagnosisList' };
    if (resource === 'prescriptions') return { screen: 'PrescriptionList' };
    if (resource === 'invoices') return { screen: 'PaymentsList' };
    return { screen: 'ResourceList', params: { resource } };
  }

  const superadminMap: Record<string, string> = {
    '/superadmin/accounts': 'SuperadminAccounts',
    '/superadmin/reports': 'SuperadminReports',
    '/superadmin/roles': 'SuperadminRoles',
    '/superadmin/enum-options': 'SuperadminEnumOptions',
    '/superadmin/feature-settings': 'SuperadminFeatureSettings',
    '/superadmin/captcha-settings': 'SuperadminCaptchaSettings',
    '/superadmin/branding-settings': 'SuperadminBrandingSettings',
    '/superadmin/contact-settings': 'SuperadminContactSettings',
    '/superadmin/legal-pages': 'SuperadminLegalPages',
    '/superadmin/partners': 'SuperadminPartners',
    '/superadmin/backups': 'SuperadminBackups',
    '/superadmin/users': 'SuperadminUsers',
    '/superadmin/guides': 'SuperadminGuides',
    '/superadmin/blog': 'SuperadminBlog',
    '/superadmin/faq': 'SuperadminFaq',
  };

  if (superadminMap[path]) return { screen: superadminMap[path] };
  return { screen: 'Dashboard' };
}

export const publicGuestScreens = [
  { name: 'Home', path: '/', icon: 'home' },
  { name: 'Login', path: '/login', icon: 'login' },
  { name: 'Register', path: '/register', icon: 'register' },
  { name: 'Contact', path: '/contact', icon: 'contact' },
  { name: 'Guide', path: '/guide', icon: 'documentation' },
  { name: 'Blog', path: '/blog', icon: 'blog' },
  { name: 'FAQ', path: '/faq', icon: 'faq' },
  { name: 'Partners', path: '/partners', icon: 'partners' },
  { name: 'Terms', path: '/terms', icon: 'legal' },
  { name: 'Privacy', path: '/privacy', icon: 'legal' },
  { name: 'About', path: '/about', icon: 'legal' },
] as const;
