File size: 1,858 Bytes
bc20498
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<script>import { onMount } from 'svelte';
import { EdgeWrapper } from '../../components/EdgeWrapper';
import { CallOnMount } from '../../components/CallOnMount';
import { MarkerDefinition } from './MarkerDefinition';
import { useStore } from '../../store';
export let defaultEdgeOptions;
const { visibleEdges, edgesInitialized, edges: { setDefaultOptions }, elementsSelectable } = useStore();
onMount(() => {
    if (defaultEdgeOptions)
        setDefaultOptions(defaultEdgeOptions);
});
</script>

<div class="svelte-flow__edges">
  <svg class="svelte-flow__marker">
    <MarkerDefinition />
  </svg>

  {#each $visibleEdges as edge (edge.id)}
    <EdgeWrapper
      id={edge.id}
      source={edge.source}
      target={edge.target}
      data={edge.data}
      style={edge.style}
      animated={edge.animated}
      selected={edge.selected}
      selectable={edge.selectable ?? $elementsSelectable}
      deletable={edge.deletable}
      hidden={edge.hidden}
      label={edge.label}
      labelStyle={edge.labelStyle}
      markerStart={edge.markerStart}
      markerEnd={edge.markerEnd}
      sourceHandle={edge.sourceHandle}
      targetHandle={edge.targetHandle}
      sourceX={edge.sourceX}
      sourceY={edge.sourceY}
      targetX={edge.targetX}
      targetY={edge.targetY}
      sourcePosition={edge.sourcePosition}
      targetPosition={edge.targetPosition}
      ariaLabel={edge.ariaLabel}
      interactionWidth={edge.interactionWidth}
      class={edge.class}
      type={edge.type || 'default'}
      zIndex={edge.zIndex}
      on:edgeclick
      on:edgecontextmenu
      on:edgemouseenter
      on:edgemouseleave
    />
  {/each}

  {#if $visibleEdges.length > 0}
    <CallOnMount
      onMount={() => {
        $edgesInitialized = true;
      }}
      onDestroy={() => {
        $edgesInitialized = false;
      }}
    />
  {/if}
</div>