Switch the UI icons from mynaui to TDesign
Swap @ng-icons/mynaui for @ng-icons/tdesign-icons (34.0.0, the release matching @ng-icons/core), drawn at TDesign's native stroke. Each former mynaui name maps to one TDesign name everywhere it was used; the unused ArrowLeftRight is dropped. The options button's ellipsis goes from 1.5rem to 0.8rem: TDesign's dots span 18 of 24 units against mynaui's 8, so this keeps today's footprint. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -13,27 +13,27 @@ const LINK = 'shrink-0 text-icon-link';
|
||||
|
||||
const CATEGORIES: Record<Category, { glyph: string; class: string; extensions: string[] }> = {
|
||||
image: {
|
||||
glyph: 'mynaImage',
|
||||
glyph: 'tdesignImage',
|
||||
class: 'shrink-0 text-icon-image',
|
||||
extensions: 'png jpg jpeg gif webp avif svg ico icns bmp tiff tif heic heif raw'.split(' '),
|
||||
},
|
||||
audio: {
|
||||
glyph: 'mynaMusic',
|
||||
glyph: 'tdesignMusic',
|
||||
class: 'shrink-0 text-icon-media',
|
||||
extensions: 'mp3 wav flac aac ogg oga m4a opus wma aiff aif mid midi'.split(' '),
|
||||
},
|
||||
video: {
|
||||
glyph: 'mynaVideo',
|
||||
glyph: 'tdesignVideo',
|
||||
class: 'shrink-0 text-icon-media',
|
||||
extensions: 'mp4 mkv mov avi webm m4v mpg mpeg wmv flv 3gp'.split(' '),
|
||||
},
|
||||
archive: {
|
||||
glyph: 'mynaArchive',
|
||||
glyph: 'tdesignFileZip',
|
||||
class: 'shrink-0 text-icon-archive',
|
||||
extensions: 'zip tar gz tgz bz2 xz zst 7z rar dmg iso jar deb rpm pkg apk'.split(' '),
|
||||
},
|
||||
code: {
|
||||
glyph: 'mynaCode',
|
||||
glyph: 'tdesignCode',
|
||||
class: 'shrink-0 text-icon-code',
|
||||
// ".ts" is TypeScript here, not an MPEG transport stream (deliberate)
|
||||
extensions: (
|
||||
@@ -45,7 +45,7 @@ const CATEGORIES: Record<Category, { glyph: string; class: string; extensions: s
|
||||
).split(' '),
|
||||
},
|
||||
doc: {
|
||||
glyph: 'mynaFileText',
|
||||
glyph: 'tdesignFile1',
|
||||
class: MUTED, // docs keep the neutral color; only the glyph changes
|
||||
extensions: 'md markdown txt rtf pdf doc docx xls xlsx ppt pptx csv tsv log odt ods odp epub'.split(' '),
|
||||
},
|
||||
@@ -85,11 +85,11 @@ export function fileKindKey(entry: FileEntry): string {
|
||||
}
|
||||
|
||||
export function fileGlyph(entry: FileEntry): string {
|
||||
if (entry.name === '..') return 'mynaArrowUp';
|
||||
if (entry.type === 'dir') return 'mynaFolder';
|
||||
if (entry.type === 'symlink') return 'mynaLink';
|
||||
if (entry.name === '..') return 'tdesignArrowUp';
|
||||
if (entry.type === 'dir') return 'tdesignFolder';
|
||||
if (entry.type === 'symlink') return 'tdesignLink';
|
||||
const category = categoryOf(entry.name);
|
||||
return category ? CATEGORIES[category].glyph : 'mynaFile';
|
||||
return category ? CATEGORIES[category].glyph : 'tdesignFile';
|
||||
}
|
||||
|
||||
export function fileIconClass(entry: FileEntry): string {
|
||||
|
||||
+70
-71
@@ -1,76 +1,75 @@
|
||||
// Single icon registry for the whole app, registered once in app.config.ts.
|
||||
// NOTE: @ng-icons/mynaui's package root is empty — always import from /outline
|
||||
// (or /solid, where names get a `Solid` suffix).
|
||||
// TDesign's package root exports every icon; named imports tree-shake. Names are
|
||||
// plain strings in templates — the build never checks them, so every name used
|
||||
// anywhere must be listed here (an unregistered one renders nothing).
|
||||
import {
|
||||
mynaArchive,
|
||||
mynaArrowLeft,
|
||||
mynaArrowLeftRight,
|
||||
mynaArrowRight,
|
||||
mynaArrowUp,
|
||||
mynaCheck,
|
||||
mynaCheckCircle,
|
||||
mynaChevronDown,
|
||||
mynaChevronRight,
|
||||
mynaChevronUp,
|
||||
mynaCode,
|
||||
mynaCog,
|
||||
mynaDots,
|
||||
mynaDownload,
|
||||
mynaEdit,
|
||||
mynaFile,
|
||||
mynaFilePlus,
|
||||
mynaFileText,
|
||||
mynaFolder,
|
||||
mynaFolderPlus,
|
||||
mynaHardDrive,
|
||||
mynaImage,
|
||||
mynaLink,
|
||||
mynaLock,
|
||||
mynaMusic,
|
||||
mynaPlus,
|
||||
mynaRefresh,
|
||||
mynaSearch,
|
||||
mynaServers,
|
||||
mynaSpinner,
|
||||
mynaTrash,
|
||||
mynaVideo,
|
||||
mynaX,
|
||||
mynaXCircle,
|
||||
} from "@ng-icons/mynaui/outline";
|
||||
tdesignAdd,
|
||||
tdesignArrowLeft,
|
||||
tdesignArrowRight,
|
||||
tdesignArrowUp,
|
||||
tdesignCheck,
|
||||
tdesignCheckCircle,
|
||||
tdesignChevronDown,
|
||||
tdesignChevronRight,
|
||||
tdesignChevronUp,
|
||||
tdesignClose,
|
||||
tdesignCloseCircle,
|
||||
tdesignCode,
|
||||
tdesignDelete,
|
||||
tdesignDownload,
|
||||
tdesignEdit,
|
||||
tdesignEllipsis,
|
||||
tdesignFile,
|
||||
tdesignFile1,
|
||||
tdesignFileAdd,
|
||||
tdesignFileZip,
|
||||
tdesignFolder,
|
||||
tdesignFolderAdd,
|
||||
tdesignHardDrive,
|
||||
tdesignImage,
|
||||
tdesignLink,
|
||||
tdesignLoading,
|
||||
tdesignLockOn,
|
||||
tdesignMusic,
|
||||
tdesignRefresh,
|
||||
tdesignSearch,
|
||||
tdesignServer,
|
||||
tdesignSetting,
|
||||
tdesignVideo,
|
||||
} from "@ng-icons/tdesign-icons";
|
||||
|
||||
export const APP_ICONS = {
|
||||
mynaArchive,
|
||||
mynaArrowLeft,
|
||||
mynaArrowLeftRight,
|
||||
mynaArrowRight,
|
||||
mynaArrowUp,
|
||||
mynaCheck,
|
||||
mynaCheckCircle,
|
||||
mynaChevronDown,
|
||||
mynaChevronRight,
|
||||
mynaChevronUp,
|
||||
mynaCode,
|
||||
mynaCog,
|
||||
mynaDots,
|
||||
mynaDownload,
|
||||
mynaEdit,
|
||||
mynaFile,
|
||||
mynaFilePlus,
|
||||
mynaFileText,
|
||||
mynaFolder,
|
||||
mynaFolderPlus,
|
||||
mynaHardDrive,
|
||||
mynaImage,
|
||||
mynaLink,
|
||||
mynaLock,
|
||||
mynaMusic,
|
||||
mynaPlus,
|
||||
mynaRefresh,
|
||||
mynaSearch,
|
||||
mynaServers,
|
||||
mynaSpinner,
|
||||
mynaTrash,
|
||||
mynaVideo,
|
||||
mynaX,
|
||||
mynaXCircle,
|
||||
tdesignAdd,
|
||||
tdesignArrowLeft,
|
||||
tdesignArrowRight,
|
||||
tdesignArrowUp,
|
||||
tdesignCheck,
|
||||
tdesignCheckCircle,
|
||||
tdesignChevronDown,
|
||||
tdesignChevronRight,
|
||||
tdesignChevronUp,
|
||||
tdesignClose,
|
||||
tdesignCloseCircle,
|
||||
tdesignCode,
|
||||
tdesignDelete,
|
||||
tdesignDownload,
|
||||
tdesignEdit,
|
||||
tdesignEllipsis,
|
||||
tdesignFile,
|
||||
tdesignFile1,
|
||||
tdesignFileAdd,
|
||||
tdesignFileZip,
|
||||
tdesignFolder,
|
||||
tdesignFolderAdd,
|
||||
tdesignHardDrive,
|
||||
tdesignImage,
|
||||
tdesignLink,
|
||||
tdesignLoading,
|
||||
tdesignLockOn,
|
||||
tdesignMusic,
|
||||
tdesignRefresh,
|
||||
tdesignSearch,
|
||||
tdesignServer,
|
||||
tdesignSetting,
|
||||
tdesignVideo,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user