@vitessce/vit-s 2.0.3 → 3.0.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 (216) hide show
  1. package/dist/index.js +41348 -0
  2. package/dist-tsc/CallbackPublisher.d.ts +18 -0
  3. package/dist-tsc/CallbackPublisher.d.ts.map +1 -0
  4. package/dist-tsc/CallbackPublisher.js +62 -0
  5. package/dist-tsc/LoadingIndicator.d.ts +2 -0
  6. package/dist-tsc/LoadingIndicator.d.ts.map +1 -0
  7. package/dist-tsc/LoadingIndicator.js +26 -0
  8. package/dist-tsc/TitleInfo.d.ts +2 -0
  9. package/dist-tsc/TitleInfo.d.ts.map +1 -0
  10. package/dist-tsc/TitleInfo.js +74 -0
  11. package/dist-tsc/VitS.d.ts +45 -0
  12. package/dist-tsc/VitS.d.ts.map +1 -0
  13. package/dist-tsc/VitS.js +119 -0
  14. package/dist-tsc/VitessceGrid.d.ts +23 -0
  15. package/dist-tsc/VitessceGrid.d.ts.map +1 -0
  16. package/dist-tsc/VitessceGrid.js +60 -0
  17. package/dist-tsc/VitessceGrid.test.d.ts +2 -0
  18. package/dist-tsc/VitessceGrid.test.d.ts.map +1 -0
  19. package/dist-tsc/VitessceGrid.test.js +40 -0
  20. package/dist-tsc/Warning.d.ts +2 -0
  21. package/dist-tsc/Warning.d.ts.map +1 -0
  22. package/dist-tsc/Warning.js +45 -0
  23. package/dist-tsc/classNames.d.ts +8 -0
  24. package/dist-tsc/classNames.d.ts.map +1 -0
  25. package/dist-tsc/classNames.js +8 -0
  26. package/dist-tsc/data/AbstractLoader.d.ts +22 -0
  27. package/dist-tsc/data/AbstractLoader.d.ts.map +1 -0
  28. package/dist-tsc/data/AbstractLoader.js +18 -0
  29. package/dist-tsc/data/AbstractTwoStepLoader.d.ts +6 -0
  30. package/dist-tsc/data/AbstractTwoStepLoader.d.ts.map +1 -0
  31. package/dist-tsc/data/AbstractTwoStepLoader.js +7 -0
  32. package/dist-tsc/data/LoaderResult.d.ts +7 -0
  33. package/dist-tsc/data/LoaderResult.d.ts.map +1 -0
  34. package/dist-tsc/data/LoaderResult.js +7 -0
  35. package/dist-tsc/data/index.d.ts +4 -0
  36. package/dist-tsc/data/index.d.ts.map +1 -0
  37. package/dist-tsc/data/index.js +3 -0
  38. package/dist-tsc/data/loader-registry.d.ts +9 -0
  39. package/dist-tsc/data/loader-registry.d.ts.map +1 -0
  40. package/dist-tsc/data/loader-registry.js +27 -0
  41. package/dist-tsc/data-hook-utils.d.ts +69 -0
  42. package/dist-tsc/data-hook-utils.d.ts.map +1 -0
  43. package/dist-tsc/data-hook-utils.js +173 -0
  44. package/dist-tsc/data-hooks.d.ts +77 -0
  45. package/dist-tsc/data-hooks.d.ts.map +1 -0
  46. package/dist-tsc/data-hooks.js +241 -0
  47. package/dist-tsc/errors/AbstractLoaderError.d.ts +10 -0
  48. package/dist-tsc/errors/AbstractLoaderError.d.ts.map +1 -0
  49. package/dist-tsc/errors/AbstractLoaderError.js +13 -0
  50. package/dist-tsc/errors/DataSourceFetchError.d.ts +8 -0
  51. package/dist-tsc/errors/DataSourceFetchError.d.ts.map +1 -0
  52. package/dist-tsc/errors/DataSourceFetchError.js +13 -0
  53. package/dist-tsc/errors/DatasetNotFoundError.d.ts +6 -0
  54. package/dist-tsc/errors/DatasetNotFoundError.d.ts.map +1 -0
  55. package/dist-tsc/errors/DatasetNotFoundError.js +17 -0
  56. package/dist-tsc/errors/LoaderNotFoundError.d.ts +10 -0
  57. package/dist-tsc/errors/LoaderNotFoundError.d.ts.map +1 -0
  58. package/dist-tsc/errors/LoaderNotFoundError.js +17 -0
  59. package/dist-tsc/errors/LoaderValidationError.d.ts +10 -0
  60. package/dist-tsc/errors/LoaderValidationError.d.ts.map +1 -0
  61. package/dist-tsc/errors/LoaderValidationError.js +15 -0
  62. package/dist-tsc/errors/index.d.ts +6 -0
  63. package/dist-tsc/errors/index.d.ts.map +1 -0
  64. package/dist-tsc/errors/index.js +5 -0
  65. package/dist-tsc/hooks.d.ts +80 -0
  66. package/dist-tsc/hooks.d.ts.map +1 -0
  67. package/dist-tsc/hooks.js +271 -0
  68. package/dist-tsc/index.d.ts +11 -0
  69. package/dist-tsc/index.d.ts.map +1 -0
  70. package/dist-tsc/index.js +10 -17
  71. package/dist-tsc/plugins.test.fixtures.d.ts +61 -0
  72. package/dist-tsc/plugins.test.fixtures.d.ts.map +1 -0
  73. package/dist-tsc/plugins.test.fixtures.js +76 -0
  74. package/dist-tsc/schemas/config-0.1.0.schema.json +84 -0
  75. package/dist-tsc/schemas/config-1.0.0.schema.json +733 -0
  76. package/dist-tsc/schemas/config-1.0.1.schema.json +909 -0
  77. package/dist-tsc/schemas/config-1.0.10.schema.json +969 -0
  78. package/dist-tsc/schemas/config-1.0.11.schema.json +990 -0
  79. package/dist-tsc/schemas/config-1.0.12.schema.json +997 -0
  80. package/dist-tsc/schemas/config-1.0.13.schema.json +1013 -0
  81. package/dist-tsc/schemas/config-1.0.14.schema.json +1048 -0
  82. package/dist-tsc/schemas/config-1.0.15.schema.json +1048 -0
  83. package/dist-tsc/schemas/config-1.0.16.schema.json +1089 -0
  84. package/dist-tsc/schemas/config-1.0.2.schema.json +910 -0
  85. package/dist-tsc/schemas/config-1.0.3.schema.json +910 -0
  86. package/dist-tsc/schemas/config-1.0.4.schema.json +949 -0
  87. package/dist-tsc/schemas/config-1.0.5.schema.json +949 -0
  88. package/dist-tsc/schemas/config-1.0.6.schema.json +949 -0
  89. package/dist-tsc/schemas/config-1.0.7.schema.json +949 -0
  90. package/dist-tsc/schemas/config-1.0.8.schema.json +965 -0
  91. package/dist-tsc/schemas/config-1.0.9.schema.json +965 -0
  92. package/dist-tsc/schemas/obsSets.schema.d.ts +179 -0
  93. package/dist-tsc/schemas/obsSets.schema.d.ts.map +1 -0
  94. package/dist-tsc/schemas/obsSets.schema.js +195 -0
  95. package/dist-tsc/schemas/obsSetsTabular.schema.d.ts +57 -0
  96. package/dist-tsc/schemas/obsSetsTabular.schema.d.ts.map +1 -0
  97. package/dist-tsc/schemas/obsSetsTabular.schema.js +38 -0
  98. package/dist-tsc/schemas/raster.schema.d.ts +239 -0
  99. package/dist-tsc/schemas/raster.schema.d.ts.map +1 -0
  100. package/dist-tsc/schemas/raster.schema.js +120 -0
  101. package/dist-tsc/shared-mui/components.d.ts +2 -0
  102. package/dist-tsc/shared-mui/components.d.ts.map +1 -0
  103. package/dist-tsc/shared-mui/components.js +29 -0
  104. package/dist-tsc/shared-mui/container.d.ts +2 -0
  105. package/dist-tsc/shared-mui/container.d.ts.map +1 -0
  106. package/dist-tsc/shared-mui/container.js +211 -0
  107. package/dist-tsc/shared-mui/styles.d.ts +5 -0
  108. package/dist-tsc/shared-mui/styles.d.ts.map +1 -0
  109. package/dist-tsc/shared-mui/styles.js +109 -0
  110. package/dist-tsc/shared-plot-options/CellColorEncodingOption.d.ts +2 -0
  111. package/dist-tsc/shared-plot-options/CellColorEncodingOption.d.ts.map +1 -0
  112. package/dist-tsc/shared-plot-options/CellColorEncodingOption.js +17 -0
  113. package/dist-tsc/shared-plot-options/OptionSelect.d.ts +2 -0
  114. package/dist-tsc/shared-plot-options/OptionSelect.d.ts.map +1 -0
  115. package/dist-tsc/shared-plot-options/OptionSelect.js +12 -0
  116. package/dist-tsc/shared-plot-options/OptionsContainer.d.ts +2 -0
  117. package/dist-tsc/shared-plot-options/OptionsContainer.d.ts.map +1 -0
  118. package/dist-tsc/shared-plot-options/OptionsContainer.js +9 -0
  119. package/dist-tsc/shared-plot-options/index.d.ts +5 -0
  120. package/dist-tsc/shared-plot-options/index.d.ts.map +1 -0
  121. package/dist-tsc/shared-plot-options/index.js +4 -0
  122. package/dist-tsc/shared-plot-options/styles.d.ts +2 -0
  123. package/dist-tsc/shared-plot-options/styles.d.ts.map +1 -0
  124. package/dist-tsc/shared-plot-options/styles.js +48 -0
  125. package/dist-tsc/state/hooks.d.ts +216 -0
  126. package/dist-tsc/state/hooks.d.ts.map +1 -0
  127. package/dist-tsc/state/hooks.js +575 -0
  128. package/dist-tsc/title-styles.d.ts +2 -0
  129. package/dist-tsc/title-styles.d.ts.map +1 -0
  130. package/dist-tsc/title-styles.js +72 -0
  131. package/dist-tsc/view-config-utils.d.ts +30 -0
  132. package/dist-tsc/view-config-utils.d.ts.map +1 -0
  133. package/dist-tsc/view-config-utils.js +234 -0
  134. package/dist-tsc/view-config-utils.test.d.ts +2 -0
  135. package/dist-tsc/view-config-utils.test.d.ts.map +1 -0
  136. package/dist-tsc/view-config-utils.test.fixtures.d.ts +1049 -0
  137. package/dist-tsc/view-config-utils.test.fixtures.d.ts.map +1 -0
  138. package/dist-tsc/view-config-utils.test.fixtures.js +883 -0
  139. package/dist-tsc/view-config-utils.test.js +209 -0
  140. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.d.ts +8 -0
  141. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.d.ts.map +1 -0
  142. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.js +114 -0
  143. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.test.d.ts +2 -0
  144. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.test.d.ts.map +1 -0
  145. package/dist-tsc/vitessce-grid-layout/VitessceGridLayout.test.js +48 -0
  146. package/dist-tsc/vitessce-grid-layout/index.d.ts +2 -0
  147. package/dist-tsc/vitessce-grid-layout/index.d.ts.map +1 -0
  148. package/dist-tsc/vitessce-grid-layout/index.js +1 -0
  149. package/dist-tsc/vitessce-grid-layout/layout-utils.d.ts +15 -0
  150. package/dist-tsc/vitessce-grid-layout/layout-utils.d.ts.map +1 -0
  151. package/dist-tsc/vitessce-grid-layout/layout-utils.js +61 -0
  152. package/dist-tsc/vitessce-grid-layout/layout-utils.test.d.ts +2 -0
  153. package/dist-tsc/vitessce-grid-layout/layout-utils.test.d.ts.map +1 -0
  154. package/dist-tsc/vitessce-grid-layout/layout-utils.test.js +148 -0
  155. package/dist-tsc/vitessce-grid-utils.d.ts +13 -0
  156. package/dist-tsc/vitessce-grid-utils.d.ts.map +1 -0
  157. package/dist-tsc/vitessce-grid-utils.js +141 -0
  158. package/package.json +23 -10
  159. package/src/CallbackPublisher.js +7 -11
  160. package/src/LoadingIndicator.js +1 -2
  161. package/src/TitleInfo.js +12 -85
  162. package/src/VitS.js +72 -50
  163. package/src/VitessceGrid.js +21 -13
  164. package/src/VitessceGrid.test.jsx +16 -7
  165. package/src/Warning.js +2 -2
  166. package/src/data/AbstractLoader.js +2 -25
  167. package/src/data/AbstractTwoStepLoader.js +1 -1
  168. package/src/data/index.js +3 -3
  169. package/src/data/loader-registry.js +22 -13
  170. package/src/data-hook-utils.js +4 -6
  171. package/src/data-hooks.js +4 -4
  172. package/src/errors/DataSourceFetchError.js +1 -1
  173. package/src/errors/DatasetNotFoundError.js +1 -1
  174. package/src/errors/LoaderNotFoundError.js +1 -1
  175. package/src/errors/LoaderValidationError.js +1 -1
  176. package/src/errors/index.js +5 -6
  177. package/src/hooks.js +70 -5
  178. package/src/index.js +21 -46
  179. package/src/schemas/config-1.0.16.schema.json +21 -1
  180. package/src/shared-mui/components.js +10 -8
  181. package/src/shared-mui/container.js +1 -1
  182. package/src/shared-mui/styles.js +5 -2
  183. package/src/shared-plot-options/CellColorEncodingOption.js +3 -4
  184. package/src/shared-plot-options/OptionSelect.js +2 -2
  185. package/src/shared-plot-options/OptionsContainer.js +2 -5
  186. package/src/shared-plot-options/index.js +4 -4
  187. package/src/shared-plot-options/styles.js +1 -1
  188. package/src/state/hooks.js +10 -3
  189. package/src/title-styles.js +73 -0
  190. package/src/view-config-utils.js +46 -98
  191. package/src/view-config-utils.test.jsx +222 -0
  192. package/src/vitessce-grid-layout/VitessceGridLayout.js +51 -30
  193. package/src/vitessce-grid-layout/VitessceGridLayout.test.jsx +17 -9
  194. package/src/vitessce-grid-layout/index.js +1 -1
  195. package/src/vitessce-grid-layout/layout-utils.js +1 -1
  196. package/src/vitessce-grid-layout/layout-utils.test.js +1 -1
  197. package/src/vitessce-grid-utils.js +27 -15
  198. package/dist/index.mjs +0 -84801
  199. package/src/component-registry.js +0 -21
  200. package/src/errors/OptionsValidationError.js +0 -25
  201. package/src/file-options-schemas-legacy.js +0 -139
  202. package/src/file-options-schemas-legacy.test.js +0 -138
  203. package/src/file-options-schemas.js +0 -327
  204. package/src/file-options-schemas.test.js +0 -26
  205. package/src/joint-file-types-legacy.js +0 -298
  206. package/src/joint-file-types-legacy.test.js +0 -412
  207. package/src/joint-file-types.js +0 -171
  208. package/src/joint-file-types.test.js +0 -144
  209. package/src/json-schemas.js +0 -9
  210. package/src/plugins.js +0 -186
  211. package/src/plugins.test.js +0 -42
  212. package/src/schemas/config-1.0.16.schema.test.js +0 -32
  213. package/src/schemas/schema.test-old.js +0 -49
  214. package/src/view-config-upgraders.js +0 -628
  215. package/src/view-config-utils.test.js +0 -95
  216. package/src/view-config-versions.js +0 -68
