@php $containers = $getChildComponentContainers(); $addAction = $getAction($getAddActionName()); $cloneAction = $getAction($getCloneActionName()); $deleteAction = $getAction($getDeleteActionName()); $moveDownAction = $getAction($getMoveDownActionName()); $moveUpAction = $getAction($getMoveUpActionName()); $reorderAction = $getAction($getReorderActionName()); $isReorderableWithButtons = $isReorderableWithButtons(); $headers = $getHeaders(); $columnWidths = $getColumnWidths(); $breakPoint = $getBreakPoint(); $hasContainers = count($containers) > 0; $hasHiddenHeader = $shouldHideHeader(); $statePath = $getStatePath(); $emptyLabel = $getEmptyLabel(); $hasActions = $reorderAction->isVisible() || $cloneAction->isVisible() || $deleteAction->isVisible() || $moveUpAction->isVisible() || $moveDownAction->isVisible(); @endphp
merge($getExtraAttributes())->class([ 'filament-table-repeater-component space-y-6 relative', match ($breakPoint) { 'sm' => 'break-point-sm', 'lg' => 'break-point-lg', 'xl' => 'break-point-xl', '2xl' => 'break-point-2xl', default => 'break-point-md', } ]) }} > @if (count($containers) || $emptyLabel !== false)
! $hasContainers && $breakPoint === 'sm', 'md:ring-gray-950/5 dark:md:ring-white/20' => ! $hasContainers && $breakPoint === 'md', 'lg:ring-gray-950/5 dark:lg:ring-white/20' => ! $hasContainers && $breakPoint === 'lg', 'xl:ring-gray-950/5 dark:xl:ring-white/20' => ! $hasContainers && $breakPoint === 'xl', '2xl:ring-gray-950/5 dark:2xl:ring-white/20' => ! $hasContainers && $breakPoint === '2xl', ])> $hasHiddenHeader, 'filament-table-repeater-header rounded-t-xl overflow-hidden border-b border-gray-950/5 dark:border-white/20' => ! $hasHiddenHeader, ])> @foreach ($headers as $key => $header) @endforeach @if ($hasActions) @endif @if (count($containers)) @foreach ($containers as $uuid => $row) @foreach($row->getComponents() as $cell) @if(! $cell instanceof \Filament\Forms\Components\Hidden && ! $cell->isHidden()) @else {{ $cell }} @endif @endforeach @if ($hasActions) @endif @endforeach @else @endif
$loop->first, 'ltr:rounded-tr-xl rtl:rounded-tl-xl' => $loop->last && ! $hasActions, match($getHeadersAlignment()) { 'center' => 'text-center', 'right' => 'text-right rtl:text-left', default => 'text-left rtl:text-right' } ]) @if ($header['width']) style="width: {{ $header['width'] }}" @endif > {{ $header['label'] }} @if ($header['required']) * @endif
@if ($reorderAction->isVisible())
@endif @if ($isReorderableWithButtons) @if ($moveUpAction && count($containers) > 2)
@endif @if ($moveDownAction && count($containers) > 2)
@endif @endif @if ($cloneAction->isVisible())
@endif @if ($deleteAction->isVisible())
@endif {{ __('filament-table-repeater::components.repeater.row_actions.label') }}
$cell->isLabelHidden(), ]) @php $cellKey = method_exists($cell, 'getName') ? $cell->getName() : $cell->getId(); @endphp @if ( $columnWidths && isset($columnWidths[$cellKey]) ) style="width: {{ $columnWidths[$cellKey] }}" @endif > {{ $cell }}
@if ($reorderAction->isVisible())
{{ $reorderAction }}
@endif @if ($isReorderableWithButtons) @if (! $loop->first) {{ $moveUpAction(['item' => $uuid]) }} @endif @if (! $loop->last) {{ $moveDownAction(['item' => $uuid]) }} @endif @endif @if ($cloneAction->isVisible()) {{ $cloneAction(['item' => $uuid]) }} @endif @if ($deleteAction->isVisible()) {{ $deleteAction(['item' => $uuid]) }} @endif
{{ $emptyLabel ?: __('filament-table-repeater::components.repeater.empty.label') }}
@endif @if ($addAction->isVisible())
{{ $addAction }}
@endif