<script lang="ts"> import type { DeleteMutation } from '$gql/Mutations'; import { getSelectionContext } from '$lib/Selection'; import { toastFinally } from '$lib/Toasts'; import { confirmDeletion } from '$lib/Utils'; import DeleteButton from '$lib/components/DeleteButton.svelte'; import { getContextClient } from '@urql/svelte'; const client = getContextClient(); const selection = getSelectionContext(); export let mutation: DeleteMutation; export let warning: string | undefined = undefined; function remove() { const mutate = () => { mutation(client, { ids: $selection.ids }) .then(() => ($selection = $selection.clear())) .catch(toastFinally); }; confirmDeletion($selection.typename, $selection.names, mutate, warning); } </script> <DeleteButton on:click={remove} />