@loveluthien/carta-frontend 6.0.0-dev

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 (148) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +34 -0
  2. package/.github/pull_request_template.md +23 -0
  3. package/.github/workflows/continuous_integration.yml +139 -0
  4. package/.github/workflows/deploy.yml +30 -0
  5. package/.husky/pre-commit +16 -0
  6. package/.husky/pre-push +42 -0
  7. package/.prettierignore +1 -0
  8. package/.prettierrc.json +18 -0
  9. package/CHANGELOG.md +363 -0
  10. package/COPYING.md +636 -0
  11. package/README.md +112 -0
  12. package/babel.config.json +10 -0
  13. package/build/ast_wrapper.wasm +0 -0
  14. package/build/carta_computation.wasm +0 -0
  15. package/build/carta_icon_128px.png +0 -0
  16. package/build/carta_logo.png +0 -0
  17. package/build/gsl_wrapper.wasm +0 -0
  18. package/build/index.html +147 -0
  19. package/build/manifest.json +15 -0
  20. package/build/robots.txt +3 -0
  21. package/build/static/css/546.aa44a897.css +1 -0
  22. package/build/static/css/async/359.4d8f6ff7.css +1 -0
  23. package/build/static/css/async/403.ea9edfac.css +1 -0
  24. package/build/static/css/async/462.8bde08e0.css +1 -0
  25. package/build/static/css/index.c1f77b92.css +1 -0
  26. package/build/static/font/blueprint-icons-16.5fb1af27.woff2 +0 -0
  27. package/build/static/font/blueprint-icons-16.79f603d1.woff +0 -0
  28. package/build/static/font/blueprint-icons-16.83d51978.eot +0 -0
  29. package/build/static/font/blueprint-icons-16.af0c342f.ttf +0 -0
  30. package/build/static/font/blueprint-icons-20.83fddc09.ttf +0 -0
  31. package/build/static/font/blueprint-icons-20.9a51bc58.woff +0 -0
  32. package/build/static/font/blueprint-icons-20.d61315fe.eot +0 -0
  33. package/build/static/font/blueprint-icons-20.ebf16e9a.woff2 +0 -0
  34. package/build/static/image/allmaps.03f2ba92.png +0 -0
  35. package/build/static/image/gamma.6fca425b.png +0 -0
  36. package/build/static/image/linear.c7941b64.png +0 -0
  37. package/build/static/image/log.7fce6aee.png +0 -0
  38. package/build/static/image/power.5dac9727.png +0 -0
  39. package/build/static/image/sqrt.0ec2b3f1.png +0 -0
  40. package/build/static/image/squared.798b23aa.png +0 -0
  41. package/build/static/js/546.b5841ade.js +489 -0
  42. package/build/static/js/546.b5841ade.js.LICENSE.txt +925 -0
  43. package/build/static/js/async/359.97257512.js +1 -0
  44. package/build/static/js/async/403.b00f768c.js +1 -0
  45. package/build/static/js/async/462.92c07a07.js +1 -0
  46. package/build/static/js/async/905.70044ee8.js +1 -0
  47. package/build/static/js/async/907.dc17f1d2.js +1 -0
  48. package/build/static/js/async/blueprint-icons-16px-paths.e17db832.js +1 -0
  49. package/build/static/js/async/blueprint-icons-20px-paths.6ad43f5f.js +1 -0
  50. package/build/static/js/async/blueprint-icons-all-paths-loader.61cc0f7b.js +1 -0
  51. package/build/static/js/async/blueprint-icons-all-paths.0c699441.js +1 -0
  52. package/build/static/js/async/blueprint-icons-split-paths-by-size-loader.5cff79f5.js +1 -0
  53. package/build/static/js/index.8fc34b4d.js +1344 -0
  54. package/build/static/js/index.9a30d560.worker.js +1 -0
  55. package/build/static/js/zfp_wrapper.wasm +0 -0
  56. package/build/static/svg/blueprint-icons-16.130888ef.svg +2097 -0
  57. package/build/static/svg/blueprint-icons-20.c8456d56.svg +2097 -0
  58. package/build/zfp_wrapper.wasm +0 -0
  59. package/declarations.d.ts +18 -0
  60. package/docs_website/.prettierignore +1 -0
  61. package/docs_website/api/api.md +13 -0
  62. package/docs_website/babel.config.js +3 -0
  63. package/docs_website/docs/assets/enable-code-snippets.png +0 -0
  64. package/docs_website/docs/code-snippet-tutorial/_category_.json +8 -0
  65. package/docs_website/docs/code-snippet-tutorial/basics.md +97 -0
  66. package/docs_website/docs/code-snippet-tutorial/image-blending.mdx +57 -0
  67. package/docs_website/docs/code-snippet-tutorial/image-fitting.mdx +44 -0
  68. package/docs_website/docs/code-snippet-tutorial/image-properties.mdx +84 -0
  69. package/docs_website/docs/code-snippet-tutorial/moment-images.mdx +31 -0
  70. package/docs_website/docs/code-snippet-tutorial/pv-images.mdx +28 -0
  71. package/docs_website/docs/code-snippet-tutorial/quick-start.mdx +82 -0
  72. package/docs_website/docs/code-snippet-tutorial/regions.mdx +49 -0
  73. package/docs_website/docs/contributing/_category_.json +7 -0
  74. package/docs_website/docs/contributing/developer-tips.md +61 -0
  75. package/docs_website/docs/contributing/documentation-guidelines.md +87 -0
  76. package/docs_website/docs/contributing/github-workflow.md +146 -0
  77. package/docs_website/docs/contributing/release-guidelines.md +73 -0
  78. package/docs_website/docs/contributing/unit-test-guidelines.md +79 -0
  79. package/docs_website/docs/documents.mdx +15 -0
  80. package/docs_website/docusaurus.config.js +167 -0
  81. package/docs_website/package-lock.json +16769 -0
  82. package/docs_website/package.json +121 -0
  83. package/docs_website/patches/@docusaurus+core+3.9.2.patch +20 -0
  84. package/docs_website/sidebars.js +33 -0
  85. package/docs_website/static/.nojekyll +0 -0
  86. package/docs_website/static/img/carta_icon_128px.png +0 -0
  87. package/docs_website/versioned_docs/version-4.1.0/api-packages.json +1 -0
  88. package/docs_website/versioned_docs/version-4.1.0/api-typedoc.json +214112 -0
  89. package/docs_website/versioned_docs/version-4.1.0/assets/enable-code-snippets.png +0 -0
  90. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/_category_.json +8 -0
  91. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/basics.md +97 -0
  92. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/image-fitting.mdx +42 -0
  93. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/image-properties.mdx +86 -0
  94. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/moment-images.mdx +31 -0
  95. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/pv-images.mdx +28 -0
  96. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/quick-start.mdx +82 -0
  97. package/docs_website/versioned_docs/version-4.1.0/code-snippet-tutorial/regions.mdx +49 -0
  98. package/docs_website/versioned_docs/version-4.1.0/contributing/_category_.json +7 -0
  99. package/docs_website/versioned_docs/version-4.1.0/contributing/developer-tips.md +36 -0
  100. package/docs_website/versioned_docs/version-4.1.0/contributing/documentation-guidelines.md +87 -0
  101. package/docs_website/versioned_docs/version-4.1.0/contributing/github-workflow.md +141 -0
  102. package/docs_website/versioned_docs/version-4.1.0/contributing/release-guidelines.md +73 -0
  103. package/docs_website/versioned_docs/version-4.1.0/contributing/unit-test-guidelines.md +79 -0
  104. package/docs_website/versioned_docs/version-4.1.0/documents.mdx +15 -0
  105. package/docs_website/versioned_docs/version-5.0.0/api-packages.json +1 -0
  106. package/docs_website/versioned_docs/version-5.0.0/api-typedoc.json +315266 -0
  107. package/docs_website/versioned_docs/version-5.0.0/assets/enable-code-snippets.png +0 -0
  108. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/_category_.json +8 -0
  109. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/basics.md +97 -0
  110. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-blending.mdx +57 -0
  111. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-fitting.mdx +44 -0
  112. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/image-properties.mdx +86 -0
  113. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/moment-images.mdx +31 -0
  114. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/pv-images.mdx +28 -0
  115. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/quick-start.mdx +82 -0
  116. package/docs_website/versioned_docs/version-5.0.0/code-snippet-tutorial/regions.mdx +49 -0
  117. package/docs_website/versioned_docs/version-5.0.0/contributing/_category_.json +7 -0
  118. package/docs_website/versioned_docs/version-5.0.0/contributing/developer-tips.md +36 -0
  119. package/docs_website/versioned_docs/version-5.0.0/contributing/documentation-guidelines.md +87 -0
  120. package/docs_website/versioned_docs/version-5.0.0/contributing/github-workflow.md +141 -0
  121. package/docs_website/versioned_docs/version-5.0.0/contributing/release-guidelines.md +73 -0
  122. package/docs_website/versioned_docs/version-5.0.0/contributing/unit-test-guidelines.md +79 -0
  123. package/docs_website/versioned_docs/version-5.0.0/documents.mdx +15 -0
  124. package/docs_website/versioned_sidebars/version-4.1.0-sidebars.json +8 -0
  125. package/docs_website/versioned_sidebars/version-5.0.0-sidebars.json +8 -0
  126. package/docs_website/versions.json +4 -0
  127. package/eslint.config.mjs +86 -0
  128. package/jest.config.js +101 -0
  129. package/package.json +186 -0
  130. package/patches/golden-layout+1.5.9.patch +24 -0
  131. package/patches/react-split-pane+0.1.92.patch +20 -0
  132. package/rsbuild.config.ts +75 -0
  133. package/schemas/.github/workflows/AddToCartaVisProject.yml +23 -0
  134. package/schemas/.prettierrc.json +18 -0
  135. package/schemas/CMakeLists.txt +15 -0
  136. package/schemas/README.md +1 -0
  137. package/schemas/_config.yml +7 -0
  138. package/schemas/controller_config_schema_1.json +343 -0
  139. package/schemas/controller_config_schema_2.json +685 -0
  140. package/schemas/layout_schema_2.json +440 -0
  141. package/schemas/preference_backend_schema_1.json +81 -0
  142. package/schemas/preference_backend_schema_2.json +118 -0
  143. package/schemas/preference_schema_1.json +410 -0
  144. package/schemas/preferences_schema_2.json +421 -0
  145. package/schemas/schemacompiler.c +200 -0
  146. package/schemas/snippet_schema_1.json +45 -0
  147. package/schemas/workspace_schema_1.json +573 -0
  148. package/scripts/make_colormaps.py +161 -0
