style(web): refactor dashboard icons to lucide-react for consistency

This commit is contained in:
dyzulk
2026-01-09 22:32:41 +07:00
parent 5958b93f84
commit b883715c26
7 changed files with 64 additions and 61 deletions

View File

@@ -6,7 +6,7 @@ import axios from "@/lib/axios";
import ComponentCard from "../common/ComponentCard";
import Button from "../ui/button/Button";
import Badge from "../ui/badge/Badge";
import { TrashBinIcon, CopyIcon, CheckLineIcon, PlusIcon, LockIcon, BoltIcon } from "@/icons";
import { Trash2, Copy, Check, Plus, Lock, RefreshCw } from "lucide-react";
import { useToast } from "@/context/ToastContext";
import ConfirmationModal from "../common/ConfirmationModal";
import { useTranslations } from "next-intl";
@@ -130,7 +130,7 @@ export default function ApiKeyManagement() {
loading={isCreating}
disabled={!newKeyName.trim()}
>
<PlusIcon className="w-4 h-4 mr-2" />
<Plus className="w-4 h-4 mr-2" />
{t("btn_generate")}
</Button>
</form>
@@ -149,7 +149,7 @@ export default function ApiKeyManagement() {
className="p-3 bg-white dark:bg-gray-800 border border-brand-200 dark:border-brand-500/30 rounded-lg text-brand-500 hover:bg-brand-50 dark:hover:bg-brand-500/10 transition-colors"
title={t("copy_tooltip")}
>
{copied ? <CheckLineIcon className="w-5 h-5" /> : <CopyIcon className="w-5 h-5" />}
{copied ? <Check className="w-5 h-5" /> : <Copy className="w-5 h-5" />}
</button>
</div>
<div className="mt-4 flex justify-end">
@@ -188,7 +188,7 @@ export default function ApiKeyManagement() {
<td className="px-4 py-4">
<div className="flex items-center gap-3">
<div className="w-8 h-8 rounded-full bg-gray-100 dark:bg-gray-800 flex items-center justify-center text-gray-500">
<LockIcon className="w-4 h-4" />
<Lock className="w-4 h-4" />
</div>
<span className="text-sm font-medium text-gray-800 dark:text-white/90">{key.name}</span>
</div>
@@ -218,7 +218,7 @@ export default function ApiKeyManagement() {
className="p-2 text-gray-400 hover:text-brand-500 transition-colors disabled:opacity-50"
title={t("tooltip_regenerate")}
>
<BoltIcon className={`w-5 h-5 ${isRegenerating === key.id ? "animate-spin" : ""}`} />
<RefreshCw className={`w-5 h-5 ${isRegenerating === key.id ? "animate-spin" : ""}`} />
</button>
<button
onClick={() => setConfirmRevokeId(key.id)}
@@ -226,7 +226,7 @@ export default function ApiKeyManagement() {
className="p-2 text-gray-400 hover:text-error-500 transition-colors disabled:opacity-50"
title={t("tooltip_revoke")}
>
<TrashBinIcon className="w-5 h-5" />
<Trash2 className="w-5 h-5" />
</button>
</div>
</td>