@figtreejs/core 0.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/eslint.config.js +9 -0
  3. package/package.json +76 -0
  4. package/src/@custom-types/normalize-svg-path.d.ts +13 -0
  5. package/src/@custom-types/parse-svg-path.d.ts +8 -0
  6. package/src/@custom-types/svg-path-types.d.ts +37 -0
  7. package/src/bauble-makers/makers.ts +112 -0
  8. package/src/bauble-makers/set-up-baubles.ts +197 -0
  9. package/src/bauble-makers/utils.ts +61 -0
  10. package/src/components/baubles/bauble.tsx +61 -0
  11. package/src/components/baubles/branches.tsx +13 -0
  12. package/src/components/baubles/clades/cartoon.tsx +68 -0
  13. package/src/components/baubles/clades/highlight.tsx +96 -0
  14. package/src/components/baubles/clades/index.ts +1 -0
  15. package/src/components/baubles/clades.tsx +45 -0
  16. package/src/components/baubles/helpers.tsx +62 -0
  17. package/src/components/baubles/index.ts +16 -0
  18. package/src/components/baubles/labels.tsx +38 -0
  19. package/src/components/baubles/nodes.tsx +51 -0
  20. package/src/components/baubles/shapes/branch.tsx +53 -0
  21. package/src/components/baubles/shapes/circle.tsx +64 -0
  22. package/src/components/baubles/shapes/index.ts +9 -0
  23. package/src/components/baubles/shapes/label.tsx +104 -0
  24. package/src/components/baubles/shapes/rectangle.tsx +83 -0
  25. package/src/components/baubles/types.ts +99 -0
  26. package/src/components/decorations/axis/axis-types.ts +123 -0
  27. package/src/components/decorations/axis/axis.tsx +21 -0
  28. package/src/components/decorations/axis/index.ts +2 -0
  29. package/src/components/decorations/axis/polar-axis-bars.tsx +102 -0
  30. package/src/components/decorations/axis/polar-axis.tsx +175 -0
  31. package/src/components/decorations/axis/rectangular-axis-bars.tsx +53 -0
  32. package/src/components/decorations/axis/rectangular-axis.tsx +151 -0
  33. package/src/components/decorations/index.ts +2 -0
  34. package/src/components/decorations/legend/discrete-legend.tsx +93 -0
  35. package/src/components/decorations/legend/index.ts +1 -0
  36. package/src/components/decorations/legend/legend.tsx +1 -0
  37. package/src/components/figtree/figtree-types.ts +69 -0
  38. package/src/components/figtree/figtree.tsx +136 -0
  39. package/src/components/figtree/index.ts +3 -0
  40. package/src/components/hoc/index.ts +7 -0
  41. package/src/components/hoc/with-branch.tsx +148 -0
  42. package/src/components/hoc/with-branches.tsx +54 -0
  43. package/src/components/hoc/with-clades.tsx +47 -0
  44. package/src/components/hoc/with-node.tsx +183 -0
  45. package/src/components/hoc/with-nodes.tsx +45 -0
  46. package/src/components/index.ts +4 -0
  47. package/src/context/aminated-context.ts +3 -0
  48. package/src/context/dimension-context.ts +22 -0
  49. package/src/context/layout-context.ts +20 -0
  50. package/src/context/scale-context.ts +12 -0
  51. package/src/evo/index.ts +1 -0
  52. package/src/evo/tree/index.ts +5 -0
  53. package/src/evo/tree/mcc-tree.ts +0 -0
  54. package/src/evo/tree/normalized-tree/immutable-tree-helpers.ts +136 -0
  55. package/src/evo/tree/normalized-tree/immutable-tree.test.ts +158 -0
  56. package/src/evo/tree/normalized-tree/immutable-tree.ts +1365 -0
  57. package/src/evo/tree/normalized-tree/index.ts +3 -0
  58. package/src/evo/tree/parsers/annotation-parser.ts +276 -0
  59. package/src/evo/tree/parsers/index.ts +3 -0
  60. package/src/evo/tree/parsers/newick-character-parser.ts +246 -0
  61. package/src/evo/tree/parsers/newick-parsing.ts +22 -0
  62. package/src/evo/tree/parsers/nexus-parser.ts +12 -0
  63. package/src/evo/tree/parsers/nexus-parsing.ts +68 -0
  64. package/src/evo/tree/parsers/parsing.test.ts +289 -0
  65. package/src/evo/tree/parsers/stream-reader/index.ts +1 -0
  66. package/src/evo/tree/parsers/stream-reader/newick-importer.txt +395 -0
  67. package/src/evo/tree/parsers/stream-reader/nexus-importer.test.ts +99 -0
  68. package/src/evo/tree/parsers/stream-reader/nexus-importer.ts +293 -0
  69. package/src/evo/tree/parsers/stream-reader/nexus-tokenizer.ts +77 -0
  70. package/src/evo/tree/parsers/stream-reader/nexus-transform-stream.txt +109 -0
  71. package/src/evo/tree/taxa/helper-functions.ts +46 -0
  72. package/src/evo/tree/taxa/index.ts +1 -0
  73. package/src/evo/tree/taxa/taxon.ts +116 -0
  74. package/src/evo/tree/traversals/index.ts +1 -0
  75. package/src/evo/tree/traversals/preorder-traversal.ts +89 -0
  76. package/src/evo/tree/traversals/traversal-types.ts +6 -0
  77. package/src/evo/tree/tree-types.ts +197 -0
  78. package/src/evo/tree/utilities.ts +44 -0
  79. package/src/index.ts +6 -0
  80. package/src/layouts/functional/index.ts +2 -0
  81. package/src/layouts/functional/radial-layout.ts +150 -0
  82. package/src/layouts/functional/rectangular-layout.ts +71 -0
  83. package/src/layouts/index.ts +3 -0
  84. package/src/layouts/layout-interface.ts +90 -0
  85. package/src/layouts/types.ts +32 -0
  86. package/src/path.helpers.ts +81 -0
  87. package/src/store/polar-scale.ts +145 -0
  88. package/src/store/store.ts +144 -0
  89. package/src/tests/baubles/__snapshots__/branch-labels.test.tsx.snap +901 -0
  90. package/src/tests/baubles/__snapshots__/node-labels.test.tsx.snap +1516 -0
  91. package/src/tests/baubles/branch-labels.test.tsx +103 -0
  92. package/src/tests/baubles/label.svg +131 -0
  93. package/src/tests/baubles/node-labels.test.tsx +126 -0
  94. package/src/tests/clades/__snapshots__/cartoon.test.tsx.snap +327 -0
  95. package/src/tests/clades/__snapshots__/highlight.test.tsx.snap +337 -0
  96. package/src/tests/clades/cartoon.test.tsx +65 -0
  97. package/src/tests/clades/highlight.test.tsx +66 -0
  98. package/src/tests/figtree/__snapshots__/figtree.test.tsx.snap +761 -0
  99. package/src/tests/figtree/figtree.test.tsx +123 -0
  100. package/src/tests/figtree/simple.svg +47 -0
  101. package/src/tests/layouts/radiallayout.test.ts +23 -0
  102. package/src/tests/layouts/rectangularlayout.test.ts +65 -0
  103. package/src/tests/shapes/branch.test.tsx +40 -0
  104. package/src/tests/shapes/circle.test.tsx +47 -0
  105. package/src/tests/shapes/label.test.tsx +101 -0
  106. package/src/tests/shapes/rectangle.test.tsx +67 -0
  107. package/src/tests/shapes/types.ts +1 -0
  108. package/src/utils.ts +57 -0
  109. package/tsconfig.json +12 -0
  110. package/vite.config.ts +34 -0
  111. package/vitetest.config.ts +11 -0
