Forms\Components\Repeater::make('itemCategories') ->relationship() ->schema([ Forms\Components\Select::make('category_id') ->label('Category') ->options(function ($state, Closure $get) { $selectedCategories = array_unique(array_column($get('../../itemCategories'), 'category_id')); $selectedCategories = array_map(fn($a): int => intval($a), $selectedCategories); $selectedCategories = array_filter($selectedCategories, function ($a) use ($state) { return !($a === 0 || $a == $state); }); return Category::query()->whereNotIn('id', $selectedCategories)->pluck('name', 'id'); }) ->required() ->reactive(), ])