0ab2c58eb4
- Header desktop nav: social icons grouped in a wald-tinted pill with labels, active-state (aria-current + bold), opacity hover (no per-item bg) - Mobile overlay: social links as icon+label rows with active-state - Search button: lucide:search, icon-only - Migrate all icons mdi→lucide app-wide (234 refs); brand/language logos (google, whatsapp, mastodon, telegram, language-*) stay on mdi - generate-icons: emit mdi + lucide subsets; add @iconify-json/lucide - iconify-offline: register lucide collection - scripts/icon-map|validate|apply: reusable migration tooling Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
105 lines
3.2 KiB
JavaScript
105 lines
3.2 KiB
JavaScript
// mdi -> lucide migration map. Names without a sensible lucide pendant
|
|
// (brand/language logos) intentionally stay on mdi — listed in KEEP_MDI.
|
|
export const KEEP_MDI = new Set([
|
|
'google', 'whatsapp', 'mastodon', // brands missing in lucide
|
|
'language-javascript', 'language-python', 'language-rust', // language logos
|
|
]);
|
|
|
|
export const MAP = {
|
|
'account-group-outline': 'users',
|
|
'alert-circle': 'circle-alert',
|
|
'alert-circle-outline': 'circle-alert',
|
|
'arrow-right': 'arrow-right',
|
|
'arrow-top-right': 'arrow-up-right',
|
|
'calendar': 'calendar',
|
|
'calendar-blank': 'calendar',
|
|
'calendar-clock': 'calendar-clock',
|
|
'calendar-export': 'calendar-arrow-up',
|
|
'calendar-month-outline': 'calendar',
|
|
'calendar-plus': 'calendar-plus',
|
|
'calendar-search': 'calendar-search',
|
|
'card-account-details-outline': 'id-card',
|
|
'check': 'check',
|
|
'check-circle': 'circle-check',
|
|
'check-decagram': 'badge-check',
|
|
'chevron-down': 'chevron-down',
|
|
'chevron-left': 'chevron-left',
|
|
'chevron-right': 'chevron-right',
|
|
'chevron-up': 'chevron-up',
|
|
'clock-alert-outline': 'alarm-clock',
|
|
'clock-outline': 'clock',
|
|
'clock-remove-outline': 'clock-fading',
|
|
'close': 'x',
|
|
'cloud': 'cloud',
|
|
'cloud-off-outline': 'cloud-off',
|
|
'code-json': 'braces',
|
|
'comment-outline': 'message-circle',
|
|
'comment-text-outline': 'message-square-text',
|
|
'console': 'terminal',
|
|
'content-copy': 'copy',
|
|
'content-save-outline': 'save',
|
|
'cursor-default-click': 'mouse-pointer-click',
|
|
'cursor-default-click-outline': 'mouse-pointer-click',
|
|
'database-outline': 'database',
|
|
'domain': 'building-2',
|
|
'download': 'download',
|
|
'download-outline': 'download',
|
|
'drag-vertical': 'grip-vertical',
|
|
'email': 'mail',
|
|
'email-outline': 'mail',
|
|
'facebook': 'facebook',
|
|
'file-document-edit-outline': 'file-pen',
|
|
'file-document-outline': 'file-text',
|
|
'file-download': 'file-down',
|
|
'file-excel-box': 'file-spreadsheet',
|
|
'file-image': 'file-image',
|
|
'file-outline': 'file',
|
|
'file-pdf-box': 'file-text',
|
|
'file-powerpoint-box': 'presentation',
|
|
'file-word-box': 'file-text',
|
|
'flag-outline': 'flag',
|
|
'folder-zip': 'folder-archive',
|
|
'format-text-variant-outline': 'type',
|
|
'home': 'house',
|
|
'home-group': 'house',
|
|
'home-outline': 'house',
|
|
'image-outline': 'image',
|
|
'information-outline': 'info',
|
|
'link': 'link',
|
|
'link-variant': 'link',
|
|
'loading': 'loader-circle',
|
|
'magnify': 'search',
|
|
'magnify-plus': 'zoom-in',
|
|
'map': 'map',
|
|
'map-marker': 'map-pin',
|
|
'map-marker-outline': 'map-pin',
|
|
'map-outline': 'map',
|
|
'menu': 'menu',
|
|
'open-in-new': 'external-link',
|
|
'pencil-outline': 'pencil',
|
|
'phone': 'phone',
|
|
'phone-outline': 'phone',
|
|
'play': 'play',
|
|
'printer': 'printer',
|
|
'printer-outline': 'printer',
|
|
'qrcode': 'qr-code',
|
|
'refresh': 'refresh-cw',
|
|
'reply': 'reply',
|
|
'robot-outline': 'bot',
|
|
'rss': 'rss',
|
|
'ruler-square': 'ruler',
|
|
'share-variant': 'share-2',
|
|
'share-variant-outline': 'share-2',
|
|
'shield-check-outline': 'shield-check',
|
|
'sort-alphabetical-ascending': 'arrow-down-a-z',
|
|
'transmission-tower': 'radio-tower',
|
|
'trash-can-outline': 'trash-2',
|
|
'tune': 'sliders-horizontal',
|
|
'tune-variant': 'sliders-horizontal',
|
|
'vector-square': 'square-dashed',
|
|
'video': 'video',
|
|
'wind-turbine': 'fan',
|
|
'xml': 'code',
|
|
'youtube': 'youtube',
|
|
};
|