components([ TextInput::make('name')->required()->disabled()->columnSpan(['sm' => 2]), Textarea::make('value')->required()->columnSpan(['sm' => 2]) ->afterStateHydrated(function (Textarea $component, $state) { $arr = json_decode($state, true); if (is_array($arr)) { $component->disabled(); } }) ]); } public static function table(Table $table): Table { return $table ->columns([ TextColumn::make('id'), TextColumn::make('name')->searchable(), TextColumn::make('value')->limit(), BadgeColumn::make('autoload')->colors(['success' => 'yes', 'warning' => 'no']), TextColumn::make('updated_at'), ]) ->filters([ SelectFilter::make('autoload')->options(self::$yesOrNo), ]) ->recordActions([ EditAction::make(), ]) ->toolbarActions([ // Tables\Actions\DeleteBulkAction::make(), ]); } public static function getRelations(): array { return [ // ]; } public static function getPages(): array { return [ // 'index' => Pages\ListSettings::route('/'), // 'create' => Pages\CreateSetting::route('/create'), 'index' => EditSetting::route('/'), ]; } }