@vitessce/vit-s 2.0.3-beta.0 → 2.0.3

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 (184) hide show
  1. package/dist/index.mjs +84801 -0
  2. package/{dist → dist-tsc}/index.js +2 -2
  3. package/package.json +7 -7
  4. package/src/CallbackPublisher.js +81 -0
  5. package/src/LoadingIndicator.js +34 -0
  6. package/src/TitleInfo.js +240 -0
  7. package/src/VitS.js +180 -0
  8. package/src/VitessceGrid.js +110 -0
  9. package/src/VitessceGrid.test.jsx +48 -0
  10. package/src/Warning.js +62 -0
  11. package/{dist → src}/classNames.js +0 -0
  12. package/src/component-registry.js +21 -0
  13. package/src/data/AbstractLoader.js +46 -0
  14. package/{dist → src}/data/AbstractTwoStepLoader.js +5 -4
  15. package/src/data/LoaderResult.js +8 -0
  16. package/{dist → src}/data/index.js +0 -0
  17. package/src/data/loader-registry.js +19 -0
  18. package/src/data-hook-utils.js +197 -0
  19. package/src/data-hooks.js +354 -0
  20. package/src/errors/AbstractLoaderError.js +14 -0
  21. package/src/errors/DataSourceFetchError.js +15 -0
  22. package/src/errors/DatasetNotFoundError.js +23 -0
  23. package/src/errors/LoaderNotFoundError.js +24 -0
  24. package/src/errors/LoaderValidationError.js +23 -0
  25. package/src/errors/OptionsValidationError.js +25 -0
  26. package/{dist → src}/errors/index.js +0 -0
  27. package/src/file-options-schemas-legacy.js +139 -0
  28. package/src/file-options-schemas-legacy.test.js +138 -0
  29. package/src/file-options-schemas.js +327 -0
  30. package/src/file-options-schemas.test.js +26 -0
  31. package/src/hooks.js +252 -0
  32. package/src/index.js +101 -0
  33. package/src/joint-file-types-legacy.js +298 -0
  34. package/src/joint-file-types-legacy.test.js +412 -0
  35. package/src/joint-file-types.js +171 -0
  36. package/src/joint-file-types.test.js +144 -0
  37. package/{dist/schemas.js → src/json-schemas.js} +6 -1
  38. package/{dist → src}/plugins.js +102 -70
  39. package/src/plugins.test.fixtures.js +78 -0
  40. package/src/plugins.test.js +42 -0
  41. package/src/schemas/config-0.1.0.schema.json +85 -0
  42. package/src/schemas/config-1.0.0.schema.json +733 -0
  43. package/src/schemas/config-1.0.1.schema.json +909 -0
  44. package/src/schemas/config-1.0.10.schema.json +969 -0
  45. package/src/schemas/config-1.0.11.schema.json +990 -0
  46. package/src/schemas/config-1.0.12.schema.json +997 -0
  47. package/src/schemas/config-1.0.13.schema.json +1013 -0
  48. package/src/schemas/config-1.0.14.schema.json +1048 -0
  49. package/src/schemas/config-1.0.15.schema.json +1048 -0
  50. package/src/schemas/config-1.0.16.schema.json +1069 -0
  51. package/src/schemas/config-1.0.16.schema.test.js +32 -0
  52. package/src/schemas/config-1.0.2.schema.json +911 -0
  53. package/src/schemas/config-1.0.3.schema.json +911 -0
  54. package/src/schemas/config-1.0.4.schema.json +949 -0
  55. package/src/schemas/config-1.0.5.schema.json +949 -0
  56. package/src/schemas/config-1.0.6.schema.json +950 -0
  57. package/src/schemas/config-1.0.7.schema.json +950 -0
  58. package/src/schemas/config-1.0.8.schema.json +966 -0
  59. package/src/schemas/config-1.0.9.schema.json +965 -0
  60. package/src/schemas/fixtures/cellSets.good.json +16 -0
  61. package/src/schemas/fixtures/config-1.0.1.bad.json +1 -0
  62. package/src/schemas/fixtures/config-1.0.1.bad.message.json +11 -0
  63. package/src/schemas/fixtures/config-1.0.1.good.json +37 -0
  64. package/src/schemas/fixtures/config-1.0.2.bad.json +1 -0
  65. package/src/schemas/fixtures/config-1.0.2.bad.message.json +11 -0
  66. package/src/schemas/fixtures/config-1.0.2.good.json +38 -0
  67. package/src/schemas/fixtures/config-1.0.3.bad.json +1 -0
  68. package/src/schemas/fixtures/config-1.0.3.bad.message.json +11 -0
  69. package/src/schemas/fixtures/config-1.0.3.good.json +38 -0
  70. package/src/schemas/fixtures/obsSets.bad.json +1 -0
  71. package/src/schemas/fixtures/obsSets.bad.message.json +11 -0
  72. package/src/schemas/fixtures/obsSets.good.json +16 -0
  73. package/src/schemas/fixtures/obsSetsTabular.bad.json +1 -0
  74. package/src/schemas/fixtures/obsSetsTabular.bad.message.json +11 -0
  75. package/src/schemas/fixtures/obsSetsTabular.good.json +26 -0
  76. package/src/schemas/fixtures/raster.bad.json +1 -0
  77. package/src/schemas/fixtures/raster.bad.message.json +11 -0
  78. package/src/schemas/fixtures/raster.good.json +39 -0
  79. package/src/schemas/obsSets.schema.js +195 -0
  80. package/src/schemas/obsSetsTabular.schema.js +39 -0
  81. package/src/schemas/raster.schema.js +121 -0
  82. package/src/schemas/schema-schema.sh +34 -0
  83. package/{dist → src}/schemas/schema.test-old.js +0 -1
  84. package/src/shared-mui/components.js +79 -0
  85. package/src/shared-mui/container.js +212 -0
  86. package/src/shared-mui/styles.js +110 -0
  87. package/src/shared-plot-options/CellColorEncodingOption.js +43 -0
  88. package/src/shared-plot-options/OptionSelect.js +19 -0
  89. package/src/shared-plot-options/OptionsContainer.js +26 -0
  90. package/{dist → src}/shared-plot-options/index.js +0 -0
  91. package/src/shared-plot-options/styles.js +49 -0
  92. package/src/state/hooks.js +633 -0
  93. package/src/view-config-upgraders.js +628 -0
  94. package/src/view-config-utils.js +315 -0
  95. package/src/view-config-utils.test.fixtures.js +893 -0
  96. package/src/view-config-utils.test.js +95 -0
  97. package/src/view-config-versions.js +68 -0
  98. package/src/vitessce-grid-layout/VitessceGridLayout.js +158 -0
  99. package/src/vitessce-grid-layout/VitessceGridLayout.test.jsx +56 -0
  100. package/{dist → src}/vitessce-grid-layout/index.js +0 -0
  101. package/src/vitessce-grid-layout/layout-utils.js +76 -0
  102. package/src/vitessce-grid-layout/layout-utils.test.js +167 -0
  103. package/src/vitessce-grid-utils.js +160 -0
  104. package/dist/CallbackPublisher.js +0 -68
  105. package/dist/LoadingIndicator.js +0 -27
  106. package/dist/TitleInfo.js +0 -151
  107. package/dist/VitS.js +0 -117
  108. package/dist/Vitessce.integration.test.js +0 -36
  109. package/dist/Vitessce.js +0 -101
  110. package/dist/VitessceGrid.js +0 -59
  111. package/dist/VitessceGrid.test.js +0 -36
  112. package/dist/Warning.js +0 -45
  113. package/dist/component-registry.js +0 -16
  114. package/dist/data/AbstractLoader.js +0 -35
  115. package/dist/data/LoaderResult.js +0 -7
  116. package/dist/data/loader-registry.js +0 -15
  117. package/dist/data-hook-utils.js +0 -175
  118. package/dist/data-hooks.js +0 -241
  119. package/dist/errors/AbstractLoaderError.js +0 -13
  120. package/dist/errors/DataSourceFetchError.js +0 -13
  121. package/dist/errors/DatasetNotFoundError.js +0 -17
  122. package/dist/errors/LoaderNotFoundError.js +0 -17
  123. package/dist/errors/LoaderValidationError.js +0 -15
  124. package/dist/errors/OptionsValidationError.js +0 -15
  125. package/dist/export-utils.js +0 -70
  126. package/dist/export-utils.test.js +0 -66
  127. package/dist/file-options-schemas-legacy.js +0 -136
  128. package/dist/file-options-schemas-legacy.test.js +0 -126
  129. package/dist/file-options-schemas.js +0 -322
  130. package/dist/file-options-schemas.test.js +0 -23
  131. package/dist/hooks.js +0 -215
  132. package/dist/joint-file-types-legacy.js +0 -278
  133. package/dist/joint-file-types-legacy.test.js +0 -400
  134. package/dist/joint-file-types.js +0 -148
  135. package/dist/joint-file-types.test.js +0 -139
  136. package/dist/loader-registry.js +0 -98
  137. package/dist/plugins.test.fixtures.js +0 -76
  138. package/dist/plugins.test.js +0 -30
  139. package/dist/schemas/PrettyJsonSchema.js +0 -34
  140. package/dist/schemas/config-0.1.0.schema.json +0 -84
  141. package/dist/schemas/config-1.0.0.schema.json +0 -733
  142. package/dist/schemas/config-1.0.1.schema.json +0 -909
  143. package/dist/schemas/config-1.0.10.schema.json +0 -969
  144. package/dist/schemas/config-1.0.11.schema.json +0 -990
  145. package/dist/schemas/config-1.0.12.schema.json +0 -997
  146. package/dist/schemas/config-1.0.13.schema.json +0 -1013
  147. package/dist/schemas/config-1.0.14.schema.json +0 -1048
  148. package/dist/schemas/config-1.0.15.schema.json +0 -1048
  149. package/dist/schemas/config-1.0.15.schema.test.js +0 -22
  150. package/dist/schemas/config-1.0.16.schema.json +0 -1109
  151. package/dist/schemas/config-1.0.16.schema.test.js +0 -22
  152. package/dist/schemas/config-1.0.2.schema.json +0 -910
  153. package/dist/schemas/config-1.0.3.schema.json +0 -910
  154. package/dist/schemas/config-1.0.4.schema.json +0 -949
  155. package/dist/schemas/config-1.0.5.schema.json +0 -949
  156. package/dist/schemas/config-1.0.6.schema.json +0 -949
  157. package/dist/schemas/config-1.0.7.schema.json +0 -949
  158. package/dist/schemas/config-1.0.8.schema.json +0 -965
  159. package/dist/schemas/config-1.0.9.schema.json +0 -965
  160. package/dist/schemas/obs-sets-tabular.schema.js +0 -37
  161. package/dist/schemas/obs-sets.schema.js +0 -194
  162. package/dist/schemas/obsSets.schema.js +0 -195
  163. package/dist/schemas/obsSetsTabular.schema.js +0 -38
  164. package/dist/schemas/raster.schema.js +0 -120
  165. package/dist/schemas/schema.test.js +0 -46
  166. package/dist/schemas-extra.js +0 -3
  167. package/dist/shared-mui/components.js +0 -35
  168. package/dist/shared-mui/container.js +0 -211
  169. package/dist/shared-mui/styles.js +0 -107
  170. package/dist/shared-plot-options/CellColorEncodingOption.js +0 -18
  171. package/dist/shared-plot-options/OptionSelect.js +0 -12
  172. package/dist/shared-plot-options/OptionsContainer.js +0 -12
  173. package/dist/shared-plot-options/styles.js +0 -48
  174. package/dist/state/hooks.js +0 -549
  175. package/dist/view-config-upgraders.js +0 -525
  176. package/dist/view-config-utils.js +0 -286
  177. package/dist/view-config-utils.test.fixtures.js +0 -765
  178. package/dist/view-config-utils.test.js +0 -66
  179. package/dist/view-config-versions.js +0 -47
  180. package/dist/vitessce-grid-layout/VitessceGridLayout.js +0 -95
  181. package/dist/vitessce-grid-layout/VitessceGridLayout.test.js +0 -40
  182. package/dist/vitessce-grid-layout/layout-utils.js +0 -60
  183. package/dist/vitessce-grid-layout/layout-utils.test.js +0 -146
  184. package/dist/vitessce-grid-utils.js +0 -140
