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