12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <?php
-
- namespace App\Support;
-
- use Filament\Support\Components\Component;
- use Filament\Support\Concerns\HasAlignment;
- use Filament\Support\Enums\Alignment;
- use Filament\Tables\Columns\Concerns\CanBeHidden;
- use Filament\Tables\Columns\Concerns\CanBeToggled;
- use Filament\Tables\Columns\Concerns\HasLabel;
- use Filament\Tables\Columns\Concerns\HasName;
-
- class Column extends Component
- {
- use CanBeHidden;
- use CanBeToggled;
- use HasAlignment;
- use HasLabel;
- use HasName;
-
- final public function __construct(string $name)
- {
- $this->name($name);
- }
-
- public static function make(string $name): static
- {
- $static = app(static::class, ['name' => $name]);
- $static->configure();
-
- return $static;
- }
-
- public function getAlignmentClass(): string
- {
- return match ($this->getAlignment()) {
- Alignment::Center, Alignment::Justify, Alignment::Between => 'text-center',
- Alignment::Left, Alignment::Start => 'text-left',
- Alignment::Right, Alignment::End => 'text-right',
- default => '',
- };
- }
- }
|