Phase 0.2: migrate remaining SVGs to lucide-react icons

This commit is contained in:
Agent Zero
2026-07-23 03:21:05 +02:00
parent e9a5eee524
commit 4f8cda1566
41 changed files with 228 additions and 564 deletions
+9 -24
View File
@@ -21,6 +21,7 @@ import { FilePreviewModal } from '@/components/dms/FilePreviewModal';
import { ShareDialog } from '@/components/dms/ShareDialog';
import { BulkActions } from '@/components/dms/BulkActions';
import { usePluginToolbarStore } from '@/store/pluginToolbarStore';
import { ArrowRight, ChevronLeft, ChevronRight, Info, Plus, Trash2, Upload } from 'lucide-react';
import {
fetchFolders,
createFolder,
@@ -371,9 +372,7 @@ export function DmsPage() {
label: t('dms.newFolder'),
group: 'file-actions',
icon: (
<svg className="w-3.5 h-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M12 4v16m8-8H4" />
</svg>
<Plus className="w-3.5 h-3.5" strokeWidth={2} />
),
onClick: () => setShowNewFolder((v) => !v),
},
@@ -383,9 +382,7 @@ export function DmsPage() {
label: t('dms.upload'),
group: 'file-actions',
icon: (
<svg className="w-3.5 h-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12" />
</svg>
<Upload className="w-3.5 h-3.5" strokeWidth={2} />
),
onClick: () => setShowUpload((v) => !v),
},
@@ -426,9 +423,7 @@ export function DmsPage() {
group: 'details',
active: showDetails,
icon: (
<svg className="w-3.5 h-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>
<Info className="w-3.5 h-3.5" strokeWidth={2} />
),
onClick: () => setShowDetails((v) => !v),
},
@@ -443,9 +438,7 @@ export function DmsPage() {
label: t('dms.bulkMove'),
group: 'bulk-actions',
icon: (
<svg className="w-3.5 h-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M17 8l4 4m0 0l-4 4m4-4H3" />
</svg>
<ArrowRight className="w-3.5 h-3.5" strokeWidth={2} />
),
onClick: () => setShowBulkMove(true),
},
@@ -455,9 +448,7 @@ export function DmsPage() {
label: t('dms.bulkDelete'),
group: 'bulk-actions',
icon: (
<svg className="w-3.5 h-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16" />
</svg>
<Trash2 className="w-3.5 h-3.5" strokeWidth={2} />
),
onClick: handleBulkDelete,
},
@@ -610,9 +601,7 @@ export function DmsPage() {
aria-label={t('common.back')}
data-testid="mobile-back-to-tree"
>
<svg className="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M15 19l-7-7 7-7" />
</svg>
<ChevronLeft className="w-4 h-4" aria-hidden="true" strokeWidth={2} />
<span className="text-sm font-medium">{t('dms.sources')}</span>
</button>
{showDetails && (
@@ -623,9 +612,7 @@ export function DmsPage() {
data-testid="mobile-go-to-details"
>
<span className="text-sm font-medium">{t('dms.details')}</span>
<svg className="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
<ChevronRight className="w-4 h-4" aria-hidden="true" strokeWidth={2} />
</button>
)}
</div>
@@ -659,9 +646,7 @@ export function DmsPage() {
aria-label={t('common.back')}
data-testid="mobile-back-to-files"
>
<svg className="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M15 19l-7-7 7-7" />
</svg>
<ChevronLeft className="w-4 h-4" aria-hidden="true" strokeWidth={2} />
<span className="text-sm font-medium">{t('dms.files')}</span>
</button>
</div>