@@ -0,0 +1,761 @@
1
+ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
+
3
+ exports[`Figures > renders a simple figure 1`] = `
4
+ {
5
+ "asFragment": [Function],
6
+ "baseElement": <body>
7
+ <div>
8
+ <svg
9
+ data-testid="figure"
10
+ height="400px"
11
+ width="400px"
12
+ xmlns="http://www.w3.org/2000/svg"
13
+ >
14
+ <g>
15
+ <g
16
+ transform="translate(10,10)"
17
+ >
18
+ <g
19
+ class="branch-layer"
20
+ >
21
+ <path
22
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
23
+ fill="none"
24
+ stroke="black"
25
+ stroke-width="1"
26
+ />
27
+ <path
28
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
29
+ fill="none"
30
+ stroke="black"
31
+ stroke-width="1"
32
+ />
33
+ <path
34
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
35
+ fill="none"
36
+ stroke="black"
37
+ stroke-width="1"
38
+ />
39
+ <path
40
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
41
+ fill="none"
42
+ stroke="black"
43
+ stroke-width="1"
44
+ />
45
+ </g>
46
+ </g>
47
+ </g>
48
+ </svg>
49
+ </div>
50
+ </body>,
51
+ "container": <div>
52
+ <svg
53
+ data-testid="figure"
54
+ height="400px"
55
+ width="400px"
56
+ xmlns="http://www.w3.org/2000/svg"
57
+ >
58
+ <g>
59
+ <g
60
+ transform="translate(10,10)"
61
+ >
62
+ <g
63
+ class="branch-layer"
64
+ >
65
+ <path
66
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
67
+ fill="none"
68
+ stroke="black"
69
+ stroke-width="1"
70
+ />
71
+ <path
72
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
73
+ fill="none"
74
+ stroke="black"
75
+ stroke-width="1"
76
+ />
77
+ <path
78
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
79
+ fill="none"
80
+ stroke="black"
81
+ stroke-width="1"
82
+ />
83
+ <path
84
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
85
+ fill="none"
86
+ stroke="black"
87
+ stroke-width="1"
88
+ />
89
+ </g>
90
+ </g>
91
+ </g>
92
+ </svg>
93
+ </div>,
94
+ "debug": [Function],
95
+ "findAllByAltText": [Function],
96
+ "findAllByDisplayValue": [Function],
97
+ "findAllByLabelText": [Function],
98
+ "findAllByPlaceholderText": [Function],
99
+ "findAllByRole": [Function],
100
+ "findAllByTestId": [Function],
101
+ "findAllByText": [Function],
102
+ "findAllByTitle": [Function],
103
+ "findByAltText": [Function],
104
+ "findByDisplayValue": [Function],
105
+ "findByLabelText": [Function],
106
+ "findByPlaceholderText": [Function],
107
+ "findByRole": [Function],
108
+ "findByTestId": [Function],
109
+ "findByText": [Function],
110
+ "findByTitle": [Function],
111
+ "getAllByAltText": [Function],
112
+ "getAllByDisplayValue": [Function],
113
+ "getAllByLabelText": [Function],
114
+ "getAllByPlaceholderText": [Function],
115
+ "getAllByRole": [Function],
116
+ "getAllByTestId": [Function],
117
+ "getAllByText": [Function],
118
+ "getAllByTitle": [Function],
119
+ "getByAltText": [Function],
120
+ "getByDisplayValue": [Function],
121
+ "getByLabelText": [Function],
122
+ "getByPlaceholderText": [Function],
123
+ "getByRole": [Function],
124
+ "getByTestId": [Function],
125
+ "getByText": [Function],
126
+ "getByTitle": [Function],
127
+ "queryAllByAltText": [Function],
128
+ "queryAllByDisplayValue": [Function],
129
+ "queryAllByLabelText": [Function],
130
+ "queryAllByPlaceholderText": [Function],
131
+ "queryAllByRole": [Function],
132
+ "queryAllByTestId": [Function],
133
+ "queryAllByText": [Function],
134
+ "queryAllByTitle": [Function],
135
+ "queryByAltText": [Function],
136
+ "queryByDisplayValue": [Function],
137
+ "queryByLabelText": [Function],
138
+ "queryByPlaceholderText": [Function],
139
+ "queryByRole": [Function],
140
+ "queryByTestId": [Function],
141
+ "queryByText": [Function],
142
+ "queryByTitle": [Function],
143
+ "rerender": [Function],
144
+ "unmount": [Function],
145
+ }
146
+ `;
147
+
148
+ exports[`Figures > renders a tree with branch baubles 1`] = `
149
+ {
150
+ "asFragment": [Function],
151
+ "baseElement": <body>
152
+ <div>
153
+ <svg
154
+ data-testid="figure"
155
+ height="400px"
156
+ width="400px"
157
+ xmlns="http://www.w3.org/2000/svg"
158
+ >
159
+ <g>
160
+ <g
161
+ transform="translate(10,10)"
162
+ >
163
+ <g
164
+ class="branch-layer"
165
+ >
166
+ <path
167
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
168
+ fill="none"
169
+ stroke="black"
170
+ stroke-width="2"
171
+ />
172
+ <path
173
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
174
+ fill="none"
175
+ stroke="black"
176
+ stroke-width="2"
177
+ />
178
+ <path
179
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
180
+ fill="none"
181
+ stroke="black"
182
+ stroke-width="2"
183
+ />
184
+ <path
185
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
186
+ fill="none"
187
+ stroke="black"
188
+ stroke-width="2"
189
+ />
190
+ </g>
191
+ </g>
192
+ </g>
193
+ </svg>
194
+ </div>
195
+ </body>,
196
+ "container": <div>
197
+ <svg
198
+ data-testid="figure"
199
+ height="400px"
200
+ width="400px"
201
+ xmlns="http://www.w3.org/2000/svg"
202
+ >
203
+ <g>
204
+ <g
205
+ transform="translate(10,10)"
206
+ >
207
+ <g
208
+ class="branch-layer"
209
+ >
210
+ <path
211
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
212
+ fill="none"
213
+ stroke="black"
214
+ stroke-width="2"
215
+ />
216
+ <path
217
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
218
+ fill="none"
219
+ stroke="black"
220
+ stroke-width="2"
221
+ />
222
+ <path
223
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
224
+ fill="none"
225
+ stroke="black"
226
+ stroke-width="2"
227
+ />
228
+ <path
229
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
230
+ fill="none"
231
+ stroke="black"
232
+ stroke-width="2"
233
+ />
234
+ </g>
235
+ </g>
236
+ </g>
237
+ </svg>
238
+ </div>,
239
+ "debug": [Function],
240
+ "findAllByAltText": [Function],
241
+ "findAllByDisplayValue": [Function],
242
+ "findAllByLabelText": [Function],
243
+ "findAllByPlaceholderText": [Function],
244
+ "findAllByRole": [Function],
245
+ "findAllByTestId": [Function],
246
+ "findAllByText": [Function],
247
+ "findAllByTitle": [Function],
248
+ "findByAltText": [Function],
249
+ "findByDisplayValue": [Function],
250
+ "findByLabelText": [Function],
251
+ "findByPlaceholderText": [Function],
252
+ "findByRole": [Function],
253
+ "findByTestId": [Function],
254
+ "findByText": [Function],
255
+ "findByTitle": [Function],
256
+ "getAllByAltText": [Function],
257
+ "getAllByDisplayValue": [Function],
258
+ "getAllByLabelText": [Function],
259
+ "getAllByPlaceholderText": [Function],
260
+ "getAllByRole": [Function],
261
+ "getAllByTestId": [Function],
262
+ "getAllByText": [Function],
263
+ "getAllByTitle": [Function],
264
+ "getByAltText": [Function],
265
+ "getByDisplayValue": [Function],
266
+ "getByLabelText": [Function],
267
+ "getByPlaceholderText": [Function],
268
+ "getByRole": [Function],
269
+ "getByTestId": [Function],
270
+ "getByText": [Function],
271
+ "getByTitle": [Function],
272
+ "queryAllByAltText": [Function],
273
+ "queryAllByDisplayValue": [Function],
274
+ "queryAllByLabelText": [Function],
275
+ "queryAllByPlaceholderText": [Function],
276
+ "queryAllByRole": [Function],
277
+ "queryAllByTestId": [Function],
278
+ "queryAllByText": [Function],
279
+ "queryAllByTitle": [Function],
280
+ "queryByAltText": [Function],
281
+ "queryByDisplayValue": [Function],
282
+ "queryByLabelText": [Function],
283
+ "queryByPlaceholderText": [Function],
284
+ "queryByRole": [Function],
285
+ "queryByTestId": [Function],
286
+ "queryByText": [Function],
287
+ "queryByTitle": [Function],
288
+ "rerender": [Function],
289
+ "unmount": [Function],
290
+ }
291
+ `;
292
+
293
+ exports[`Figures > renders a tree with branch baubles and and functions 1`] = `
294
+ {
295
+ "asFragment": [Function],
296
+ "baseElement": <body>
297
+ <div>
298
+ <svg
299
+ data-testid="figure"
300
+ height="400px"
301
+ width="400px"
302
+ xmlns="http://www.w3.org/2000/svg"
303
+ >
304
+ <g>
305
+ <g
306
+ transform="translate(10,10)"
307
+ >
308
+ <g
309
+ class="branch-layer"
310
+ >
311
+ <path
312
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
313
+ fill="none"
314
+ stroke="black"
315
+ stroke-width="2"
316
+ />
317
+ <path
318
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
319
+ fill="none"
320
+ stroke="black"
321
+ stroke-width="2"
322
+ />
323
+ <path
324
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
325
+ fill="none"
326
+ stroke="black"
327
+ stroke-width="2"
328
+ />
329
+ <path
330
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
331
+ fill="none"
332
+ stroke="black"
333
+ stroke-width="2"
334
+ />
335
+ </g>
336
+ <g
337
+ class="node-layer"
338
+ >
339
+ <circle
340
+ class="node-shape"
341
+ cx="380"
342
+ cy="0"
343
+ fill="black"
344
+ r="2"
345
+ />
346
+ <circle
347
+ class="node-shape"
348
+ cx="380"
349
+ cy="190"
350
+ fill="black"
351
+ r="3"
352
+ />
353
+ <circle
354
+ class="node-shape"
355
+ cx="126.66666666666666"
356
+ cy="380"
357
+ fill="black"
358
+ r="4"
359
+ />
360
+ </g>
361
+ <g
362
+ class="node-layer"
363
+ >
364
+ <rect
365
+ class="node-shape"
366
+ fill="black"
367
+ height="4"
368
+ width="10"
369
+ x="-5"
370
+ y="235.5"
371
+ />
372
+ <rect
373
+ class="node-shape"
374
+ fill="black"
375
+ height="4"
376
+ width="10"
377
+ x="248.33333333333331"
378
+ y="93"
379
+ />
380
+ </g>
381
+ </g>
382
+ </g>
383
+ </svg>
384
+ </div>
385
+ </body>,
386
+ "container": <div>
387
+ <svg
388
+ data-testid="figure"
389
+ height="400px"
390
+ width="400px"
391
+ xmlns="http://www.w3.org/2000/svg"
392
+ >
393
+ <g>
394
+ <g
395
+ transform="translate(10,10)"
396
+ >
397
+ <g
398
+ class="branch-layer"
399
+ >
400
+ <path
401
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
402
+ fill="none"
403
+ stroke="black"
404
+ stroke-width="2"
405
+ />
406
+ <path
407
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
408
+ fill="none"
409
+ stroke="black"
410
+ stroke-width="2"
411
+ />
412
+ <path
413
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
414
+ fill="none"
415
+ stroke="black"
416
+ stroke-width="2"
417
+ />
418
+ <path
419
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
420
+ fill="none"
421
+ stroke="black"
422
+ stroke-width="2"
423
+ />
424
+ </g>
425
+ <g
426
+ class="node-layer"
427
+ >
428
+ <circle
429
+ class="node-shape"
430
+ cx="380"
431
+ cy="0"
432
+ fill="black"
433
+ r="2"
434
+ />
435
+ <circle
436
+ class="node-shape"
437
+ cx="380"
438
+ cy="190"
439
+ fill="black"
440
+ r="3"
441
+ />
442
+ <circle
443
+ class="node-shape"
444
+ cx="126.66666666666666"
445
+ cy="380"
446
+ fill="black"
447
+ r="4"
448
+ />
449
+ </g>
450
+ <g
451
+ class="node-layer"
452
+ >
453
+ <rect
454
+ class="node-shape"
455
+ fill="black"
456
+ height="4"
457
+ width="10"
458
+ x="-5"
459
+ y="235.5"
460
+ />
461
+ <rect
462
+ class="node-shape"
463
+ fill="black"
464
+ height="4"
465
+ width="10"
466
+ x="248.33333333333331"
467
+ y="93"
468
+ />
469
+ </g>
470
+ </g>
471
+ </g>
472
+ </svg>
473
+ </div>,
474
+ "debug": [Function],
475
+ "findAllByAltText": [Function],
476
+ "findAllByDisplayValue": [Function],
477
+ "findAllByLabelText": [Function],
478
+ "findAllByPlaceholderText": [Function],
479
+ "findAllByRole": [Function],
480
+ "findAllByTestId": [Function],
481
+ "findAllByText": [Function],
482
+ "findAllByTitle": [Function],
483
+ "findByAltText": [Function],
484
+ "findByDisplayValue": [Function],
485
+ "findByLabelText": [Function],
486
+ "findByPlaceholderText": [Function],
487
+ "findByRole": [Function],
488
+ "findByTestId": [Function],
489
+ "findByText": [Function],
490
+ "findByTitle": [Function],
491
+ "getAllByAltText": [Function],
492
+ "getAllByDisplayValue": [Function],
493
+ "getAllByLabelText": [Function],
494
+ "getAllByPlaceholderText": [Function],
495
+ "getAllByRole": [Function],
496
+ "getAllByTestId": [Function],
497
+ "getAllByText": [Function],
498
+ "getAllByTitle": [Function],
499
+ "getByAltText": [Function],
500
+ "getByDisplayValue": [Function],
501
+ "getByLabelText": [Function],
502
+ "getByPlaceholderText": [Function],
503
+ "getByRole": [Function],
504
+ "getByTestId": [Function],
505
+ "getByText": [Function],
506
+ "getByTitle": [Function],
507
+ "queryAllByAltText": [Function],
508
+ "queryAllByDisplayValue": [Function],
509
+ "queryAllByLabelText": [Function],
510
+ "queryAllByPlaceholderText": [Function],
511
+ "queryAllByRole": [Function],
512
+ "queryAllByTestId": [Function],
513
+ "queryAllByText": [Function],
514
+ "queryAllByTitle": [Function],
515
+ "queryByAltText": [Function],
516
+ "queryByDisplayValue": [Function],
517
+ "queryByLabelText": [Function],
518
+ "queryByPlaceholderText": [Function],
519
+ "queryByRole": [Function],
520
+ "queryByTestId": [Function],
521
+ "queryByText": [Function],
522
+ "queryByTitle": [Function],
523
+ "rerender": [Function],
524
+ "unmount": [Function],
525
+ }
526
+ `;
527
+
528
+ exports[`Figures > renders a tree with branch baubles and nodes 1`] = `
529
+ {
530
+ "asFragment": [Function],
531
+ "baseElement": <body>
532
+ <div>
533
+ <svg
534
+ data-testid="figure"
535
+ height="400px"
536
+ width="400px"
537
+ xmlns="http://www.w3.org/2000/svg"
538
+ >
539
+ <g>
540
+ <g
541
+ transform="translate(10,10)"
542
+ >
543
+ <g
544
+ class="branch-layer"
545
+ >
546
+ <path
547
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
548
+ fill="none"
549
+ stroke="black"
550
+ stroke-width="2"
551
+ />
552
+ <path
553
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
554
+ fill="none"
555
+ stroke="black"
556
+ stroke-width="2"
557
+ />
558
+ <path
559
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
560
+ fill="none"
561
+ stroke="black"
562
+ stroke-width="2"
563
+ />
564
+ <path
565
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
566
+ fill="none"
567
+ stroke="black"
568
+ stroke-width="2"
569
+ />
570
+ </g>
571
+ <g
572
+ class="node-layer"
573
+ >
574
+ <circle
575
+ class="node-shape"
576
+ cx="380"
577
+ cy="0"
578
+ fill="black"
579
+ r="10"
580
+ />
581
+ <circle
582
+ class="node-shape"
583
+ cx="380"
584
+ cy="190"
585
+ fill="black"
586
+ r="10"
587
+ />
588
+ <circle
589
+ class="node-shape"
590
+ cx="126.66666666666666"
591
+ cy="380"
592
+ fill="black"
593
+ r="10"
594
+ />
595
+ </g>
596
+ <g
597
+ class="node-layer"
598
+ >
599
+ <rect
600
+ class="node-shape"
601
+ fill="black"
602
+ height="4"
603
+ width="10"
604
+ x="-5"
605
+ y="235.5"
606
+ />
607
+ <rect
608
+ class="node-shape"
609
+ fill="black"
610
+ height="4"
611
+ width="10"
612
+ x="248.33333333333331"
613
+ y="93"
614
+ />
615
+ </g>
616
+ </g>
617
+ </g>
618
+ </svg>
619
+ </div>
620
+ </body>,
621
+ "container": <div>
622
+ <svg
623
+ data-testid="figure"
624
+ height="400px"
625
+ width="400px"
626
+ xmlns="http://www.w3.org/2000/svg"
627
+ >
628
+ <g>
629
+ <g
630
+ transform="translate(10,10)"
631
+ >
632
+ <g
633
+ class="branch-layer"
634
+ >
635
+ <path
636
+ d="M 0.001 237.5 C0.001,237.5 0,95 0,95 C0,95 126.66666666666666,95.0005 190,95.00075000000001 C190,95.00075000000001 221.66666666666666,95.00087500000001 237.5,95.0009375 C237.5,95.0009375 245.41666666666666,95.00096875 249.375,95.000984375 C249.375,95.000984375 251.35416666666666,95.0009921875 252.34375,95.00099609375 C252.34375,95.00099609375 253.33333333333331,95.001 253.33333333333331,95.001 "
637
+ fill="none"
638
+ stroke="black"
639
+ stroke-width="2"
640
+ />
641
+ <path
642
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,0 253.33333333333331,0 C253.33333333333331,0 316.66666666666663,0.0005 348.3333333333333,0.00075 C348.3333333333333,0.00075 364.16666666666663,0.000875 372.0833333333333,0.0009375 C372.0833333333333,0.0009375 376.04166666666663,0.00096875 378.0208333333333,0.000984375 C378.0208333333333,0.000984375 379.01041666666663,0.0009921875 379.5052083333333,0.00099609375 C379.5052083333333,0.00099609375 380,0.001 380,0.001 "
643
+ fill="none"
644
+ stroke="black"
645
+ stroke-width="2"
646
+ />
647
+ <path
648
+ d="M 253.33433333333332 95 C253.33433333333332,95 253.33333333333331,190 253.33333333333331,190 C253.33333333333331,190 316.66666666666663,190.0005 348.3333333333333,190.00074999999998 C348.3333333333333,190.00074999999998 364.16666666666663,190.000875 372.0833333333333,190.00093750000002 C372.0833333333333,190.00093750000002 376.04166666666663,190.00096875000003 378.0208333333333,190.00098437500003 C378.0208333333333,190.00098437500003 379.01041666666663,190.0009921875 379.5052083333333,190.00099609375002 C379.5052083333333,190.00099609375002 380,190.001 380,190.001 "
649
+ fill="none"
650
+ stroke="black"
651
+ stroke-width="2"
652
+ />
653
+ <path
654
+ d="M 0.001 237.5 C0.001,237.5 0,380 0,380 C0,380 63.33333333333333,380.0005 95,380.00075 C95,380.00075 110.83333333333333,380.00087499999995 118.75,380.00093749999996 C118.75,380.00093749999996 122.70833333333333,380.00096874999997 124.6875,380.000984375 C124.6875,380.000984375 125.67708333333333,380.00099218749995 126.171875,380.00099609374996 C126.171875,380.00099609374996 126.66666666666666,380.001 126.66666666666666,380.001 "
655
+ fill="none"
656
+ stroke="black"
657
+ stroke-width="2"
658
+ />
659
+ </g>
660
+ <g
661
+ class="node-layer"
662
+ >
663
+ <circle
664
+ class="node-shape"
665
+ cx="380"
666
+ cy="0"
667
+ fill="black"
668
+ r="10"
669
+ />
670
+ <circle
671
+ class="node-shape"
672
+ cx="380"
673
+ cy="190"
674
+ fill="black"
675
+ r="10"
676
+ />
677
+ <circle
678
+ class="node-shape"
679
+ cx="126.66666666666666"
680
+ cy="380"
681
+ fill="black"
682
+ r="10"
683
+ />
684
+ </g>
685
+ <g
686
+ class="node-layer"
687
+ >
688
+ <rect
689
+ class="node-shape"
690
+ fill="black"
691
+ height="4"
692
+ width="10"
693
+ x="-5"
694
+ y="235.5"
695
+ />
696
+ <rect
697
+ class="node-shape"
698
+ fill="black"
699
+ height="4"
700
+ width="10"
701
+ x="248.33333333333331"
702
+ y="93"
703
+ />
704
+ </g>
705
+ </g>
706
+ </g>
707
+ </svg>
708
+ </div>,
709
+ "debug": [Function],
710
+ "findAllByAltText": [Function],
711
+ "findAllByDisplayValue": [Function],
712
+ "findAllByLabelText": [Function],
713
+ "findAllByPlaceholderText": [Function],
714
+ "findAllByRole": [Function],
715
+ "findAllByTestId": [Function],
716
+ "findAllByText": [Function],
717
+ "findAllByTitle": [Function],
718
+ "findByAltText": [Function],
719
+ "findByDisplayValue": [Function],
720
+ "findByLabelText": [Function],
721
+ "findByPlaceholderText": [Function],
722
+ "findByRole": [Function],
723
+ "findByTestId": [Function],
724
+ "findByText": [Function],
725
+ "findByTitle": [Function],
726
+ "getAllByAltText": [Function],
727
+ "getAllByDisplayValue": [Function],
728
+ "getAllByLabelText": [Function],
729
+ "getAllByPlaceholderText": [Function],
730
+ "getAllByRole": [Function],
731
+ "getAllByTestId": [Function],
732
+ "getAllByText": [Function],
733
+ "getAllByTitle": [Function],
734
+ "getByAltText": [Function],
735
+ "getByDisplayValue": [Function],
736
+ "getByLabelText": [Function],
737
+ "getByPlaceholderText": [Function],
738
+ "getByRole": [Function],
739
+ "getByTestId": [Function],
740
+ "getByText": [Function],
741
+ "getByTitle": [Function],
742
+ "queryAllByAltText": [Function],
743
+ "queryAllByDisplayValue": [Function],
744
+ "queryAllByLabelText": [Function],
745
+ "queryAllByPlaceholderText": [Function],
746
+ "queryAllByRole": [Function],
747
+ "queryAllByTestId": [Function],
748
+ "queryAllByText": [Function],
749
+ "queryAllByTitle": [Function],
750
+ "queryByAltText": [Function],
751
+ "queryByDisplayValue": [Function],
752
+ "queryByLabelText": [Function],
753
+ "queryByPlaceholderText": [Function],
754
+ "queryByRole": [Function],
755
+ "queryByTestId": [Function],
756
+ "queryByText": [Function],
757
+ "queryByTitle": [Function],
758
+ "rerender": [Function],
759
+ "unmount": [Function],
760
+ }
761
+ `;