style: full system ui homogenization v1.2.3

This commit is contained in:
Daniel Bedeleanu
2026-04-11 11:25:09 +03:00
parent 4136d49936
commit d7dcd523a6
6 changed files with 52 additions and 51 deletions

View File

@@ -210,14 +210,14 @@ export default function InventoryPage() {
<div className="w-8 h-8 rounded-xl bg-primary/10 text-primary flex items-center justify-center mb-3">
<Layers size={18} />
</div>
<p className="text-[10px] font-black uppercase tracking-widest text-slate-500">Categories</p>
<p className="text-xs font-black text-slate-500">Categories</p>
<p className="text-2xl font-black mt-1">{stats?.total_categories || categories.length}</p>
</div>
<div className="bg-slate-900/50 border border-slate-800 p-4 rounded-3xl">
<div className="w-8 h-8 rounded-xl bg-green-500/10 text-green-500 flex items-center justify-center mb-3">
<Package size={18} />
</div>
<p className="text-[10px] font-black uppercase tracking-widest text-slate-500">Item Types</p>
<p className="text-xs font-black text-slate-500">Item Types</p>
<p className="text-2xl font-black mt-1">{stats?.total_items || inventory.length}</p>
</div>
</section>
@@ -250,7 +250,7 @@ export default function InventoryPage() {
</div>
<div className="text-left">
<h3 className="font-bold text-lg">{cat}</h3>
<p className="text-[10px] font-black text-slate-500 uppercase tracking-widest">
<p className="text-xs font-black text-slate-500">
{inventory.filter(i => i.category === cat).length} Item types in stock
</p>
</div>
@@ -297,7 +297,7 @@ export default function InventoryPage() {
)}>
{item.quantity}
</span>
<p className="text-[8px] text-slate-600 uppercase tracking-widest font-black">Stock</p>
<p className="text-xs text-slate-600 font-bold">Stock</p>
</div>
</div>
))}
@@ -359,7 +359,7 @@ export default function InventoryPage() {
{isEditing ? (
<div className="space-y-4 mb-8">
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Name</label>
<label className="text-xs font-black text-slate-500 ml-1">Name</label>
<input
type="text"
value={editedItem.name || ''}
@@ -368,7 +368,7 @@ export default function InventoryPage() {
/>
</div>
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Part Number</label>
<label className="text-xs font-black text-slate-500 ml-1">Part Number</label>
<input
type="text"
value={editedItem.part_number || ''}
@@ -378,7 +378,7 @@ export default function InventoryPage() {
</div>
<div className="grid grid-cols-2 gap-4">
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Category</label>
<label className="text-xs font-black text-slate-500 ml-1">Category</label>
<select
value={editedItem.category || ''}
onChange={e => setEditedItem({...editedItem, category: e.target.value})}
@@ -391,7 +391,7 @@ export default function InventoryPage() {
</select>
</div>
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Item Type</label>
<label className="text-xs font-black text-slate-500 ml-1">Item Type</label>
<input
type="text"
value={editedItem.type || ''}
@@ -401,7 +401,7 @@ export default function InventoryPage() {
</div>
</div>
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Specs / Comments</label>
<label className="text-xs font-black text-slate-500 ml-1">Specs / Comments</label>
<input
type="text"
value={editedItem.specs || ''}
@@ -427,7 +427,7 @@ export default function InventoryPage() {
)}
>
<t.icon size={20} className={adjustType === t.id ? t.color : ""} />
<span className="text-[10px] font-black uppercase tracking-widest mt-1">{t.label}</span>
<span className="text-xs font-black mt-1">{t.label}</span>
</button>
))}
</div>
@@ -493,7 +493,7 @@ export default function InventoryPage() {
<div className="fixed inset-0 z-50 flex items-center justify-center p-4 bg-slate-950/90 backdrop-blur-xl animate-in fade-in duration-300">
<div className="bg-slate-900 border border-slate-800 rounded-3xl p-8 max-w-sm w-full shadow-2xl space-y-6 animate-in zoom-in-95 duration-200">
<div className="flex justify-between items-center">
<h2 className="text-xl font-black uppercase tracking-tight">Edit Category</h2>
<h2 className="text-xl font-black">Edit Category</h2>
<button onClick={() => setEditingCategory(null)} className="p-2 hover:bg-slate-800 rounded-full transition-colors text-slate-400">
<X size={20} />
</button>
@@ -501,7 +501,7 @@ export default function InventoryPage() {
<div className="space-y-4">
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Name</label>
<label className="text-xs font-black text-slate-500 ml-1">Name</label>
<input
type="text"
value={catEditedName}
@@ -510,7 +510,7 @@ export default function InventoryPage() {
/>
</div>
<div>
<label className="text-[10px] font-black uppercase tracking-widest text-slate-500 ml-1">Description</label>
<label className="text-xs font-black text-slate-500 ml-1">Description</label>
<textarea
value={catEditedDesc}
onChange={e => setCatEditedDesc(e.target.value)}
@@ -521,7 +521,7 @@ export default function InventoryPage() {
<button
onClick={handleUpdateCategory}
className="w-full bg-primary text-white font-black uppercase tracking-widest py-4 rounded-2xl shadow-xl shadow-primary/20 hover:scale-[1.02] active:scale-95 transition-all"
className="w-full bg-primary text-white font-black py-4 rounded-2xl shadow-xl shadow-primary/20 hover:scale-[1.02] active:scale-95 transition-all"
>
Update Category
</button>

View File

@@ -53,8 +53,8 @@ export default function LogsPage() {
<History size={24} />
</div>
<div>
<h1 className="text-2xl font-black tracking-tight text-white uppercase">Audit History</h1>
<p className="text-xs text-slate-500 font-bold tracking-widest uppercase">Centralized Transaction Logs</p>
<h1 className="text-2xl font-black tracking-tight text-white">Audit History</h1>
<p className="text-xs text-slate-500 font-bold">Centralized Transaction Logs</p>
</div>
</div>
@@ -74,7 +74,7 @@ export default function LogsPage() {
{loading ? (
<div className="flex flex-col items-center justify-center p-20 text-slate-500 animate-pulse">
<History size={48} className="opacity-20 mb-4" />
<p className="text-xs font-black uppercase tracking-widest">Retrieving logs from cloud...</p>
<p className="text-xs font-black">Retrieving Logs From Cloud...</p>
</div>
) : filteredLogs.length === 0 ? (
<div className="bg-slate-900/30 border border-slate-800 border-dashed rounded-[2.5rem] p-16 flex flex-col items-center justify-center text-center gap-4">
@@ -93,14 +93,14 @@ export default function LogsPage() {
<div className="flex-1 min-w-0">
<div className="flex items-center gap-2 mb-2">
<div className={cn(
"text-[9px] font-black uppercase tracking-[0.2em] px-2 py-0.5 rounded-md",
"text-xs font-black px-2 py-0.5 rounded-md",
log.action.includes('CHECK_IN') ? "bg-green-500/10 text-green-500" :
(log.action.includes('TRASH') ? "bg-rose-500/10 text-rose-500" : "bg-amber-500/10 text-amber-500")
)}>
{log.action}
</div>
<span className="text-[10px] font-bold text-slate-600 uppercase tracking-widest">by</span>
<span className="text-[10px] font-black text-slate-400 uppercase tracking-widest">{log.username || 'System'}</span>
<span className="text-xs font-bold text-slate-600">by</span>
<span className="text-xs font-black text-slate-400">{log.username || 'System'}</span>
</div>
<div className="flex items-center gap-2">
<span className="text-base font-bold text-slate-100 group-hover:text-primary transition-colors">
@@ -108,12 +108,12 @@ export default function LogsPage() {
</span>
</div>
<div className="flex items-center gap-4 mt-3">
<div className="text-[10px] text-slate-600 font-mono flex items-center gap-1.5">
<div className="text-xs text-slate-600 font-mono flex items-center gap-1.5">
<div className="w-1 h-1 rounded-full bg-slate-700" />
{new Date(log.timestamp).toLocaleString()}
</div>
{log.details && (
<span className="text-[9px] bg-slate-800/50 text-slate-500 px-3 py-1 rounded-full border border-slate-700/50 font-mono">
<span className="text-xs bg-slate-800/50 text-slate-500 px-3 py-1 rounded-full border border-slate-700/50 font-mono">
{log.details}
</span>
)}