Work work work
parent
3e2c5d5fac
commit
b9346c4466
@ -0,0 +1,9 @@
|
||||
const {join} = require('path');
|
||||
|
||||
/**
|
||||
* @type {import("puppeteer").Configuration}
|
||||
*/
|
||||
module.exports = {
|
||||
// Changes the cache location for Puppeteer.
|
||||
cacheDirectory: join(__dirname, '.cache', 'puppeteer'),
|
||||
};
|
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Resources\OrderResource\Pages;
|
||||
|
||||
use App\Filament\Resources\OrderResource;
|
||||
use Filament\Resources\Pages\ViewRecord;
|
||||
|
||||
class ViewOrder extends ViewRecord
|
||||
{
|
||||
protected static string $resource = OrderResource::class;
|
||||
}
|
Binary file not shown.
@ -0,0 +1,194 @@
|
||||
<x-dynamic-component
|
||||
:component="$getFieldWrapperView()"
|
||||
:field="$field"
|
||||
>
|
||||
|
||||
@php
|
||||
$containers = $getChildComponentContainers();
|
||||
|
||||
$addAction = $getAction($getAddActionName());
|
||||
$cloneAction = $getAction($getCloneActionName());
|
||||
$deleteAction = $getAction($getDeleteActionName());
|
||||
$moveDownAction = $getAction($getMoveDownActionName());
|
||||
$moveUpAction = $getAction($getMoveUpActionName());
|
||||
$reorderAction = $getAction($getReorderActionName());
|
||||
|
||||
$isAddable = $isAddable();
|
||||
$isCloneable = $isCloneable();
|
||||
$isCollapsible = $isCollapsible();
|
||||
$isDeletable = $isDeletable();
|
||||
$isReorderable = $isReorderable();
|
||||
$isReorderableWithButtons = $isReorderableWithButtons();
|
||||
$isReorderableWithDragAndDrop = $isReorderableWithDragAndDrop();
|
||||
|
||||
$statePath = $getStatePath();
|
||||
|
||||
$columnLabels = $getColumnLabels();
|
||||
$colStyles = $getColStyles();
|
||||
|
||||
@endphp
|
||||
|
||||
<div
|
||||
{{-- x-data="{ state: $wire.entangle('{{ $getStatePath() }}') }" --}}
|
||||
x-data="{ isCollapsed: @js($isCollapsed()) }"
|
||||
x-on:repeater-collapse.window="$event.detail === '{{ $getStatePath() }}' && (isCollapsed = true)"
|
||||
x-on:repeater-expand.window="$event.detail === '{{ $getStatePath() }}' && (isCollapsed = false)"
|
||||
|
||||
{{
|
||||
$attributes
|
||||
->merge($getExtraAttributes(), escape: false)
|
||||
->class(['bg-white border border-gray-300 shadow-sm rounded-xl relative dark:bg-gray-900 dark:border-gray-700'])
|
||||
}}
|
||||
>
|
||||
|
||||
<div @class([
|
||||
'filament-tables-header',
|
||||
'flex items-center h-10 overflow-hidden border-b bg-gray-50 rounded-t-xl',
|
||||
'dark:bg-gray-900 dark:border-gray-700',
|
||||
])>
|
||||
|
||||
<div class="flex-1"></div>
|
||||
@if ($isCollapsible)
|
||||
<div>
|
||||
<button
|
||||
x-on:click="isCollapsed = !isCollapsed"
|
||||
type="button"
|
||||
@class([
|
||||
'flex items-center justify-center flex-none w-10 h-10 text-gray-400 transition hover:text-gray-300',
|
||||
'dark:text-gray-400 dark:hover:text-gray-500',
|
||||
])
|
||||
>
|
||||
<x-heroicon-s-minus-small class="w-4 h-4" x-show="! isCollapsed"/>
|
||||
|
||||
<span class="sr-only" x-show="! isCollapsed">
|
||||
{{ __('forms::components.repeater.buttons.collapse_item.label') }}
|
||||
</span>
|
||||
|
||||
<x-heroicon-s-plus-small class="w-4 h-4" x-show="isCollapsed" x-cloak/>
|
||||
|
||||
<span class="sr-only" x-show="isCollapsed" x-cloak>
|
||||
{{ __('forms::components.repeater.buttons.expand_item.label') }}
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="px-4{{ $isAddable? '' : ' py-2' }}">
|
||||
<table class="it-table-repeater w-full text-left rtl:text-right table-auto mx-4" x-show="! isCollapsed">
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@foreach($columnLabels as $columnLabel)
|
||||
@if($columnLabel['display'])
|
||||
<th class="it-table-repeater-cell-label p-2"
|
||||
@if($colStyles && isset($colStyles[$columnLabel['component']]))
|
||||
style="{{ $colStyles[$columnLabel['component']] }}"
|
||||
@endif
|
||||
>
|
||||
<span>
|
||||
{{ $columnLabel['name'] }}
|
||||
</span>
|
||||
</th>
|
||||
@else
|
||||
<th style="display: none"></th>
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
@if ($isReorderableWithDragAndDrop || $isReorderableWithButtons || $isCloneable || $isDeletable)
|
||||
<th></th>
|
||||
@endif
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody
|
||||
@if($isReorderable)
|
||||
{{-- :wire:end.stop="'mountFormComponentAction(\'' . $statePath . '\', \'reorder\', { items: $event.target.sortable.toArray() })'" --}}
|
||||
x-sortable
|
||||
@endif
|
||||
>
|
||||
|
||||
@foreach ($containers as $uuid => $item)
|
||||
|
||||
<tr
|
||||
class="it-table-repeater-row"
|
||||
x-on:repeater-collapse.window="$event.detail === '{{ $getStatePath() }}' && (isCollapsed = true)"
|
||||
x-on:repeater-expand.window="$event.detail === '{{ $getStatePath() }}' && (isCollapsed = false)"
|
||||
wire:key="{{ $this->getId() }}.{{ $item->getStatePath() }}.{{ $field::class }}.item"
|
||||
x-sortable-item="{{ $uuid }}"
|
||||
>
|
||||
|
||||
@foreach($item->getComponents() as $component)
|
||||
<td
|
||||
class="it-table-repeater-cell px-1 py-2 align-top"
|
||||
@if($component->isHidden() || ($component instanceof \Filament\Forms\Components\Hidden))style="display:none"@endif
|
||||
@if($colStyles && isset($colStyles[$component->getName()]))
|
||||
style="{{ $colStyles[$component->getName()] }}"
|
||||
@endif
|
||||
>
|
||||
{{ $component }}
|
||||
</td>
|
||||
@endforeach
|
||||
|
||||
@if ($isReorderableWithDragAndDrop || $isReorderableWithButtons || filled($itemLabel) || $isCloneable || $isDeletable || $isCollapsible)
|
||||
<td class="flex items-center gap-x-3 py-2 max-w-20">
|
||||
@if ($isReorderableWithDragAndDrop || $isReorderableWithButtons)
|
||||
@if ($isReorderableWithDragAndDrop)
|
||||
<div x-sortable-handle>
|
||||
{{ $reorderAction }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($isReorderableWithButtons)
|
||||
<div
|
||||
class="flex items-center justify-center"
|
||||
>
|
||||
{{ $moveUpAction(['item' => $uuid])->disabled($loop->first) }}
|
||||
</div>
|
||||
|
||||
<div
|
||||
class="flex items-center justify-center"
|
||||
>
|
||||
{{ $moveDownAction(['item' => $uuid])->disabled($loop->last) }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@endif
|
||||
|
||||
@if ($isCloneable || $isDeletable )
|
||||
@if ($cloneAction->isVisible())
|
||||
<div>
|
||||
{{ $cloneAction(['item' => $uuid]) }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($isDeletable)
|
||||
<div>
|
||||
{{ $deleteAction(['item' => $uuid]) }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@endif
|
||||
|
||||
</td>
|
||||
@endif
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
<div class="p-2 text-xs text-center text-gray-400" x-show="isCollapsed" x-cloak>
|
||||
{{ __('filament-table-repeater::components.table-repeater.collapsed') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if($isAddable)
|
||||
<div class="relative flex justify-center py-2">
|
||||
{{ $addAction }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
</div>
|
||||
|
||||
</x-dynamic-component>
|
Loading…
Reference in New Issue