Better display of tablular data

This commit is contained in:
Lance Pioch 2024-04-01 12:33:16 -04:00
parent 1add3ca605
commit f47b420785
4 changed files with 34 additions and 32 deletions

View File

@ -130,16 +130,13 @@ class EggResource extends Resource
->columns([ ->columns([
Tables\Columns\TextColumn::make('id') Tables\Columns\TextColumn::make('id')
->label('Id') ->label('Id')
// ->hidden() ->toggleable(isToggledHiddenByDefault: true)
->searchable(),
Tables\Columns\TextColumn::make('uuid')
->label('UUID')
->hidden()
->searchable(), ->searchable(),
Tables\Columns\TextColumn::make('name') Tables\Columns\TextColumn::make('name')
->icon('tabler-egg')
->searchable(), ->searchable(),
Tables\Columns\TextColumn::make('author') Tables\Columns\TextColumn::make('author')
->hidden() ->toggleable(isToggledHiddenByDefault: true)
->searchable(), ->searchable(),
Tables\Columns\TextColumn::make('description') Tables\Columns\TextColumn::make('description')
->words(50) ->words(50)

View File

@ -100,10 +100,14 @@ class NodeResource extends Resource
Tables\Columns\TextColumn::make('memory') Tables\Columns\TextColumn::make('memory')
->icon('tabler-device-desktop-analytics') ->icon('tabler-device-desktop-analytics')
->numeric() ->numeric()
->suffix(' GB')
->formatStateUsing(fn ($state) => number_format($state / 1000, 2))
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('disk') Tables\Columns\TextColumn::make('disk')
->icon('tabler-file') ->icon('tabler-file')
->numeric() ->numeric()
->suffix(' GB')
->formatStateUsing(fn ($state) => number_format($state / 1000, 2))
->sortable(), ->sortable(),
Tables\Columns\IconColumn::make('scheme') Tables\Columns\IconColumn::make('scheme')
->label('SSL') ->label('SSL')

View File

@ -25,32 +25,40 @@ class ServerResource extends Resource
public static function form(Form $form): Form public static function form(Form $form): Form
{ {
return $form return $form
->columns(4)
->schema([ ->schema([
Forms\Components\TextInput::make('external_id') Forms\Components\TextInput::make('external_id')->maxLength(191)->hidden(),
Forms\Components\TextInput::make('name')
->columnSpanFull()
->required()
->maxLength(191), ->maxLength(191),
Forms\Components\TextInput::make('uuid')
->label('UUID')
->required()
->maxLength(36),
Forms\Components\TextInput::make('uuidShort')
->required()
->maxLength(8),
Forms\Components\Select::make('node_id') Forms\Components\Select::make('node_id')
->relationship('node', 'name') ->relationship('node', 'name')
->searchable()
->preload()
->required(),
Forms\Components\Select::make('egg_id')
->relationship('egg', 'name')
->searchable()
->preload()
->required(),
Forms\Components\Select::make('owner_id')
->relationship('user', 'username')
->searchable()
->preload()
->default(auth()->user()->id)
->required(),
Forms\Components\Select::make('allocation_id')
->relationship('allocation', 'address')
->searchable()
->required(), ->required(),
Forms\Components\TextInput::make('name')
->required()
->maxLength(191),
Forms\Components\Textarea::make('description') Forms\Components\Textarea::make('description')
->hidden()
->default('')
->required() ->required()
->columnSpanFull(), ->columnSpanFull(),
Forms\Components\TextInput::make('status')
->maxLength(191),
Forms\Components\Toggle::make('skip_scripts') Forms\Components\Toggle::make('skip_scripts')
->required(), ->required(),
Forms\Components\TextInput::make('owner_id')
->required()
->numeric(),
Forms\Components\TextInput::make('memory') Forms\Components\TextInput::make('memory')
->required() ->required()
->numeric(), ->numeric(),
@ -72,17 +80,10 @@ class ServerResource extends Resource
->required() ->required()
->numeric() ->numeric()
->default(0), ->default(0),
Forms\Components\Select::make('allocation_id')
->relationship('allocation', 'id')
->required(),
Forms\Components\TextInput::make('egg_id')
->required()
->numeric(),
Forms\Components\Textarea::make('startup') Forms\Components\Textarea::make('startup')
->required() ->required()
->columnSpanFull(), ->columnSpanFull(),
Forms\Components\FileUpload::make('image') Forms\Components\TextInput::make('image')
->image()
->required(), ->required(),
Forms\Components\TextInput::make('allocation_limit') Forms\Components\TextInput::make('allocation_limit')
->numeric(), ->numeric(),
@ -93,7 +94,6 @@ class ServerResource extends Resource
->required() ->required()
->numeric() ->numeric()
->default(0), ->default(0),
Forms\Components\DateTimePicker::make('installed_at'),
]); ]);
} }

View File

@ -45,6 +45,7 @@ class UserResource extends Resource
return $table return $table
->columns([ ->columns([
Tables\Columns\ImageColumn::make('picture') Tables\Columns\ImageColumn::make('picture')
->label('')
->defaultImageUrl(fn (User $user) => 'https://gravatar.com/avatar/' . md5(strtolower($user->email))), ->defaultImageUrl(fn (User $user) => 'https://gravatar.com/avatar/' . md5(strtolower($user->email))),
Tables\Columns\TextColumn::make('external_id') Tables\Columns\TextColumn::make('external_id')
->searchable() ->searchable()
@ -73,7 +74,7 @@ class UserResource extends Resource
Tables\Columns\TextColumn::make('servers_count') Tables\Columns\TextColumn::make('servers_count')
->counts('servers') ->counts('servers')
->icon('tabler-server') ->icon('tabler-server')
->label('Servers Owned'), ->label('Servers'),
Tables\Columns\TextColumn::make('subusers_count') Tables\Columns\TextColumn::make('subusers_count')
->counts('subusers') ->counts('subusers')
->icon('tabler-users') ->icon('tabler-users')