@genome-spy/app 0.74.0 → 0.76.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 (66) hide show
  1. package/dist/AbortablePromiseCache-beUIcZcW.js +96 -0
  2. package/dist/agentApi-CzdacisO.js +25226 -0
  3. package/dist/agentApi.es.js +9460 -0
  4. package/dist/agentShared.es.js +4742 -0
  5. package/dist/{blosc-oa0DlI6G.js → blosc-BX4BJ8sR.js} +1 -1
  6. package/dist/componentStyles-CIXoKEp0.js +2182 -0
  7. package/dist/dialog.es.js +377 -0
  8. package/dist/{esm-n0auOe11.js → esm-BH0wx5y-.js} +1 -1
  9. package/dist/esm-BLfLaJtE.js +121 -0
  10. package/dist/{esm-D-WfYOx7.js → esm-BWsx1OJ2.js} +25 -25
  11. package/dist/{browser-Dvlo92rx.js → esm-BY4T8YoD.js} +38 -22
  12. package/dist/esm-CZvS2Ldm.js +155 -0
  13. package/dist/esm-CdIesJ1z.js +461 -0
  14. package/dist/{esm-DCCYNvaz.js → esm-Cr7pLUfG.js} +50 -50
  15. package/dist/esm-D-y0Ce1M.js +573 -0
  16. package/dist/esm-DHOMWRoL.js +1426 -0
  17. package/dist/{esm-Cmo4qEPr.js → esm-DJUb6vy0.js} +5 -5
  18. package/dist/esm-DPS6pYKF.js +1248 -0
  19. package/dist/esm-DRZ5LLNH.js +142 -0
  20. package/dist/esm-DjF6pKy5.js +369 -0
  21. package/dist/esm-PDPkTR1_.js +1015 -0
  22. package/dist/esm-s_SlArJ8.js +298 -0
  23. package/dist/index.es.js +7910 -28759
  24. package/dist/index.js +1135 -736
  25. package/dist/lit-ymUSmGBw.js +510 -0
  26. package/dist/{lz4-jZ0zyLBa.js → lz4-BSYl80V8.js} +1 -1
  27. package/dist/parquetRead-m8-8_SpH.js +1609 -0
  28. package/dist/schema.json +665 -97
  29. package/dist/style.css +1 -1
  30. package/dist/viewUtils-C5htqZCm.js +14147 -0
  31. package/dist/{zstd-C6ksIG9r.js → zstd-BAfRM3IH.js} +1 -1
  32. package/package.json +30 -5
  33. package/src/agentApi/index.d.ts +123 -0
  34. package/src/agentShared/index.d.ts +97 -0
  35. package/src/agentShared/types.d.ts +8 -0
  36. package/src/appTypes.d.ts +75 -0
  37. package/src/bookmark/databaseSchema.d.ts +33 -0
  38. package/src/charts/boxplotTypes.d.ts +15 -0
  39. package/src/charts/sampleAttributePlotTypes.d.ts +149 -0
  40. package/src/coreSpecAugmentation.d.ts +29 -0
  41. package/src/dialog/index.d.ts +5 -0
  42. package/src/embedTypes.d.ts +9 -0
  43. package/src/index.d.ts +16 -0
  44. package/src/sampleView/sampleViewTypes.d.ts +174 -0
  45. package/src/sampleView/state/payloadTypes.d.ts +400 -0
  46. package/src/sampleView/state/sampleState.d.ts +76 -0
  47. package/src/sampleView/types.d.ts +125 -0
  48. package/src/spec/appSpec.d.ts +54 -0
  49. package/src/spec/sampleView.d.ts +487 -0
  50. package/src/spec/view.d.ts +124 -0
  51. package/src/state/paramProvenanceTypes.d.ts +215 -0
  52. package/src/state/selectionExpansionTypes.d.ts +77 -0
  53. package/src/state.d.ts +97 -0
  54. package/src/types/lz-string.d.ts +24 -0
  55. package/src/types/vega-loader.d.ts +1 -0
  56. package/src/utils/colorScaleSummary.d.ts +15 -0
  57. package/src/utils/statistics/fieldSummary.d.ts +49 -0
  58. package/src/vite-env.d.ts +6 -0
  59. package/LICENSE +0 -21
  60. /package/dist/{AbortablePromiseCache-3gHJdF3E.js → AbortablePromiseCache-BDH1cqFl.js} +0 -0
  61. /package/dist/{chunk-INHXZS53-fPMmEwMt.js → chunk-INHXZS53-DwEV9sMh.js} +0 -0
  62. /package/dist/{esm-BygJiwh0.js → esm-BL9SNSnj.js} +0 -0
  63. /package/dist/{esm-B8-vSu-c.js → esm-BwW--bVV.js} +0 -0
  64. /package/dist/{esm-CGX-qz1d.js → esm-Bz_92nH0.js} +0 -0
  65. /package/dist/{esm-CuMSzCHy.js → esm-D2_c7lXY.js} +0 -0
  66. /package/dist/{parquetRead-CJe1UPsz.js → parquetRead-BuEN-6yG.js} +0 -0
package/dist/schema.json CHANGED
@@ -27,6 +27,10 @@
27
27
  },
28
28
  "type": "array"
29
29
  },
30
+ "description": {
31
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
32
+ "type": "string"
33
+ },
30
34
  "fields": {
31
35
  "description": "The data fields to apply aggregate functions to. This array should correspond with the `ops` and `as` arrays. If no fields or operations are specified, a count aggregation will be applied by default.",
32
36
  "items": {
@@ -4252,6 +4256,10 @@
4252
4256
  ],
4253
4257
  "description": "Height of the view. If a number, it is interpreted as pixels. Check [child sizing](https://genomespy.app/docs/grammar/composition/concat/#child-sizing) for details.\n\n**Default value:** `\"container\"`"
4254
4258
  },
4259
+ "metadata": {
4260
+ "$ref": "#/definitions/MetadataDef",
4261
+ "description": "Metadata sources and metadata matrix layout."
4262
+ },
4255
4263
  "name": {
4256
4264
  "description": "An explicit name used to address the view. It is recommended to keep names unique among siblings. In the App (where view state is bookmarkable), the name must be unique within its import scope for views with configurable visibility, etc.",
4257
4265
  "type": "string"
@@ -4436,7 +4444,7 @@
4436
4444
  },
4437
4445
  "samples": {
4438
4446
  "$ref": "#/definitions/SampleDef",
4439
- "description": "Sample metadata definition. If the object is empty, the sample identifiers will be inferred from the data."
4447
+ "description": "Sample identity and label configuration.\n\nIf `identity` is omitted, sample identifiers are inferred from the data."
4440
4448
  },
4441
4449
  "spec": {
4442
4450
  "anyOf": [
@@ -4454,6 +4462,7 @@
4454
4462
  "type": "string"
4455
4463
  },
4456
4464
  "stickySummaries": {
4465
+ "description": "Keep summary tracks visible while scrolling samples.\n\n__Default value:__ `true`",
4457
4466
  "type": "boolean"
4458
4467
  },
4459
4468
  "templates": {
@@ -5331,7 +5340,7 @@
5331
5340
  "type": "string"
5332
5341
  },
5333
5342
  "url": {
5334
- "description": "URL to an Arrow data source.\n\nReserved for future use.",
5343
+ "description": "URL to an Arrow metadata source.\n\nReserved for future use.",
5335
5344
  "type": "string"
5336
5345
  }
5337
5346
  },
@@ -5542,8 +5551,11 @@
5542
5551
  "type": "boolean"
5543
5552
  },
5544
5553
  "title": {
5545
- "description": "A title for the axis (none by default).",
5546
- "type": "string"
5554
+ "description": "A title for the axis (none by default). Set to `null` to remove it.",
5555
+ "type": [
5556
+ "string",
5557
+ "null"
5558
+ ]
5547
5559
  },
5548
5560
  "titleColor": {
5549
5561
  "description": "Color of the title, can be in hex color code or regular color name.",
@@ -5875,8 +5887,11 @@
5875
5887
  "type": "boolean"
5876
5888
  },
5877
5889
  "title": {
5878
- "description": "A title for the axis (none by default).",
5879
- "type": "string"
5890
+ "description": "A title for the axis (none by default). Set to `null` to remove it.",
5891
+ "type": [
5892
+ "string",
5893
+ "null"
5894
+ ]
5880
5895
  },
5881
5896
  "titleColor": {
5882
5897
  "description": "Color of the title, can be in hex color code or regular color name.",
@@ -6606,6 +6621,10 @@
6606
6621
  "$ref": "#/definitions/FieldName",
6607
6622
  "description": "The field having the chromosome or contig."
6608
6623
  },
