@props([
'actions' => [],
'previewTarget' => null,
])
@if (! empty($actions))
@foreach ($actions as $action)
@php
$type = $action['type'] ?? 'link';
$label = $action['label'] ?? ucfirst($type);
$icon = $action['icon'] ?? match ($type) {
'view' => 'eye',
'edit' => 'edit',
'delete' => 'trash',
default => 'external',
};
$previewPayload = ! empty($action['preview'])
? base64_encode(json_encode($action['preview'], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES))
: null;
@endphp
@if ($type === 'delete')
@elseif ($previewPayload && $previewTarget)
@else
@endif
@endforeach
@endif