@@ -1,1048 +0,0 @@
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
- "stringOrStringArray": {
8
- "oneOf": [
9
- { "type": "string" },
10
- { "type": "array", "items": { "type": "string" } }
11
- ]
12
- },
13
- "componentCoordinationScopeValue": {
14
- "oneOf": [
15
- { "type": "string" },
16
- {
17
- "type": "object",
18
- "patternProperties": {
19
- ".": { "type": "string" }
20
- }
21
- }
22
- ]
23
- },
24
- "components": {
25
- "description": "The layout array defines the views, or components, rendered in the grid.",
26
- "type": "array",
27
- "items": {
28
- "type": "object",
29
- "additionalProperties": false,
30
- "required": ["component", "x", "y"],
31
- "properties": {
32
- "uid": {
33
- "type": "string",
34
- "description": "A unique identifier for the view, to refer to it in getter and setter functions in object-oriented contexts."
35
- },
36
- "component": {
37
- "type": "string",
38
- "description": "Specify a component using a name defined in the component registry."
39
- },
40
- "props": {
41
- "type": "object",
42
- "description": "Extra prop values for the component."
43
- },
44
- "x": { "type": "integer" },
45
- "y": { "type": "integer" },
46
- "w": { "type": "integer" },
47
- "h": { "type": "integer" },
48
- "coordinationScopes": {
49
- "type": "object",
50
- "description": "Component-level coordination scope mappings define which coordination object values a particular component can read and write, for each coordination type.",
51
- "additionalProperties": true,
52
- "required": [],
53
- "properties": {
54
- "dataset": { "$ref": "#/definitions/stringOrStringArray" },
55
- "obsLabelsType": { "$ref": "#/definitions/stringOrStringArray" },
56
- "obsType": { "$ref": "#/definitions/componentCoordinationScopeValue" },
57
- "featureType": { "$ref": "#/definitions/componentCoordinationScopeValue" },
58
- "featureValueType": { "$ref": "#/definitions/componentCoordinationScopeValue" },
59
- "embeddingType": { "$ref": "#/definitions/componentCoordinationScopeValue" },
60
- "embeddingZoom": { "$ref": "#/definitions/componentCoordinationScopeValue" },
61
- "embeddingRotation": { "$ref": "#/definitions/componentCoordinationScopeValue" },
62
- "embeddingTargetX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
63
- "embeddingTargetY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
64
- "embeddingTargetZ": { "$ref": "#/definitions/componentCoordinationScopeValue" },
65
- "embeddingObsSetPolygonsVisible": { "$ref": "#/definitions/componentCoordinationScopeValue" },
66
- "embeddingObsSetLabelsVisible": { "$ref": "#/definitions/componentCoordinationScopeValue" },
67
- "embeddingObsSetLabelSize": { "$ref": "#/definitions/componentCoordinationScopeValue" },
68
- "embeddingObsRadius": { "$ref": "#/definitions/componentCoordinationScopeValue" },
69
- "embeddingObsOpacity": { "$ref": "#/definitions/componentCoordinationScopeValue" },
70
- "embeddingObsRadiusMode": { "$ref": "#/definitions/componentCoordinationScopeValue" },
71
- "embeddingObsOpacityMode": { "$ref": "#/definitions/componentCoordinationScopeValue" },
72
- "spatialZoom": { "$ref": "#/definitions/componentCoordinationScopeValue" },
73
- "spatialRotation": { "$ref": "#/definitions/componentCoordinationScopeValue" },
74
- "spatialTargetX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
75
- "spatialTargetY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
76
- "spatialTargetZ": { "$ref": "#/definitions/componentCoordinationScopeValue" },
77
- "spatialRotationX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
78
- "spatialRotationY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
79
- "spatialRotationZ": { "$ref": "#/definitions/componentCoordinationScopeValue" },
80
- "spatialRotationOrbit": { "$ref": "#/definitions/componentCoordinationScopeValue" },
81
- "spatialOrbitAxis": { "$ref": "#/definitions/componentCoordinationScopeValue" },
82
- "spatialAxisFixed": { "$ref": "#/definitions/componentCoordinationScopeValue" },
83
- "heatmapZoomX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
84
- "heatmapZoomY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
85
- "heatmapTargetX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
86
- "heatmapTargetY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
87
- "obsFilter": { "$ref": "#/definitions/componentCoordinationScopeValue" },
88
- "obsHighlight": { "$ref": "#/definitions/componentCoordinationScopeValue" },
89
- "obsSetSelection": { "$ref": "#/definitions/componentCoordinationScopeValue" },
90
- "obsSetHighlight": { "$ref": "#/definitions/componentCoordinationScopeValue" },
91
- "obsSetColor": { "$ref": "#/definitions/componentCoordinationScopeValue" },
92
- "featureFilter": { "$ref": "#/definitions/componentCoordinationScopeValue" },
93
- "featureHighlight": { "$ref": "#/definitions/componentCoordinationScopeValue" },
94
- "featureSelection": { "$ref": "#/definitions/componentCoordinationScopeValue" },
95
- "featureValueTransform": { "$ref": "#/definitions/componentCoordinationScopeValue" },
96
- "featureValueTransformCoefficient": { "$ref": "#/definitions/componentCoordinationScopeValue" },
97
- "featureValueColormap": { "$ref": "#/definitions/componentCoordinationScopeValue" },
98
- "featureValueColormapRange": { "$ref": "#/definitions/componentCoordinationScopeValue" },
99
- "obsColorEncoding": { "$ref": "#/definitions/componentCoordinationScopeValue" },
100
- "spatialImageLayer": { "$ref": "#/definitions/componentCoordinationScopeValue" },
101
- "spatialSegmentationLayer": { "$ref": "#/definitions/componentCoordinationScopeValue" },
102
- "spatialPointLayer": { "$ref": "#/definitions/componentCoordinationScopeValue" },
103
- "spatialNeighborhoodLayer": { "$ref": "#/definitions/componentCoordinationScopeValue" },
104
- "genomicZoomX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
105
- "genomicZoomY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
106
- "genomicTargetX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
107
- "genomicTargetY": { "$ref": "#/definitions/componentCoordinationScopeValue" },
108
- "additionalObsSets": { "$ref": "#/definitions/componentCoordinationScopeValue" },
109
- "moleculeHighlight": { "$ref": "#/definitions/componentCoordinationScopeValue" },
110
- "gatingFeatureSelectionX": { "$ref": "#/definitions/componentCoordinationScopeValue" },
111
- "gatingFeatureSelectionY": { "$ref": "#/definitions/componentCoordinationScopeValue" }
112
- }
113
- }
114
- }
115
- }
116
- },
117
- "requestInit": {
118
- "type": "object",
119
- "description": "The properties of this object correspond to the parameters of the JavaScript fetch() function.",
120
- "additionalProperties": false,
121
- "required": [],
122
- "properties": {
123
- "method": {
124
- "type": "string"
125
- },
126
- "headers": {
127
- "type": "object"
128
- },
129
- "body": {
130
- "type": "string"
131
- },
132
- "mode": {
133
- "type": "string"
134
- },
135
- "credentials": {
136
- "type": "string"
137
- },
138
- "cache": {
139
- "type": "string"
140
- },
141
- "redirect": {
142
- "type": "string"
143
- },
144
- "referrer": {
145
- "type": "string"
146
- },
147
- "integrity": {
148
- "type": "string"
149
- }
150
- }
151
- },
152
- "rasterLayer": {
153
- "description": "The properties of this object are the rendering settings for the raster layer.",
154
- "additionalProperties": false,
155
- "required": ["channels", "colormap", "index", "opacity"],
156
- "properties": {
157
- "channels": {
158
- "type": "array",
159
- "items": {
160
- "type": "object",
161
- "additionalProperties": false,
162
- "required": ["selection"],
163
- "properties": {
164
- "color": {
165
- "type": "array",
166
- "items": { "type": "number" },
167
- "description": "The color to use when rendering this channel under the null colormap."
168
- },
169
- "selection": {
170
- "type": "object",
171
- "description": "Determines the channel selection, e.g. some Z and time slice."
172
- },
173
- "slider": {
174
- "type": "array",
175
- "items": { "type": "number" },
176
- "description": "Determines the range for color mapping."
177
- },
178
- "visible": {
179
- "type": "boolean",
180
- "description": "Determines whether this channel of the layer will be rendered in the spatial component."
181
- }
182
- }
183
- }
184
- },
185
- "colormap": {
186
- "oneOf": [
187
- {
188
- "type": "string",
189
- "description": "The name of the colormap to use for this layer."
190
- },
191
- {
192
- "type": "null",
193
- "description": "Use the solid color definitions."
194
- }
195
- ]
196
- },
197
- "transparentColor": {
198
- "oneOf": [
199
- {
200
- "type": "array",
201
- "minItems": 3,
202
- "maxItems": 3,
203
- "items": {
204
- "type": "number",
205
- "description": "One of R G or B (0 - 255)."
206
- },
207
- "description": "Determines the color to be set to opacity 0"
208
- },
209
- {
210
- "type": "null",
211
- "description": "No selection."
212
- }
213
- ]
214
- },
215
- "index": {
216
- "type": "number",
217
- "description": "The index of the layer among the array of layers available in the image file."
218
- },
219
- "opacity": {
220
- "type": "number"
221
- },
222
- "modelMatrix": {
223
- "oneOf": [
224
- {
225
- "type": "array",
226
- "minItems": 16,
227
- "maxItems": 16,
228
- "description": "transformation matrix for this layer"
229
- },
230
- {
231
- "type": "null",
232
- "description": "Use no transformation."
233
- }
234
- ]
235
- },
236
- "domainType": {
237
- "type": "string",
238
- "enum": ["Full", "Min/Max"],
239
- "description": "Determines the extent of the channel slider input element in the layer controller."
240
- },
241
- "resolution": {
242
- "type": "number",
243
- "description": "Resolution of 3D volumetric rendering"
244
- },
245
- "xSlice": {
246
- "oneOf": [
247
- {
248
- "type": "array",
249
- "minItems": 2,
250
- "maxItems": 2,
251
- "description": "Slice bounds"
252
- },
253
- {
254
- "type": "null",
255
- "description": "No slicing"
256
- }
257
- ]
258
- },
259
- "renderingMode": {
260
- "type": "string",
261
- "description": "Rendering mode of 3D volumetric rendering"
262
- },
263
- "ySlice": {
264
- "oneOf": [
265
- {
266
- "type": "array",
267
- "minItems": 2,
268
- "maxItems": 2,
269
- "description": "Slice bounds"
270
- },
271
- {
272
- "type": "null",
273
- "description": "No slicing"
274
- }
275
- ]
276
- },
277
- "zSlice": {
278
- "oneOf": [
279
- {
280
- "type": "array",
281
- "minItems": 2,
282
- "maxItems": 2,
283
- "description": "Slice bounds"
284
- },
285
- {
286
- "type": "null",
287
- "description": "No slicing"
288
- }
289
- ]
290
- },
291
- "type": {
292
- "type": "string",
293
- "enum": ["raster", "bitmask"]
294
- },
295
- "use3d": {
296
- "type": "boolean"
297
- },
298
- "visible": {
299
- "type": "boolean",
300
- "description": "Determines whether this entire layer will be rendered in the spatial component."
301
- }
302
- }
303
- },
304
- "moleculesLayer": {
305
- "type": "object",
306
- "description": "The properties of this object are the rendering settings for the molecules layer.",
307
- "additionalProperties": false,
308
- "required": ["visible", "radius", "opacity"],
309
- "properties": {
310
- "visible": {
311
- "type": "boolean"
312
- },
313
- "radius": {
314
- "type": "number"
315
- },
316
- "opacity": {
317
- "type": "number"
318
- }
319
- }
320
- },
321
- "cellsLayer": {
322
- "type": "object",
323
- "description": "The properties of this object are the rendering settings for the cells layer.",
324
- "additionalProperties": false,
325
- "required": ["visible", "stroked", "radius", "opacity"],
326
- "properties": {
327
- "visible": {
328
- "type": "boolean"
329
- },
330
- "stroked": {
331
- "type": "boolean"
332
- },
333
- "radius": {
334
- "type": "number"
335
- },
336
- "opacity": {
337
- "type": "number"
338
- }
339
- }
340
- },
341
- "neighborhoodsLayer": {
342
- "type": "object",
343
- "description": "The properties of this object are the rendering settings for the neighborhoods layer.",
344
- "additionalProperties": false,
345
- "required": ["visible"],
346
- "properties": {
347
- "visible": {
348
- "type": "boolean"
349
- }
350
- }
351
- },
352
- "spatialImageLayer": {
353
- "type": "array",
354
- "description": "Array of Spatial Layers",
355
- "items": {
356
- "$ref": "#/definitions/rasterLayer"
357
- }
358
- }
359
- },
360
- "additionalProperties": false,
361
- "required": ["version", "name", "datasets", "layout", "initStrategy"],
362
- "properties": {
363
- "name": { "type": "string" },
364
- "public": { "type": "boolean" },
365
- "description": { "type": "string" },
366
- "datasets": {
367
- "type": "array",
368
- "description": "The datasets array defines groups of files, where the files within each dataset reference the same entities (cells, genes, cell sets, etc).",
369
- "items": {
370
- "type": "object",
371
- "additionalProperties": false,
372
- "required": ["uid", "files"],
373
- "properties": {
374
- "uid": { "type": "string" },
375
- "name": { "type": "string" },
376
- "description": { "type": "string" },
377
- "files": {
378
- "type": "array",
379
- "items": {
380
- "type": "object",
381
- "additionalProperties": false,
382
- "required": ["fileType"],
383
- "properties": {
384
- "name": { "type": "string" },
385
- "type": { "type": "string" },
386
- "fileType": { "type": "string" },
387
- "url": { "type": "string" },
388
- "options": { "oneOf": [
389
- { "type": "object" },
390
- { "type": "array" }
391
- ] },
392
- "requestInit": { "$ref": "#/definitions/requestInit" },
393
- "coordinationValues": {
394
- "type": "object",
395
- "description": "Keys are coordination types. Values are coordination values. Used for matching views to files.",
396
- "patternProperties": {
397
- ".": {
398
- "oneOf": [
399
- { "type": "string" }
400
- ]
401
- }
402
- }
403
- }
404
- }
405
- }
406
- }
407
- }
408
- }
409
- },
410
- "coordinationSpace": {
411
- "type": "object",
412
- "description": "The coordination space stores the values for each scope of each coordination object.",
413
- "additionalProperties": true,
414
- "required": [],
415
- "properties": {
416
- "dataset": {
417
- "type": "object",
418
- "patternProperties": {
419
- ".": { "type": "string" }
420
- }
421
- },
422
- "obsType": {
423
- "type": "object",
424
- "patternProperties": {
425
- ".": { "type": "string" }
426
- }
427
- },
428
- "featureType": {
429
- "type": "object",
430
- "patternProperties": {
431
- ".": { "type": "string" }
432
- }
433
- },
434
- "featureValueType": {
435
- "type": "object",
436
- "patternProperties": {
437
- ".": { "type": "string" }
438
- }
439
- },
440
- "obsLabelsType": {
441
- "type": "object",
442
- "patternProperties": {
443
- ".": { "oneOf": [
444
- { "type": "null" },
445
- { "type": "string" }
446
- ] }
447
- }
448
- },
449
- "embeddingZoom": {
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
- "embeddingRotation": {
463
- "type": "object",
464
- "patternProperties": {
465
- ".": { "type": "number" }
466
- }
467
- },
468
- "embeddingTargetX": {
469
- "type": "object",
470
- "patternProperties": {
471
- ".": { "oneOf": [
472
- {
473
- "type": "null",
474
- "description": "If null is provided, value will be automatically set."
475
- },
476
- { "type": "number" }
477
- ]
478
- }
479
- }
480
- },
481
- "embeddingTargetY": {
482
- "type": "object",
483
- "patternProperties": {
484
- ".": { "oneOf": [
485
- {
486
- "type": "null",
487
- "description": "If null is provided, value will be automatically set."
488
- },
489
- { "type": "number" }
490
- ]
491
- }
492
- }
493
- },
494
- "embeddingTargetZ": {
495
- "type": "object",
496
- "patternProperties": {
497
- ".": { "type": "number" }
498
- }
499
- },
500
- "embeddingType": {
501
- "type": "object",
502
- "patternProperties": {
503
- ".": { "type": "string" }
504
- }
505
- },
506
- "embeddingObsSetPolygonsVisible": {
507
- "type": "object",
508
- "patternProperties": {
509
- ".": { "type": "boolean" }
510
- }
511
- },
512
- "embeddingObsSetLabelsVisible": {
513
- "type": "object",
514
- "patternProperties": {
515
- ".": { "type": "boolean" }
516
- }
517
- },
518
- "embeddingObsSetLabelSize": {
519
- "type": "object",
520
- "patternProperties": {
521
- ".": { "type": "number" }
522
- }
523
- },
524
- "embeddingObsRadius": {
525
- "type": "object",
526
- "patternProperties": {
527
- ".": {
528
- "type": "number",
529
- "description": "The cell radius value, used when embeddingCellRadiusMode is absolute or relative."
530
- }
531
- }
532
- },
533
- "embeddingObsOpacity": {
534
- "type": "object",
535
- "patternProperties": {
536
- ".": {
537
- "type": "number",
538
- "description": "The cell opacity value, used when embeddingCellOpacityMode is static."
539
- }
540
- }
541
- },
542
- "embeddingObsRadiusMode": {
543
- "type": "object",
544
- "patternProperties": {
545
- ".": {
546
- "type": "string",
547
- "enum": ["manual", "auto"],
548
- "description": "Should data points representing cells be assigned a static (manual) or dynamic (auto, based on zoom level and data extent) radius?"
549
- }
550
- }
551
- },
552
- "embeddingObsOpacityMode": {
553
- "type": "object",
554
- "patternProperties": {
555
- ".": {
556
- "type": "string",
557
- "enum": ["manual", "auto"],
558
- "description": "Should data points representing cells be assigned a static (manual) or dynamic (auto, based on zoom level and data extent) opacity?"
559
- }
560
- }
561
- },
562
- "spatialZoom": {
563
- "type": "object",
564
- "patternProperties": {
565
- ".": { "oneOf": [
566
- {
567
- "type": "null",
568
- "description": "If null is provided, value will be automatically set."
569
- },
570
- { "type": "number" }
571
- ]
572
- }
573
- }
574
- },
575
- "spatialRotation": {
576
- "type": "object",
577
- "patternProperties": {
578
- ".": { "type": "number" }
579
- }
580
- },
581
- "spatialTargetX": {
582
- "type": "object",
583
- "patternProperties": {
584
- ".": { "oneOf": [
585
- {
586
- "type": "null",
587
- "description": "If null is provided, value will be automatically set."
588
- },
589
- { "type": "number" }
590
- ]
591
- }
592
- }
593
- },
594
- "spatialTargetY": {
595
- "type": "object",
596
- "patternProperties": {
597
- ".": { "oneOf": [
598
- {
599
- "type": "null",
600
- "description": "If null is provided, value will be automatically set."
601
- },
602
- { "type": "number" }
603
- ]
604
- }
605
- }
606
- },
607
- "spatialTargetZ": {
608
- "type": "object",
609
- "patternProperties": {
610
- ".": { "oneOf": [
611
- {
612
- "type": "null",
613
- "description": "If null is provided, value will be automatically set."
614
- },
615
- { "type": "number" }
616
- ]
617
- }
618
- }
619
- },
620
- "spatialRotationX": {
621
- "type": "object",
622
- "patternProperties": {
623
- ".": {
624
- "oneOf": [
625
- {
626
- "type": "null",
627
- "description": "If null is provided, value will be automatically set. Only useful for 3D viewing."
628
- },
629
- { "type": "number" }
630
- ]
631
- }
632
- }
633
- },
634
- "spatialRotationY": {
635
- "type": "object",
636
- "patternProperties": {
637
- ".": {
638
- "oneOf": [
639
- {
640
- "type": "null",
641
- "description": "If null is provided, value will be automatically set. Only useful for 3D viewing."
642
- },
643
- { "type": "number" }
644
- ]
645
- }
646
- }
647
- },
648
- "spatialRotationZ": {
649
- "type": "object",
650
- "patternProperties": {
651
- ".": {
652
- "oneOf": [
653
- {
654
- "type": "null",
655
- "description": "If null is provided, value will be automatically set. Only useful for 3D viewing."
656
- },
657
- { "type": "number" }
658
- ]
659
- }
660
- }
661
- },
662
- "spatialRotationOrbit": {
663
- "type": "object",
664
- "patternProperties": {
665
- ".": {
666
- "oneOf": [
667
- {
668
- "type": "null",
669
- "description": "If null is provided, value will be automatically set. Only useful for 3D viewing."
670
- },
671
- { "type": "number" }
672
- ]
673
- }
674
- }
675
- },
676
- "spatialOrbitAxis": {
677
- "type": "object",
678
- "patternProperties": {
679
- ".": {
680
- "oneOf": [
681
- {
682
- "type": "null",
683
- "description": "If null is provided, value will be automatically set. Only useful for 3D viewing."
684
- },
685
- { "type": "string" }
686
- ]
687
- }
688
- }
689
- },
690
- "spatialAxisFixed": {
691
- "type": "object",
692
- "patternProperties": {
693
- ".": {
694
- "oneOf": [
695
- {
696
- "type": "null",
697
- "description": "Whether or not to have a fixed axis for the camera. Only useful for 3D viewing."
698
- },
699
- { "type": "boolean" }
700
- ]
701
- }
702
- }
703
- },
704
- "spatialImageLayer": {
705
- "type": "object",
706
- "patternProperties": {
707
- ".": {
708
- "oneOf": [
709
- {
710
- "type": "null",
711
- "description": "If null is provided and auto layer initialization is enabled, layers will be automatically initialized."
712
- },
713
- { "$ref": "#/definitions/spatialImageLayer" }
714
- ]
715
- }
716
- }
717
- },
718
- "spatialSegmentationLayer": {
719
- "type": "object",
720
- "patternProperties": {
721
- ".": {
722
- "oneOf": [
723
- {
724
- "type": "null",
725
- "description": "If null is provided and auto layer initialization is enabled, layers will be automatically initialized."
726
- },
727
- { "$ref": "#/definitions/cellsLayer" },
728
- { "$ref": "#/definitions/spatialImageLayer" }
729
- ]
730
- }
731
- }
732
- },
733
- "spatialNeighborhoodLayer": {
734
- "type": "object",
735
- "patternProperties": {
736
- ".": {
737
- "oneOf": [
738
- {
739
- "type": "null",
740
- "description": "If null is provided and auto layer initialization is enabled, layers will be automatically initialized."
741
- },
742
- { "$ref": "#/definitions/neighborhoodsLayer" }
743
- ]
744
- }
745
- }
746
- },
747
- "spatialPointLayer": {
748
- "type": "object",
749
- "patternProperties": {
750
- ".": {
751
- "oneOf": [
752
- {
753
- "type": "null",
754
- "description": "If null is provided and auto layer initialization is enabled, layers will be automatically initialized."
755
- },
756
- { "$ref": "#/definitions/moleculesLayer" }
757
- ]
758
- }
759
- }
760
- },
761
- "heatmapZoomX": {
762
- "type": "object",
763
- "patternProperties": {
764
- ".": { "type": "number" }
765
- }
766
- },
767
- "heatmapZoomY": {
768
- "type": "object",
769
- "patternProperties": {
770
- ".": { "type": "number" }
771
- }
772
- },
773
- "heatmapTargetX": {
774
- "type": "object",
775
- "patternProperties": {
776
- ".": { "type": "number" }
777
- }
778
- },
779
- "heatmapTargetY": {
780
- "type": "object",
781
- "patternProperties": {
782
- ".": { "type": "number" }
783
- }
784
- },
785
- "obsFilter": {
786
- "type": "object",
787
- "patternProperties": {
788
- ".": {
789
- "oneOf": [
790
- {
791
- "type": "null",
792
- "description": "If null is provided, no cells will be filtered out initially."
793
- },
794
- { "type": "array", "items": { "type": "string" } }
795
- ]
796
- }
797
- }
798
- },
799
- "obsHighlight": {
800
- "type": "object",
801
- "patternProperties": {
802
- ".": {
803
- "oneOf": [
804
- {
805
- "type": "null",
806
- "description": "If null is provided, no cell will be highlighted initially."
807
- },
808
- { "type": "string" }
809
- ]
810
- }
811
- }
812
- },
813
- "obsSetSelection": {
814
- "type": "object",
815
- "patternProperties": {
816
- ".": {
817
- "oneOf": [
818
- {
819
- "type": "null",
820
- "description": "If null is provided and auto cell set initialization is enabled, cell set selections will be automatically initialized."
821
- },
822
- { "type": "array" }
823
- ]
824
- }
825
- }
826
- },
827
- "obsSetHighlight": {
828
- "type": "object",
829
- "patternProperties": {
830
- ".": {
831
- "oneOf": [
832
- {
833
- "type": "null",
834
- "description": "If null is provided, no cell sets will be highlighted initially."
835
- },
836
- { "type": "string" }
837
- ]
838
- }
839
- }
840
- },
841
- "obsSetColor": {
842
- "type": "object",
843
- "patternProperties": {
844
- ".": {
845
- "oneOf": [
846
- {
847
- "type": "null",
848
- "description": "If null is provided, cell set colors will be automatically initialized."
849
- },
850
- {
851
- "type": "array",
852
- "items": {
853
- "type": "object",
854
- "additionalProperties": false,
855
- "required": ["path", "color"],
856
- "properties": {
857
- "path": {
858
- "type": "array",
859
- "items": { "type": "string" }
860
- },
861
- "color": {
862
- "type": "array",
863
- "items": { "type": "number" }
864
- }
865
- }
866
- }
867
- }
868
- ]
869
- }
870
- }
871
- },
872
- "obsColorEncoding": {
873
- "type": "object",
874
- "patternProperties": {
875
- ".": {
876
- "type": "string",
877
- "enum": ["geneSelection", "cellSetSelection"],
878
- "description": "How should data points representing cells be colored?"
879
- }
880
- }
881
- },
882
- "featureFilter": {
883
- "type": "object",
884
- "patternProperties": {
885
- ".": {
886
- "oneOf": [
887
- {
888
- "type": "null",
889
- "description": "If null is provided, no genes will be filtered out initially."
890
- },
891
- { "type": "array", "items": { "type": "string" } }
892
- ]
893
- }
894
- }
895
- },
896
- "featureHighlight": {
897
- "type": "object",
898
- "patternProperties": {
899
- ".": {
900
- "oneOf": [
901
- {
902
- "type": "null",
903
- "description": "If null is provided, no genes will be highlighted initially."
904
- },
905
- { "type": "string" }
906
- ]
907
- }
908
- }
909
- },
910
- "featureSelection": {
911
- "type": "object",
912
- "patternProperties": {
913
- ".": {
914
- "oneOf": [
915
- {
916
- "type": "null"
917
- },
918
- { "type": "array", "items": { "type": "string" } }
919
- ]
920
- }
921
- }
922
- },
923
- "featureValueTransform": {
924
- "type": "object",
925
- "patternProperties": {
926
- ".": {
927
- "oneOf": [
928
- {
929
- "type": "null"
930
- },
931
- { "type": "string", "enum": ["log1p", "arcsinh"] }
932
- ]
933
- }
934
- }
935
- },
936
- "featureValueTransformCoefficient": {
937
- "type": "object",
938
- "patternProperties": {
939
- ".": { "type": "number" }
940
- }
941
- },
942
- "featureValueColormap": {
943
- "type": "object",
944
- "patternProperties": {
945
- ".": { "type": "string" }
946
- }
947
- },
948
- "featureValueColormapRange": {
949
- "type": "object",
950
- "patternProperties": {
951
- ".": { "type": "array", "items": { "type": "number" } }
952
- }
953
- },
954
- "gatingFeatureSelectionX": {
955
- "type": "object",
956
- "patternProperties": {
957
- ".": {
958
- "oneOf": [
959
- {
960
- "type": "null"
961
- },
962
- { "type": "string" }
963
- ]
964
- }
965
- }
966
- },
967
- "gatingFeatureSelectionY": {
968
- "type": "object",
969
- "patternProperties": {
970
- ".": {
971
- "oneOf": [
972
- {
973
- "type": "null"
974
- },
975
- { "type": "string" }
976
- ]
977
- }
978
- }
979
- },
980
- "genomicZoomX": {
981
- "type": "object",
982
- "patternProperties": {
983
- ".": { "type": "number" }
984
- }
985
- },
986
- "genomicZoomY": {
987
- "type": "object",
988
- "patternProperties": {
989
- ".": { "type": "number" }
990
- }
991
- },
992
- "genomicTargetX": {
993
- "type": "object",
994
- "patternProperties": {
995
- ".": { "type": "number" }
996
- }
997
- },
998
- "genomicTargetY": {
999
- "type": "object",
1000
- "patternProperties": {
1001
- ".": { "type": "number" }
1002
- }
1003
- },
1004
- "additionalObsSets": {
1005
- "type": "object",
1006
- "patternProperties": {
1007
- ".": {
1008
- "oneOf": [
1009
- {
1010
- "type": "null",
1011
- "description": "If null is provided, no cell will be highlighted initially."
1012
- },
1013
- {
1014
- "$ref": "https://github.com/vitessce/vitessce/#cell-sets"
1015
- }
1016
- ]
1017
- }
1018
- }
1019
- },
1020
- "moleculeHighlight": {
1021
- "type": "object",
1022
- "patternProperties": {
1023
- ".": {
1024
- "oneOf": [
1025
- {
1026
- "type": "null",
1027
- "description": "If null is provided, no molecule will be highlighted initially."
1028
- },
1029
- { "type": "string" }
1030
- ]
1031
- }
1032
- }
1033
- }
1034
- }
1035
- },
1036
- "layout": { "$ref": "#/definitions/components" },
1037
- "initStrategy": {
1038
- "type": "string",
1039
- "enum": ["none", "auto"],
1040
- "description": "The initialization strategy determines how missing coordination objects and coordination scope mappings are initially filled in."
1041
- },
1042
- "version": {
1043
- "type": "string",
1044
- "enum": ["1.0.15"],
1045
- "description": "The schema version for the view config."
1046
- }
1047
- }
1048
- }