6624
+ "description": {
6625
+ "description": "A description of the encoded position. Can be used for documentation and to explain the meaning of the channel mapping.",
6626
+ "type": "string"
6627
+ },
6609
6628
  "domainInert": {
6610
6629
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
6611
6630
  "type": "boolean"
@@ -6671,6 +6690,10 @@
6671
6690
  "CollectParams": {
6672
6691
  "additionalProperties": false,
6673
6692
  "properties": {
6693
+ "description": {
6694
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
6695
+ "type": "string"
6696
+ },
6674
6697
  "groupby": {
6675
6698
  "description": "Arranges the data into consecutive batches based on the groups. This is mainly intended for internal use so that faceted data can be handled as batches.",
6676
6699
  "items": {
@@ -6714,11 +6737,11 @@
6714
6737
  "type": "boolean"
6715
6738
  },
6716
6739
  "name": {
6717
- "description": "Logical identifier name shown in UI and diagnostics.\n\nExample values: `\"symbol\"`, `\"ensembl\"`, `\"entrez\"`.",
6740
+ "description": "Name of the identifier field shown in UI and diagnostics.\n\nExample values: `\"symbol\"`, `\"ensembl\"`, `\"entrez\"`.",
6718
6741
  "type": "string"
6719
6742
  },
6720
6743
  "path": {
6721
- "description": "Backend path that provides identifier values aligned to matrix columns.\n\nThe array length must equal the number of columns in the matrix.",
6744
+ "description": "Backend path to identifier values aligned to matrix columns.\n\nThe array length must equal the number of columns in the matrix.",
6722
6745
  "type": "string"
6723
6746
  },
6724
6747
  "primary": {
@@ -6810,6 +6833,10 @@
6810
6833
  "minimum": 0,
6811
6834
  "type": "number"
6812
6835
  },
6836
+ "description": {
6837
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
6838
+ "type": "string"
6839
+ },
6813
6840
  "domainInert": {
6814
6841
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
6815
6842
  "type": "boolean"
@@ -6868,6 +6895,10 @@
6868
6895
  "minimum": 0,
6869
6896
  "type": "number"
6870
6897
  },
6898
+ "description": {
6899
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
6900
+ "type": "string"
6901
+ },
6871
6902
  "domainInert": {
6872
6903
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
6873
6904
  "type": "boolean"
@@ -6922,6 +6953,10 @@
6922
6953
  "not": {}
6923
6954
  },
6924
6955
  "properties": {
6956
+ "description": {
6957
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
6958
+ "type": "string"
6959
+ },
6925
6960
  "domainInert": {
6926
6961
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
6927
6962
  "type": "boolean"
@@ -6975,6 +7010,10 @@
6975
7010
  "not": {}
6976
7011
  },
6977
7012
  "properties": {
7013
+ "description": {
7014
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
7015
+ "type": "string"
7016
+ },
6978
7017
  "domainInert": {
6979
7018
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
6980
7019
  "type": "boolean"
@@ -7043,6 +7082,10 @@
7043
7082
  ],
7044
7083
  "description": "A constant value in data domain."
7045
7084
  },
7085
+ "description": {
7086
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
7087
+ "type": "string"
7088
+ },
7046
7089
  "domainInert": {
7047
7090
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7048
7091
  "type": "boolean"
@@ -7089,6 +7132,10 @@
7089
7132
  "ConditionalParameter<ValueDef<(number|ExprRef)>>": {
7090
7133
  "additionalProperties": false,
7091
7134
  "properties": {
7135
+ "description": {
7136
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
7137
+ "type": "string"
7138
+ },
7092
7139
  "empty": {
7093
7140
  "description": "For selection parameters, the predicate of empty selections returns true by default. Override this behavior, by setting this property `empty: false`.",
7094
7141
  "type": "boolean"
@@ -7125,6 +7172,10 @@
7125
7172
  "ConditionalParameter<ValueDef<(string|null|ExprRef)>>": {
7126
7173
  "additionalProperties": false,
7127
7174
  "properties": {
7175
+ "description": {
7176
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
7177
+ "type": "string"
7178
+ },
7128
7179
  "empty": {
7129
7180
  "description": "For selection parameters, the predicate of empty selections returns true by default. Override this behavior, by setting this property `empty: false`.",
7130
7181
  "type": "boolean"
@@ -7200,6 +7251,10 @@
7200
7251
  "$ref": "#/definitions/Field",
7201
7252
  "description": "An optional chromosome field that is passed through. TODO: groupby"
7202
7253
  },
7254
+ "description": {
7255
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
7256
+ "type": "string"
7257
+ },
7203
7258
  "end": {
7204
7259
  "$ref": "#/definitions/Field",
7205
7260
  "description": "The field representing the end coordinate of the segment (exclusive)."
@@ -7228,6 +7283,13 @@
7228
7283
  "CsvDataFormat": {
7229
7284
  "additionalProperties": false,
7230
7285
  "properties": {
7286
+ "columns": {
7287
+ "description": "Optional ordered list of field names for headerless CSV or TSV input. When provided, the first row is interpreted as data rather than a header row.",
7288
+ "items": {
7289
+ "type": "string"
7290
+ },
7291
+ "type": "array"
7292
+ },
7231
7293
  "parse": {
7232
7294
  "anyOf": [
7233
7295
  {
@@ -7276,7 +7338,7 @@
7276
7338
  "$ref": "#/definitions/InlineData"
7277
7339
  }
7278
7340
  ],
7279
- "description": "Eager tabular metadata source using the standard data contract.\n\nSupports `UrlData` and `InlineData`."
7341
+ "description": "Eager tabular metadata source.\n\nSupports `UrlData` and `InlineData`."
7280
7342
  },
7281
7343
  "sampleIdField": {
7282
7344
  "description": "Field name in the table that matches sample ids in the view.\n\n__Default value:__ `\"sample\"`",
@@ -7344,6 +7406,13 @@
7344
7406
  "DsvDataFormat": {
7345
7407
  "additionalProperties": false,
7346
7408
  "properties": {
7409
+ "columns": {
7410
+ "description": "Optional ordered list of field names for headerless delimiter-separated input. When provided, the first row is interpreted as data rather than a header row.",
7411
+ "items": {
7412
+ "type": "string"
7413
+ },
7414
+ "type": "array"
7415
+ },
7347
7416
  "delimiter": {
7348
7417
  "description": "The delimiter between records. The delimiter must be a single character (i.e., a single 16-bit code unit); so, ASCII delimiters are fine, but emoji delimiters are not.",
7349
7418
  "maxLength": 1,
@@ -7375,6 +7444,10 @@
7375
7444
  "DynamicCallbackData": {
7376
7445
  "additionalProperties": false,
7377
7446
  "properties": {
7447
+ "description": {
7448
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the data in the visualization.",
7449
+ "type": "string"
7450
+ },
7378
7451
  "dynamicCallbackSource": {
7379
7452
  "description": "The View class has `getDynamicData()` methods that provides the data. This is intended for internal use.",
7380
7453
  "type": "boolean"
@@ -7442,10 +7515,24 @@
7442
7515
  "description": "Color of the marks – either fill or stroke color based on the `filled` property of mark definition.\n\n_Note:_ 1) For fine-grained control over both fill and stroke colors of the marks, please use the `fill` and `stroke` channels. The `fill` or `stroke` encodings have higher precedence than `color`, thus may override the `color` encoding if conflicting encodings are specified. 2) See the scale documentation for more information about customizing [color scheme](https://vega.github.io/vega-lite/docs/scale.html#scheme)."
7443
7516
  },
7444
7517
  "dx": {
7445
- "$ref": "#/definitions/NumericMarkPropDef"
7518
+ "anyOf": [
7519
+ {
7520
+ "$ref": "#/definitions/NumericMarkPropDef"
7521
+ },
7522
+ {
7523
+ "$ref": "#/definitions/MarkPropExprDef"
7524
+ }
7525
+ ]
7446
7526
  },
7447
7527
  "dy": {
7448
- "$ref": "#/definitions/NumericMarkPropDef"
7528
+ "anyOf": [
7529
+ {
7530
+ "$ref": "#/definitions/NumericMarkPropDef"
7531
+ },
7532
+ {
7533
+ "$ref": "#/definitions/MarkPropExprDef"
7534
+ }
7535
+ ]
7449
7536
  },
7450
7537
  "facetIndex": {
7451
7538
  "$ref": "#/definitions/FieldDefWithoutScale",
@@ -7478,6 +7565,10 @@
7478
7565
  "semanticScore": {
7479
7566
  "additionalProperties": false,
7480
7567
  "properties": {
7568
+ "description": {
7569
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
7570
+ "type": "string"
7571
+ },
7481
7572
  "field": {
7482
7573
  "description": "__Required.__ A string defining the name of the field from which to pull a data value or an object defining iterated values from the [`repeat`](https://vega.github.io/vega-lite/docs/repeat.html) operator.\n\n__See also:__ [`field`](https://vega.github.io/vega-lite/docs/field.html) documentation.\n\n__Notes:__ 1) Dots (`.`) and brackets (`[` and `]`) can be used to access nested objects (e.g., `\"field\": \"foo.bar\"` and `\"field\": \"foo['bar']\"`). If field names contain dots or brackets but are not nested, you can use `\\\\` to escape dots and brackets (e.g., `\"a\\\\.b\"` and `\"a\\\\[0\\\\]\"`). See more details about escaping in the [field documentation](https://vega.github.io/vega-lite/docs/field.html). 2) `field` is not required if `aggregate` is `count`.",
7483
7574
  "type": "string"
@@ -7549,6 +7640,10 @@
7549
7640
  "description": "Builds and index for efficient rendering of subsets of the data. This setting is useful when rendering large amounts of data and often only a small subset of the data is visible. An example of such a situation is a scatter plot spanning the whole genome.\n\nThis setting implicitly sorts the data by the field assigned on the `x` channel.",
7550
7641
  "type": "boolean"
7551
7642
  },
7643
+ "description": {
7644
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
7645
+ "type": "string"
7646
+ },
7552
7647
  "domainInert": {
7553
7648
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7554
7649
  "type": "boolean"
@@ -7616,6 +7711,10 @@
7616
7711
  "$ref": "#/definitions/FieldName",
7617
7712
  "description": "The field having the chromosome or contig."
7618
7713
  },
7714
+ "description": {
7715
+ "description": "A description of the encoded position. Can be used for documentation and to explain the meaning of the channel mapping.",
7716
+ "type": "string"
7717
+ },
7619
7718
  "domainInert": {
7620
7719
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7621
7720
  "type": "boolean"
@@ -7696,6 +7795,10 @@
7696
7795
  ],
7697
7796
  "description": "A constant value in data domain."
7698
7797
  },
7798
+ "description": {
7799
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
7800
+ "type": "string"
7801
+ },
7699
7802
  "domainInert": {
7700
7803
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7701
7804
  "type": "boolean"
@@ -7755,6 +7858,10 @@
7755
7858
  "description": "Builds and index for efficient rendering of subsets of the data. This setting is useful when rendering large amounts of data and often only a small subset of the data is visible. An example of such a situation is a scatter plot spanning the whole genome.\n\nThis setting implicitly sorts the data by the field assigned on the `x` channel.",
7756
7859
  "type": "boolean"
7757
7860
  },
7861
+ "description": {
7862
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
7863
+ "type": "string"
7864
+ },
7758
7865
  "domainInert": {
7759
7866
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7760
7867
  "type": "boolean"
@@ -7787,6 +7894,10 @@
7787
7894
  "description": "Builds and index for efficient rendering of subsets of the data. This setting is useful when rendering large amounts of data and often only a small subset of the data is visible. An example of such a situation is a scatter plot spanning the whole genome.\n\nThis setting implicitly sorts the data by the field assigned on the `x` channel.",
7788
7895
  "type": "boolean"
7789
7896
  },
7897
+ "description": {
7898
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
7899
+ "type": "string"
7900
+ },
7790
7901
  "title": {
7791
7902
  "description": "A title for the field. If `null`, the title will be removed.",
7792
7903
  "type": [
@@ -7815,7 +7926,14 @@
7815
7926
  "description": "X coordinates of the marks.\n\nThe `value` of this channel can be a number between zero and one."
7816
7927
  },
7817
7928
  "x2": {
7818
- "$ref": "#/definitions/Position2Def",
7929
+ "anyOf": [
7930
+ {
7931
+ "$ref": "#/definitions/Position2Def"
7932
+ },
7933
+ {
7934
+ "type": "null"
7935
+ }
7936
+ ],
7819
7937
  "description": "X2 coordinates of the marks.\n\nThe `value` of this channel can be a number between zero and one."
7820
7938
  },
7821
7939
  "y": {
@@ -7823,7 +7941,14 @@
7823
7941
  "description": "Y coordinates of the marks.\n\nThe `value` of this channel can be a number between zero and one."
7824
7942
  },
7825
7943
  "y2": {
7826
- "$ref": "#/definitions/Position2Def",
7944
+ "anyOf": [
7945
+ {
7946
+ "$ref": "#/definitions/Position2Def"
7947
+ },
7948
+ {
7949
+ "type": "null"
7950
+ }
7951
+ ],
7827
7952
  "description": "Y2 coordinates of the marks.\n\nThe `value` of this channel can be a number between zero and one."
7828
7953
  }
7829
7954
  },
@@ -7855,6 +7980,10 @@
7855
7980
  "minimum": 0,
7856
7981
  "type": "number"
7857
7982
  },
7983
+ "description": {
7984
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
7985
+ "type": "string"
7986
+ },
7858
7987
  "expr": {
7859
7988
  "description": "An expression. Properties of the data can be accessed through the `datum` object.",
7860
7989
  "type": "string"
@@ -7878,6 +8007,10 @@
7878
8007
  "ExprFilterParams": {
7879
8008
  "additionalProperties": false,
7880
8009
  "properties": {
8010
+ "description": {
8011
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8012
+ "type": "string"
8013
+ },
7881
8014
  "expr": {
7882
8015
  "description": "An expression string. The data object is removed if the expression evaluates to false.",
7883
8016
  "type": "string"
@@ -7914,6 +8047,10 @@
7914
8047
  "FieldDefWithoutScale": {
7915
8048
  "additionalProperties": false,
7916
8049
  "properties": {
8050
+ "description": {
8051
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
8052
+ "type": "string"
8053
+ },
7917
8054
  "field": {
7918
8055
  "description": "__Required.__ A string defining the name of the field from which to pull a data value or an object defining iterated values from the [`repeat`](https://vega.github.io/vega-lite/docs/repeat.html) operator.\n\n__See also:__ [`field`](https://vega.github.io/vega-lite/docs/field.html) documentation.\n\n__Notes:__ 1) Dots (`.`) and brackets (`[` and `]`) can be used to access nested objects (e.g., `\"field\": \"foo.bar\"` and `\"field\": \"foo['bar']\"`). If field names contain dots or brackets but are not nested, you can use `\\\\` to escape dots and brackets (e.g., `\"a\\\\.b\"` and `\"a\\\\[0\\\\]\"`). See more details about escaping in the [field documentation](https://vega.github.io/vega-lite/docs/field.html). 2) `field` is not required if `aggregate` is `count`.",
7919
8056
  "type": "string"
@@ -7951,6 +8088,10 @@
7951
8088
  ],
7952
8089
  "description": "One or more value definition(s) with [a parameter or a test predicate](https://vega.github.io/vega-lite/docs/condition.html).\n\n__Note:__ A field definition's `condition` property can only contain [conditional value definitions](https://vega.github.io/vega-lite/docs/condition.html#value) since Vega-Lite only allows at most one encoded field per encoding channel."
7953
8090
  },
8091
+ "description": {
8092
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
8093
+ "type": "string"
8094
+ },
7954
8095
  "domainInert": {
7955
8096
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
7956
8097
  "type": "boolean"
@@ -8010,6 +8151,10 @@
8010
8151
  ],
8011
8152
  "description": "One or more value definition(s) with [a parameter or a test predicate](https://vega.github.io/vega-lite/docs/condition.html).\n\n__Note:__ A field definition's `condition` property can only contain [conditional value definitions](https://vega.github.io/vega-lite/docs/condition.html#value) since Vega-Lite only allows at most one encoded field per encoding channel."
8012
8153
  },
8154
+ "description": {
8155
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
8156
+ "type": "string"
8157
+ },
8013
8158
  "domainInert": {
8014
8159
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
8015
8160
  "type": "boolean"
@@ -8069,6 +8214,10 @@
8069
8214
  ],
8070
8215
  "description": "One or more value definition(s) with [a parameter or a test predicate](https://vega.github.io/vega-lite/docs/condition.html).\n\n__Note:__ A field definition's `condition` property can only contain [conditional value definitions](https://vega.github.io/vega-lite/docs/condition.html#value) since Vega-Lite only allows at most one encoded field per encoding channel."
8071
8216
  },
8217
+ "description": {
8218
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
8219
+ "type": "string"
8220
+ },
8072
8221
  "domainInert": {
8073
8222
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
8074
8223
  "type": "boolean"
@@ -8143,6 +8292,10 @@
8143
8292
  ],
8144
8293
  "description": "A constant value in data domain."
8145
8294
  },
8295
+ "description": {
8296
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
8297
+ "type": "string"
8298
+ },
8146
8299
  "domainInert": {
8147
8300
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
8148
8301
  "type": "boolean"
@@ -8210,6 +8363,10 @@
8210
8363
  ],
8211
8364
  "description": "A constant value in data domain."
8212
8365
  },
8366
+ "description": {
8367
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
8368
+ "type": "string"
8369
+ },
8213
8370
  "domainInert": {
8214
8371
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
8215
8372
  "type": "boolean"
@@ -8267,6 +8424,10 @@
8267
8424
  ],
8268
8425
  "type": "string"
8269
8426
  },
8427
+ "description": {
8428
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8429
+ "type": "string"
8430
+ },
8270
8431
  "lane": {
8271
8432
  "$ref": "#/definitions/Field",
8272
8433
  "description": "An optional field representing element's lane, e.g., if transcripts are shown using a piled up layout. Each line is processed separately."
@@ -8317,6 +8478,10 @@
8317
8478
  "minItems": 2,
8318
8479
  "type": "array"
8319
8480
  },
8481
+ "description": {
8482
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8483
+ "type": "string"
8484
+ },
8320
8485
  "exons": {
8321
8486
  "$ref": "#/definitions/Field",
8322
8487
  "description": "The field containing the exons.\n\n**Default:** `\"exons\"`"
@@ -8353,6 +8518,10 @@
8353
8518
  ],
8354
8519
  "description": "The output field name(s) for the flattened field.\n\n**Default:** the input fields."
8355
8520
  },
8521
+ "description": {
8522
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8523
+ "type": "string"
8524
+ },
8356
8525
  "field": {
8357
8526
  "anyOf": [
8358
8527
  {
@@ -8411,6 +8580,10 @@
8411
8580
  ],
8412
8581
  "description": "The output field name(s) for the flattened field.\n\n**Default:** the input fields."
8413
8582
  },
8583
+ "description": {
8584
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8585
+ "type": "string"
8586
+ },
8414
8587
  "fields": {
8415
8588
  "anyOf": [
8416
8589
  {
@@ -8452,6 +8625,10 @@
8452
8625
  "minItems": 2,
8453
8626
  "type": "array"
8454
8627
  },
8628
+ "description": {
8629
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8630
+ "type": "string"
8631
+ },
8455
8632
  "field": {
8456
8633
  "$ref": "#/definitions/Field",
8457
8634
  "description": "The field to flatten.\n\n**Default:** `\"sequence\"`"
@@ -8516,6 +8693,10 @@
8516
8693
  "description": "The (new) field where the computed value is written to",
8517
8694
  "type": "string"
8518
8695
  },
8696
+ "description": {
8697
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
8698
+ "type": "string"
8699
+ },
8519
8700
  "expr": {
8520
8701
  "description": "An expression string",
8521
8702
  "type": "string"
@@ -8825,8 +9006,11 @@
8825
9006
  "type": "boolean"
8826
9007
  },
8827
9008
  "title": {
8828
- "description": "A title for the axis (none by default).",
8829
- "type": "string"
9009
+ "description": "A title for the axis (none by default). Set to `null` to remove it.",
9010
+ "type": [
9011
+ "string",
9012
+ "null"
9013
+ ]
8830
9014
  },
8831
9015
  "titleColor": {
8832
9016
  "description": "Color of the title, can be in hex color code or regular color name.",
@@ -9101,6 +9285,10 @@
9101
9285
  "description": "**Default:** `\"_uniqueId\"`",
9102
9286
  "type": "string"
9103
9287
  },
9288
+ "description": {
9289
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
9290
+ "type": "string"
9291
+ },
9104
9292
  "type": {
9105
9293
  "const": "identifier",
9106
9294
  "description": "The type of the transform to be applied",
@@ -9221,6 +9409,10 @@
9221
9409
  "InlineData": {
9222
9410
  "additionalProperties": false,
9223
9411
  "properties": {
9412
+ "description": {
9413
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the data in the visualization.",
9414
+ "type": "string"
9415
+ },
9224
9416
  "format": {
9225
9417
  "$ref": "#/definitions/DataFormat",
9226
9418
  "description": "An object that specifies the format for parsing the data."
@@ -9441,6 +9633,10 @@
9441
9633
  "LazyData": {
9442
9634
  "additionalProperties": false,
9443
9635
  "properties": {
9636
+ "description": {
9637
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the lazy data in the visualization.",
9638
+ "type": "string"
9639
+ },
9444
9640
  "lazy": {
9445
9641
  "$ref": "#/definitions/LazyDataParams"
9446
9642
  }
@@ -9470,6 +9666,9 @@
9470
9666
  {
9471
9667
  "$ref": "#/definitions/BamData"
9472
9668
  },
9669
+ {
9670
+ "$ref": "#/definitions/TabixTsvData"
9671
+ },
9473
9672
  {
9474
9673
  "$ref": "#/definitions/Gff3Data"
9475
9674
  },
@@ -9507,6 +9706,10 @@
9507
9706
  "$ref": "#/definitions/Field",
9508
9707
  "description": "The chromosome/contig field"
9509
9708
  },
9709
+ "description": {
9710
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
9711
+ "type": "string"
9712
+ },
9510
9713
  "offset": {
9511
9714
  "anyOf": [
9512
9715
  {
@@ -10256,6 +10459,59 @@
10256
10459
  }
10257
10460
  ]
10258
10461
  },
10462
+ "MarkPropExprDef": {
10463
+ "additionalProperties": false,
10464
+ "properties": {
10465
+ "band": {
10466
+ "description": "Relative position on band scale. For example, the marks will be positioned at the beginning of the band if set to `0`, and at the middle of the band if set to `0.5`.",
10467
+ "maximum": 1,
10468
+ "minimum": 0,
10469
+ "type": "number"
10470
+ },
10471
+ "description": {
10472
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
10473
+ "type": "string"
10474
+ },
10475
+ "domainInert": {
10476
+ "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
10477
+ "type": "boolean"
10478
+ },
10479
+ "expr": {
10480
+ "description": "An expression. Properties of the data can be accessed through the `datum` object.",
10481
+ "type": "string"
10482
+ },
10483
+ "resolutionChannel": {
10484
+ "$ref": "#/definitions/ChannelWithScale",
10485
+ "description": "An alternative channel for scale resolution.\n\nThis is mainly for internal use and allows using `color` channel to resolve `fill` and `stroke` channels under certain circumstances."
10486
+ },
10487
+ "scale": {
10488
+ "anyOf": [
10489
+ {
10490
+ "$ref": "#/definitions/Scale"
10491
+ },
10492
+ {
10493
+ "type": "null"
10494
+ }
10495
+ ],
10496
+ "description": "An object defining properties of the channel's scale, which is the function that transforms values in the data domain (numbers, dates, strings, etc) to visual values (pixels, colors, sizes) of the encoding channels.\n\nIf `null`, the scale will be [disabled and the data value will be directly encoded](https://vega.github.io/vega-lite/docs/scale.html#disable).\n\n__Default value:__ If undefined, default [scale properties](https://vega.github.io/vega-lite/docs/scale.html) are applied.\n\n__See also:__ [`scale`](https://vega.github.io/vega-lite/docs/scale.html) documentation."
10497
+ },
10498
+ "title": {
10499
+ "description": "A title for the field. If `null`, the title will be removed.",
10500
+ "type": [
10501
+ "string",
10502
+ "null"
10503
+ ]
10504
+ },
10505
+ "type": {
10506
+ "$ref": "#/definitions/Type"
10507
+ }
10508
+ },
10509
+ "required": [
10510
+ "expr",
10511
+ "type"
10512
+ ],
10513
+ "type": "object"
10514
+ },
10259
10515
  "MarkProps": {
10260
10516
  "anyOf": [
10261
10517
  {
@@ -10296,6 +10552,10 @@
10296
10552
  "description": "The output field where the measured width is written.",
10297
10553
  "type": "string"
10298
10554
  },
10555
+ "description": {
10556
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
10557
+ "type": "string"
10558
+ },
10299
10559
  "field": {
10300
10560
  "$ref": "#/definitions/Field",
10301
10561
  "description": "The field that contains the text to be measured."
@@ -10340,6 +10600,10 @@
10340
10600
  "MergeFacetsParams": {
10341
10601
  "additionalProperties": false,
10342
10602
  "properties": {
10603
+ "description": {
10604
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
10605
+ "type": "string"
10606
+ },
10343
10607
  "type": {
10344
10608
  "const": "mergeFacets",
10345
10609
  "description": "The type of the transform to be applied",
@@ -10367,6 +10631,47 @@
10367
10631
  }
10368
10632
  ]
10369
10633
  },
10634
+ "MetadataDef": {
10635
+ "additionalProperties": false,
10636
+ "properties": {
10637
+ "attributeWidth": {
10638
+ "description": "Default width of metadata columns in pixels.\n\n__Default value:__ `10`",
10639
+ "type": "number"
10640
+ },
10641
+ "labelAngle": {
10642
+ "description": "Angle of metadata attribute labels in degrees.\n\n__Default value:__ `-90`",
10643
+ "type": "number"
10644
+ },
10645
+ "labelFont": {
10646
+ "description": "Font typeface for metadata attribute labels.\n\n__Default value:__ `\"Lato\"`",
10647
+ "type": "string"
10648
+ },
10649
+ "labelFontSize": {
10650
+ "description": "Font size for metadata attribute labels in pixels.\n\n__Default value:__ `11`",
10651
+ "type": "number"
10652
+ },
10653
+ "labelFontStyle": {
10654
+ "$ref": "#/definitions/FontStyle",
10655
+ "description": "Font style for metadata attribute labels.\n\n__Default value:__ `\"normal\"`"
10656
+ },
10657
+ "labelFontWeight": {
10658
+ "$ref": "#/definitions/FontWeight",
10659
+ "description": "Font weight for metadata attribute labels.\n\n__Default value:__ `\"regular\"`"
10660
+ },
10661
+ "sources": {
10662
+ "description": "Metadata source definitions used for startup and on-demand imports.\n\nSource order is significant for startup loading: eager startup imports are applied in declaration order.",
10663
+ "items": {
10664
+ "$ref": "#/definitions/MetadataSourceEntry"
10665
+ },
10666
+ "type": "array"
10667
+ },
10668
+ "spacing": {
10669
+ "description": "Spacing between metadata columns in pixels.\n\n__Default value:__ `1`",
10670
+ "type": "number"
10671
+ }
10672
+ },
10673
+ "type": "object"
10674
+ },
10370
10675
  "MetadataSourceDef": {
10371
10676
  "additionalProperties": false,
10372
10677
  "properties": {
@@ -10383,14 +10688,14 @@
10383
10688
  },
10384
10689
  "backend": {
10385
10690
  "$ref": "#/definitions/MetadataBackendDef",
10386
- "description": "Backend-specific source configuration."
10691
+ "description": "Source backend configuration."
10387
10692
  },
10388
10693
  "description": {
10389
- "description": "Optional short description of what this source contains.\n\nCan be shown in UI and can help automated agents choose the correct source.",
10694
+ "description": "User-facing description of what this source contains.\n\nCan be shown in UI and can help automated agents choose the correct source.",
10390
10695
  "type": "string"
10391
10696
  },
10392
10697
  "excludeColumns": {
10393
- "description": "Column ids that must never be imported from this source.\n\nUseful for excluding identity/helper columns such as `sample` and `displayName`.",
10698
+ "description": "Column ids that must never be imported from this source.\n\nThe data backend always excludes its `sampleIdField` automatically, so this property is only needed for other helper columns such as display labels.",
10394
10699
  "items": {
10395
10700
  "type": "string"
10396
10701
  },
@@ -10401,7 +10706,7 @@
10401
10706
  "type": "string"
10402
10707
  },
10403
10708
  "id": {
10404
- "description": "Stable source identifier used in actions, provenance, and configuration.\n\nShould remain stable across spec revisions if bookmarks/provenance replay must keep working.",
10709
+ "description": "Stable source identifier.\n\nShould remain stable across spec revisions if bookmarks/provenance replay must keep working.",
10405
10710
  "type": "string"
10406
10711
  },
10407
10712
  "initialLoad": {
@@ -10421,10 +10726,10 @@
10421
10726
  "type": "array"
10422
10727
  }
10423
10728
  ],
10424
- "description": "Startup loading behavior.\n\n- `false`: do not load at startup\n- `\"*\"`: load all columns allowed by this source\n- `string[]`: resolve and load only the listed columns\n\nOmitted value uses backend defaults."
10729
+ "description": "Startup loading behavior.\n\n- `false`: do not load at startup\n- `\"*\"`: load all columns allowed by this source\n- `string[]`: resolve and load only the listed columns\n\nIf omitted, data backends load all columns and other backends do not load columns at startup."
10425
10730
  },
10426
10731
  "name": {
10427
- "description": "Optional user-facing label shown in menus and dialogs.\n\nIf omitted, UI falls back to `id`.",
10732
+ "description": "User-facing label shown in menus and dialogs.\n\nIf omitted, UI falls back to `id`.",
10428
10733
  "type": "string"
10429
10734
  }
10430
10735
  },
@@ -10518,6 +10823,10 @@
10518
10823
  "NamedData": {
10519
10824
  "additionalProperties": false,
10520
10825
  "properties": {
10826
+ "description": {
10827
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the data in the visualization.",
10828
+ "type": "string"
10829
+ },
10521
10830
  "format": {
10522
10831
  "$ref": "#/definitions/DataFormat",
10523
10832
  "description": "An object that specifies the format for parsing the data."
@@ -10642,7 +10951,7 @@
10642
10951
  "type": "string"
10643
10952
  },
10644
10953
  "url": {
10645
- "description": "URL to a Parquet data source.\n\nReserved for future use.",
10954
+ "description": "URL to a Parquet metadata source.\n\nReserved for future use.",
10646
10955
  "type": "string"
10647
10956
  }
10648
10957
  },
@@ -10672,6 +10981,10 @@
10672
10981
  "description": "The output field name for the computed lane.\n\n**Default:** `\"lane\"`.",
10673
10982
  "type": "string"
10674
10983
  },
10984
+ "description": {
10985
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
10986
+ "type": "string"
10987
+ },
10675
10988
  "end": {
10676
10989
  "$ref": "#/definitions/Field",
10677
10990
  "description": "The field representing the end coordinate of the segment (exclusive)."
@@ -11359,6 +11672,10 @@
11359
11672
  "minimum": 0,
11360
11673
  "type": "number"
11361
11674
  },
11675
+ "description": {
11676
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
11677
+ "type": "string"
11678
+ },
11362
11679
  "domainInert": {
11363
11680
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11364
11681
  "type": "boolean"
@@ -11400,6 +11717,10 @@
11400
11717
  ],
11401
11718
  "description": "A constant value in data domain."
11402
11719
  },
11720
+ "description": {
11721
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
11722
+ "type": "string"
11723
+ },
11403
11724
  "domainInert": {
11404
11725
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11405
11726
  "type": "boolean"
@@ -11441,6 +11762,10 @@
11441
11762
  "minimum": 0,
11442
11763
  "type": "number"
11443
11764
  },
11765
+ "description": {
11766
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
11767
+ "type": "string"
11768
+ },
11444
11769
  "domainInert": {
11445
11770
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11446
11771
  "type": "boolean"
@@ -11501,6 +11826,10 @@
11501
11826
  ],
11502
11827
  "description": "A constant value in data domain."
11503
11828
  },
11829
+ "description": {
11830
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
11831
+ "type": "string"
11832
+ },
11504
11833
  "domainInert": {
11505
11834
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11506
11835
  "type": "boolean"
@@ -11575,6 +11904,10 @@
11575
11904
  "minimum": 0,
11576
11905
  "type": "number"
11577
11906
  },
11907
+ "description": {
11908
+ "description": "A description of the encoded expression. Can be used for documentation and to explain the meaning of the channel mapping.",
11909
+ "type": "string"
11910
+ },
11578
11911
  "domainInert": {
11579
11912
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11580
11913
  "type": "boolean"
@@ -11620,6 +11953,10 @@
11620
11953
  "minimum": 0,
11621
11954
  "type": "number"
11622
11955
  },
11956
+ "description": {
11957
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
11958
+ "type": "string"
11959
+ },
11623
11960
  "domainInert": {
11624
11961
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
11625
11962
  "type": "boolean"
@@ -11689,6 +12026,10 @@
11689
12026
  },
11690
12027
  "type": "array"
11691
12028
  },
12029
+ "description": {
12030
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
12031
+ "type": "string"
12032
+ },
11692
12033
  "fields": {
11693
12034
  "description": "The fields to be projected.",
11694
12035
  "items": {
@@ -12529,6 +12870,10 @@
12529
12870
  ],
12530
12871
  "description": "The new field or an array of fields where the extracted values are written."
12531
12872
  },
12873
+ "description": {
12874
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
12875
+ "type": "string"
12876
+ },
12532
12877
  "field": {
12533
12878
  "$ref": "#/definitions/Field",
12534
12879
  "description": "The source field"
@@ -12590,6 +12935,10 @@
12590
12935
  ],
12591
12936
  "description": "A regular expression that matches to column names. The regex must have one capturing group that is used for extracting the key (e.g., a sample id) from the column name."
12592
12937
  },
12938
+ "description": {
12939
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
12940
+ "type": "string"
12941
+ },
12593
12942
  "skipRegex": {
12594
12943
  "description": "An optional regex that matches to fields that should not be included in the new folded data objects.",
12595
12944
  "type": "string"
@@ -13018,14 +13367,22 @@
13018
13367
  "properties": {
13019
13368
  "barScale": {
13020
13369
  "$ref": "#/definitions/Scale",
13021
- "description": "An optional scale definition for mapping the attribute to the width of a metadata rectangle."
13370
+ "description": "Scale for mapping quantitative values to metadata cell width."
13371
+ },
13372
+ "description": {
13373
+ "description": "User-facing description of the metadata attribute.",
13374
+ "type": "string"
13022
13375
  },
13023
13376
  "scale": {
13024
13377
  "$ref": "#/definitions/Scale",
13025
- "description": "Scale definition for the (default) color channel"
13378
+ "description": "Color scale for metadata cells."
13379
+ },
13380
+ "semanticType": {
13381
+ "$ref": "#/definitions/SampleAttributeSemanticType",
13382
+ "description": "Domain-specific meaning of the metadata attribute."
13026
13383
  },
13027
13384
  "title": {
13028
- "description": "The title of the attribute. Defaults to attribute name.",
13385
+ "description": "Attribute label shown in the metadata header.\n\nIf omitted, the attribute name is used.",
13029
13386
  "type": "string"
13030
13387
  },
13031
13388
  "type": {
@@ -13033,7 +13390,7 @@
13033
13390
  "description": "The attribute type. One of `\"nominal\"`, `\"ordinal\"`, or `\"quantitative\"`."
13034
13391
  },
13035
13392
  "visible": {
13036
- "description": "Whether the attribute is visible by default.",
13393
+ "description": "Whether the attribute is visible when the view opens.",
13037
13394
  "type": "boolean"
13038
13395
  },
13039
13396
  "width": {
@@ -13043,6 +13400,16 @@
13043
13400
  },
13044
13401
  "type": "object"
13045
13402
  },
13403
+ "SampleAttributeSemanticType": {
13404
+ "enum": [
13405
+ "subjectId",
13406
+ "modelSystemId",
13407
+ "timeToEvent",
13408
+ "eventStatus",
13409
+ "category"
13410
+ ],
13411
+ "type": "string"
13412
+ },
13046
13413
  "SampleAttributeType": {
13047
13414
  "enum": [
13048
13415
  "nominal",
@@ -13054,55 +13421,9 @@
13054
13421
  "SampleDef": {
13055
13422
  "additionalProperties": false,
13056
13423
  "properties": {
13057
- "attributeGroupSeparator": {
13058
- "deprecated": "Configure per-source `attributeGroupSeparator` in `metadataSources`.",
13059
- "description": "If attributes form a hierarchy, specify the separator character to split the attribute names into paths.",
13060
- "type": "string"
13061
- },
13062
- "attributeLabelAngle": {
13063
- "description": "Angle to be added to the default label angle (-90).\n\n**Default value:** `0`",
13064
- "type": "number"
13065
- },
13066
- "attributeLabelFont": {
13067
- "description": "The font typeface. GenomeSpy uses [SDF](https://github.com/Chlumsky/msdfgen) versions of [Google Fonts](https://fonts.google.com/). Check their availability at the [A-Frame Fonts](https://github.com/etiennepinchon/aframe-fonts/tree/master/fonts) repository. System fonts are **not** supported.\n\n**Default value:** `\"Lato\"`",
13068
- "type": "string"
13069
- },
13070
- "attributeLabelFontSize": {
13071
- "description": "The font size in pixels.\n\n**Default value:** `11`",
13072
- "type": "number"
13073
- },
13074
- "attributeLabelFontStyle": {
13075
- "$ref": "#/definitions/FontStyle",
13076
- "description": "The font style. Valid values: `\"normal\"` and `\"italic\"`.\n\n**Default value:** `\"normal\"`"
13077
- },
13078
- "attributeLabelFontWeight": {
13079
- "$ref": "#/definitions/FontWeight",
13080
- "description": "The font weight. The following strings and numbers are valid values: `\"thin\"` (`100`), `\"light\"` (`300`), `\"regular\"` (`400`), `\"normal\"` (`400`), `\"medium\"` (`500`), `\"bold\"` (`700`), `\"black\"` (`900`)\n\n**Default value:** `\"regular\"`"
13081
- },
13082
- "attributeSize": {
13083
- "description": "Default size (width) of the metadata attribute columns. Can be configured per attribute using the `attributes` property.\n\n**Default value:** `10`",
13084
- "type": "number"
13085
- },
13086
- "attributeSpacing": {
13087
- "description": "Spacing between attribute columns in pixels.\n\n**Default value:** `1`",
13088
- "type": "number"
13089
- },
13090
- "attributes": {
13091
- "additionalProperties": {
13092
- "$ref": "#/definitions/SampleAttributeDef"
13093
- },
13094
- "deprecated": "Configure per-source `attributes` in `metadataSources`.",
13095
- "description": "Explicitly specify the sample attributes.",
13096
- "type": "object"
13097
- },
13098
- "data": {
13099
- "$ref": "#/definitions/Data",
13100
- "deprecated": "Use `metadataSources` with `backend: \"data\"` instead.",
13101
- "description": "Optional metadata about the samples."
13102
- },
13103
13424
  "identity": {
13104
13425
  "$ref": "#/definitions/SampleIdentityDef",
13105
- "description": "Optional explicit sample identity definition."
13426
+ "description": "Defines the sample ids and optional display names for the sample view.\n\nIf omitted, sample ids are inferred from the `sample` channel in the view data."
13106
13427
  },
13107
13428
  "labelAlign": {
13108
13429
  "$ref": "#/definitions/Align",
@@ -13125,30 +13446,15 @@
13125
13446
  "description": "The font weight. The following strings and numbers are valid values: `\"thin\"` (`100`), `\"light\"` (`300`), `\"regular\"` (`400`), `\"normal\"` (`400`), `\"medium\"` (`500`), `\"bold\"` (`700`), `\"black\"` (`900`)\n\n**Default value:** `\"regular\"`"
13126
13447
  },
13127
13448
  "labelLength": {
13128
- "description": "How much space in pixels to reserve for the labels. If omitted, the width is inferred from the sample labels.",
13449
+ "description": "Width reserved for sample labels in pixels.\n\nIf omitted, the width is inferred from the sample labels.",
13129
13450
  "type": "number"
13130
13451
  },
13131
13452
  "labelTitle": {
13132
- "description": "Text in the label title. If omitted, the title defaults to `\"Sample\"`. Set to `null` to hide the title.",
13133
- "type": [
13134
- "string",
13135
- "null"
13136
- ]
13137
- },
13138
- "labelTitleText": {
13139
- "deprecated": "Use `labelTitle` instead.",
13140
- "description": "Legacy alias for `labelTitle`.",
13453
+ "description": "Title shown above sample labels. If omitted, the title defaults to `\"Sample\"`. Set to `null` to hide the title.",
13141
13454
  "type": [
13142
13455
  "string",
13143
13456
  "null"
13144
13457
  ]
13145
- },
13146
- "metadataSources": {
13147
- "description": "Metadata source definitions used for startup and on-demand imports.\n\nSource order is significant for startup loading: eager startup imports are applied in declaration order.",
13148
- "items": {
13149
- "$ref": "#/definitions/MetadataSourceEntry"
13150
- },
13151
- "type": "array"
13152
13458
  }
13153
13459
  },
13154
13460
  "type": "object"
@@ -13158,7 +13464,7 @@
13158
13464
  "properties": {
13159
13465
  "data": {
13160
13466
  "$ref": "#/definitions/Data",
13161
- "description": "Data source that defines the canonical sample set for the view.\n\nThe source must contain one row per sample and is used to resolve sample ids and optional display names before metadata imports are applied."
13467
+ "description": "Data source that defines the sample set for the view.\n\nThe source must contain one row per sample. Metadata imports are matched against these sample ids."
13162
13468
  },
13163
13469
  "displayNameField": {
13164
13470
  "description": "Field containing a user-visible sample label.\n\nIf omitted, sample ids are used.",
@@ -13177,6 +13483,10 @@
13177
13483
  "SampleParams": {
13178
13484
  "additionalProperties": false,
13179
13485
  "properties": {
13486
+ "description": {
13487
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
13488
+ "type": "string"
13489
+ },
13180
13490
  "size": {
13181
13491
  "description": "The maximum sample size.\n\n**Default:** `500`",
13182
13492
  "type": "number"
@@ -13270,6 +13580,10 @@
13270
13580
  ],
13271
13581
  "description": "Height of the view. If a number, it is interpreted as pixels. Check [child sizing](https://genomespy.app/docs/grammar/composition/concat/#child-sizing) for details.\n\n**Default value:** `\"container\"`"
13272
13582
  },
13583
+ "metadata": {
13584
+ "$ref": "#/definitions/MetadataDef",
13585
+ "description": "Metadata sources and metadata matrix layout."
13586
+ },
13273
13587
  "name": {
13274
13588
  "description": "An explicit name used to address the view. It is recommended to keep names unique among siblings. In the App (where view state is bookmarkable), the name must be unique within its import scope for views with configurable visibility, etc.",
13275
13589
  "type": "string"
@@ -13454,7 +13768,7 @@
13454
13768
  },
13455
13769
  "samples": {
13456
13770
  "$ref": "#/definitions/SampleDef",
13457
- "description": "Sample metadata definition. If the object is empty, the sample identifiers will be inferred from the data."
13771
+ "description": "Sample identity and label configuration.\n\nIf `identity` is omitted, sample identifiers are inferred from the data."
13458
13772
  },
13459
13773
  "spec": {
13460
13774
  "anyOf": [
@@ -13468,6 +13782,7 @@
13468
13782
  "description": "The view specification to be repeated for each sample."
13469
13783
  },
13470
13784
  "stickySummaries": {
13785
+ "description": "Keep summary tracks visible while scrolling samples.\n\n__Default value:__ `true`",
13471
13786
  "type": "boolean"
13472
13787
  },
13473
13788
  "templates": {
@@ -13630,6 +13945,9 @@
13630
13945
  },
13631
13946
  {
13632
13947
  "$ref": "#/definitions/SelectionDomainRef"
13948
+ },
13949
+ {
13950
+ "$ref": "#/definitions/ExprRef"
13633
13951
  }
13634
13952
  ],
13635
13953
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -13646,6 +13964,18 @@
13646
13964
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
13647
13965
  "type": "number"
13648
13966
  },
13967
+ "domainTransition": {
13968
+ "anyOf": [
13969
+ {
13970
+ "type": "boolean"
13971
+ },
13972
+ {
13973
+ "additionalProperties": {},
13974
+ "type": "object"
13975
+ }
13976
+ ],
13977
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
13978
+ },
13649
13979
  "exponent": {
13650
13980
  "description": "The exponent of the `pow` scale.",
13651
13981
  "type": "number"
@@ -13827,6 +14157,9 @@
13827
14157
  },
13828
14158
  {
13829
14159
  "$ref": "#/definitions/SelectionDomainRef"
14160
+ },
14161
+ {
14162
+ "$ref": "#/definitions/ExprRef"
13830
14163
  }
13831
14164
  ],
13832
14165
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -13843,6 +14176,18 @@
13843
14176
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
13844
14177
  "type": "number"
13845
14178
  },
14179
+ "domainTransition": {
14180
+ "anyOf": [
14181
+ {
14182
+ "type": "boolean"
14183
+ },
14184
+ {
14185
+ "additionalProperties": {},
14186
+ "type": "object"
14187
+ }
14188
+ ],
14189
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
14190
+ },
13846
14191
  "exponent": {
13847
14192
  "description": "The exponent of the `pow` scale.",
13848
14193
  "type": "number"
@@ -13895,6 +14240,9 @@
13895
14240
  },
13896
14241
  {
13897
14242
  "$ref": "#/definitions/SelectionDomainRef"
14243
+ },
14244
+ {
14245
+ "$ref": "#/definitions/ExprRef"
13898
14246
  }
13899
14247
  ],
13900
14248
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -13911,6 +14259,18 @@
13911
14259
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
13912
14260
  "type": "number"
13913
14261
  },
14262
+ "domainTransition": {
14263
+ "anyOf": [
14264
+ {
14265
+ "type": "boolean"
14266
+ },
14267
+ {
14268
+ "additionalProperties": {},
14269
+ "type": "object"
14270
+ }
14271
+ ],
14272
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
14273
+ },
13914
14274
  "exponent": {
13915
14275
  "description": "The exponent of the `pow` scale.",
13916
14276
  "type": "number"
@@ -14104,6 +14464,9 @@
14104
14464
  },
14105
14465
  {
14106
14466
  "$ref": "#/definitions/SelectionDomainRef"
14467
+ },
14468
+ {
14469
+ "$ref": "#/definitions/ExprRef"
14107
14470
  }
14108
14471
  ],
14109
14472
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -14120,6 +14483,18 @@
14120
14483
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
14121
14484
  "type": "number"
14122
14485
  },
14486
+ "domainTransition": {
14487
+ "anyOf": [
14488
+ {
14489
+ "type": "boolean"
14490
+ },
14491
+ {
14492
+ "additionalProperties": {},
14493
+ "type": "object"
14494
+ }
14495
+ ],
14496
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
14497
+ },
14123
14498
  "exponent": {
14124
14499
  "description": "The exponent of the `pow` scale.",
14125
14500
  "type": "number"
@@ -14333,6 +14708,9 @@
14333
14708
  },
14334
14709
  {
14335
14710
  "$ref": "#/definitions/SelectionDomainRef"
14711
+ },
14712
+ {
14713
+ "$ref": "#/definitions/ExprRef"
14336
14714
  }
14337
14715
  ],
14338
14716
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -14349,6 +14727,18 @@
14349
14727
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
14350
14728
  "type": "number"
14351
14729
  },
14730
+ "domainTransition": {
14731
+ "anyOf": [
14732
+ {
14733
+ "type": "boolean"
14734
+ },
14735
+ {
14736
+ "additionalProperties": {},
14737
+ "type": "object"
14738
+ }
14739
+ ],
14740
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
14741
+ },
14352
14742
  "exponent": {
14353
14743
  "description": "The exponent of the `pow` scale.",
14354
14744
  "type": "number"
@@ -14539,6 +14929,9 @@
14539
14929
  },
14540
14930
  {
14541
14931
  "$ref": "#/definitions/SelectionDomainRef"
14932
+ },
14933
+ {
14934
+ "$ref": "#/definitions/ExprRef"
14542
14935
  }
14543
14936
  ],
14544
14937
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -14555,6 +14948,18 @@
14555
14948
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
14556
14949
  "type": "number"
14557
14950
  },
14951
+ "domainTransition": {
14952
+ "anyOf": [
14953
+ {
14954
+ "type": "boolean"
14955
+ },
14956
+ {
14957
+ "additionalProperties": {},
14958
+ "type": "object"
14959
+ }
14960
+ ],
14961
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
14962
+ },
14558
14963
  "exponent": {
14559
14964
  "description": "The exponent of the `pow` scale.",
14560
14965
  "type": "number"
@@ -14758,6 +15163,9 @@
14758
15163
  },
14759
15164
  {
14760
15165
  "$ref": "#/definitions/SelectionDomainRef"
15166
+ },
15167
+ {
15168
+ "$ref": "#/definitions/ExprRef"
14761
15169
  }
14762
15170
  ],
14763
15171
  "description": "Customized domain values.\n\nFor _quantitative_ fields, `domain` can take the form of a two-element array with minimum and maximum values. [Piecewise scales](https://vega.github.io/vega-lite/docs/scale.html#piecewise) can be created by providing a `domain` with more than two entries.\n\nFor _temporal_ fields, `domain` can be a two-element array minimum and maximum values, in the form of either timestamps or the [DateTime definition objects](https://vega.github.io/vega-lite/docs/types.html#datetime).\n\nFor _ordinal_ and _nominal_ fields, `domain` can be an array that lists valid input values."
@@ -14774,6 +15182,18 @@
14774
15182
  "description": "Sets the minimum value in the scale domain, overriding the domain property. This property is only intended for use with scales having continuous domains.",
14775
15183
  "type": "number"
14776
15184
  },
15185
+ "domainTransition": {
15186
+ "anyOf": [
15187
+ {
15188
+ "type": "boolean"
15189
+ },
15190
+ {
15191
+ "additionalProperties": {},
15192
+ "type": "object"
15193
+ }
15194
+ ],
15195
+ "description": "Controls whether domain updates are applied immediately or with a smooth transition.\n\nSet this to `false` to apply domain updates immediately. The default is `true`, except for domains defined by an `ExprRef`, which default to `false` unless overridden.\n\n__Default value:__ `true`, except `false` for ExprRef-driven domains."
15196
+ },
14777
15197
  "exponent": {
14778
15198
  "description": "The exponent of the `pow` scale.",
14779
15199
  "type": "number"
@@ -15093,6 +15513,10 @@
15093
15513
  "$ref": "#/definitions/FieldName",
15094
15514
  "description": "The field having the chromosome or contig."
15095
15515
  },
15516
+ "description": {
15517
+ "description": "A description of the encoded position. Can be used for documentation and to explain the meaning of the channel mapping.",
15518
+ "type": "string"
15519
+ },
15096
15520
  "domainInert": {
15097
15521
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
15098
15522
  "type": "boolean"
@@ -15160,6 +15584,10 @@
15160
15584
  "SelectionFilterParams": {
15161
15585
  "additionalProperties": false,
15162
15586
  "properties": {
15587
+ "description": {
15588
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
15589
+ "type": "string"
15590
+ },
15163
15591
  "empty": {
15164
15592
  "description": "If true, the filter retains all data objects when the selection is empty.\n\n**Default:** `true`",
15165
15593
  "type": "boolean"
@@ -15226,6 +15654,10 @@
15226
15654
  "SelectionParameter": {
15227
15655
  "additionalProperties": false,
15228
15656
  "properties": {
15657
+ "description": {
15658
+ "description": "A description of the parameter. Can be used for documentation and to explain the meaning of the control or selection.",
15659
+ "type": "string"
15660
+ },
15229
15661
  "name": {
15230
15662
  "description": "A unique name for the variable parameter. Parameter names should be valid JavaScript identifiers: they should contain only alphanumeric characters (or \"$\", or \"_\") and may not start with a digit. Reserved keywords that may not be used as parameter names are: \"datum\".",
15231
15663
  "type": "string"
@@ -15467,6 +15899,10 @@
15467
15899
  "SequenceGenerator": {
15468
15900
  "additionalProperties": false,
15469
15901
  "properties": {
15902
+ "description": {
15903
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the generated data in the visualization.",
15904
+ "type": "string"
15905
+ },
15470
15906
  "name": {
15471
15907
  "description": "Provide a placeholder name and bind data at runtime.",
15472
15908
  "type": "string"
@@ -15577,6 +16013,10 @@
15577
16013
  "description": "Cardinality, e.g., the number if distinct bases or amino acids. Used for information content calculation when the offset is `\"information\"`.\n\n**Default:** `4`",
15578
16014
  "type": "number"
15579
16015
  },
16016
+ "description": {
16017
+ "description": "A description of the transform step. Can be used for documentation and agent context.",
16018
+ "type": "string"
16019
+ },
15580
16020
  "field": {
15581
16021
  "$ref": "#/definitions/Field",
15582
16022
  "description": "The field to stack. If no field is defined, a constant value of one is assumed."
@@ -15646,6 +16086,10 @@
15646
16086
  ],
15647
16087
  "description": "A constant value in data domain."
15648
16088
  },
16089
+ "description": {
16090
+ "description": "A description of the encoded datum. Can be used for documentation and to explain the meaning of the channel mapping.",
16091
+ "type": "string"
16092
+ },
15649
16093
  "format": {
15650
16094
  "description": "When used with the default `\"number\"` format type, the text formatting pattern for labels of guides (axes, legends, headers) and text marks.\n\n- If the format type is `\"number\"` (e.g., for quantitative fields), this is D3's [number format pattern](https://github.com/d3/d3-format#locale_format).\n\nSee the [format documentation](https://vega.github.io/vega-lite/docs/format.html) for more examples.",
15651
16095
  "type": "string"
@@ -15683,6 +16127,10 @@
15683
16127
  {
15684
16128
  "additionalProperties": false,
15685
16129
  "properties": {
16130
+ "description": {
16131
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
16132
+ "type": "string"
16133
+ },
15686
16134
  "domainInert": {
15687
16135
  "description": "Whether the field or evaluated expr should be excluded from the scale's domain. Prefer the view-level `domainInert` when an entire subtree should be excluded.\n\n**Default value:** `false`",
15688
16136
  "type": "boolean"
@@ -15708,6 +16156,10 @@
15708
16156
  {
15709
16157
  "additionalProperties": false,
15710
16158
  "properties": {
16159
+ "description": {
16160
+ "description": "A description of the encoded field. Can be used for documentation and to explain the meaning of the channel mapping.",
16161
+ "type": "string"
16162
+ },
15711
16163
  "field": {
15712
16164
  "description": "__Required.__ A string defining the name of the field from which to pull a data value or an object defining iterated values from the [`repeat`](https://vega.github.io/vega-lite/docs/repeat.html) operator.\n\n__See also:__ [`field`](https://vega.github.io/vega-lite/docs/field.html) documentation.\n\n__Notes:__ 1) Dots (`.`) and brackets (`[` and `]`) can be used to access nested objects (e.g., `\"field\": \"foo.bar\"` and `\"field\": \"foo['bar']\"`). If field names contain dots or brackets but are not nested, you can use `\\\\` to escape dots and brackets (e.g., `\"a\\\\.b\"` and `\"a\\\\[0\\\\]\"`). See more details about escaping in the [field documentation](https://vega.github.io/vega-lite/docs/field.html). 2) `field` is not required if `aggregate` is `count`.",
15713
16165
  "type": "string"
@@ -16895,8 +17347,11 @@
16895
17347
  "type": "boolean"
16896
17348
  },
16897
17349
  "title": {
16898
- "description": "A title for the axis (none by default).",
16899
- "type": "string"
17350
+ "description": "A title for the axis (none by default). Set to `null` to remove it.",
17351
+ "type": [
17352
+ "string",
17353
+ "null"
17354
+ ]
16900
17355
  },
16901
17356
  "titleColor": {
16902
17357
  "description": "Color of the title, can be in hex color code or regular color name.",
@@ -17027,6 +17482,91 @@
17027
17482
  },
17028
17483
  "type": "object"
17029
17484
  },
17485
+ "TabixTsvData": {
17486
+ "additionalProperties": false,
17487
+ "properties": {
17488
+ "addChrPrefix": {
17489
+ "description": "Add a `chr` (boolean) or custom (string) prefix to the chromosome names in the Tabix file.\n\n__Default value:__ `false`",
17490
+ "type": [
17491
+ "boolean",
17492
+ "string"
17493
+ ]
17494
+ },
17495
+ "channel": {
17496
+ "$ref": "#/definitions/PrimaryPositionalChannel",
17497
+ "description": "Which channel's scale domain to monitor.\n\n__Default value:__ `\"x\"`"
17498
+ },
17499
+ "columns": {
17500
+ "description": "Ordered list of field names for headerless tabix TSV input. If omitted, the source tries to read a commented header line from the tabix file header or the first row of a plain TSV header.",
17501
+ "items": {
17502
+ "type": "string"
17503
+ },
17504
+ "type": "array"
17505
+ },
17506
+ "debounce": {
17507
+ "anyOf": [
17508
+ {
17509
+ "type": "number"
17510
+ },
17511
+ {
17512
+ "$ref": "#/definitions/ExprRef"
17513
+ }
17514
+ ],
17515
+ "description": "Debounce time for data updates, in milliseconds. Debouncing prevents excessive data updates when the user is zooming or panning around.\n\n__Default value:__ `200`"
17516
+ },
17517
+ "debounceDomainChange": {
17518
+ "anyOf": [
17519
+ {
17520
+ "type": "number"
17521
+ },
17522
+ {
17523
+ "$ref": "#/definitions/ExprRef"
17524
+ }
17525
+ ],
17526
+ "description": "Debounce time for scale-domain driven data updates, in milliseconds.\n\n__Default value:__ `200`"
17527
+ },
17528
+ "debounceMode": {
17529
+ "description": "The debounce mode for data updates. If set to `\"domain\"`, domain change events (panning and zooming) will be debounced. If set to `\"window\"`, the data fetches initiated by the changes to the visible window (or tile) will be debounced. If your data is small, the `\"window\"` is better as it will start fetching data while the user is still panning around, resulting in a shorter perceived latency.\n\n__Default value:__ `\"window\"`",
17530
+ "enum": [
17531
+ "domain",
17532
+ "window"
17533
+ ],
17534
+ "type": "string"
17535
+ },
17536
+ "indexUrl": {
17537
+ "description": "Url of the tabix index file.\n\n__Default value:__ `url` + `\".tbi\"`.",
17538
+ "type": "string"
17539
+ },
17540
+ "parse": {
17541
+ "anyOf": [
17542
+ {
17543
+ "$ref": "#/definitions/Parse"
17544
+ },
17545
+ {
17546
+ "type": "null"
17547
+ }
17548
+ ],
17549
+ "description": "Optional type parsing for TSV fields. When omitted, field types are inferred automatically. Set to `null` to disable spec-based type inference and rely on data inference, or provide a field-to-type map to override selected columns.\n\n__Default value:__ `\"auto\"`"
17550
+ },
17551
+ "type": {
17552
+ "const": "tabix",
17553
+ "type": "string"
17554
+ },
17555
+ "url": {
17556
+ "description": "Url of the bgzip compressed file.",
17557
+ "type": "string"
17558
+ },
17559
+ "windowSize": {
17560
+ "description": "Size of each chunk when fetching the Tabix file. Data is only fetched when the length of the visible domain smaller than the window size.\n\n__Default value:__ `30000000`",
17561
+ "type": "number"
17562
+ }
17563
+ },
17564
+ "required": [
17565
+ "type",
17566
+ "url"
17567
+ ],
17568
+ "type": "object"
17569
+ },
17030
17570
  "TemplateImport": {
17031
17571
  "additionalProperties": false,
17032
17572
  "properties": {
@@ -18319,6 +18859,10 @@
18319
18859
  "UrlData": {
18320
18860
  "additionalProperties": false,
18321
18861
  "properties": {
18862
+ "description": {
18863
+ "description": "A description of the data source. Can be used for documentation and to explain the role of the data in the visualization.",
18864
+ "type": "string"
18865
+ },
18322
18866
  "format": {
18323
18867
  "$ref": "#/definitions/DataFormat",
18324
18868
  "description": "An object that specifies the format for parsing the data."
@@ -18423,6 +18967,10 @@
18423
18967
  "ValueDef<number>": {
18424
18968
  "additionalProperties": false,
18425
18969
  "properties": {
18970
+ "description": {
18971
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
18972
+ "type": "string"
18973
+ },
18426
18974
  "title": {
18427
18975
  "description": "A title for the field. If `null`, the title will be removed.",
18428
18976
  "type": [
@@ -18450,6 +18998,10 @@
18450
18998
  "ValueDef<string>": {
18451
18999
  "additionalProperties": false,
18452
19000
  "properties": {
19001
+ "description": {
19002
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
19003
+ "type": "string"
19004
+ },
18453
19005
  "title": {
18454
19006
  "description": "A title for the field. If `null`, the title will be removed.",
18455
19007
  "type": [
@@ -18501,6 +19053,10 @@
18501
19053
  ],
18502
19054
  "description": "A field definition or one or more value definition(s) with a parameter predicate."
18503
19055
  },
19056
+ "description": {
19057
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
19058
+ "type": "string"
19059
+ },
18504
19060
  "title": {
18505
19061
  "description": "A title for the field. If `null`, the title will be removed.",
18506
19062
  "type": [
@@ -18552,6 +19108,10 @@
18552
19108
  ],
18553
19109
  "description": "A field definition or one or more value definition(s) with a parameter predicate."
18554
19110
  },
19111
+ "description": {
19112
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
19113
+ "type": "string"
19114
+ },
18555
19115
  "title": {
18556
19116
  "description": "A title for the field. If `null`, the title will be removed.",
18557
19117
  "type": [
@@ -18603,6 +19163,10 @@
18603
19163
  ],
18604
19164
  "description": "A field definition or one or more value definition(s) with a parameter predicate."
18605
19165
  },
19166
+ "description": {
19167
+ "description": "A description of the encoded value. Can be used for documentation and to explain the meaning of the channel mapping.",
19168
+ "type": "string"
19169
+ },
18606
19170
  "title": {
18607
19171
  "description": "A title for the field. If `null`, the title will be removed.",
18608
19172
  "type": [
@@ -18631,6 +19195,10 @@
18631
19195
  "$ref": "#/definitions/Binding",
18632
19196
  "description": "Binds the parameter to an external input element such as a slider, selection list or radio button group."
18633
19197
  },
19198
+ "description": {
19199
+ "description": "A description of the parameter. Can be used for documentation and to explain the meaning of the control or selection.",
19200
+ "type": "string"
19201
+ },
18634
19202
  "expr": {
18635
19203
  "description": "An expression for the value of the parameter. This expression may include other parameters, in which case the parameter will automatically update in response to upstream parameter changes.",
18636
19204
  "type": "string"
@@ -18939,7 +19507,7 @@
18939
19507
  "type": "string"
18940
19508
  },
18941
19509
  "identifiers": {
18942
- "description": "Optional identifier arrays used to resolve user queries to columns.\n\nIf omitted, only primary column ids are used for lookup.",
19510
+ "description": "Identifier arrays used to resolve user queries to columns.\n\nIf omitted, only primary column ids are used for lookup.",
18943
19511
  "items": {
18944
19512
  "$ref": "#/definitions/ColumnIdentifierField"
18945
19513
  },
@@ -18947,7 +19515,7 @@
18947
19515
  },
18948
19516
  "matrix": {
18949
19517
  "$ref": "#/definitions/ZarrMatrixLayoutDef",
18950
- "description": "Optional path overrides for the expression-style matrix layout."
19518
+ "description": "Path overrides for the matrix layout."
18951
19519
  },
18952
19520
  "url": {
18953
19521
  "description": "URL to the root of the Zarr store.",
@@ -18972,7 +19540,7 @@
18972
19540
  "type": "string"
18973
19541
  },
18974
19542
  "valuesPath": {
18975
- "description": "Path to matrix values (sample rows x metadata columns).\n\n__Default value:__ `\"X\"`",
19543
+ "description": "Path to matrix values, arranged as sample rows by metadata columns.\n\n__Default value:__ `\"X\"`",
18976
19544
  "type": "string"
18977
19545
  }
18978
19546
  },