1- import { useEffect } from 'react' ;
21import { SafeAreaView , StyleSheet , View } from 'react-native' ;
32import { GestureHandlerRootView } from 'react-native-gesture-handler' ;
43
4+ import DirectedGraphComponent from '@/components/graphs/DirectedGraphComponent' ;
55import DefaultEdgeLabelRenderer from '@/components/graphs/labels/renderers/DefaultEdgeLabelRenderer' ;
66import { DirectedGraph } from '@/models/graphs' ;
77import PannableScalableView from '@/views/PannableScalableView' ;
88
9- import { DirectedGraphComponent } from '..' ;
10-
119export default function App ( ) {
1210 const graph = new DirectedGraph ( {
13- vertices : [ { key : 'A' , value : 'A' } ]
14- } ) ;
15-
16- useEffect ( ( ) => {
17- graph . insertVertex (
11+ vertices : [
12+ { key : 'A' , value : 'A' } ,
1813 { key : 'B' , value : 'B' } ,
19- {
20- duration : 400 ,
21- onComplete : ( ) => {
22- graph . insertEdge (
23- { key : 'AB' , value : 'AB' , from : 'A' , to : 'B' } ,
24- {
25- duration : 100
26- }
27- ) ;
28- graph . insertVertex (
29- { key : 'C' , value : 'C' } ,
30- {
31- duration : 800 ,
32- onComplete : ( ) => {
33- graph . insertEdge (
34- {
35- key : 'BC' ,
36- value : 'BC' ,
37- from : 'B' ,
38- to : 'C'
39- } ,
40- {
41- duration : 4000
42- }
43- ) ;
44- graph . insertVertex (
45- { key : 'D' , value : 'D' } ,
46- {
47- duration : 1200 ,
48- onComplete : ( ) => {
49- graph . insertEdge (
50- {
51- key : 'CD' ,
52- value : 'CD' ,
53- from : 'C' ,
54- to : 'D'
55- } ,
56- {
57- duration : 3000
58- }
59- ) ;
60- graph . insertVertex (
61- { key : 'E' , value : 'E' } ,
62- {
63- duration : 1600 ,
64- onComplete : ( ) => {
65- graph . insertEdge (
66- {
67- key : 'DE' ,
68- value : 'DE' ,
69- from : 'D' ,
70- to : 'E'
71- } ,
72- {
73- duration : 2000
74- }
75- ) ;
76- }
77- }
78- ) ;
79- }
80- }
81- ) ;
82- }
83- }
84- ) ;
85- }
86- }
87- ) ;
88- } , [ ] ) ;
14+ { key : 'C' , value : 'C' } ,
15+ { key : 'D' , value : 'D' } ,
16+ { key : 'E' , value : 'E' } ,
17+ { key : 'F' , value : 'F' } ,
18+ { key : 'G' , value : 'G' } ,
19+ { key : 'H' , value : 'H' } ,
20+ { key : 'I' , value : 'I' } ,
21+ { key : 'J' , value : 'J' } ,
22+ { key : 'L' , value : 'L' } ,
23+ { key : 'M' , value : 'M' } ,
24+ { key : 'N' , value : 'N' } ,
25+ { key : 'O' , value : 'O' } ,
26+ { key : 'P' , value : 'P' } ,
27+ { key : 'Q' , value : 'Q' } ,
28+ { key : 'R' , value : 'R' } ,
29+ { key : 'S' , value : 'S' } ,
30+ { key : 'T' , value : 'T' } ,
31+ { key : 'U' , value : 'U' } ,
32+ { key : 'V' , value : 'V' } ,
33+ { key : 'W' , value : 'W' } ,
34+ { key : 'X' , value : 'X' } ,
35+ { key : 'Y' , value : 'Y' } ,
36+ { key : 'Z' , value : 'Z' } ,
37+ { key : 'AA' , value : 'AA' } ,
38+ { key : 'AB' , value : 'AB' } ,
39+ { key : 'AC' , value : 'AC' } ,
40+ { key : 'AD' , value : 'AD' } ,
41+ { key : 'AE' , value : 'AE' } ,
42+ { key : 'AF' , value : 'AF' } ,
43+ { key : 'AG' , value : 'AG' } ,
44+ { key : 'AH' , value : 'AH' } ,
45+ { key : 'AI' , value : 'AI' } ,
46+ { key : 'AJ' , value : 'AJ' } ,
47+ { key : 'AK' , value : 'AK' } ,
48+ { key : 'AL' , value : 'AL' } ,
49+ { key : 'AM' , value : 'AM' } ,
50+ { key : 'AN' , value : 'AN' } ,
51+ { key : 'AO' , value : 'AO' } ,
52+ { key : 'AP' , value : 'AP' }
53+ ] ,
54+ edges : [
55+ { key : 'AB' , from : 'A' , to : 'B' , value : 'AB' } ,
56+ { key : 'AC' , from : 'A' , to : 'C' , value : 'AC' } ,
57+ { key : 'CF' , from : 'C' , to : 'F' , value : 'CF' } ,
58+ { key : 'CE' , from : 'C' , to : 'E' , value : 'CE' } ,
59+ { key : 'CD' , from : 'C' , to : 'D' , value : 'CD' } ,
60+ // { key: 'DH', from: 'D', to: 'H', value: 'DH' },
61+ { key : 'EL' , from : 'E' , to : 'L' , value : 'EL' } ,
62+ { key : 'FG' , from : 'F' , to : 'G' , value : 'FG' } ,
63+ { key : 'LJ' , from : 'L' , to : 'J' , value : 'LJ' }
64+ ]
65+ } ) ;
8966
9067 return (
9168 < SafeAreaView style = { styles . container } >
@@ -96,8 +73,8 @@ export default function App() {
9673 graph = { graph }
9774 settings = { {
9875 placement : {
99- strategy : 'circle ' ,
100- minVertexSpacing : 100
76+ strategy : 'orbits ' ,
77+ minVertexSpacing : 120
10178 } ,
10279 components : {
10380 edge : {
0 commit comments