30 lines
1.3 KiB
PHP
30 lines
1.3 KiB
PHP
<div>
|
|
<flux:file-upload wire:model="uploads" multiple
|
|
accept="image/jpeg,image/png,image/gif,image/webp,image/svg+xml,.pdf,.doc,.docx,.jpg,.jpeg,.png">
|
|
<flux:file-upload.dropzone
|
|
heading="Dateien hochladen"
|
|
text="Bilder (JPG, PNG, WebP, SVG) und Dokumente (PDF, DOC) — max. 10 MB pro Datei"
|
|
with-progress />
|
|
</flux:file-upload>
|
|
|
|
@if (isset($uploads) && count($uploads) > 0)
|
|
<div class="mt-3 flex flex-wrap items-center gap-3">
|
|
@foreach ($uploads as $index => $upload)
|
|
<flux:file-item
|
|
:heading="$upload->getClientOriginalName()"
|
|
:image="(str_starts_with($upload->getMimeType() ?? '', 'image/') && $upload->isPreviewable())
|
|
? $upload->temporaryUrl()
|
|
: null"
|
|
:size="$upload->getSize()">
|
|
<x-slot name="actions">
|
|
<flux:file-item.remove
|
|
wire:click="removeUpload({{ $index }})"
|
|
aria-label="Entfernen: {{ $upload->getClientOriginalName() }}" />
|
|
</x-slot>
|
|
</flux:file-item>
|
|
@endforeach
|
|
</div>
|
|
@endif
|
|
|
|
<flux:error name="uploads" />
|
|
</div>
|