@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,16 @@
1
+ {
2
+ "version": "0.1.2",
3
+ "datatype": "cell",
4
+ "tree": [
5
+ {
6
+ "name": "Clustering Algorithm",
7
+ "children": [
8
+ {
9
+ "name": "Cluster A",
10
+ "color": [255, 0, 0],
11
+ "set": ["cell_243", "cell_271", "cell_247", "cell_248"]
12
+ }
13
+ ]
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be object",
6
+ "params": {
7
+ "type": "object"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "fake view config",
3
+ "description": "Spatial organization of the somatosensory cortex",
4
+ "datasets": [
5
+ {
6
+ "uid": "fake-dataset",
7
+ "name": "Fake Dataset",
8
+ "files": [
9
+ {
10
+ "type": "fake",
11
+ "fileType": "fake.json",
12
+ "url": "http://example.com",
13
+ "requestInit": {
14
+ "method": "POST",
15
+ "headers": {"x-foo": "bar"},
16
+ "body": "Body only valid with POSTs.",
17
+ "mode": "cors",
18
+ "credentials": "omit",
19
+ "cache": "no-store",
20
+ "redirect": "error",
21
+ "referrer": "foo-bar",
22
+ "integrity": "foo"
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ ],
28
+ "coordinationSpace": {
29
+
30
+ },
31
+ "layout": [
32
+ { "component": "FooBar", "x": 0, "y": 0, "w": 1, "h": 1 },
33
+ { "component": "FooBar", "props": { "foo": "bar" }, "x": 1, "y": 1, "w": 1, "h": 1 }
34
+ ],
35
+ "initStrategy": "auto",
36
+ "version": "1.0.1"
37
+ }
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be object",
6
+ "params": {
7
+ "type": "object"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "fake view config",
3
+ "description": "Spatial organization of the somatosensory cortex",
4
+ "datasets": [
5
+ {
6
+ "uid": "fake-dataset",
7
+ "name": "Fake Dataset",
8
+ "files": [
9
+ {
10
+ "type": "fake",
11
+ "fileType": "fake.json",
12
+ "url": "http://example.com",
13
+ "requestInit": {
14
+ "method": "POST",
15
+ "headers": {"x-foo": "bar"},
16
+ "body": "Body only valid with POSTs.",
17
+ "mode": "cors",
18
+ "credentials": "omit",
19
+ "cache": "no-store",
20
+ "redirect": "error",
21
+ "referrer": "foo-bar",
22
+ "integrity": "foo"
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ ],
28
+ "coordinationSpace": {
29
+
30
+ },
31
+ "layout": [
32
+ { "component": "FooBar", "x": 0, "y": 0, "w": 1, "h": 1 },
33
+ { "component": "FooBar", "props": { "foo": "bar" }, "x": 1, "y": 1, "w": 1, "h": 1 }
34
+ ],
35
+ "initStrategy": "auto",
36
+ "version": "1.0.2"
37
+ }
38
+
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be object",
6
+ "params": {
7
+ "type": "object"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "fake view config",
3
+ "description": "Spatial organization of the somatosensory cortex",
4
+ "datasets": [
5
+ {
6
+ "uid": "fake-dataset",
7
+ "name": "Fake Dataset",
8
+ "files": [
9
+ {
10
+ "type": "fake",
11
+ "fileType": "fake.json",
12
+ "url": "http://example.com",
13
+ "requestInit": {
14
+ "method": "POST",
15
+ "headers": {"x-foo": "bar"},
16
+ "body": "Body only valid with POSTs.",
17
+ "mode": "cors",
18
+ "credentials": "omit",
19
+ "cache": "no-store",
20
+ "redirect": "error",
21
+ "referrer": "foo-bar",
22
+ "integrity": "foo"
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ ],
28
+ "coordinationSpace": {
29
+
30
+ },
31
+ "layout": [
32
+ { "component": "FooBar", "x": 0, "y": 0, "w": 1, "h": 1 },
33
+ { "component": "FooBar", "props": { "foo": "bar" }, "x": 1, "y": 1, "w": 1, "h": 1 }
34
+ ],
35
+ "initStrategy": "auto",
36
+ "version": "1.0.3"
37
+ }
38
+
@@ -0,0 +1 @@
1
+ []
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be object",
6
+ "params": {
7
+ "type": "object"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,16 @@
1
+ {
2
+ "version": "0.1.2",
3
+ "datatype": "obs",
4
+ "tree": [
5
+ {
6
+ "name": "Clustering Algorithm",
7
+ "children": [
8
+ {
9
+ "name": "Cluster A",
10
+ "color": [255, 0, 0],
11
+ "set": ["cell_243", "cell_271", "cell_247", "cell_248"]
12
+ }
13
+ ]
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be array",
6
+ "params": {
7
+ "type": "array"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,26 @@
1
+ [
2
+ {
3
+ "groupName": "Clustering Algorithm",
4
+ "setName": "Cluster A",
5
+ "setColor": [255, 0, 0],
6
+ "obsId": "cell_243"
7
+ },
8
+ {
9
+ "groupName": "Clustering Algorithm",
10
+ "setName": "Cluster A",
11
+ "setColor": [255, 0, 0],
12
+ "obsId": "cell_271"
13
+ },
14
+ {
15
+ "groupName": "Clustering Algorithm",
16
+ "setName": "Cluster A",
17
+ "setColor": [255, 0, 0],
18
+ "obsId": "cell_247"
19
+ },
20
+ {
21
+ "groupName": "Clustering Algorithm",
22
+ "setName": "Cluster A",
23
+ "setColor": [255, 0, 0],
24
+ "obsId": "cell_248"
25
+ }
26
+ ]
@@ -0,0 +1 @@
1
+ []
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "dataPath": "",
4
+ "keyword": "type",
5
+ "message": "should be object",
6
+ "params": {
7
+ "type": "object"
8
+ },
9
+ "schemaPath": "#/type"
10
+ }
11
+ ]
@@ -0,0 +1,39 @@
1
+ {
2
+ "schemaVersion": "0.0.2",
3
+ "images": [
4
+ {
5
+ "name": "Some Image",
6
+ "url": "https://vitessce-data.storage.googleapis.com/0.0.25/master_release/test.zarr",
7
+ "type": "zarr",
8
+ "metadata": {
9
+ "dimensions": [
10
+ {
11
+ "field": "channel",
12
+ "type": "nominal",
13
+ "values": [
14
+ "A", "B", "C"
15
+ ]
16
+ },
17
+ {
18
+ "field": "y",
19
+ "type": "quantitative",
20
+ "values": null
21
+ },
22
+ {
23
+ "field": "x",
24
+ "type": "quantitative",
25
+ "values": null
26
+ }
27
+ ],
28
+ "isPyramid": false,
29
+ "transform": {
30
+ "scale": 20.0,
31
+ "translate": {
32
+ "y": 200,
33
+ "x": 200
34
+ }
35
+ }
36
+ }
37
+ }
38
+ ]
39
+ }
@@ -0,0 +1,195 @@
1
+ const schema = {
2
+ $schema: 'http://json-schema.org/draft-07/schema#',
3
+ $id: 'https://github.com/vitessce/vitessce/#cell-sets',
4
+ title: 'Vitessce obs sets data',
5
+ type: 'object',
6
+ definitions: {
7
+ stringArray: {
8
+ type: 'array',
9
+ items: {
10
+ type: 'string',
11
+ },
12
+ },
13
+ stringProbabilityTupleArray: {
14
+ type: 'array',
15
+ items: {
16
+ type: 'array',
17
+ additionalItems: false,
18
+ items: [
19
+ {
20
+ type: 'string',
21
+ },
22
+ {
23
+ oneOf: [
24
+ {
25
+ type: 'number',
26
+ minimum: 0.0,
27
+ maximum: 1.0,
28
+ },
29
+ {
30
+ type: 'null',
31
+ },
32
+ ],
33
+ },
34
+ ],
35
+ },
36
+ },
37
+ colorArray: {
38
+ type: 'array',
39
+ items: {
40
+ type: 'integer',
41
+ minimum: 0,
42
+ maximum: 255,
43
+ },
44
+ minItems: 3,
45
+ maxItems: 3,
46
+ },
47
+ treeNodeLeaf: {
48
+ type: 'object',
49
+ additionalProperties: false,
50
+ required: ['name'],
51
+ properties: {
52
+ name: {
53
+ type: 'string',
54
+ },
55
+ color: {
56
+ $ref: '#/definitions/colorArray',
57
+ },
58
+ set: {
59
+ $ref: '#/definitions/stringArray',
60
+ },
61
+ },
62
+ },
63
+ treeNodeNonLeaf: {
64
+ type: 'object',
65
+ additionalProperties: false,
66
+ required: ['name'],
67
+ properties: {
68
+ name: {
69
+ type: 'string',
70
+ },
71
+ color: {
72
+ $ref: '#/definitions/colorArray',
73
+ },
74
+ children: {
75
+ type: 'array',
76
+ items: {
77
+ $ref: '#/definitions/treeNode',
78
+ },
79
+ },
80
+ },
81
+ },
82
+ treeNode: {
83
+ oneOf: [
84
+ {
85
+ $ref: '#/definitions/treeNodeNonLeaf',
86
+ },
87
+ {
88
+ $ref: '#/definitions/treeNodeLeaf',
89
+ },
90
+ ],
91
+ },
92
+ 'version0.1.2': {
93
+ type: 'object',
94
+ additionalProperties: false,
95
+ required: ['version', 'datatype', 'tree'],
96
+ properties: {
97
+ dataset: {
98
+ type: 'string',
99
+ },
100
+ version: {
101
+ type: 'string',
102
+ enum: ['0.1.2'],
103
+ },
104
+ datatype: {
105
+ type: 'string',
106
+ enum: ['cell', 'obs'],
107
+ },
108
+ tree: {
109
+ type: 'array',
110
+ items: {
111
+ $ref: '#/definitions/treeNodeNonLeaf',
112
+ },
113
+ },
114
+ },
115
+ },
116
+ treeNodeLeafProbabilistic: {
117
+ type: 'object',
118
+ additionalProperties: false,
119
+ required: ['name'],
120
+ properties: {
121
+ name: {
122
+ type: 'string',
123
+ },
124
+ color: {
125
+ $ref: '#/definitions/colorArray',
126
+ },
127
+ set: {
128
+ $ref: '#/definitions/stringProbabilityTupleArray',
129
+ },
130
+ },
131
+ },
132
+ treeNodeNonLeafProbabilistic: {
133
+ type: 'object',
134
+ additionalProperties: false,
135
+ required: ['name'],
136
+ properties: {
137
+ name: {
138
+ type: 'string',
139
+ },
140
+ color: {
141
+ $ref: '#/definitions/colorArray',
142
+ },
143
+ children: {
144
+ type: 'array',
145
+ items: {
146
+ $ref: '#/definitions/treeNodeProbabilistic',
147
+ },
148
+ },
149
+ },
150
+ },
151
+ treeNodeProbabilistic: {
152
+ oneOf: [
153
+ {
154
+ $ref: '#/definitions/treeNodeNonLeafProbabilistic',
155
+ },
156
+ {
157
+ $ref: '#/definitions/treeNodeLeafProbabilistic',
158
+ },
159
+ ],
160
+ },
161
+ 'version0.1.3': {
162
+ type: 'object',
163
+ additionalProperties: false,
164
+ required: ['version', 'datatype', 'tree'],
165
+ properties: {
166
+ dataset: {
167
+ type: 'string',
168
+ },
169
+ version: {
170
+ type: 'string',
171
+ enum: ['0.1.3'],
172
+ },
173
+ datatype: {
174
+ type: 'string',
175
+ enum: ['cell', 'obs'],
176
+ },
177
+ tree: {
178
+ type: 'array',
179
+ items: {
180
+ $ref: '#/definitions/treeNodeNonLeafProbabilistic',
181
+ },
182
+ },
183
+ },
184
+ },
185
+ },
186
+ oneOf: [
187
+ {
188
+ $ref: '#/definitions/version0.1.2',
189
+ },
190
+ {
191
+ $ref: '#/definitions/version0.1.3',
192
+ },
193
+ ],
194
+ };
195
+ export default schema;
@@ -0,0 +1,39 @@
1
+ const schema = {
2
+ $schema: 'http://json-schema.org/draft-07/schema#',
3
+ $id: 'https://github.com/vitessce/vitessce/#obsSetsTabular',
4
+ title: 'Vitessce obs sets data, tabular format',
5
+ definitions: {
6
+ colorArray: {
7
+ type: 'array',
8
+ items: { type: 'integer', minimum: 0, maximum: 255 },
9
+ minItems: 3,
10
+ maxItems: 3,
11
+ },
12
+ },
13
+ type: 'array',
14
+ items: {
15
+ type: 'object',
16
+ additionalProperties: false,
17
+ required: ['groupName', 'setName', 'obsId'],
18
+ properties: {
19
+ groupName: { type: 'string' },
20
+ setName: { type: 'string' },
21
+ setColor: { $ref: '#/definitions/colorArray' },
22
+ obsId: { type: 'string' },
23
+ predictionScore: {
24
+ oneOf: [
25
+ {
26
+ type: 'number',
27
+ minimum: 0.0,
28
+ maximum: 1.0,
29
+ },
30
+ {
31
+ type: 'null',
32
+ },
33
+ ],
34
+ },
35
+ },
36
+ },
37
+ };
38
+
39
+ export default schema;
@@ -0,0 +1,121 @@
1
+ const schema = {
2
+ $schema: 'http://json-schema.org/draft-07/schema#',
3
+ $id: 'https://github.com/vitessce/vitessce/#raster',
4
+ title: 'Vitessce image data',
5
+ type: 'object',
6
+ definitions: {
7
+ transform: {
8
+ type: 'object',
9
+ additionalProperties: false,
10
+ oneOf: [{ required: ['scale', 'translate'] }, { required: ['matrix'] }],
11
+ properties: {
12
+ scale: { type: 'number' },
13
+ translate: {
14
+ type: 'object',
15
+ additionalProperties: false,
16
+ required: ['y', 'x'],
17
+ properties: {
18
+ y: { type: 'number' },
19
+ x: { type: 'number' },
20
+ },
21
+ },
22
+ matrix: {
23
+ type: 'array',
24
+ items: { type: 'number' },
25
+ minItems: 16,
26
+ maxItems: 16,
27
+ },
28
+ },
29
+ },
30
+ dimensions: {
31
+ type: 'array',
32
+ items: {
33
+ type: 'object',
34
+ additionalProperties: false,
35
+ required: ['field', 'type', 'values'],
36
+ properties: {
37
+ field: { type: 'string' },
38
+ type: {
39
+ type: 'string',
40
+ enum: ['quantitative', 'nominal', 'ordinal', 'temporal'],
41
+ },
42
+ values: {
43
+ type: ['array', 'null'],
44
+ items: { type: 'string' },
45
+ },
46
+ },
47
+ },
48
+ },
49
+ metadata: {
50
+ type: 'object',
51
+ additionalProperties: false,
52
+ anyOf: [{ required: ['dimensions', 'isPyramid'] }, { required: ['transform'] }, { required: ['omeTiffOffsetsUrl'] }, { required: ['isBitmask'] }],
53
+ properties: {
54
+ dimensions: { $ref: '#/definitions/dimensions' },
55
+ isPyramid: { type: 'boolean' },
56
+ transform: { $ref: '#/definitions/transform' },
57
+ isBitmask: { type: 'boolean' },
58
+ omeTiffOffsetsUrl: { type: 'string', format: 'uri' },
59
+ },
60
+ },
61
+ requestInit: {
62
+ type: 'object',
63
+ additionalProperties: false,
64
+ required: [],
65
+ properties: {
66
+ method: {
67
+ type: 'string',
68
+ },
69
+ headers: {
70
+ type: 'object',
71
+ },
72
+ body: {
73
+ type: 'string',
74
+ },
75
+ mode: {
76
+ type: 'string',
77
+ },
78
+ credentials: {
79
+ type: 'string',
80
+ },
81
+ cache: {
82
+ type: 'string',
83
+ },
84
+ redirect: {
85
+ type: 'string',
86
+ },
87
+ referrer: {
88
+ type: 'string',
89
+ },
90
+ integrity: {
91
+ type: 'string',
92
+ },
93
+ },
94
+ },
95
+ image: {
96
+ type: 'object',
97
+ additionalProperties: false,
98
+ required: ['name', 'url', 'type'],
99
+ properties: {
100
+ name: { type: 'string' },
101
+ url: { type: 'string', format: 'uri' },
102
+ type: { type: 'string' },
103
+ metadata: { $ref: '#/definitions/metadata' },
104
+ requestInit: { $ref: '#/definitions/requestInit' },
105
+ },
106
+ },
107
+ },
108
+ additionalProperties: false,
109
+ required: ['schemaVersion', 'images'],
110
+ properties: {
111
+ schemaVersion: { type: 'string' },
112
+ usePhysicalSizeScaling: { type: 'boolean', description: 'Default is false: passing true in will infer scaling from the reported physcial size' },
113
+ renderLayers: { type: 'array', items: { type: 'string' } },
114
+ images: {
115
+ type: 'array',
116
+ items: { $ref: '#/definitions/image' },
117
+ },
118
+ },
119
+ };
120
+
121
+ export default schema;