@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,733 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://github.com/vitessce/vitessce/#dataset",
4
+ "title": "Vitessce data set",
5
+ "type": "object",
6
+ "definitions": {
7
+ "components": {
8
+ "description": "The layout array defines the views, or components, rendered in the grid.",
9
+ "type": "array",
10
+ "items": {
11
+ "type": "object",
12
+ "additionalProperties": false,
13
+ "required": ["component", "x", "y"],
14
+ "properties": {
15
+ "component": {
16
+ "type": "string",
17
+ "description": "Specify a component using a name defined in the component registry."
18
+ },
19
+ "props": {
20
+ "type": "object",
21
+ "description": "Extra prop values for the component."
22
+ },
23
+ "x": { "type": "integer" },
24
+ "y": { "type": "integer" },
25
+ "w": { "type": "integer" },
26
+ "h": { "type": "integer" },
27
+ "coordinationScopes": {
28
+ "type": "object",
29
+ "description": "Component-level coordination scope mappings define which coordination object values a particular component can read and write, for each coordination type.",
30
+ "additionalProperties": false,
31
+ "required": [],
32
+ "properties": {
33
+ "dataset": { "type": "string" },
34
+ "embeddingType": { "type": "string" },
35
+ "embeddingZoom": { "type": "string" },
36
+ "embeddingRotation": { "type": "string" },
37
+ "embeddingTargetX": { "type": "string" },
38
+ "embeddingTargetY": { "type": "string" },
39
+ "embeddingTargetZ": { "type": "string" },
40
+ "embeddingCellSetPolygonsVisible": { "type": "string" },
41
+ "embeddingCellSetLabelsVisible": { "type": "string" },
42
+ "embeddingCellSetLabelSize": { "type": "string" },
43
+ "embeddingCellRadius": { "type": "string" },
44
+ "spatialZoom": { "type": "string" },
45
+ "spatialRotation": { "type": "string" },
46
+ "spatialTargetX": { "type": "string" },
47
+ "spatialTargetY": { "type": "string" },
48
+ "spatialTargetZ": { "type": "string" },
49
+ "heatmapZoomX": { "type": "string" },
50
+ "heatmapZoomY": { "type": "string" },
51
+ "heatmapTargetX": { "type": "string" },
52
+ "heatmapTargetY": { "type": "string" },
53
+ "cellFilter": { "type": "string" },
54
+ "cellHighlight": { "type": "string" },
55
+ "cellSetSelection": { "type": "string" },
56
+ "cellSetHighlight": { "type": "string" },
57
+ "cellSetColor": { "type": "string" },
58
+ "geneFilter": { "type": "string" },
59
+ "geneHighlight": { "type": "string" },
60
+ "geneSelection": { "type": "string" },
61
+ "geneExpressionTransform": { "type": "string" },
62
+ "geneExpressionColormap": { "type": "string" },
63
+ "geneExpressionColormapRange": { "type": "string" },
64
+ "cellColorEncoding": { "type": "string" },
65
+ "spatialLayers": { "type": "string" },
66
+ "genomicZoomX": { "type": "string" },
67
+ "genomicZoomY": { "type": "string" },
68
+ "genomicTargetX": { "type": "string" },
69
+ "genomicTargetY": { "type": "string" },
70
+ "additionalCellSets": { "type": "string" },
71
+ "moleculeHighlight": { "type": "string" }
72
+ }
73
+ }
74
+ }
75
+ }
76
+ },
77
+ "requestInit": {
78
+ "type": "object",
79
+ "description": "The properties of this object correspond to the parameters of the JavaScript fetch() function.",
80
+ "additionalProperties": false,
81
+ "required": [],
82
+ "properties": {
83
+ "method": {
84
+ "type": "string"
85
+ },
86
+ "headers": {
87
+ "type": "object"
88
+ },
89
+ "body": {
90
+ "type": "string"
91
+ },
92
+ "mode": {
93
+ "type": "string"
94
+ },
95
+ "credentials": {
96
+ "type": "string"
97
+ },
98
+ "cache": {
99
+ "type": "string"
100
+ },
101
+ "redirect": {
102
+ "type": "string"
103
+ },
104
+ "referrer": {
105
+ "type": "string"
106
+ },
107
+ "integrity": {
108
+ "type": "string"
109
+ }
110
+ }
111
+ },
112
+ "rasterLayer": {
113
+ "description": "The properties of this object are the rendering settings for the raster layer.",
114
+ "additionalProperties": false,
115
+ "required": ["channels", "colormap", "index", "opacity", "type"],
116
+ "properties": {
117
+ "channels": {
118
+ "type": "array",
119
+ "items": {
120
+ "type": "object",
121
+ "additionalProperties": false,
122
+ "required": ["selection"],
123
+ "properties": {
124
+ "color": {
125
+ "type": "array",
126
+ "items": { "type": "number" },
127
+ "description": "The color to use when rendering this channel under the null colormap."
128
+ },
129
+ "selection": {
130
+ "type": "object",
131
+ "description": "Determines the channel selection, e.g. some Z and time slice."
132
+ },
133
+ "slider": {
134
+ "type": "array",
135
+ "items": { "type": "number" },
136
+ "description": "Determines the range for color mapping."
137
+ },
138
+ "visible": {
139
+ "type": "boolean",
140
+ "description": "Determines whether this channel of the layer will be rendered in the spatial component."
141
+ }
142
+ }
143
+ }
144
+ },
145
+ "colormap": {
146
+ "oneOf": [
147
+ {
148
+ "type": "string",
149
+ "description": "The name of the colormap to use for this layer."
150
+ },
151
+ {
152
+ "type": "null",
153
+ "description": "Use the solid color definitions."
154
+ }
155
+ ]
156
+ },
157
+ "transparentColor": {
158
+ "oneOf": [
159
+ {
160
+ "type": "array",
161
+ "minItems": 3,
162
+ "maxItems": 3,
163
+ "items": {
164
+ "type": "number",
165
+ "description": "One of R G or B (0 - 255)."
166
+ },
167
+ "description": "Determines the color to be set to opacity 0"
168
+ },
169
+ {
170
+ "type": "null",
171
+ "description": "No selection."
172
+ }
173
+ ]
174
+ },
175
+ "index": {
176
+ "type": "number",
177
+ "description": "The index of the layer among the array of layers available in the image file."
178
+ },
179
+ "modelMatrix": {
180
+ "oneOf": [
181
+ {
182
+ "type": "array",
183
+ "minItems": 16,
184
+ "maxItems": 16,
185
+ "description": "transformation matrix for this layer"
186
+ },
187
+ {
188
+ "type": "null",
189
+ "description": "Use no transformation."
190
+ }
191
+ ]
192
+ },
193
+ "opacity": {
194
+ "type": "number"
195
+ },
196
+ "domainType": {
197
+ "type": "string",
198
+ "enum": ["Full", "Min/Max"],
199
+ "description": "Determines the extent of the channel slider input element in the layer controller."
200
+ },
201
+ "type": {
202
+ "type": "string",
203
+ "enum": ["raster"]
204
+ }
205
+ }
206
+ },
207
+ "moleculesLayer": {
208
+ "description": "The properties of this object are the rendering settings for the molecules layer.",
209
+ "additionalProperties": false,
210
+ "required": ["visible", "radius", "opacity", "type"],
211
+ "properties": {
212
+ "visible": {
213
+ "type": "boolean"
214
+ },
215
+ "radius": {
216
+ "type": "number"
217
+ },
218
+ "opacity": {
219
+ "type": "number"
220
+ },
221
+ "type": {
222
+ "type": "string",
223
+ "enum": ["molecules"]
224
+ }
225
+ }
226
+ },
227
+ "cellsLayer": {
228
+ "description": "The properties of this object are the rendering settings for the cells layer.",
229
+ "additionalProperties": false,
230
+ "required": ["visible", "stroked", "radius", "opacity", "type"],
231
+ "properties": {
232
+ "visible": {
233
+ "type": "boolean"
234
+ },
235
+ "stroked": {
236
+ "type": "boolean"
237
+ },
238
+ "radius": {
239
+ "type": "number"
240
+ },
241
+ "opacity": {
242
+ "type": "number"
243
+ },
244
+ "type": {
245
+ "type": "string",
246
+ "enum": ["cells"]
247
+ }
248
+ }
249
+ },
250
+ "neighborhoodsLayer": {
251
+ "description": "The properties of this object are the rendering settings for the neighborhoods layer.",
252
+ "additionalProperties": false,
253
+ "required": ["visible", "type"],
254
+ "properties": {
255
+ "visible": {
256
+ "type": "boolean"
257
+ },
258
+ "type": {
259
+ "type": "string",
260
+ "enum": ["neighborhoods"]
261
+ }
262
+ }
263
+ },
264
+ "spatialLayers": {
265
+ "type": "array",
266
+ "description": "Array of Spatial Layers",
267
+ "items": {
268
+ "oneOf": [
269
+ {
270
+ "$ref": "#/definitions/rasterLayer"
271
+ },
272
+ {
273
+ "$ref": "#/definitions/cellsLayer"
274
+ },
275
+ {
276
+ "$ref": "#/definitions/moleculesLayer"
277
+ },
278
+ {
279
+ "$ref": "#/definitions/neighborhoodsLayer"
280
+ }
281
+ ]
282
+ }
283
+ }
284
+ },
285
+ "additionalProperties": false,
286
+ "required": ["version", "name", "datasets", "layout", "initStrategy"],
287
+ "properties": {
288
+ "name": { "type": "string" },
289
+ "public": { "type": "boolean" },
290
+ "description": { "type": "string" },
291
+ "datasets": {
292
+ "type": "array",
293
+ "description": "The datasets array defines groups of files, where the files within each dataset reference the same entities (cells, genes, cell sets, etc).",
294
+ "items": {
295
+ "type": "object",
296
+ "additionalProperties": false,
297
+ "required": ["uid", "files"],
298
+ "properties": {
299
+ "uid": { "type": "string" },
300
+ "name": { "type": "string" },
301
+ "description": { "type": "string" },
302
+ "files": {
303
+ "type": "array",
304
+ "items": {
305
+ "type": "object",
306
+ "additionalProperties": false,
307
+ "required": ["fileType"],
308
+ "properties": {
309
+ "name": { "type": "string" },
310
+ "type": { "type": "string" },
311
+ "fileType": { "type": "string" },
312
+ "url": { "type": "string" },
313
+ "options": { "oneOf": [
314
+ { "type": "object" },
315
+ { "type": "array" }
316
+ ] },
317
+ "requestInit": { "$ref": "#/definitions/requestInit" }
318
+ }
319
+ }
320
+ }
321
+ }
322
+ }
323
+ },
324
+ "coordinationSpace": {
325
+ "type": "object",
326
+ "description": "The coordination space stores the values for each scope of each coordination object.",
327
+ "additionalProperties": false,
328
+ "required": [],
329
+ "properties": {
330
+ "dataset": {
331
+ "type": "object",
332
+ "patternProperties": {
333
+ ".": { "type": "string" }
334
+ }
335
+ },
336
+ "embeddingZoom": {
337
+ "type": "object",
338
+ "patternProperties": {
339
+ ".": { "oneOf": [
340
+ {
341
+ "type": "null",
342
+ "description": "If null is provided, value will be automatically set."
343
+ },
344
+ { "type": "number" }
345
+ ]
346
+ }
347
+ }
348
+ },
349
+ "embeddingRotation": {
350
+ "type": "object",
351
+ "patternProperties": {
352
+ ".": { "type": "number" }
353
+ }
354
+ },
355
+ "embeddingTargetX": {
356
+ "type": "object",
357
+ "patternProperties": {
358
+ ".": { "oneOf": [
359
+ {
360
+ "type": "null",
361
+ "description": "If null is provided, value will be automatically set."
362
+ },
363
+ { "type": "number" }
364
+ ]
365
+ }
366
+ }
367
+ },
368
+ "embeddingTargetY": {
369
+ "type": "object",
370
+ "patternProperties": {
371
+ ".": { "oneOf": [
372
+ {
373
+ "type": "null",
374
+ "description": "If null is provided, value will be automatically set."
375
+ },
376
+ { "type": "number" }
377
+ ]
378
+ }
379
+ }
380
+ },
381
+ "embeddingTargetZ": {
382
+ "type": "object",
383
+ "patternProperties": {
384
+ ".": { "type": "number" }
385
+ }
386
+ },
387
+ "embeddingType": {
388
+ "type": "object",
389
+ "patternProperties": {
390
+ ".": { "type": "string" }
391
+ }
392
+ },
393
+ "embeddingCellSetPolygonsVisible": {
394
+ "type": "object",
395
+ "patternProperties": {
396
+ ".": { "type": "boolean" }
397
+ }
398
+ },
399
+ "embeddingCellSetLabelsVisible": {
400
+ "type": "object",
401
+ "patternProperties": {
402
+ ".": { "type": "boolean" }
403
+ }
404
+ },
405
+ "embeddingCellSetLabelSize": {
406
+ "type": "object",
407
+ "patternProperties": {
408
+ ".": { "type": "number" }
409
+ }
410
+ },
411
+ "embeddingCellRadius": {
412
+ "type": "object",
413
+ "patternProperties": {
414
+ ".": { "type": "number" }
415
+ }
416
+ },
417
+ "spatialZoom": {
418
+ "type": "object",
419
+ "patternProperties": {
420
+ ".": { "oneOf": [
421
+ {
422
+ "type": "null",
423
+ "description": "If null is provided, value will be automatically set."
424
+ },
425
+ { "type": "number" }
426
+ ]
427
+ }
428
+ }
429
+ },
430
+ "spatialRotation": {
431
+ "type": "object",
432
+ "patternProperties": {
433
+ ".": { "type": "number" }
434
+ }
435
+ },
436
+ "spatialTargetX": {
437
+ "type": "object",
438
+ "patternProperties": {
439
+ ".": { "oneOf": [
440
+ {
441
+ "type": "null",
442
+ "description": "If null is provided, value will be automatically set."
443
+ },
444
+ { "type": "number" }
445
+ ]
446
+ }
447
+ }
448
+ },
449
+ "spatialTargetY": {
450
+ "type": "object",
451
+ "patternProperties": {
452
+ ".": { "oneOf": [
453
+ {
454
+ "type": "null",
455
+ "description": "If null is provided, value will be automatically set."
456
+ },
457
+ { "type": "number" }
458
+ ]
459
+ }
460
+ }
461
+ },
462
+ "spatialTargetZ": {
463
+ "type": "object",
464
+ "patternProperties": {
465
+ ".": { "type": "number" }
466
+ }
467
+ },
468
+ "spatialLayers": {
469
+ "type": "object",
470
+ "patternProperties": {
471
+ ".": {
472
+ "oneOf": [
473
+ {
474
+ "type": "null",
475
+ "description": "If null is provided and auto layer initialization is enabled, layers will be automatically initialized."
476
+ },
477
+ { "$ref": "#/definitions/spatialLayers" }
478
+ ]
479
+ }
480
+ }
481
+ },
482
+ "heatmapZoomX": {
483
+ "type": "object",
484
+ "patternProperties": {
485
+ ".": { "type": "number" }
486
+ }
487
+ },
488
+ "heatmapZoomY": {
489
+ "type": "object",
490
+ "patternProperties": {
491
+ ".": { "type": "number" }
492
+ }
493
+ },
494
+ "heatmapTargetX": {
495
+ "type": "object",
496
+ "patternProperties": {
497
+ ".": { "type": "number" }
498
+ }
499
+ },
500
+ "heatmapTargetY": {
501
+ "type": "object",
502
+ "patternProperties": {
503
+ ".": { "type": "number" }
504
+ }
505
+ },
506
+ "cellFilter": {
507
+ "type": "object",
508
+ "patternProperties": {
509
+ ".": {
510
+ "oneOf": [
511
+ {
512
+ "type": "null",
513
+ "description": "If null is provided, no cells will be filtered out initially."
514
+ },
515
+ { "type": "array", "items": { "type": "string" } }
516
+ ]
517
+ }
518
+ }
519
+ },
520
+ "cellHighlight": {
521
+ "type": "object",
522
+ "patternProperties": {
523
+ ".": {
524
+ "oneOf": [
525
+ {
526
+ "type": "null",
527
+ "description": "If null is provided, no cell will be highlighted initially."
528
+ },
529
+ { "type": "string" }
530
+ ]
531
+ }
532
+ }
533
+ },
534
+ "cellSetSelection": {
535
+ "type": "object",
536
+ "patternProperties": {
537
+ ".": {
538
+ "oneOf": [
539
+ {
540
+ "type": "null",
541
+ "description": "If null is provided and auto cell set initialization is enabled, cell set selections will be automatically initialized."
542
+ },
543
+ { "type": "array" }
544
+ ]
545
+ }
546
+ }
547
+ },
548
+ "cellSetHighlight": {
549
+ "type": "object",
550
+ "patternProperties": {
551
+ ".": {
552
+ "oneOf": [
553
+ {
554
+ "type": "null",
555
+ "description": "If null is provided, no cell sets will be highlighted initially."
556
+ },
557
+ { "type": "string" }
558
+ ]
559
+ }
560
+ }
561
+ },
562
+ "cellSetColor": {
563
+ "type": "object",
564
+ "patternProperties": {
565
+ ".": {
566
+ "oneOf": [
567
+ {
568
+ "type": "null",
569
+ "description": "If null is provided, cell set colors will be automatically initialized."
570
+ },
571
+ {
572
+ "type": "array",
573
+ "items": {
574
+ "type": "object",
575
+ "additionalProperties": false,
576
+ "required": ["path", "color"],
577
+ "properties": {
578
+ "path": {
579
+ "type": "array",
580
+ "items": { "type": "string" }
581
+ },
582
+ "color": {
583
+ "type": "array",
584
+ "items": { "type": "number" }
585
+ }
586
+ }
587
+ }
588
+ }
589
+ ]
590
+ }
591
+ }
592
+ },
593
+ "cellColorEncoding": {
594
+ "type": "object",
595
+ "patternProperties": {
596
+ ".": { "type": "string" }
597
+ }
598
+ },
599
+ "geneFilter": {
600
+ "type": "object",
601
+ "patternProperties": {
602
+ ".": {
603
+ "oneOf": [
604
+ {
605
+ "type": "null",
606
+ "description": "If null is provided, no genes will be filtered out initially."
607
+ },
608
+ { "type": "array", "items": { "type": "string" } }
609
+ ]
610
+ }
611
+ }
612
+ },
613
+ "geneHighlight": {
614
+ "type": "object",
615
+ "patternProperties": {
616
+ ".": {
617
+ "oneOf": [
618
+ {
619
+ "type": "null",
620
+ "description": "If null is provided, no genes will be highlighted initially."
621
+ },
622
+ { "type": "string" }
623
+ ]
624
+ }
625
+ }
626
+ },
627
+ "geneSelection": {
628
+ "type": "object",
629
+ "patternProperties": {
630
+ ".": {
631
+ "oneOf": [
632
+ {
633
+ "type": "null"
634
+ },
635
+ { "type": "array", "items": { "type": "string" } }
636
+ ]
637
+ }
638
+ }
639
+ },
640
+ "geneExpressionTransform": {
641
+ "type": "object",
642
+ "patternProperties": {
643
+ ".": {
644
+ "oneOf": [
645
+ {
646
+ "type": "null"
647
+ },
648
+ { "type": "string", "pattern": "log1p" }
649
+ ]
650
+ }
651
+ }
652
+ },
653
+ "geneExpressionColormap": {
654
+ "type": "object",
655
+ "patternProperties": {
656
+ ".": { "type": "string" }
657
+ }
658
+ },
659
+ "geneExpressionColormapRange": {
660
+ "type": "object",
661
+ "patternProperties": {
662
+ ".": { "type": "array", "items": { "type": "number" } }
663
+ }
664
+ },
665
+ "genomicZoomX": {
666
+ "type": "object",
667
+ "patternProperties": {
668
+ ".": { "type": "number" }
669
+ }
670
+ },
671
+ "genomicZoomY": {
672
+ "type": "object",
673
+ "patternProperties": {
674
+ ".": { "type": "number" }
675
+ }
676
+ },
677
+ "genomicTargetX": {
678
+ "type": "object",
679
+ "patternProperties": {
680
+ ".": { "type": "number" }
681
+ }
682
+ },
683
+ "genomicTargetY": {
684
+ "type": "object",
685
+ "patternProperties": {
686
+ ".": { "type": "number" }
687
+ }
688
+ },
689
+ "additionalCellSets": {
690
+ "type": "object",
691
+ "patternProperties": {
692
+ ".": {
693
+ "oneOf": [
694
+ {
695
+ "type": "null",
696
+ "description": "If null is provided, no cell will be highlighted initially."
697
+ },
698
+ {
699
+ "$ref": "https://github.com/vitessce/vitessce/#cell-sets"
700
+ }
701
+ ]
702
+ }
703
+ }
704
+ },
705
+ "moleculeHighlight": {
706
+ "type": "object",
707
+ "patternProperties": {
708
+ ".": {
709
+ "oneOf": [
710
+ {
711
+ "type": "null",
712
+ "description": "If null is provided, no molecule will be highlighted initially."
713
+ },
714
+ { "type": "string" }
715
+ ]
716
+ }
717
+ }
718
+ }
719
+ }
720
+ },
721
+ "layout": { "$ref": "#/definitions/components" },
722
+ "initStrategy": {
723
+ "type": "string",
724
+ "enum": ["none", "auto"],
725
+ "description": "The initialization strategy determines how missing coordination objects and coordination scope mappings are initially filled in."
726
+ },
727
+ "version": {
728
+ "type": "string",
729
+ "enum": ["1.0.0"],
730
+ "description": "The schema version for the view config."
731
+ }
732
+ }
733
+ }