Skip to content

Commit ccfec0a

Browse files
committed
Rename to group
1 parent 5af519a commit ccfec0a

File tree

3 files changed

+32
-28
lines changed

3 files changed

+32
-28
lines changed

database/migrations/add_tab_column_to_fields_table.php.stub renamed to database/migrations/add_group_column_to_fields_table.php.stub

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ return new class extends Migration
99
public function up()
1010
{
1111
Schema::table('fields', function (Blueprint $table) {
12-
$table->string('tab')->nullable()->after('position');
12+
$table->string('group')->nullable()->after('position');
1313
});
1414
}
1515
};

src/FieldsServiceProvider.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ protected function getMigrations(): array
152152
return [
153153
'create_fields_table',
154154
'change_unique_column_in_fields',
155-
'add_tab_column_to_fields_table',
155+
'add_group_column_to_fields_table',
156156
];
157157
}
158158
}

src/Filament/RelationManagers/FieldsRelationManager.php

Lines changed: 30 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,25 @@
22

33
namespace Backstage\Fields\Filament\RelationManagers;
44

5-
use Backstage\Fields\Concerns\HasConfigurableFields;
6-
use Backstage\Fields\Concerns\HasFieldTypeResolver;
7-
use Backstage\Fields\Enums\Field as FieldEnum;
8-
use Backstage\Fields\Facades\Fields;
5+
use Filament\Tables;
6+
use Filament\Forms\Get;
7+
use Filament\Forms\Set;
8+
use Livewire\Component;
9+
use Filament\Forms\Form;
10+
use Filament\Tables\Table;
11+
use Illuminate\Support\Str;
912
use Backstage\Fields\Models\Field;
1013
use Filament\Forms\Components\Grid;
11-
use Filament\Forms\Components\Section;
14+
use Filament\Tables\Grouping\Group;
15+
use Backstage\Fields\Facades\Fields;
1216
use Filament\Forms\Components\Select;
17+
use Filament\Forms\Components\Section;
18+
use Illuminate\Database\Eloquent\Model;
1319
use Filament\Forms\Components\TextInput;
14-
use Filament\Forms\Form;
15-
use Filament\Forms\Get;
16-
use Filament\Forms\Set;
20+
use Backstage\Fields\Enums\Field as FieldEnum;
21+
use Backstage\Fields\Concerns\HasFieldTypeResolver;
22+
use Backstage\Fields\Concerns\HasConfigurableFields;
1723
use Filament\Resources\RelationManagers\RelationManager;
18-
use Filament\Tables;
19-
use Filament\Tables\Table;
20-
use Illuminate\Database\Eloquent\Model;
21-
use Illuminate\Support\Str;
22-
use Livewire\Component;
2324

2425
class FieldsRelationManager extends RelationManager
2526
{
@@ -86,25 +87,24 @@ public function form(Form $form): Form
8687
$set('config', $this->initializeConfig($state));
8788
}),
8889

89-
Select::make('tab')
90-
->label(__('Tab'))
90+
Select::make('group')
91+
->label(__('Group'))
9192
->createOptionForm([
92-
TextInput::make('tab')
93-
->label(__('Tab'))
93+
TextInput::make('group')
94+
->label(__('Group'))
9495
->required(),
9596
])
96-
->createOptionUsing(function (?string $state) {
97-
dd($state);
98-
if (blank($state)) {
99-
return null;
100-
}
101-
return Field::where('tab', $state)->exists() ? null : $state;
97+
->createOptionUsing(function (array $data) {
98+
return $data['group'] ?? null;
10299
})
103100
->searchable()
104101
->preload()
105102
->options(function () {
106-
// Load with earlier used tabs
107-
return Field::pluck('tab')->filter()->unique()->toArray() ?? [];
103+
return Field::pluck('group')
104+
->filter()
105+
->unique()
106+
->mapWithKeys(fn ($group) => [$group => $group])
107+
->toArray();
108108
}),
109109

110110
]),
@@ -163,7 +163,11 @@ public function table(Table $table): Table
163163
->recordTitleAttribute('name')
164164
->reorderable('position')
165165
->defaultSort('position', 'asc')
166-
->defaultGroup('tab')
166+
->defaultGroup('group')
167+
->groups([
168+
Group::make('group')
169+
->label(__('Group'))
170+
])
167171
->columns([
168172
Tables\Columns\TextColumn::make('name')
169173
->label(__('Name'))

0 commit comments

Comments
 (0)