Private
Public Access
1
0

refactor: update UI components to shadcn-style

- Refactored select component to align with shadcn design principles.
- Updated server status indicator component for consistency with shadcn style.
- Modified spinner component to follow shadcn design guidelines.
- Enhanced stat card component with shadcn-inspired styles.
- Adjusted tab panel component to reflect shadcn design updates.
- Revamped table row and table data cell components to match shadcn aesthetics.
- Updated table header cell component for improved styling consistency.
- Refined table component to align with shadcn design principles.
- Enhanced tabs component with shadcn-inspired styles.
- Updated toggle component to follow shadcn design guidelines.
- Refactored tooltip component to align with shadcn design principles.
- Updated server card component to reflect shadcn-inspired design.
This commit is contained in:
2025-12-17 11:47:42 -05:00
parent e7b33a2f6c
commit 7190d7a818
34 changed files with 522 additions and 565 deletions

View File

@@ -1,5 +1,5 @@
{{--
Dropdown Item Component - TailServer Theme
Dropdown Item Component - shadcn-style
--}}
@props([
@@ -13,9 +13,9 @@
$tag = $href ? 'a' : 'button';
$variantClasses = [
'default' => 'text-base/70 hover:bg-gradient-to-r hover:from-neutral/10 hover:to-transparent hover:text-base',
'danger' => 'text-danger hover:bg-gradient-to-r hover:from-danger/10 hover:to-transparent',
'success' => 'text-success hover:bg-gradient-to-r hover:from-success/10 hover:to-transparent',
'default' => 'text-foreground hover:bg-accent hover:text-accent-foreground',
'danger' => 'text-danger focus:bg-danger/10 focus:text-danger',
'success' => 'text-success focus:bg-success/10 focus:text-success',
];
$variantClass = $variantClasses[$variant] ?? $variantClasses['default'];
@@ -26,13 +26,13 @@
@if($tag === 'button') type="button" @endif
@if($disabled) disabled @endif
{{ $attributes->class([
'group flex w-full items-center gap-2.5 px-4 py-2.5 text-sm font-medium transition-all duration-150',
'relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors duration-100 w-full',
$variantClass,
'opacity-50 cursor-not-allowed' => $disabled,
'pointer-events-none opacity-50' => $disabled,
]) }}
>
@if($icon)
<x-dynamic-component :component="$icon" class="size-4 opacity-50 group-hover:opacity-80 transition-opacity" />
<x-dynamic-component :component="$icon" class="size-4" />
@endif
<span class="flex-1 text-left">{{ $slot }}</span>
</{{ $tag }}>