Files
einundzwanzig-verein/resources/views/flux/table/index.blade.php

34 lines
897 B
PHP

@props([
'paginate' => null,
])
@php
$classes = Flux::classes()
->add('[:where(&)]:min-w-full table-fixed border-separate border-spacing-0 isolate')
->add('text-text-primary')
// We want whitespace-nowrap for the table, but not for modals and dropdowns...
->add('whitespace-nowrap [&_dialog]:whitespace-normal [&_[popover]]:whitespace-normal')
;
$containerClasses = Flux::classes()
->add('flex flex-col')
->add($attributes->pluck('container:class'))
;
@endphp
<div class="{{ $containerClasses }}">
{{ $header ?? '' }}
<ui-table-scroll-area class="overflow-auto">
<table {{ $attributes->class($classes) }} data-flux-table>
{{ $slot }}
</table>
</ui-table-scroll-area>
{{ $footer ?? '' }}
<?php if ($paginate): ?>
<flux:pagination class="shrink-0" :paginator="$paginate" />
<?php endif; ?>
</div>