export const ADMIN_BASE_PATH = '/event-admin';

export const adminPath = (suffix = ''): string => `${ADMIN_BASE_PATH}${suffix}`;

export const ADMIN_LOGIN_PATH = adminPath('/login');
export const ADMIN_PUBLIC_LANDING_PATH = ADMIN_LOGIN_PATH;
export const ADMIN_PUBLIC_HELP_PATH = adminPath('/help');
export const ADMIN_PUBLIC_FORGOT_PASSWORD_PATH = adminPath('/forgot-password');
export const ADMIN_HOME_PATH = adminPath('/mobile/dashboard');
export const ADMIN_DEFAULT_AFTER_LOGIN_PATH = ADMIN_HOME_PATH;
export const ADMIN_LOGIN_START_PATH = adminPath('/start');
export const ADMIN_AUTH_CALLBACK_PATH = adminPath('/auth/callback');
export const ADMIN_EVENTS_PATH = adminPath('/mobile/events');
export const ADMIN_SETTINGS_PATH = adminPath('/mobile/settings');
export const ADMIN_PROFILE_PATH = adminPath('/mobile/profile');
export const ADMIN_PROFILE_ACCOUNT_PATH = adminPath('/mobile/profile/account');
export const ADMIN_FAQ_PATH = adminPath('/mobile/help');
export const ADMIN_BILLING_PATH = adminPath('/mobile/billing');
export const ADMIN_PACKAGE_SHOP_PATH = adminPath('/mobile/billing/shop');
export const ADMIN_DATA_EXPORTS_PATH = adminPath('/mobile/exports');
export const ADMIN_PHOTOS_PATH = adminPath('/mobile/uploads');
export const ADMIN_LIVE_PATH = adminPath('/mobile/dashboard');
export const ADMIN_WELCOME_BASE_PATH = adminPath('/mobile/welcome');
export const ADMIN_WELCOME_PACKAGES_PATH = adminPath('/mobile/welcome/packages');
export const ADMIN_WELCOME_SUMMARY_PATH = adminPath('/mobile/welcome/summary');
export const ADMIN_WELCOME_EVENT_PATH = adminPath('/mobile/welcome/event');
export const ADMIN_EVENT_CREATE_PATH = adminPath('/mobile/events/new');

export const ADMIN_EVENT_VIEW_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}`);
export const ADMIN_EVENT_EDIT_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/edit`);
export const ADMIN_EVENT_MEMBERS_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/members`);
export const ADMIN_EVENT_TASKS_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/tasks`);
export const ADMIN_EVENT_INVITES_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/qr`);
export const ADMIN_EVENT_PHOTOBOOTH_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/photobooth`);
export const ADMIN_EVENT_GUEST_NOTIFICATIONS_PATH = (slug: string): string =>
  adminPath(`/mobile/events/${encodeURIComponent(slug)}/guest-notifications`);
export const ADMIN_EVENT_RECAP_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}`);
export const ADMIN_EVENT_BRANDING_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/branding`);
export const ADMIN_EVENT_LIVE_SHOW_PATH = (slug: string): string => adminPath(`/mobile/events/${encodeURIComponent(slug)}/live-show`);
export const ADMIN_EVENT_LIVE_SHOW_SETTINGS_PATH = (slug: string): string =>
  adminPath(`/mobile/events/${encodeURIComponent(slug)}/live-show/settings`);
export const ADMIN_EVENT_CONTROL_ROOM_PATH = (slug: string): string =>
  adminPath(`/mobile/events/${encodeURIComponent(slug)}/control-room`);
