<script lang="ts"> import { type CharacterInput } from '$gql/Mutations'; import { type OmitIdentifiers } from '$gql/Utils'; import { type Character } from '$gql/graphql'; import Labelled from '$lib/components/Labelled.svelte'; import { createEventDispatcher } from 'svelte'; const dispatch = createEventDispatcher<{ submit: CharacterInput }>(); export let character: OmitIdentifiers<Character>; function submit() { dispatch('submit', { name: character.name }); } </script> <form on:submit|preventDefault={submit}> <div class="grid-labels"> <Labelled label="Name" let:id> <!-- svelte-ignore a11y-autofocus --> <input autofocus required {id} bind:value={character.name} /> </Labelled> </div> <slot /> </form>