feat(svelte): add SvelteFlowProvider and useSvelteFlow hook

This commit is contained in:
moklick
2023-03-08 20:17:33 +01:00
parent 71cdc0ff02
commit 7bd8032ea4
19 changed files with 202 additions and 46 deletions
@@ -0,0 +1,25 @@
<script lang="ts">
import { hasContext } from 'svelte';
import { key } from '$lib/store';
import SvelteFlow from './SvelteFlow.svelte';
import { SvelteFlowProvider } from '$lib/components/SvelteFlowProvider';
import type { SvelteFlowProps } from './types';
type $$Props = SvelteFlowProps;
// @todo how to do this typing right?
const props = $$props as SvelteFlowProps;
</script>
{#if hasContext(key)}
<SvelteFlow {...props}>
<slot />
</SvelteFlow>
{:else}
<SvelteFlowProvider>
<SvelteFlow {...props}>
<slot />
</SvelteFlow>
</SvelteFlowProvider>
{/if}