Lib: Add file input

This commit is contained in:
2024-12-12 04:37:02 +01:00
parent 0e57957610
commit b2cd5de7b2

View File

@ -0,0 +1,35 @@
<script lang="ts">
let {
id,
name,
label,
accept = "*",
onchange = undefined,
disabled = false,
required = false,
} = $props();
</script>
{#if disabled}
<!-- HACK: Set --tw-bg-opacity to 1 so the disabled label/button looks like the disabled input -->
<label
for={id}
class="btn btn-disabled mt-2 w-full"
style="--tw-bg-opacity: 1">{label}</label
>
{:else}
<label for={id} class="btn btn-ghost input-bordered mt-2 w-full"
>{label}</label
>
{/if}
<input
{id}
{name}
class="file-input file-input-bordered file-input-ghost"
type="file"
hidden
{disabled}
{required}
{onchange}
{accept}
/>