// FontAwesome Pro 7.1.0 Duotone SVGs — bundled as inline strings // License: https://fontawesome.com/license (Commercial License) // Paths use fill="currentColor" so color is inherited from the element. export const icons = { // Navigation / UI 'message-dots': ``, calendar: ``, phone: ``, 'paper-plane-top': ``, xmark: ``, 'circle-check': ``, sparkles: ``, 'hands-praying': ``, 'hand-wave': ``, 'shield-check': ``, 'arrow-left': ``, 'arrow-right': ``, 'up-right-and-down-left-from-center': ``, 'down-left-and-up-right-to-center': ``, // Branch / location hospital: ``, 'location-dot': ``, // Medical departments stethoscope: ``, 'heart-pulse': ``, bone: ``, 'person-pregnant': ``, ear: ``, baby: ``, brain: ``, eye: ``, tooth: ``, }; export type IconName = keyof typeof icons; // Render an icon as an HTML string with given size and color. // Color cascades to paths via fill="currentColor". export const icon = (name: IconName, size = 16, color = 'currentColor'): string => { return icons[name].replace( ' { const key = department.toLowerCase().replace(/_/g, ' '); if (key.includes('cardio') || key.includes('heart')) return 'heart-pulse'; if (key.includes('ortho') || key.includes('bone') || key.includes('spine')) return 'bone'; if (key.includes('gyn') || key.includes('obstet') || key.includes('maternity') || key.includes('pregnan')) return 'person-pregnant'; if (key.includes('ent') || key.includes('otolaryn') || key.includes('ear') || key.includes('nose') || key.includes('throat')) return 'ear'; if (key.includes('pediatric') || key.includes('paediatric') || key.includes('child') || key.includes('neonat')) return 'baby'; if (key.includes('neuro') || key.includes('psych') || key.includes('mental')) return 'brain'; if (key.includes('ophthal') || key.includes('eye') || key.includes('vision') || key.includes('retina')) return 'eye'; if (key.includes('dental') || key.includes('dent') || key.includes('tooth')) return 'tooth'; return 'stethoscope'; };