filafly / filament-identity-column
A column for Filament Tables to which combines an avatar, name and description.
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/filafly/filament-identity-column
Requires
- php: ^8.2
- filament/filament: ^4.0
- spatie/laravel-package-tools: ^1.92
Requires (Dev)
- laravel/pint: ^1.22
- phpunit/phpunit: ^12.3
README
A reusable identity column for Filament Tables and Infolists.Basic Usage
use Filafly\IdentityColumn\Tables\Columns\IdentityColumn; use Filafly\IdentityColumn\Infolists\Components\IdentityEntry; // Table column IdentityColumn::make('name') ->avatar('avatar_url') ->primary('name') ->primaryUrl(fn ($record) => route('users.show', $record)) ->secondary('email') ->secondaryUrl('profile_url', openInNewTab: true) ->size('md'); // Infolist entry IdentityEntry::make('name') ->avatar('avatar_url') ->primary('name') ->secondary('email') ->size('md');
Requirements
- PHP 8.2+
- Filament 4.x
- Laravel (package auto-discovery enabled)
Installation
composer require filafly/filament-identity-column php artisan filament:assets
Avatar
avatar(string|Closure $value)
- Absolute URL, root-relative path, attribute path, or Closure.
avatarShape('square'|'rounded'|'circular'|Closure)
squareAvatar()
/roundedAvatar()
/circularAvatar()
avatarSize(string|Closure $cssSize)
- CSS size (e.g.,
28px
,2rem
).
- CSS size (e.g.,
Primary
primary(string|Closure $value)
- Falls back to the column/entry state when not set.
primaryUrl(string|Closure|null $url, bool|Closure $openInNewTab = false)
- Suppressed if a wrapper
->url()
is set on the column/entry.
- Suppressed if a wrapper
Secondary
secondary(string|Closure $value)
secondaryUrl(string|Closure|null $url, bool|Closure $openInNewTab = false)
- Suppressed if a wrapper
->url()
is set on the column/entry.
- Suppressed if a wrapper
Sizing
size('sm'|'md'|'lg'|TextSize|Closure|null)
(inherited from Filament)- Defaults: text
md
; avatar size derives from visual size whenavatarSize()
is not set. - Text scale by size:
sm
(0.875/0.75rem),md
(1/0.75rem),lg
(1.125/0.875rem).
Notes
- Strings passed to methods are resolved from the record via
data_get()
when they look like attribute paths.
License
MIT