Files
stufflog2/svelte-ui/src/components/GroupItemSelect.svelte
T
gisle eeba5bc9c8
continuous-integration/drone/push Build is passing
add new fields to logs and goals.
2021-01-17 19:01:13 +01:00

31 lines
861 B
Svelte

<script lang="ts">
import type { GroupResult } from "../models/group";
export let value = "";
export let name = "";
export let disabled = false;
export let optional = false;
export let optionalLabel = "None";
export let group: GroupResult = null;
$: {
if (group != null && !group.items.find(t => t.id === value)) {
if (optional) {
value = "";
} else {
value = group.items[0]?.id || "";
}
}
}
</script>
<select name={name} bind:value={value} disabled={disabled || group == null || group.items.length === 0}>
{#if optional}
<option value={""} selected={"" === value}>{optionalLabel}</option>
{/if}
{#if group != null}
{#each group.items as item (item.id)}
<option value={item.id} selected={item.id === value}>{item.name} ({item.groupWeight})</option>
{/each}
{/if}
</select>