@@ -0,0 +1,883 @@
1
+ /* eslint-disable camelcase */
2
+ export const legacyViewConfig0_1_0 = {
3
+ version: '0.1.0',
4
+ public: true,
5
+ name: 'My config name',
6
+ description: 'My config description',
7
+ layers: [{
8
+ name: 'cells',
9
+ type: 'CELLS',
10
+ fileType: 'cells.json',
11
+ url: 'https://example.com/cells.json',
12
+ }, {
13
+ name: 'cell-sets',
14
+ type: 'CELL-SETS',
15
+ fileType: 'cell-sets.json',
16
+ url: 'https://example.com/cell-sets.json',
17
+ }],
18
+ staticLayout: [{
19
+ component: 'description',
20
+ props: {
21
+ description: 'My component description',
22
+ },
23
+ x: 9,
24
+ y: 0,
25
+ w: 3,
26
+ h: 2,
27
+ }, {
28
+ component: 'scatterplot',
29
+ props: {
30
+ mapping: 't-SNE',
31
+ view: {
32
+ zoom: 3,
33
+ target: [0, 0, 0],
34
+ },
35
+ },
36
+ x: 0,
37
+ y: 2,
38
+ w: 5,
39
+ h: 4,
40
+ }, {
41
+ component: 'spatial',
42
+ props: {
43
+ cellRadius: 50,
44
+ view: {
45
+ zoom: -4.4,
46
+ target: [3800, -900, 0],
47
+ },
48
+ },
49
+ x: 5,
50
+ y: 0,
51
+ w: 4,
52
+ h: 4,
53
+ }],
54
+ };
55
+ export const upgradedLegacyViewConfig0_1_0 = {
56
+ version: '1.0.1',
57
+ public: true,
58
+ name: 'My config name',
59
+ description: 'My config description',
60
+ initStrategy: 'auto',
61
+ coordinationSpace: {
62
+ embeddingTargetX: {
63
+ A: 0,
64
+ },
65
+ embeddingTargetY: {
66
+ A: 0,
67
+ },
68
+ embeddingType: {
69
+ 't-SNE': 't-SNE',
70
+ },
71
+ embeddingZoom: {
72
+ A: 3,
73
+ },
74
+ spatialTargetX: {
75
+ A: 3800,
76
+ },
77
+ spatialTargetY: {
78
+ A: -900,
79
+ },
80
+ spatialZoom: {
81
+ A: -4.4,
82
+ },
83
+ },
84
+ datasets: [
85
+ {
86
+ files: [
87
+ {
88
+ fileType: 'cells.json',
89
+ type: 'cells',
90
+ url: 'https://example.com/cells.json',
91
+ },
92
+ {
93
+ fileType: 'cell-sets.json',
94
+ type: 'cell-sets',
95
+ url: 'https://example.com/cell-sets.json',
96
+ },
97
+ ],
98
+ name: 'A',
99
+ uid: 'A',
100
+ },
101
+ ],
102
+ layout: [
103
+ {
104
+ component: 'description',
105
+ coordinationScopes: {},
106
+ h: 2,
107
+ props: {
108
+ description: 'My component description',
109
+ },
110
+ w: 3,
111
+ x: 9,
112
+ y: 0,
113
+ },
114
+ {
115
+ component: 'scatterplot',
116
+ coordinationScopes: {
117
+ embeddingTargetX: 'A',
118
+ embeddingTargetY: 'A',
119
+ embeddingType: 't-SNE',
120
+ embeddingZoom: 'A',
121
+ },
122
+ h: 4,
123
+ props: {
124
+ mapping: 't-SNE',
125
+ view: {
126
+ target: [
127
+ 0,
128
+ 0,
129
+ 0,
130
+ ],
131
+ zoom: 3,
132
+ },
133
+ },
134
+ w: 5,
135
+ x: 0,
136
+ y: 2,
137
+ },
138
+ {
139
+ component: 'spatial',
140
+ coordinationScopes: {
141
+ spatialTargetX: 'A',
142
+ spatialTargetY: 'A',
143
+ spatialZoom: 'A',
144
+ },
145
+ h: 4,
146
+ props: {
147
+ cellRadius: 50,
148
+ view: {
149
+ target: [
150
+ 3800,
151
+ -900,
152
+ 0,
153
+ ],
154
+ zoom: -4.4,
155
+ },
156
+ },
157
+ w: 4,
158
+ x: 5,
159
+ y: 0,
160
+ },
161
+ ],
162
+ };
163
+ export const legacyViewConfig1_0_0 = {
164
+ version: '1.0.0',
165
+ public: true,
166
+ name: 'My config name',
167
+ description: 'My config description',
168
+ initStrategy: 'auto',
169
+ coordinationSpace: {
170
+ dataset: {
171
+ A: 'A',
172
+ },
173
+ spatialLayers: {
174
+ A: [
175
+ { type: 'cells', radius: 10, visible: true },
176
+ { type: 'molecules', visible: false },
177
+ { type: 'raster', index: 2 },
178
+ { type: 'raster', index: 3 },
179
+ ],
180
+ },
181
+ },
182
+ datasets: [
183
+ {
184
+ files: [],
185
+ name: 'A',
186
+ uid: 'A',
187
+ },
188
+ ],
189
+ layout: [
190
+ {
191
+ component: 'description',
192
+ coordinationScopes: {
193
+ dataset: 'A',
194
+ spatialLayers: 'A',
195
+ },
196
+ h: 2,
197
+ props: {
198
+ description: 'My component description',
199
+ },
200
+ w: 3,
201
+ x: 9,
202
+ y: 0,
203
+ },
204
+ {
205
+ component: 'spatial',
206
+ coordinationScopes: {
207
+ dataset: 'A',
208
+ spatialLayers: 'A',
209
+ },
210
+ h: 4,
211
+ props: {
212
+ cellRadius: 50,
213
+ view: {
214
+ target: [
215
+ 3800,
216
+ -900,
217
+ 0,
218
+ ],
219
+ zoom: -4.4,
220
+ },
221
+ },
222
+ w: 4,
223
+ x: 5,
224
+ y: 0,
225
+ },
226
+ ],
227
+ };
228
+ export const upgradedLegacyViewConfig1_0_0 = {
229
+ version: '1.0.1',
230
+ public: true,
231
+ name: 'My config name',
232
+ description: 'My config description',
233
+ initStrategy: 'auto',
234
+ coordinationSpace: {
235
+ dataset: {
236
+ A: 'A',
237
+ },
238
+ spatialRasterLayers: {
239
+ A: [
240
+ { index: 2 },
241
+ { index: 3 },
242
+ ],
243
+ },
244
+ spatialCellsLayer: {
245
+ A: { radius: 10, visible: true },
246
+ },
247
+ spatialMoleculesLayer: {
248
+ A: { visible: false },
249
+ },
250
+ spatialNeighborhoodsLayer: {
251
+ A: null,
252
+ },
253
+ },
254
+ datasets: [
255
+ {
256
+ files: [],
257
+ name: 'A',
258
+ uid: 'A',
259
+ },
260
+ ],
261
+ layout: [
262
+ {
263
+ component: 'description',
264
+ coordinationScopes: {
265
+ dataset: 'A',
266
+ spatialRasterLayers: 'A',
267
+ },
268
+ h: 2,
269
+ props: {
270
+ description: 'My component description',
271
+ },
272
+ w: 3,
273
+ x: 9,
274
+ y: 0,
275
+ },
276
+ {
277
+ component: 'spatial',
278
+ coordinationScopes: {
279
+ dataset: 'A',
280
+ spatialRasterLayers: 'A',
281
+ spatialCellsLayer: 'A',
282
+ spatialMoleculesLayer: 'A',
283
+ spatialNeighborhoodsLayer: 'A',
284
+ },
285
+ h: 4,
286
+ props: {
287
+ cellRadius: 50,
288
+ view: {
289
+ target: [
290
+ 3800,
291
+ -900,
292
+ 0,
293
+ ],
294
+ zoom: -4.4,
295
+ },
296
+ },
297
+ w: 4,
298
+ x: 5,
299
+ y: 0,
300
+ },
301
+ ],
302
+ };
303
+ export const missingViewUids = {
304
+ version: '1.0.9',
305
+ name: 'My config name',
306
+ description: 'My config description',
307
+ initStrategy: 'auto',
308
+ coordinationSpace: {
309
+ dataset: {
310
+ A: 'A',
311
+ },
312
+ },
313
+ datasets: [
314
+ {
315
+ files: [],
316
+ name: 'A',
317
+ uid: 'A',
318
+ },
319
+ ],
320
+ layout: [
321
+ {
322
+ component: 'description',
323
+ coordinationScopes: {
324
+ dataset: 'A',
325
+ },
326
+ h: 2,
327
+ w: 3,
328
+ x: 9,
329
+ y: 0,
330
+ },
331
+ {
332
+ component: 'scatterplot',
333
+ uid: 'some-umap',
334
+ coordinationScopes: {
335
+ dataset: 'A',
336
+ },
337
+ h: 4,
338
+ w: 5,
339
+ x: 0,
340
+ y: 2,
341
+ },
342
+ {
343
+ component: 'scatterplot',
344
+ coordinationScopes: {
345
+ dataset: 'A',
346
+ },
347
+ h: 4,
348
+ w: 5,
349
+ x: 0,
350
+ y: 2,
351
+ },
352
+ {
353
+ component: 'spatial',
354
+ coordinationScopes: {
355
+ dataset: 'A',
356
+ },
357
+ h: 4,
358
+ w: 4,
359
+ x: 5,
360
+ y: 0,
361
+ },
362
+ ],
363
+ };
364
+ export const viewConfig1_0_10 = {
365
+ version: '1.0.10',
366
+ name: 'My config name',
367
+ description: 'My config description',
368
+ initStrategy: 'auto',
369
+ coordinationSpace: {
370
+ embeddingTargetX: {
371
+ A: 0,
372
+ },
373
+ embeddingTargetY: {
374
+ A: 0,
375
+ },
376
+ embeddingType: {
377
+ 't-SNE': 't-SNE',
378
+ },
379
+ embeddingZoom: {
380
+ A: 3,
381
+ },
382
+ spatialTargetX: {
383
+ A: 3800,
384
+ },
385
+ spatialTargetY: {
386
+ A: -900,
387
+ },
388
+ spatialZoom: {
389
+ A: -4.4,
390
+ },
391
+ },
392
+ datasets: [
393
+ {
394
+ files: [
395
+ {
396
+ fileType: 'cells.json',
397
+ type: 'cells',
398
+ url: 'https://example.com/cells.json',
399
+ },
400
+ {
401
+ fileType: 'cell-sets.json',
402
+ type: 'cell-sets',
403
+ url: 'https://example.com/cell-sets.json',
404
+ },
405
+ ],
406
+ name: 'A',
407
+ uid: 'A',
408
+ },
409
+ ],
410
+ layout: [
411
+ {
412
+ component: 'description',
413
+ coordinationScopes: {},
414
+ h: 2,
415
+ props: {
416
+ description: 'My component description',
417
+ },
418
+ w: 3,
419
+ x: 9,
420
+ y: 0,
421
+ },
422
+ {
423
+ component: 'scatterplot',
424
+ coordinationScopes: {
425
+ embeddingTargetX: 'A',
426
+ embeddingTargetY: 'A',
427
+ embeddingType: 't-SNE',
428
+ embeddingZoom: 'A',
429
+ },
430
+ h: 4,
431
+ props: {
432
+ mapping: 't-SNE',
433
+ view: {
434
+ target: [
435
+ 0,
436
+ 0,
437
+ 0,
438
+ ],
439
+ zoom: 3,
440
+ },
441
+ },
442
+ w: 5,
443
+ x: 0,
444
+ y: 2,
445
+ },
446
+ {
447
+ component: 'spatial',
448
+ coordinationScopes: {
449
+ spatialTargetX: 'A',
450
+ spatialTargetY: 'A',
451
+ spatialZoom: 'A',
452
+ },
453
+ h: 4,
454
+ props: {
455
+ cellRadius: 50,
456
+ view: {
457
+ target: [
458
+ 3800,
459
+ -900,
460
+ 0,
461
+ ],
462
+ zoom: -4.4,
463
+ },
464
+ },
465
+ w: 4,
466
+ x: 5,
467
+ y: 0,
468
+ },
469
+ ],
470
+ };
471
+ export const initializedViewConfig = {
472
+ version: '1.0.10',
473
+ name: 'My config name',
474
+ description: 'My config description',
475
+ initStrategy: 'auto',
476
+ coordinationSpace: {
477
+ obsType: {
478
+ A: 'cell',
479
+ },
480
+ featureType: {
481
+ A: 'gene',
482
+ },
483
+ featureValueType: {
484
+ A: 'expression',
485
+ },
486
+ obsColorEncoding: {
487
+ A: 'cellSetSelection',
488
+ },
489
+ obsFilter: {
490
+ A: null,
491
+ },
492
+ obsHighlight: {
493
+ A: null,
494
+ },
495
+ obsSetHighlight: {
496
+ A: null,
497
+ },
498
+ obsSetSelection: {
499
+ A: null,
500
+ },
501
+ dataset: {
502
+ A: 'A',
503
+ },
504
+ embeddingObsOpacity: {
505
+ A: 1,
506
+ },
507
+ embeddingObsOpacityMode: {
508
+ A: 'auto',
509
+ },
510
+ embeddingObsRadius: {
511
+ A: 1,
512
+ },
513
+ embeddingObsRadiusMode: {
514
+ A: 'auto',
515
+ },
516
+ embeddingRotation: {
517
+ A: 0,
518
+ },
519
+ embeddingTargetX: {
520
+ A: 0,
521
+ },
522
+ embeddingTargetY: {
523
+ A: 0,
524
+ },
525
+ embeddingTargetZ: {
526
+ A: 0,
527
+ },
528
+ embeddingType: {
529
+ 't-SNE': 't-SNE',
530
+ },
531
+ embeddingZoom: {
532
+ A: 3,
533
+ },
534
+ embeddingObsSetLabelSize: {
535
+ A: 14,
536
+ },
537
+ embeddingObsSetLabelsVisible: {
538
+ A: false,
539
+ },
540
+ embeddingObsSetPolygonsVisible: {
541
+ A: false,
542
+ },
543
+ featureValueColormap: {
544
+ A: 'plasma',
545
+ },
546
+ featureValueColormapRange: {
547
+ A: [
548
+ 0,
549
+ 1,
550
+ ],
551
+ },
552
+ featureHighlight: {
553
+ A: null,
554
+ },
555
+ featureSelection: {
556
+ A: null,
557
+ },
558
+ spatialImageLayer: {
559
+ A: null,
560
+ },
561
+ spatialSegmentationLayer: {
562
+ A: null,
563
+ },
564
+ spatialPointLayer: {
565
+ A: null,
566
+ },
567
+ spatialNeighborhoodLayer: {
568
+ A: null,
569
+ },
570
+ spatialRotation: {
571
+ A: 0,
572
+ },
573
+ spatialRotationOrbit: {
574
+ A: 0,
575
+ },
576
+ spatialOrbitAxis: {
577
+ A: 'Y',
578
+ },
579
+ spatialRotationX: {
580
+ A: null,
581
+ },
582
+ spatialRotationY: {
583
+ A: null,
584
+ },
585
+ spatialRotationZ: {
586
+ A: null,
587
+ },
588
+ spatialTargetX: {
589
+ A: 3800,
590
+ },
591
+ spatialTargetY: {
592
+ A: -900,
593
+ },
594
+ spatialTargetZ: {
595
+ A: null,
596
+ },
597
+ spatialZoom: {
598
+ A: -4.4,
599
+ },
600
+ spatialAxisFixed: {
601
+ A: false,
602
+ },
603
+ additionalObsSets: {
604
+ A: null,
605
+ },
606
+ obsSetColor: {
607
+ A: null,
608
+ },
609
+ obsLabelsType: {
610
+ A: null,
611
+ },
612
+ moleculeHighlight: {
613
+ A: null,
614
+ },
615
+ },
616
+ datasets: [
617
+ {
618
+ files: [
619
+ {
620
+ fileType: 'obsSegmentations.cells.json',
621
+ url: 'https://example.com/cells.json',
622
+ coordinationValues: {
623
+ obsType: 'cell',
624
+ },
625
+ },
626
+ {
627
+ fileType: 'obsLocations.cells.json',
628
+ url: 'https://example.com/cells.json',
629
+ coordinationValues: {
630
+ obsType: 'cell',
631
+ },
632
+ },
633
+ {
634
+ fileType: 'obsSets.cell-sets.json',
635
+ url: 'https://example.com/cell-sets.json',
636
+ coordinationValues: {
637
+ obsType: 'cell',
638
+ },
639
+ },
640
+ ],
641
+ name: 'A',
642
+ uid: 'A',
643
+ },
644
+ ],
645
+ layout: [
646
+ {
647
+ component: 'description',
648
+ coordinationScopes: {
649
+ dataset: 'A',
650
+ spatialImageLayer: 'A',
651
+ },
652
+ h: 2,
653
+ props: {
654
+ description: 'My component description',
655
+ },
656
+ uid: 'A',
657
+ w: 3,
658
+ x: 9,
659
+ y: 0,
660
+ },
661
+ {
662
+ component: 'scatterplot',
663
+ coordinationScopes: {
664
+ obsType: 'A',
665
+ obsLabelsType: 'A',
666
+ featureType: 'A',
667
+ featureValueType: 'A',
668
+ obsColorEncoding: 'A',
669
+ obsFilter: 'A',
670
+ obsHighlight: 'A',
671
+ obsSetHighlight: 'A',
672
+ obsSetSelection: 'A',
673
+ obsSetColor: 'A',
674
+ dataset: 'A',
675
+ embeddingObsOpacity: 'A',
676
+ embeddingObsOpacityMode: 'A',
677
+ embeddingObsRadius: 'A',
678
+ embeddingObsRadiusMode: 'A',
679
+ embeddingRotation: 'A',
680
+ embeddingTargetX: 'A',
681
+ embeddingTargetY: 'A',
682
+ embeddingTargetZ: 'A',
683
+ embeddingType: 't-SNE',
684
+ embeddingZoom: 'A',
685
+ embeddingObsSetLabelSize: 'A',
686
+ embeddingObsSetLabelsVisible: 'A',
687
+ embeddingObsSetPolygonsVisible: 'A',
688
+ featureValueColormap: 'A',
689
+ featureValueColormapRange: 'A',
690
+ featureHighlight: 'A',
691
+ featureSelection: 'A',
692
+ additionalObsSets: 'A',
693
+ },
694
+ h: 4,
695
+ props: {
696
+ mapping: 't-SNE',
697
+ view: {
698
+ target: [
699
+ 0,
700
+ 0,
701
+ 0,
702
+ ],
703
+ zoom: 3,
704
+ },
705
+ },
706
+ uid: 'B',
707
+ w: 5,
708
+ x: 0,
709
+ y: 2,
710
+ },
711
+ {
712
+ component: 'spatial',
713
+ coordinationScopes: {
714
+ obsType: 'A',
715
+ obsLabelsType: 'A',
716
+ obsColorEncoding: 'A',
717
+ obsFilter: 'A',
718
+ obsHighlight: 'A',
719
+ obsSetHighlight: 'A',
720
+ obsSetSelection: 'A',
721
+ obsSetColor: 'A',
722
+ dataset: 'A',
723
+ featureValueColormap: 'A',
724
+ featureValueColormapRange: 'A',
725
+ featureValueType: 'A',
726
+ featureHighlight: 'A',
727
+ featureSelection: 'A',
728
+ featureType: 'A',
729
+ spatialImageLayer: 'A',
730
+ spatialSegmentationLayer: 'A',
731
+ spatialPointLayer: 'A',
732
+ spatialNeighborhoodLayer: 'A',
733
+ spatialRotation: 'A',
734
+ spatialRotationOrbit: 'A',
735
+ spatialOrbitAxis: 'A',
736
+ spatialRotationX: 'A',
737
+ spatialRotationY: 'A',
738
+ spatialRotationZ: 'A',
739
+ spatialTargetX: 'A',
740
+ spatialTargetY: 'A',
741
+ spatialTargetZ: 'A',
742
+ spatialAxisFixed: 'A',
743
+ spatialZoom: 'A',
744
+ additionalObsSets: 'A',
745
+ moleculeHighlight: 'A',
746
+ },
747
+ h: 4,
748
+ props: {
749
+ cellRadius: 50,
750
+ view: {
751
+ target: [
752
+ 3800,
753
+ -900,
754
+ 0,
755
+ ],
756
+ zoom: -4.4,
757
+ },
758
+ },
759
+ uid: 'C',
760
+ w: 4,
761
+ x: 5,
762
+ y: 0,
763
+ },
764
+ ],
765
+ };
766
+ export const implicitPerDatasetCoordinations = {
767
+ version: '1.0.9',
768
+ name: 'Per-dataset coordinations',
769
+ description: 'My config description',
770
+ initStrategy: 'auto',
771
+ coordinationSpace: {
772
+ dataset: {
773
+ A: 'first',
774
+ B: 'second',
775
+ },
776
+ embeddingCellRadius: {
777
+ small: 2,
778
+ big: 20,
779
+ },
780
+ embeddingCellRadiusMode: {
781
+ all: 'manual',
782
+ },
783
+ },
784
+ datasets: [
785
+ {
786
+ files: [],
787
+ name: 'First dataset',
788
+ uid: 'first',
789
+ },
790
+ {
791
+ files: [],
792
+ name: 'Second dataset',
793
+ uid: 'second',
794
+ },
795
+ ],
796
+ layout: [
797
+ {
798
+ component: 'somePluginView',
799
+ coordinationScopes: {
800
+ dataset: ['A', 'B'],
801
+ embeddingCellRadius: { A: 'small', B: 'big' },
802
+ embeddingCellRadiusMode: 'all',
803
+ },
804
+ h: 4,
805
+ w: 5,
806
+ x: 0,
807
+ y: 2,
808
+ },
809
+ {
810
+ component: 'scatterplot',
811
+ coordinationScopes: {
812
+ dataset: 'A',
813
+ embeddingCellRadius: 'small',
814
+ embeddingCellRadiusMode: 'all',
815
+ },
816
+ h: 4,
817
+ w: 5,
818
+ x: 0,
819
+ y: 2,
820
+ },
821
+ ],
822
+ };
823
+ export const explicitPerDatasetCoordinations = {
824
+ version: '1.0.16',
825
+ name: 'Per-dataset coordinations',
826
+ description: 'My config description',
827
+ initStrategy: 'auto',
828
+ coordinationSpace: {
829
+ dataset: {
830
+ A: 'first',
831
+ B: 'second',
832
+ },
833
+ embeddingCellRadius: {
834
+ small: 2,
835
+ big: 20,
836
+ },
837
+ embeddingCellRadiusMode: {
838
+ all: 'manual',
839
+ },
840
+ },
841
+ datasets: [
842
+ {
843
+ files: [],
844
+ name: 'First dataset',
845
+ uid: 'first',
846
+ },
847
+ {
848
+ files: [],
849
+ name: 'Second dataset',
850
+ uid: 'second',
851
+ },
852
+ ],
853
+ layout: [
854
+ {
855
+ component: 'somePluginView',
856
+ coordinationScopes: {
857
+ dataset: ['A', 'B'],
858
+ embeddingCellRadiusMode: 'all',
859
+ },
860
+ coordinationScopesBy: {
861
+ dataset: {
862
+ embeddingCellRadius: { A: 'small', B: 'big' },
863
+ },
864
+ },
865
+ h: 4,
866
+ w: 5,
867
+ x: 0,
868
+ y: 2,
869
+ },
870
+ {
871
+ component: 'scatterplot',
872
+ coordinationScopes: {
873
+ dataset: 'A',
874
+ embeddingCellRadius: 'small',
875
+ embeddingCellRadiusMode: 'all',
876
+ },
877
+ h: 4,
878
+ w: 5,
879
+ x: 0,
880
+ y: 2,
881
+ },
882
+ ],
883
+ };