display null values as 'null'

I have a table widget, where I want to display unconfirmed users. How can I display the string 'null' in the 'email_verified_at' column, when it's null?

Here's what I have so far:
namespace App\Filament\Widgets;

use App\Filament\Resources\UserResource;
use Filament\Tables\Actions\EditAction;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\Filter;
use Illuminate\Database\Eloquent\Builder;
use Filament\Tables\Table;
use Filament\Widgets\TableWidget as BaseWidget;

class LatestUsers extends BaseWidget
{
    protected int|string|array $columnSpan = 'full';
    protected static ?int $sort = 1;

    public function table(Table $table): Table
    {
        return $table
            ->query(
                UserResource::getEloquentQuery()
            )
            ->defaultPaginationPageOption(5)
            ->defaultSort('created_at', 'desc')
            ->columns([
                TextColumn::make('created_at'),
                TextColumn::make('name')
                    ->searchable()
                    ->sortable(),
                TextColumn::make('email')
                    ->searchable()
                    ->sortable(),
                TextColumn::make('email_verified_at')
                    ->label('Confirmed?')
                    ->formatStateUsing(fn(string $value): string => $value ? $value : 'null'), // <--- How do display null as a 'null'
            ])
            ->filters([
                Filter::make('email_verified_at')
                    ->label('Unconfirmed Users')
                    ->default(true)
                    ->query(fn(Builder $query): Builder => $query->whereNull('email_verified_at'))
            ])
            ->actions([
                EditAction::make(),
            ]);
    }
}
Was this page helpful?