@@ -0,0 +1,440 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Layout",
4
+ "description": "Schema for CARTA Layout (Version 2)",
5
+ "$id": "https://cartavis.org/schemas/layout_schema_2.json",
6
+ "type": "object",
7
+ "definitions": {
8
+ "percentage-value": {
9
+ "description": "Describes a percentage value from 0 to 100",
10
+ "type": "number",
11
+ "minimum": 0,
12
+ "maximum": 100
13
+ },
14
+ "plot-type": {
15
+ "description": "Describes a plot type",
16
+ "enum": ["Steps", "Lines", "Points"]
17
+ },
18
+ "line-width": {
19
+ "description": "Describes a plot line width",
20
+ "type": "number",
21
+ "minimum": 0.5,
22
+ "maximum": 10.0
23
+ },
24
+ "point-size": {
25
+ "description": "Describes a plot point size",
26
+ "type": "number",
27
+ "minimum": 0.5,
28
+ "maximum": 10.0
29
+ },
30
+ "opacity": {
31
+ "description": "Describes an opacity value between zero and one",
32
+ "type": "number",
33
+ "minimum": 0,
34
+ "maximum": 1
35
+ },
36
+ "spatial-coord": {
37
+ "description": "Spatial coordinate",
38
+ "type": "string",
39
+ "enum": ["x", "Ix", "Qx", "Ux", "Vx", "y", "Iy", "Qy", "Uy", "Vy"]
40
+ },
41
+ "spectral-coord": {
42
+ "description": "Spectral coordinate",
43
+ "type": "string",
44
+ "enum": ["z", "Iz", "Qz", "Uz", "Vz"]
45
+ },
46
+ "basic-widget": {
47
+ "type": "object",
48
+ "description": "Widgets that have no associated settings",
49
+ "required": ["type", "id"],
50
+ "properties": {
51
+ "type": {
52
+ "const": "component"
53
+ },
54
+ "id": {
55
+ "type": "string",
56
+ "enum": ["floating-settings", "layer-list", "log", "animator", "region-list", "image-view", "stats", "spectral-line-query", "cursor-info", "catalog-overlay", "catalog-plot"]
57
+ },
58
+ "width": {
59
+ "$ref": "#/definitions/percentage-value"
60
+ },
61
+ "height": {
62
+ "$ref": "#/definitions/percentage-value"
63
+ }
64
+ }
65
+ },
66
+ "spectral-profiler": {
67
+ "type": "object",
68
+ "description": "Spectral profiler widgets",
69
+ "required": ["type", "id"],
70
+ "properties": {
71
+ "type": {
72
+ "const": "component"
73
+ },
74
+ "id": {
75
+ "const": "spectral-profiler"
76
+ },
77
+ "widgetSettings": {
78
+ "type": "object",
79
+ "properties": {
80
+ "coordinate": {
81
+ "$ref": "#/definitions/spectral-coord"
82
+ },
83
+ "primaryLineColor": {
84
+ "type": "string"
85
+ },
86
+ "lineWidth": {
87
+ "$ref": "#/definitions/line-width"
88
+ },
89
+ "linePlotPointSize": {
90
+ "$ref": "#/definitions/point-size"
91
+ },
92
+ "meanRmsVisible": {
93
+ "type": "boolean"
94
+ },
95
+ "plotType": {
96
+ "$ref": "#/definitions/plot-type"
97
+ },
98
+ "minXVal": {
99
+ "type": "number"
100
+ },
101
+ "maxXVal": {
102
+ "type": "number"
103
+ },
104
+ "minYVal": {
105
+ "type": "number"
106
+ },
107
+ "maxYVal": {
108
+ "type": "number"
109
+ }
110
+ }
111
+ },
112
+ "width": {
113
+ "$ref": "#/definitions/percentage-value"
114
+ },
115
+ "height": {
116
+ "$ref": "#/definitions/percentage-value"
117
+ }
118
+ }
119
+ },
120
+ "spatial-profiler": {
121
+ "type": "object",
122
+ "description": "Spatial profiler widgets",
123
+ "required": ["type", "id"],
124
+ "properties": {
125
+ "type": {
126
+ "const": "component"
127
+ },
128
+ "id": {
129
+ "const": "spatial-profiler"
130
+ },
131
+ "widgetSettings": {
132
+ "type": "object",
133
+ "properties": {
134
+ "coordinate": {
135
+ "$ref": "#/definitions/spatial-coord"
136
+ },
137
+ "primaryLineColor": {
138
+ "type": "string"
139
+ },
140
+ "lineWidth": {
141
+ "$ref": "#/definitions/line-width"
142
+ },
143
+ "linePlotPointSize": {
144
+ "$ref": "#/definitions/point-size"
145
+ },
146
+ "wcsAxisVisible": {
147
+ "type": "boolean"
148
+ },
149
+ "meanRmsVisible": {
150
+ "type": "boolean"
151
+ },
152
+ "plotType": {
153
+ "$ref": "#/definitions/plot-type"
154
+ },
155
+ "minXVal": {
156
+ "type": "number"
157
+ },
158
+ "maxXVal": {
159
+ "type": "number"
160
+ },
161
+ "minYVal": {
162
+ "type": "number"
163
+ },
164
+ "maxYVal": {
165
+ "type": "number"
166
+ }
167
+ }
168
+ },
169
+ "coord": {
170
+ "description": "Legacy V1 entry (replaced by widgetSettings.coordinate",
171
+ "$ref": "#/definitions/spatial-coord"
172
+ },
173
+ "width": {
174
+ "$ref": "#/definitions/percentage-value"
175
+ },
176
+ "height": {
177
+ "$ref": "#/definitions/percentage-value"
178
+ }
179
+ }
180
+ },
181
+ "render-config": {
182
+ "type": "object",
183
+ "description": "Render config widgets",
184
+ "required": ["type", "id"],
185
+ "properties": {
186
+ "type": {
187
+ "const": "component"
188
+ },
189
+ "id": {
190
+ "const": "render-config"
191
+ },
192
+ "widgetSettings": {
193
+ "type": "object",
194
+ "properties": {
195
+ "primaryLineColor": {
196
+ "type": "string"
197
+ },
198
+ "lineWidth": {
199
+ "$ref": "#/definitions/line-width"
200
+ },
201
+ "linePlotPointSize": {
202
+ "$ref": "#/definitions/point-size"
203
+ },
204
+ "logScaleY": {
205
+ "type": "boolean"
206
+ },
207
+ "markerTextVisible": {
208
+ "type": "boolean"
209
+ },
210
+ "meanRmsVisible": {
211
+ "type": "boolean"
212
+ },
213
+ "plotType": {
214
+ "$ref": "#/definitions/plot-type"
215
+ },
216
+ "minXVal": {
217
+ "type": "number"
218
+ },
219
+ "maxXVal": {
220
+ "type": "number"
221
+ },
222
+ "minYVal": {
223
+ "type": "number"
224
+ },
225
+ "maxYVal": {
226
+ "type": "number"
227
+ }
228
+ }
229
+ },
230
+ "width": {
231
+ "$ref": "#/definitions/percentage-value"
232
+ },
233
+ "height": {
234
+ "$ref": "#/definitions/percentage-value"
235
+ }
236
+ }
237
+ },
238
+ "histogram": {
239
+ "type": "object",
240
+ "description": "Histogram widgets",
241
+ "required": ["type", "id"],
242
+ "properties": {
243
+ "type": {
244
+ "const": "component"
245
+ },
246
+ "id": {
247
+ "const": "histogram"
248
+ },
249
+ "widgetSettings": {
250
+ "type": "object",
251
+ "properties": {
252
+ "primaryLineColor": {
253
+ "type": "string"
254
+ },
255
+ "lineWidth": {
256
+ "$ref": "#/definitions/line-width"
257
+ },
258
+ "linePlotPointSize": {
259
+ "$ref": "#/definitions/point-size"
260
+ },
261
+ "logScaleY": {
262
+ "type": "boolean"
263
+ },
264
+ "plotType": {
265
+ "$ref": "#/definitions/plot-type"
266
+ },
267
+ "minXVal": {
268
+ "type": "number"
269
+ },
270
+ "maxXVal": {
271
+ "type": "number"
272
+ },
273
+ "minYVal": {
274
+ "type": "number"
275
+ },
276
+ "maxYVal": {
277
+ "type": "number"
278
+ }
279
+ }
280
+ },
281
+ "width": {
282
+ "$ref": "#/definitions/percentage-value"
283
+ },
284
+ "height": {
285
+ "$ref": "#/definitions/percentage-value"
286
+ }
287
+ }
288
+ },
289
+ "stokes": {
290
+ "type": "object",
291
+ "description": "Stokes analysis widgets",
292
+ "required": ["type", "id"],
293
+ "properties": {
294
+ "type": {
295
+ "const": "component"
296
+ },
297
+ "id": {
298
+ "const": "stokes"
299
+ },
300
+ "widgetSettings": {
301
+ "type": "object",
302
+ "properties": {
303
+ "primaryLineColor": {
304
+ "type": "string"
305
+ },
306
+ "secondaryLineColor": {
307
+ "type": "string"
308
+ },
309
+ "lineWidth": {
310
+ "$ref": "#/definitions/line-width"
311
+ },
312
+ "linePlotPointSize": {
313
+ "$ref": "#/definitions/point-size"
314
+ },
315
+ "plotType": {
316
+ "$ref": "#/definitions/plot-type"
317
+ },
318
+ "colorMap": {
319
+ "type": "string"
320
+ },
321
+ "scatterPlotPointSize": {
322
+ "$ref": "#/definitions/point-size"
323
+ },
324
+ "pointTransparency": {
325
+ "$ref": "#/definitions/opacity"
326
+ },
327
+ "equalAxes": {
328
+ "type": "boolean"
329
+ }
330
+ }
331
+ },
332
+ "width": {
333
+ "$ref": "#/definitions/percentage-value"
334
+ },
335
+ "height": {
336
+ "$ref": "#/definitions/percentage-value"
337
+ }
338
+ }
339
+ },
340
+ "carta-widget": {
341
+ "description": "A CARTA widget",
342
+ "oneOf": [
343
+ {
344
+ "$ref": "#/definitions/basic-widget"
345
+ },
346
+ {
347
+ "$ref": "#/definitions/spectral-profiler"
348
+ },
349
+ {
350
+ "$ref": "#/definitions/spatial-profiler"
351
+ },
352
+ {
353
+ "$ref": "#/definitions/render-config"
354
+ },
355
+ {
356
+ "$ref": "#/definitions/histogram"
357
+ },
358
+ {
359
+ "$ref": "#/definitions/stokes"
360
+ }
361
+ ]
362
+ },
363
+ "gl-container": {
364
+ "description": "A GoldenLayout container",
365
+ "type": "object",
366
+ "required": ["type", "content"],
367
+ "additionalProperties": false,
368
+ "properties": {
369
+ "type": {
370
+ "enum": ["row", "column", "stack"]
371
+ },
372
+ "content": {
373
+ "type": "array",
374
+ "minItems": 1,
375
+ "items": {
376
+ "oneOf": [
377
+ {
378
+ "$ref": "#/definitions/gl-container"
379
+ },
380
+ {
381
+ "$ref": "#/definitions/carta-widget"
382
+ }
383
+ ]
384
+ }
385
+ },
386
+ "width": {
387
+ "$ref": "#/definitions/percentage-value"
388
+ },
389
+ "height": {
390
+ "$ref": "#/definitions/percentage-value"
391
+ },
392
+ "activeItemIndex": {
393
+ "type": "integer",
394
+ "minimum": 0
395
+ }
396
+ }
397
+ }
398
+ },
399
+ "required": ["layoutVersion", "docked", "floating"],
400
+ "properties": {
401
+ "layoutVersion": {
402
+ "description": "The version of the layout contained",
403
+ "type": "integer",
404
+ "minimum": 1,
405
+ "maximum": 2
406
+ },
407
+ "docked": {
408
+ "description": "GoldenLayout widget hierarchy",
409
+ "$ref": "#/definitions/gl-container"
410
+ },
411
+ "floating": {
412
+ "description": "List of floating widgets",
413
+ "type": "array",
414
+ "items": {
415
+ "allOf": [
416
+ {
417
+ "$ref": "#/definitions/carta-widget"
418
+ },
419
+ {
420
+ "type": "object",
421
+ "properties": {
422
+ "defaultX": {
423
+ "type": "number"
424
+ },
425
+ "defaultY": {
426
+ "type": "number"
427
+ },
428
+ "defaultWidth": {
429
+ "type": "number"
430
+ },
431
+ "defaultHeight": {
432
+ "type": "number"
433
+ }
434
+ }
435
+ }
436
+ ]
437
+ }
438
+ }
439
+ }
440
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Backend preferences",
4
+ "description": "Schema for CARTA backend preferences (Version 1)",
5
+ "$id": "https://cartavis.org/schemas/preference_backend_schema_1.json",
6
+ "required": [],
7
+ "properties": {
8
+ "verbosity": {
9
+ "type": "integer",
10
+ "enum": [0, 1, 2, 3, 4, 5],
11
+ "default": 4
12
+ },
13
+ "no_log": {
14
+ "type": "boolean",
15
+ "default": true
16
+ },
17
+ "log_performance": {
18
+ "type": "boolean",
19
+ "default": false
20
+ },
21
+ "log_protocol_messages": {
22
+ "type": "boolean",
23
+ "default": false
24
+ },
25
+ "no_http": {
26
+ "type": "boolean",
27
+ "default": false
28
+ },
29
+ "no_browser": {
30
+ "type": "boolean",
31
+ "default": false
32
+ },
33
+ "browser": {
34
+ "type": "string",
35
+ "default": ""
36
+ },
37
+ "host": {
38
+ "type": "string",
39
+ "minLength": 1,
40
+ "default": "0.0.0.0"
41
+ },
42
+ "port": {
43
+ "type": ["integer", "array"],
44
+ "default": 3002
45
+ },
46
+ "grpc_port": {
47
+ "type": "integer",
48
+ "default": -1
49
+ },
50
+ "omp_threads": {
51
+ "type": "integer",
52
+ "default": -1
53
+ },
54
+ "top_level_folder": {
55
+ "type": "string",
56
+ "minLength": 1,
57
+ "default": "/"
58
+ },
59
+ "frontend_folder": {
60
+ "type": "string",
61
+ "minLength": 1,
62
+ "default": ""
63
+ },
64
+ "exit_timeout": {
65
+ "type": "integer",
66
+ "default": -1
67
+ },
68
+ "initial_timeout": {
69
+ "type": "integer",
70
+ "default": -1
71
+ },
72
+ "idle_timeout": {
73
+ "type": "integer",
74
+ "default": -1
75
+ },
76
+ "read_only_mode": {
77
+ "type": "boolean",
78
+ "default": false
79
+ }
80
+ }
81
+ }
@@ -0,0 +1,118 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "title": "Backend preferences",
4
+ "description": "Schema for CARTA backend preferences (Version 2)",
5
+ "$id": "https://cartavis.org/schemas/preference_backend_schema_2.json",
6
+ "type": "object",
7
+ "properties": {
8
+ "backendConfigVersion": {
9
+ "description": "The version of this backend configuration",
10
+ "type": "string",
11
+ "default": "2.0"
12
+ },
13
+ "verbosity": {
14
+ "type": "integer",
15
+ "enum": [0, 1, 2, 3, 4, 5],
16
+ "default": 4
17
+ },
18
+ "no_log": {
19
+ "type": "boolean",
20
+ "default": true
21
+ },
22
+ "log_performance": {
23
+ "type": "boolean",
24
+ "default": false
25
+ },
26
+ "log_protocol_messages": {
27
+ "type": "boolean",
28
+ "default": false
29
+ },
30
+ "no_frontend": {
31
+ "type": "boolean",
32
+ "default": false
33
+ },
34
+ "no_database": {
35
+ "type": "boolean",
36
+ "default": false
37
+ },
38
+ "no_http": {
39
+ "type": "boolean",
40
+ "default": false
41
+ },
42
+ "no_browser": {
43
+ "type": "boolean",
44
+ "default": false
45
+ },
46
+ "browser": {
47
+ "type": "string",
48
+ "default": ""
49
+ },
50
+ "host": {
51
+ "type": "string",
52
+ "minLength": 1,
53
+ "default": "0.0.0.0"
54
+ },
55
+ "port": {
56
+ "anyOf": [
57
+ {
58
+ "type": "integer"
59
+ },
60
+ {
61
+ "type": "array",
62
+ "items": {
63
+ "type": "integer"
64
+ }
65
+ }
66
+ ],
67
+ "default": 3002
68
+ },
69
+ "omp_threads": {
70
+ "type": "integer",
71
+ "default": -1
72
+ },
73
+ "top_level_folder": {
74
+ "type": "string",
75
+ "minLength": 1,
76
+ "default": "/"
77
+ },
78
+ "frontend_folder": {
79
+ "type": "string",
80
+ "minLength": 1,
81
+ "default": ""
82
+ },
83
+ "exit_timeout": {
84
+ "type": "integer",
85
+ "default": -1
86
+ },
87
+ "initial_timeout": {
88
+ "type": "integer",
89
+ "default": -1
90
+ },
91
+ "idle_timeout": {
92
+ "type": "integer",
93
+ "default": -1
94
+ },
95
+ "read_only_mode": {
96
+ "type": "boolean",
97
+ "default": false
98
+ },
99
+ "starting_folder": {
100
+ "type": "string",
101
+ "minLength": 1,
102
+ "default": ""
103
+ },
104
+ "event_thread_count": {
105
+ "type": "integer",
106
+ "default": -1
107
+ },
108
+ "enable_scripting": {
109
+ "type": "boolean",
110
+ "default": false
111
+ },
112
+ "http_url_prefix": {
113
+ "type": "string",
114
+ "minLength": 1,
115
+ "default": ""
116
+ }
117
+ }
118
+ }