@genome-spy/core 0.16.0 → 0.17.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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "$ref": "#/definitions/ViewSpec",
2
+ "$ref": "#/definitions/RootSpec",
3
3
  "$schema": "http://json-schema.org/draft-07/schema#",
4
4
  "definitions": {
5
5
  "AggregateParams": {
@@ -610,6 +610,22 @@
610
610
  ],
611
611
  "type": "object"
612
612
  },
613
+ "Contig": {
614
+ "additionalProperties": false,
615
+ "properties": {
616
+ "name": {
617
+ "type": "string"
618
+ },
619
+ "size": {
620
+ "type": "number"
621
+ }
622
+ },
623
+ "required": [
624
+ "name",
625
+ "size"
626
+ ],
627
+ "type": "object"
628
+ },
613
629
  "CoverageParams": {
614
630
  "additionalProperties": false,
615
631
  "properties": {
@@ -1192,6 +1208,30 @@
1192
1208
  "Generator": {
1193
1209
  "$ref": "#/definitions/SequenceGenerator"
1194
1210
  },
1211
+ "GenomeConfig": {
1212
+ "additionalProperties": false,
1213
+ "properties": {
1214
+ "baseUrl": {
1215
+ "description": "Base url of data files: chromsizes, cytobands, and gene annotations.\n\n**Default:** `\"https://genomespy.app/data/genomes/\"`",
1216
+ "type": "string"
1217
+ },
1218
+ "contigs": {
1219
+ "description": "As an alternative for chromSizes, the contigs can be provided inline.",
1220
+ "items": {
1221
+ "$ref": "#/definitions/Contig"
1222
+ },
1223
+ "type": "array"
1224
+ },
1225
+ "name": {
1226
+ "description": "Name of the genome assembly, e.g., `hg19` or `hg38`.",
1227
+ "type": "string"
1228
+ }
1229
+ },
1230
+ "required": [
1231
+ "name"
1232
+ ],
1233
+ "type": "object"
1234
+ },
1195
1235
  "HConcatSpec": {
1196
1236
  "additionalProperties": false,
1197
1237
  "properties": {
@@ -2806,6 +2846,928 @@
2806
2846
  ],
2807
2847
  "type": "string"
2808
2848
  },
2849
+ "RootSpec": {
2850
+ "anyOf": [
2851
+ {
2852
+ "additionalProperties": false,
2853
+ "properties": {
2854
+ "aggregateSamples": {
2855
+ "items": {
2856
+ "anyOf": [
2857
+ {
2858
+ "$ref": "#/definitions/UnitSpec"
2859
+ },
2860
+ {
2861
+ "$ref": "#/definitions/LayerSpec"
2862
+ }
2863
+ ]
2864
+ },
2865
+ "type": "array"
2866
+ },
2867
+ "baseUrl": {
2868
+ "type": "string"
2869
+ },
2870
+ "configurableVisibility": {
2871
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
2872
+ "type": "boolean"
2873
+ },
2874
+ "data": {
2875
+ "$ref": "#/definitions/Data"
2876
+ },
2877
+ "datasets": {
2878
+ "additionalProperties": {
2879
+ "items": {},
2880
+ "type": "array"
2881
+ },
2882
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
2883
+ "type": "object"
2884
+ },
2885
+ "description": {
2886
+ "anyOf": [
2887
+ {
2888
+ "type": "string"
2889
+ },
2890
+ {
2891
+ "items": {
2892
+ "type": "string"
2893
+ },
2894
+ "type": "array"
2895
+ }
2896
+ ],
2897
+ "description": "A description of the view. Multiple lines can be provided as an array."
2898
+ },
2899
+ "encoding": {
2900
+ "$ref": "#/definitions/Encoding"
2901
+ },
2902
+ "genome": {
2903
+ "$ref": "#/definitions/GenomeConfig"
2904
+ },
2905
+ "height": {
2906
+ "anyOf": [
2907
+ {
2908
+ "$ref": "#/definitions/SizeDef"
2909
+ },
2910
+ {
2911
+ "type": "number"
2912
+ },
2913
+ {
2914
+ "$ref": "#/definitions/Step"
2915
+ },
2916
+ {
2917
+ "const": "container",
2918
+ "type": "string"
2919
+ }
2920
+ ]
2921
+ },
2922
+ "mark": {
2923
+ "anyOf": [
2924
+ {
2925
+ "$ref": "#/definitions/MarkType"
2926
+ },
2927
+ {
2928
+ "$ref": "#/definitions/MarkConfigAndType"
2929
+ }
2930
+ ]
2931
+ },
2932
+ "name": {
2933
+ "type": "string"
2934
+ },
2935
+ "opacity": {
2936
+ "$ref": "#/definitions/ViewOpacityDef",
2937
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
2938
+ },
2939
+ "padding": {
2940
+ "$ref": "#/definitions/PaddingConfig",
2941
+ "description": "Padding in pixels.\n\n**Default:* `0`"
2942
+ },
2943
+ "resolve": {
2944
+ "additionalProperties": false,
2945
+ "properties": {
2946
+ "axis": {
2947
+ "additionalProperties": {
2948
+ "$ref": "#/definitions/ResolutionBehavior"
2949
+ },
2950
+ "properties": {
2951
+ "default": {
2952
+ "$ref": "#/definitions/ResolutionBehavior"
2953
+ }
2954
+ },
2955
+ "type": "object"
2956
+ },
2957
+ "scale": {
2958
+ "additionalProperties": {
2959
+ "$ref": "#/definitions/ResolutionBehavior"
2960
+ },
2961
+ "properties": {
2962
+ "default": {
2963
+ "$ref": "#/definitions/ResolutionBehavior"
2964
+ }
2965
+ },
2966
+ "type": "object"
2967
+ }
2968
+ },
2969
+ "type": "object"
2970
+ },
2971
+ "title": {
2972
+ "type": "string"
2973
+ },
2974
+ "transform": {
2975
+ "items": {
2976
+ "$ref": "#/definitions/TransformParams"
2977
+ },
2978
+ "type": "array"
2979
+ },
2980
+ "view": {
2981
+ "$ref": "#/definitions/ViewConfig"
2982
+ },
2983
+ "visible": {
2984
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
2985
+ "type": "boolean"
2986
+ },
2987
+ "width": {
2988
+ "anyOf": [
2989
+ {
2990
+ "$ref": "#/definitions/SizeDef"
2991
+ },
2992
+ {
2993
+ "type": "number"
2994
+ },
2995
+ {
2996
+ "$ref": "#/definitions/Step"
2997
+ },
2998
+ {
2999
+ "const": "container",
3000
+ "type": "string"
3001
+ }
3002
+ ]
3003
+ }
3004
+ },
3005
+ "required": [
3006
+ "mark"
3007
+ ],
3008
+ "type": "object"
3009
+ },
3010
+ {
3011
+ "additionalProperties": false,
3012
+ "properties": {
3013
+ "aggregateSamples": {
3014
+ "items": {
3015
+ "anyOf": [
3016
+ {
3017
+ "$ref": "#/definitions/UnitSpec"
3018
+ },
3019
+ {
3020
+ "$ref": "#/definitions/LayerSpec"
3021
+ }
3022
+ ]
3023
+ },
3024
+ "type": "array"
3025
+ },
3026
+ "baseUrl": {
3027
+ "type": "string"
3028
+ },
3029
+ "configurableVisibility": {
3030
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
3031
+ "type": "boolean"
3032
+ },
3033
+ "data": {
3034
+ "$ref": "#/definitions/Data"
3035
+ },
3036
+ "datasets": {
3037
+ "additionalProperties": {
3038
+ "items": {},
3039
+ "type": "array"
3040
+ },
3041
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
3042
+ "type": "object"
3043
+ },
3044
+ "description": {
3045
+ "anyOf": [
3046
+ {
3047
+ "type": "string"
3048
+ },
3049
+ {
3050
+ "items": {
3051
+ "type": "string"
3052
+ },
3053
+ "type": "array"
3054
+ }
3055
+ ],
3056
+ "description": "A description of the view. Multiple lines can be provided as an array."
3057
+ },
3058
+ "encoding": {
3059
+ "$ref": "#/definitions/Encoding"
3060
+ },
3061
+ "genome": {
3062
+ "$ref": "#/definitions/GenomeConfig"
3063
+ },
3064
+ "height": {
3065
+ "anyOf": [
3066
+ {
3067
+ "$ref": "#/definitions/SizeDef"
3068
+ },
3069
+ {
3070
+ "type": "number"
3071
+ },
3072
+ {
3073
+ "$ref": "#/definitions/Step"
3074
+ },
3075
+ {
3076
+ "const": "container",
3077
+ "type": "string"
3078
+ }
3079
+ ]
3080
+ },
3081
+ "layer": {
3082
+ "items": {
3083
+ "anyOf": [
3084
+ {
3085
+ "$ref": "#/definitions/LayerSpec"
3086
+ },
3087
+ {
3088
+ "$ref": "#/definitions/UnitSpec"
3089
+ }
3090
+ ]
3091
+ },
3092
+ "type": "array"
3093
+ },
3094
+ "name": {
3095
+ "type": "string"
3096
+ },
3097
+ "opacity": {
3098
+ "$ref": "#/definitions/ViewOpacityDef",
3099
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
3100
+ },
3101
+ "padding": {
3102
+ "$ref": "#/definitions/PaddingConfig",
3103
+ "description": "Padding in pixels.\n\n**Default:* `0`"
3104
+ },
3105
+ "resolve": {
3106
+ "additionalProperties": false,
3107
+ "properties": {
3108
+ "axis": {
3109
+ "additionalProperties": {
3110
+ "$ref": "#/definitions/ResolutionBehavior"
3111
+ },
3112
+ "properties": {
3113
+ "default": {
3114
+ "$ref": "#/definitions/ResolutionBehavior"
3115
+ }
3116
+ },
3117
+ "type": "object"
3118
+ },
3119
+ "scale": {
3120
+ "additionalProperties": {
3121
+ "$ref": "#/definitions/ResolutionBehavior"
3122
+ },
3123
+ "properties": {
3124
+ "default": {
3125
+ "$ref": "#/definitions/ResolutionBehavior"
3126
+ }
3127
+ },
3128
+ "type": "object"
3129
+ }
3130
+ },
3131
+ "type": "object"
3132
+ },
3133
+ "title": {
3134
+ "type": "string"
3135
+ },
3136
+ "transform": {
3137
+ "items": {
3138
+ "$ref": "#/definitions/TransformParams"
3139
+ },
3140
+ "type": "array"
3141
+ },
3142
+ "view": {
3143
+ "$ref": "#/definitions/ViewConfig"
3144
+ },
3145
+ "visible": {
3146
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
3147
+ "type": "boolean"
3148
+ },
3149
+ "width": {
3150
+ "anyOf": [
3151
+ {
3152
+ "$ref": "#/definitions/SizeDef"
3153
+ },
3154
+ {
3155
+ "type": "number"
3156
+ },
3157
+ {
3158
+ "$ref": "#/definitions/Step"
3159
+ },
3160
+ {
3161
+ "const": "container",
3162
+ "type": "string"
3163
+ }
3164
+ ]
3165
+ }
3166
+ },
3167
+ "required": [
3168
+ "layer"
3169
+ ],
3170
+ "type": "object"
3171
+ },
3172
+ {
3173
+ "additionalProperties": false,
3174
+ "properties": {
3175
+ "baseUrl": {
3176
+ "type": "string"
3177
+ },
3178
+ "configurableVisibility": {
3179
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
3180
+ "type": "boolean"
3181
+ },
3182
+ "data": {
3183
+ "$ref": "#/definitions/Data"
3184
+ },
3185
+ "datasets": {
3186
+ "additionalProperties": {
3187
+ "items": {},
3188
+ "type": "array"
3189
+ },
3190
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
3191
+ "type": "object"
3192
+ },
3193
+ "description": {
3194
+ "anyOf": [
3195
+ {
3196
+ "type": "string"
3197
+ },
3198
+ {
3199
+ "items": {
3200
+ "type": "string"
3201
+ },
3202
+ "type": "array"
3203
+ }
3204
+ ],
3205
+ "description": "A description of the view. Multiple lines can be provided as an array."
3206
+ },
3207
+ "encoding": {
3208
+ "$ref": "#/definitions/Encoding"
3209
+ },
3210
+ "genome": {
3211
+ "$ref": "#/definitions/GenomeConfig"
3212
+ },
3213
+ "height": {
3214
+ "anyOf": [
3215
+ {
3216
+ "$ref": "#/definitions/SizeDef"
3217
+ },
3218
+ {
3219
+ "type": "number"
3220
+ },
3221
+ {
3222
+ "$ref": "#/definitions/Step"
3223
+ },
3224
+ {
3225
+ "const": "container",
3226
+ "type": "string"
3227
+ }
3228
+ ]
3229
+ },
3230
+ "name": {
3231
+ "type": "string"
3232
+ },
3233
+ "opacity": {
3234
+ "$ref": "#/definitions/ViewOpacityDef",
3235
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
3236
+ },
3237
+ "padding": {
3238
+ "$ref": "#/definitions/PaddingConfig",
3239
+ "description": "Padding in pixels.\n\n**Default:* `0`"
3240
+ },
3241
+ "resolve": {
3242
+ "additionalProperties": false,
3243
+ "properties": {
3244
+ "axis": {
3245
+ "additionalProperties": {
3246
+ "$ref": "#/definitions/ResolutionBehavior"
3247
+ },
3248
+ "properties": {
3249
+ "default": {
3250
+ "$ref": "#/definitions/ResolutionBehavior"
3251
+ }
3252
+ },
3253
+ "type": "object"
3254
+ },
3255
+ "scale": {
3256
+ "additionalProperties": {
3257
+ "$ref": "#/definitions/ResolutionBehavior"
3258
+ },
3259
+ "properties": {
3260
+ "default": {
3261
+ "$ref": "#/definitions/ResolutionBehavior"
3262
+ }
3263
+ },
3264
+ "type": "object"
3265
+ }
3266
+ },
3267
+ "type": "object"
3268
+ },
3269
+ "samples": {
3270
+ "$ref": "#/definitions/SampleDef"
3271
+ },
3272
+ "spec": {
3273
+ "anyOf": [
3274
+ {
3275
+ "$ref": "#/definitions/LayerSpec"
3276
+ },
3277
+ {
3278
+ "$ref": "#/definitions/UnitSpec"
3279
+ }
3280
+ ]
3281
+ },
3282
+ "stickySummaries": {
3283
+ "type": "boolean"
3284
+ },
3285
+ "title": {
3286
+ "type": "string"
3287
+ },
3288
+ "transform": {
3289
+ "items": {
3290
+ "$ref": "#/definitions/TransformParams"
3291
+ },
3292
+ "type": "array"
3293
+ },
3294
+ "visible": {
3295
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
3296
+ "type": "boolean"
3297
+ },
3298
+ "width": {
3299
+ "anyOf": [
3300
+ {
3301
+ "$ref": "#/definitions/SizeDef"
3302
+ },
3303
+ {
3304
+ "type": "number"
3305
+ },
3306
+ {
3307
+ "$ref": "#/definitions/Step"
3308
+ },
3309
+ {
3310
+ "const": "container",
3311
+ "type": "string"
3312
+ }
3313
+ ]
3314
+ }
3315
+ },
3316
+ "required": [
3317
+ "samples",
3318
+ "spec"
3319
+ ],
3320
+ "type": "object"
3321
+ },
3322
+ {
3323
+ "additionalProperties": false,
3324
+ "properties": {
3325
+ "baseUrl": {
3326
+ "type": "string"
3327
+ },
3328
+ "configurableVisibility": {
3329
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
3330
+ "type": "boolean"
3331
+ },
3332
+ "data": {
3333
+ "$ref": "#/definitions/Data"
3334
+ },
3335
+ "datasets": {
3336
+ "additionalProperties": {
3337
+ "items": {},
3338
+ "type": "array"
3339
+ },
3340
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
3341
+ "type": "object"
3342
+ },
3343
+ "description": {
3344
+ "anyOf": [
3345
+ {
3346
+ "type": "string"
3347
+ },
3348
+ {
3349
+ "items": {
3350
+ "type": "string"
3351
+ },
3352
+ "type": "array"
3353
+ }
3354
+ ],
3355
+ "description": "A description of the view. Multiple lines can be provided as an array."
3356
+ },
3357
+ "encoding": {
3358
+ "$ref": "#/definitions/Encoding"
3359
+ },
3360
+ "genome": {
3361
+ "$ref": "#/definitions/GenomeConfig"
3362
+ },
3363
+ "height": {
3364
+ "anyOf": [
3365
+ {
3366
+ "$ref": "#/definitions/SizeDef"
3367
+ },
3368
+ {
3369
+ "type": "number"
3370
+ },
3371
+ {
3372
+ "$ref": "#/definitions/Step"
3373
+ },
3374
+ {
3375
+ "const": "container",
3376
+ "type": "string"
3377
+ }
3378
+ ]
3379
+ },
3380
+ "name": {
3381
+ "type": "string"
3382
+ },
3383
+ "opacity": {
3384
+ "$ref": "#/definitions/ViewOpacityDef",
3385
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
3386
+ },
3387
+ "padding": {
3388
+ "$ref": "#/definitions/PaddingConfig",
3389
+ "description": "Padding in pixels.\n\n**Default:* `0`"
3390
+ },
3391
+ "resolve": {
3392
+ "additionalProperties": false,
3393
+ "properties": {
3394
+ "axis": {
3395
+ "additionalProperties": {
3396
+ "$ref": "#/definitions/ResolutionBehavior"
3397
+ },
3398
+ "properties": {
3399
+ "default": {
3400
+ "$ref": "#/definitions/ResolutionBehavior"
3401
+ }
3402
+ },
3403
+ "type": "object"
3404
+ },
3405
+ "scale": {
3406
+ "additionalProperties": {
3407
+ "$ref": "#/definitions/ResolutionBehavior"
3408
+ },
3409
+ "properties": {
3410
+ "default": {
3411
+ "$ref": "#/definitions/ResolutionBehavior"
3412
+ }
3413
+ },
3414
+ "type": "object"
3415
+ }
3416
+ },
3417
+ "type": "object"
3418
+ },
3419
+ "spacing": {
3420
+ "type": "number"
3421
+ },
3422
+ "title": {
3423
+ "type": "string"
3424
+ },
3425
+ "transform": {
3426
+ "items": {
3427
+ "$ref": "#/definitions/TransformParams"
3428
+ },
3429
+ "type": "array"
3430
+ },
3431
+ "vconcat": {
3432
+ "items": {
3433
+ "anyOf": [
3434
+ {
3435
+ "$ref": "#/definitions/ViewSpec"
3436
+ },
3437
+ {
3438
+ "$ref": "#/definitions/ImportSpec"
3439
+ }
3440
+ ]
3441
+ },
3442
+ "type": "array"
3443
+ },
3444
+ "visible": {
3445
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
3446
+ "type": "boolean"
3447
+ },
3448
+ "width": {
3449
+ "anyOf": [
3450
+ {
3451
+ "$ref": "#/definitions/SizeDef"
3452
+ },
3453
+ {
3454
+ "type": "number"
3455
+ },
3456
+ {
3457
+ "$ref": "#/definitions/Step"
3458
+ },
3459
+ {
3460
+ "const": "container",
3461
+ "type": "string"
3462
+ }
3463
+ ]
3464
+ }
3465
+ },
3466
+ "required": [
3467
+ "vconcat"
3468
+ ],
3469
+ "type": "object"
3470
+ },
3471
+ {
3472
+ "additionalProperties": false,
3473
+ "properties": {
3474
+ "baseUrl": {
3475
+ "type": "string"
3476
+ },
3477
+ "configurableVisibility": {
3478
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
3479
+ "type": "boolean"
3480
+ },
3481
+ "data": {
3482
+ "$ref": "#/definitions/Data"
3483
+ },
3484
+ "datasets": {
3485
+ "additionalProperties": {
3486
+ "items": {},
3487
+ "type": "array"
3488
+ },
3489
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
3490
+ "type": "object"
3491
+ },
3492
+ "description": {
3493
+ "anyOf": [
3494
+ {
3495
+ "type": "string"
3496
+ },
3497
+ {
3498
+ "items": {
3499
+ "type": "string"
3500
+ },
3501
+ "type": "array"
3502
+ }
3503
+ ],
3504
+ "description": "A description of the view. Multiple lines can be provided as an array."
3505
+ },
3506
+ "encoding": {
3507
+ "$ref": "#/definitions/Encoding"
3508
+ },
3509
+ "genome": {
3510
+ "$ref": "#/definitions/GenomeConfig"
3511
+ },
3512
+ "hconcat": {
3513
+ "items": {
3514
+ "anyOf": [
3515
+ {
3516
+ "$ref": "#/definitions/ViewSpec"
3517
+ },
3518
+ {
3519
+ "$ref": "#/definitions/ImportSpec"
3520
+ }
3521
+ ]
3522
+ },
3523
+ "type": "array"
3524
+ },
3525
+ "height": {
3526
+ "anyOf": [
3527
+ {
3528
+ "$ref": "#/definitions/SizeDef"
3529
+ },
3530
+ {
3531
+ "type": "number"
3532
+ },
3533
+ {
3534
+ "$ref": "#/definitions/Step"
3535
+ },
3536
+ {
3537
+ "const": "container",
3538
+ "type": "string"
3539
+ }
3540
+ ]
3541
+ },
3542
+ "name": {
3543
+ "type": "string"
3544
+ },
3545
+ "opacity": {
3546
+ "$ref": "#/definitions/ViewOpacityDef",
3547
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
3548
+ },
3549
+ "padding": {
3550
+ "$ref": "#/definitions/PaddingConfig",
3551
+ "description": "Padding in pixels.\n\n**Default:* `0`"
3552
+ },
3553
+ "resolve": {
3554
+ "additionalProperties": false,
3555
+ "properties": {
3556
+ "axis": {
3557
+ "additionalProperties": {
3558
+ "$ref": "#/definitions/ResolutionBehavior"
3559
+ },
3560
+ "properties": {
3561
+ "default": {
3562
+ "$ref": "#/definitions/ResolutionBehavior"
3563
+ }
3564
+ },
3565
+ "type": "object"
3566
+ },
3567
+ "scale": {
3568
+ "additionalProperties": {
3569
+ "$ref": "#/definitions/ResolutionBehavior"
3570
+ },
3571
+ "properties": {
3572
+ "default": {
3573
+ "$ref": "#/definitions/ResolutionBehavior"
3574
+ }
3575
+ },
3576
+ "type": "object"
3577
+ }
3578
+ },
3579
+ "type": "object"
3580
+ },
3581
+ "spacing": {
3582
+ "type": "number"
3583
+ },
3584
+ "title": {
3585
+ "type": "string"
3586
+ },
3587
+ "transform": {
3588
+ "items": {
3589
+ "$ref": "#/definitions/TransformParams"
3590
+ },
3591
+ "type": "array"
3592
+ },
3593
+ "visible": {
3594
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
3595
+ "type": "boolean"
3596
+ },
3597
+ "width": {
3598
+ "anyOf": [
3599
+ {
3600
+ "$ref": "#/definitions/SizeDef"
3601
+ },
3602
+ {
3603
+ "type": "number"
3604
+ },
3605
+ {
3606
+ "$ref": "#/definitions/Step"
3607
+ },
3608
+ {
3609
+ "const": "container",
3610
+ "type": "string"
3611
+ }
3612
+ ]
3613
+ }
3614
+ },
3615
+ "required": [
3616
+ "hconcat"
3617
+ ],
3618
+ "type": "object"
3619
+ },
3620
+ {
3621
+ "additionalProperties": false,
3622
+ "properties": {
3623
+ "baseUrl": {
3624
+ "type": "string"
3625
+ },
3626
+ "concat": {
3627
+ "items": {
3628
+ "anyOf": [
3629
+ {
3630
+ "$ref": "#/definitions/ViewSpec"
3631
+ },
3632
+ {
3633
+ "$ref": "#/definitions/ImportSpec"
3634
+ }
3635
+ ]
3636
+ },
3637
+ "type": "array"
3638
+ },
3639
+ "configurableVisibility": {
3640
+ "description": "Is the visibility configurable interactively from the App. Configurability requires that the view has an explicitly specified name that is *unique* in within the view specification.\n\n**Default:** `false` for children of `layer`, `true` for others.",
3641
+ "type": "boolean"
3642
+ },
3643
+ "data": {
3644
+ "$ref": "#/definitions/Data"
3645
+ },
3646
+ "datasets": {
3647
+ "additionalProperties": {
3648
+ "items": {},
3649
+ "type": "array"
3650
+ },
3651
+ "description": "https://vega.github.io/vega-lite/docs/data.html#datasets",
3652
+ "type": "object"
3653
+ },
3654
+ "description": {
3655
+ "anyOf": [
3656
+ {
3657
+ "type": "string"
3658
+ },
3659
+ {
3660
+ "items": {
3661
+ "type": "string"
3662
+ },
3663
+ "type": "array"
3664
+ }
3665
+ ],
3666
+ "description": "A description of the view. Multiple lines can be provided as an array."
3667
+ },
3668
+ "encoding": {
3669
+ "$ref": "#/definitions/Encoding"
3670
+ },
3671
+ "genome": {
3672
+ "$ref": "#/definitions/GenomeConfig"
3673
+ },
3674
+ "height": {
3675
+ "anyOf": [
3676
+ {
3677
+ "$ref": "#/definitions/SizeDef"
3678
+ },
3679
+ {
3680
+ "type": "number"
3681
+ },
3682
+ {
3683
+ "$ref": "#/definitions/Step"
3684
+ },
3685
+ {
3686
+ "const": "container",
3687
+ "type": "string"
3688
+ }
3689
+ ]
3690
+ },
3691
+ "name": {
3692
+ "type": "string"
3693
+ },
3694
+ "opacity": {
3695
+ "$ref": "#/definitions/ViewOpacityDef",
3696
+ "description": "Opacity of the view and all its children.\n\n**Default:* `1.0`"
3697
+ },
3698
+ "padding": {
3699
+ "$ref": "#/definitions/PaddingConfig",
3700
+ "description": "Padding in pixels.\n\n**Default:* `0`"
3701
+ },
3702
+ "resolve": {
3703
+ "additionalProperties": false,
3704
+ "properties": {
3705
+ "axis": {
3706
+ "additionalProperties": {
3707
+ "$ref": "#/definitions/ResolutionBehavior"
3708
+ },
3709
+ "properties": {
3710
+ "default": {
3711
+ "$ref": "#/definitions/ResolutionBehavior"
3712
+ }
3713
+ },
3714
+ "type": "object"
3715
+ },
3716
+ "scale": {
3717
+ "additionalProperties": {
3718
+ "$ref": "#/definitions/ResolutionBehavior"
3719
+ },
3720
+ "properties": {
3721
+ "default": {
3722
+ "$ref": "#/definitions/ResolutionBehavior"
3723
+ }
3724
+ },
3725
+ "type": "object"
3726
+ }
3727
+ },
3728
+ "type": "object"
3729
+ },
3730
+ "spacing": {
3731
+ "type": "number"
3732
+ },
3733
+ "title": {
3734
+ "type": "string"
3735
+ },
3736
+ "transform": {
3737
+ "items": {
3738
+ "$ref": "#/definitions/TransformParams"
3739
+ },
3740
+ "type": "array"
3741
+ },
3742
+ "visible": {
3743
+ "description": "Visibility of the view. An invisible view is removed from the layout and not rendered.\n\n**Default:** `true`",
3744
+ "type": "boolean"
3745
+ },
3746
+ "width": {
3747
+ "anyOf": [
3748
+ {
3749
+ "$ref": "#/definitions/SizeDef"
3750
+ },
3751
+ {
3752
+ "type": "number"
3753
+ },
3754
+ {
3755
+ "$ref": "#/definitions/Step"
3756
+ },
3757
+ {
3758
+ "const": "container",
3759
+ "type": "string"
3760
+ }
3761
+ ]
3762
+ }
3763
+ },
3764
+ "required": [
3765
+ "concat"
3766
+ ],
3767
+ "type": "object"
3768
+ }
3769
+ ]
3770
+ },
2809
3771
  "SampleAttributeDef": {
2810
3772
  "additionalProperties": false,
2811
3773
  "properties": {
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  },
8
8
  "contributors": [],
9
9
  "license": "BSD-2-Clause",
10
- "version": "0.16.0",
10
+ "version": "0.17.0",
11
11
  "main": "dist/index.js",
12
12
  "module": "src/index.js",
13
13
  "exports": {
@@ -29,7 +29,7 @@
29
29
  "prepublishOnly": "npm run build && npm run build:schema",
30
30
  "test:tsc": "tsc -p tsconfig.json",
31
31
  "checkSpec": "tsc --allowJs --checkJs --strict --noEmit --moduleResolution node --target es6 src/spec/root.d.ts",
32
- "build:schema": "mkdir -p dist && ts-json-schema-generator --path 'src/spec/*.ts' --type ViewSpec > dist/genome-spy-schema.json"
32
+ "build:schema": "mkdir -p dist && ts-json-schema-generator --path 'src/spec/*.ts' --type RootSpec > dist/genome-spy-schema.json"
33
33
  },
34
34
  "dependencies": {
35
35
  "@types/d3-array": "^3.0.2",
@@ -51,5 +51,5 @@
51
51
  "vega-scale": "^7.1.1",
52
52
  "vega-util": "^1.16.0"
53
53
  },
54
- "gitHead": "d612f107ef58388bcce009bf7beeceefb4355783"
54
+ "gitHead": "32db7f46f77206140bd624344e9465d32a94bd07"
55
55
  }
@@ -1,16 +1,9 @@
1
1
  import { GenomeConfig } from "./genome";
2
2
  import { ViewSpec } from "./view";
3
3
 
4
- export interface RootConfig {
4
+ interface RootConfig {
5
5
  genome?: GenomeConfig;
6
6
 
7
- /**
8
- * A unique identifier that is used in storing state bookmarks to browser's
9
- * IndexedDB. This is needed to make distinction between visualizations that
10
- * are served from the same origin, i.e., the same host and port.
11
- */
12
- specId?: string;
13
-
14
7
  baseUrl?: string;
15
8
 
16
9
  /**
@@ -35,7 +35,6 @@ import { rollup } from "d3-array";
35
35
  * @typedef {import("../spec/view").ImportSpec} ImportSpec
36
36
  * @typedef {import("../spec/view").ImportConfig} ImportConfig
37
37
  * @typedef {import("../spec/root").RootSpec} RootSpec
38
- * @typedef {import("../spec/root").RootConfig} RootConfig
39
38
  *
40
39
  * @typedef {import("../spec/view").FacetMapping} FacetMapping
41
40
  * @typedef {import("../spec/channel").FacetFieldDef} FacetFieldDef