@jbrowse/plugin-linear-genome-view 2.11.1 → 2.12.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 (53) hide show
  1. package/dist/BaseLinearDisplay/components/LinearBlocks.js +7 -7
  2. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +17 -1
  3. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +21 -0
  4. package/dist/BaseLinearDisplay/models/configSchema.d.ts +10 -0
  5. package/dist/BaseLinearDisplay/models/configSchema.js +15 -3
  6. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +1 -0
  7. package/dist/LinearBareDisplay/configSchema.d.ts +5 -0
  8. package/dist/LinearBareDisplay/model.d.ts +17 -2
  9. package/dist/LinearBasicDisplay/components/AddFiltersDialog.d.ts +10 -0
  10. package/dist/LinearBasicDisplay/components/AddFiltersDialog.js +94 -0
  11. package/dist/LinearBasicDisplay/components/{SetMaxHeight.js → SetMaxHeightDialog.js} +7 -7
  12. package/dist/LinearBasicDisplay/configSchema.d.ts +5 -0
  13. package/dist/LinearBasicDisplay/model.d.ts +56 -21
  14. package/dist/LinearBasicDisplay/model.js +36 -5
  15. package/dist/LinearGenomeView/components/Gridlines.js +3 -4
  16. package/dist/LinearGenomeView/components/Highlight.js +20 -21
  17. package/dist/LinearGenomeView/components/OverviewScalebar.js +1 -2
  18. package/dist/LinearGenomeView/components/Scalebar.js +4 -5
  19. package/dist/LinearGenomeView/components/TrackLabel.js +4 -4
  20. package/dist/LinearGenomeView/components/TrackRenderingContainer.js +10 -5
  21. package/dist/LinearGenomeView/components/hooks.d.ts +2 -2
  22. package/dist/LinearGenomeView/components/hooks.js +8 -13
  23. package/dist/LinearGenomeView/model.d.ts +5 -22
  24. package/dist/LinearGenomeView/model.js +2 -2
  25. package/dist/index.d.ts +60 -129
  26. package/esm/BaseLinearDisplay/components/LinearBlocks.js +7 -7
  27. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +17 -1
  28. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +21 -0
  29. package/esm/BaseLinearDisplay/models/configSchema.d.ts +10 -0
  30. package/esm/BaseLinearDisplay/models/configSchema.js +15 -3
  31. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +1 -0
  32. package/esm/LinearBareDisplay/configSchema.d.ts +5 -0
  33. package/esm/LinearBareDisplay/model.d.ts +17 -2
  34. package/esm/LinearBasicDisplay/components/AddFiltersDialog.d.ts +10 -0
  35. package/esm/LinearBasicDisplay/components/AddFiltersDialog.js +69 -0
  36. package/esm/LinearBasicDisplay/components/{SetMaxHeight.js → SetMaxHeightDialog.js} +7 -7
  37. package/esm/LinearBasicDisplay/configSchema.d.ts +5 -0
  38. package/esm/LinearBasicDisplay/model.d.ts +56 -21
  39. package/esm/LinearBasicDisplay/model.js +37 -6
  40. package/esm/LinearGenomeView/components/Gridlines.js +3 -4
  41. package/esm/LinearGenomeView/components/Highlight.js +20 -21
  42. package/esm/LinearGenomeView/components/OverviewScalebar.js +1 -2
  43. package/esm/LinearGenomeView/components/Scalebar.js +4 -5
  44. package/esm/LinearGenomeView/components/TrackLabel.js +4 -4
  45. package/esm/LinearGenomeView/components/TrackRenderingContainer.js +10 -5
  46. package/esm/LinearGenomeView/components/hooks.d.ts +2 -2
  47. package/esm/LinearGenomeView/components/hooks.js +8 -10
  48. package/esm/LinearGenomeView/model.d.ts +5 -22
  49. package/esm/LinearGenomeView/model.js +3 -3
  50. package/esm/index.d.ts +60 -129
  51. package/package.json +2 -4
  52. /package/dist/LinearBasicDisplay/components/{SetMaxHeight.d.ts → SetMaxHeightDialog.d.ts} +0 -0
  53. /package/esm/LinearBasicDisplay/components/{SetMaxHeight.d.ts → SetMaxHeightDialog.d.ts} +0 -0
package/dist/index.d.ts CHANGED
@@ -143,6 +143,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
143
143
  defaultValue: string;
144
144
  contextVariable: string[];
145
145
  };
146
+ jexlFilters: {
147
+ type: string;
148
+ description: string;
149
+ defaultValue: never[];
150
+ };
146
151
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>>;
147
152
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
148
153
  rendererTypeName: string;
@@ -258,6 +263,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
258
263
  addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
259
264
  deleteBlock(key: string): void;
260
265
  selectFeature(feature: import("@jbrowse/core/util").Feature): void;
266
+ navToFeature(feature: import("@jbrowse/core/util").Feature): void;
261
267
  clearFeatureSelection(): void;
262
268
  setFeatureIdUnderMouse(feature?: string | undefined): void;
263
269
  setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature | undefined): void;
@@ -355,6 +361,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
355
361
  defaultValue: string;
356
362
  contextVariable: string[];
357
363
  };
364
+ jexlFilters: {
365
+ type: string;
366
+ description: string;
367
+ defaultValue: never[];
368
+ };
358
369
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
359
370
  }, {
360
371
  rendererTypeName: string;
@@ -470,6 +481,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
470
481
  addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
471
482
  deleteBlock(key: string): void;
472
483
  selectFeature(feature: import("@jbrowse/core/util").Feature): void;
484
+ navToFeature(feature: import("@jbrowse/core/util").Feature): void;
473
485
  clearFeatureSelection(): void;
474
486
  setFeatureIdUnderMouse(feature?: string | undefined): void;
475
487
  setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature | undefined): void;
@@ -567,6 +579,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
567
579
  defaultValue: string;
568
580
  contextVariable: string[];
569
581
  };
582
+ jexlFilters: {
583
+ type: string;
584
+ description: string;
585
+ defaultValue: never[];
586
+ };
570
587
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
571
588
  }>>, {
572
589
  type: string;
@@ -664,6 +681,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
664
681
  defaultValue: string;
665
682
  contextVariable: string[];
666
683
  };
684
+ jexlFilters: {
685
+ type: string;
686
+ description: string;
687
+ defaultValue: never[];
688
+ };
667
689
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
668
690
  }, {
669
691
  rendererTypeName: string;
@@ -779,6 +801,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
779
801
  addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
780
802
  deleteBlock(key: string): void;
781
803
  selectFeature(feature: import("@jbrowse/core/util").Feature): void;
804
+ navToFeature(feature: import("@jbrowse/core/util").Feature): void;
782
805
  clearFeatureSelection(): void;
783
806
  setFeatureIdUnderMouse(feature?: string | undefined): void;
784
807
  setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature | undefined): void;
@@ -876,6 +899,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
876
899
  defaultValue: string;
877
900
  contextVariable: string[];
878
901
  };
902
+ jexlFilters: {
903
+ type: string;
904
+ description: string;
905
+ defaultValue: never[];
906
+ };
879
907
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
880
908
  }>>, {
881
909
  type: string;
@@ -908,6 +936,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
908
936
  defaultValue: string;
909
937
  contextVariable: string[];
910
938
  };
939
+ jexlFilters: {
940
+ type: string;
941
+ description: string;
942
+ defaultValue: never[];
943
+ };
911
944
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
912
945
  SearchBox: ({ model, showHelp, }: {
913
946
  showHelp?: boolean | undefined;
@@ -918,25 +951,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
918
951
  type: string;
919
952
  offsetPx: number;
920
953
  bpPerPx: number;
921
- displayedRegions: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IModelType<{
922
- refName: import("mobx-state-tree").ISimpleType<string>;
923
- start: import("mobx-state-tree").ISimpleType<number>;
924
- end: import("mobx-state-tree").ISimpleType<number>;
925
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
926
- } & {
927
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
928
- }, {
929
- setRefName(newRefName: string): void;
930
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
931
- refName: import("mobx-state-tree").ISimpleType<string>;
932
- start: import("mobx-state-tree").ISimpleType<number>;
933
- end: import("mobx-state-tree").ISimpleType<number>;
934
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
935
- } & {
936
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
937
- }, {
938
- setRefName(newRefName: string): void;
939
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
954
+ displayedRegions: import("@jbrowse/core/util").Region[] & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>>;
940
955
  tracks: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>>;
941
956
  hideHeader: boolean;
942
957
  hideHeaderOverview: boolean;
@@ -1039,6 +1054,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1039
1054
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
1040
1055
  start: number;
1041
1056
  end: number;
1057
+ type: string;
1042
1058
  regionNumber?: number | undefined;
1043
1059
  reversed?: boolean | undefined;
1044
1060
  refName: string;
@@ -1232,7 +1248,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1232
1248
  offset: number;
1233
1249
  start: number;
1234
1250
  end: number;
1235
- reversed: boolean;
1251
+ reversed?: boolean | undefined;
1236
1252
  };
1237
1253
  readonly centerLineInfo: {
1238
1254
  coord: number;
@@ -1243,7 +1259,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1243
1259
  offset: number;
1244
1260
  start: number;
1245
1261
  end: number;
1246
- reversed: boolean;
1262
+ reversed?: boolean | undefined;
1247
1263
  } | undefined;
1248
1264
  } & {
1249
1265
  afterCreate(): void;
@@ -1256,16 +1272,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1256
1272
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
1257
1273
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1258
1274
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1259
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
1260
- refName: import("mobx-state-tree").ISimpleType<string>;
1261
- start: import("mobx-state-tree").ISimpleType<number>;
1262
- end: import("mobx-state-tree").ISimpleType<number>;
1263
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
1264
- } & {
1265
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
1266
- }, {
1267
- setRefName(newRefName: string): void;
1268
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
1275
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
1269
1276
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
1270
1277
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1271
1278
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -1368,6 +1375,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1368
1375
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
1369
1376
  start: number;
1370
1377
  end: number;
1378
+ type: string;
1371
1379
  regionNumber?: number | undefined;
1372
1380
  reversed?: boolean | undefined;
1373
1381
  refName: string;
@@ -1561,7 +1569,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1561
1569
  offset: number;
1562
1570
  start: number;
1563
1571
  end: number;
1564
- reversed: boolean;
1572
+ reversed?: boolean | undefined;
1565
1573
  };
1566
1574
  readonly centerLineInfo: {
1567
1575
  coord: number;
@@ -1572,7 +1580,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1572
1580
  offset: number;
1573
1581
  start: number;
1574
1582
  end: number;
1575
- reversed: boolean;
1583
+ reversed?: boolean | undefined;
1576
1584
  } | undefined;
1577
1585
  } & {
1578
1586
  afterCreate(): void;
@@ -1585,16 +1593,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1585
1593
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
1586
1594
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1587
1595
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1588
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
1589
- refName: import("mobx-state-tree").ISimpleType<string>;
1590
- start: import("mobx-state-tree").ISimpleType<number>;
1591
- end: import("mobx-state-tree").ISimpleType<number>;
1592
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
1593
- } & {
1594
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
1595
- }, {
1596
- setRefName(newRefName: string): void;
1597
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
1596
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
1598
1597
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
1599
1598
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1600
1599
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -1616,25 +1615,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1616
1615
  type: string;
1617
1616
  offsetPx: number;
1618
1617
  bpPerPx: number;
1619
- displayedRegions: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IModelType<{
1620
- refName: import("mobx-state-tree").ISimpleType<string>;
1621
- start: import("mobx-state-tree").ISimpleType<number>;
1622
- end: import("mobx-state-tree").ISimpleType<number>;
1623
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
1624
- } & {
1625
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
1626
- }, {
1627
- setRefName(newRefName: string): void;
1628
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
1629
- refName: import("mobx-state-tree").ISimpleType<string>;
1630
- start: import("mobx-state-tree").ISimpleType<number>;
1631
- end: import("mobx-state-tree").ISimpleType<number>;
1632
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
1633
- } & {
1634
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
1635
- }, {
1636
- setRefName(newRefName: string): void;
1637
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
1618
+ displayedRegions: import("@jbrowse/core/util").Region[] & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>>;
1638
1619
  tracks: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>>;
1639
1620
  hideHeader: boolean;
1640
1621
  hideHeaderOverview: boolean;
@@ -1737,6 +1718,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1737
1718
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
1738
1719
  start: number;
1739
1720
  end: number;
1721
+ type: string;
1740
1722
  regionNumber?: number | undefined;
1741
1723
  reversed?: boolean | undefined;
1742
1724
  refName: string;
@@ -1930,7 +1912,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1930
1912
  offset: number;
1931
1913
  start: number;
1932
1914
  end: number;
1933
- reversed: boolean;
1915
+ reversed?: boolean | undefined;
1934
1916
  };
1935
1917
  readonly centerLineInfo: {
1936
1918
  coord: number;
@@ -1941,7 +1923,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1941
1923
  offset: number;
1942
1924
  start: number;
1943
1925
  end: number;
1944
- reversed: boolean;
1926
+ reversed?: boolean | undefined;
1945
1927
  } | undefined;
1946
1928
  } & {
1947
1929
  afterCreate(): void;
@@ -1954,16 +1936,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1954
1936
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
1955
1937
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1956
1938
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
1957
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
1958
- refName: import("mobx-state-tree").ISimpleType<string>;
1959
- start: import("mobx-state-tree").ISimpleType<number>;
1960
- end: import("mobx-state-tree").ISimpleType<number>;
1961
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
1962
- } & {
1963
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
1964
- }, {
1965
- setRefName(newRefName: string): void;
1966
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
1939
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
1967
1940
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
1968
1941
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
1969
1942
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -2066,6 +2039,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2066
2039
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
2067
2040
  start: number;
2068
2041
  end: number;
2042
+ type: string;
2069
2043
  regionNumber?: number | undefined;
2070
2044
  reversed?: boolean | undefined;
2071
2045
  refName: string;
@@ -2259,7 +2233,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2259
2233
  offset: number;
2260
2234
  start: number;
2261
2235
  end: number;
2262
- reversed: boolean;
2236
+ reversed?: boolean | undefined;
2263
2237
  };
2264
2238
  readonly centerLineInfo: {
2265
2239
  coord: number;
@@ -2270,7 +2244,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2270
2244
  offset: number;
2271
2245
  start: number;
2272
2246
  end: number;
2273
- reversed: boolean;
2247
+ reversed?: boolean | undefined;
2274
2248
  } | undefined;
2275
2249
  } & {
2276
2250
  afterCreate(): void;
@@ -2283,16 +2257,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2283
2257
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
2284
2258
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2285
2259
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2286
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
2287
- refName: import("mobx-state-tree").ISimpleType<string>;
2288
- start: import("mobx-state-tree").ISimpleType<number>;
2289
- end: import("mobx-state-tree").ISimpleType<number>;
2290
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
2291
- } & {
2292
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
2293
- }, {
2294
- setRefName(newRefName: string): void;
2295
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
2260
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
2296
2261
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
2297
2262
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2298
2263
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -2314,25 +2279,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2314
2279
  type: string;
2315
2280
  offsetPx: number;
2316
2281
  bpPerPx: number;
2317
- displayedRegions: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IModelType<{
2318
- refName: import("mobx-state-tree").ISimpleType<string>;
2319
- start: import("mobx-state-tree").ISimpleType<number>;
2320
- end: import("mobx-state-tree").ISimpleType<number>;
2321
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
2322
- } & {
2323
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
2324
- }, {
2325
- setRefName(newRefName: string): void;
2326
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
2327
- refName: import("mobx-state-tree").ISimpleType<string>;
2328
- start: import("mobx-state-tree").ISimpleType<number>;
2329
- end: import("mobx-state-tree").ISimpleType<number>;
2330
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
2331
- } & {
2332
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
2333
- }, {
2334
- setRefName(newRefName: string): void;
2335
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
2282
+ displayedRegions: import("@jbrowse/core/util").Region[] & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>>;
2336
2283
  tracks: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>>;
2337
2284
  hideHeader: boolean;
2338
2285
  hideHeaderOverview: boolean;
@@ -2435,6 +2382,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2435
2382
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
2436
2383
  start: number;
2437
2384
  end: number;
2385
+ type: string;
2438
2386
  regionNumber?: number | undefined;
2439
2387
  reversed?: boolean | undefined;
2440
2388
  refName: string;
@@ -2628,7 +2576,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2628
2576
  offset: number;
2629
2577
  start: number;
2630
2578
  end: number;
2631
- reversed: boolean;
2579
+ reversed?: boolean | undefined;
2632
2580
  };
2633
2581
  readonly centerLineInfo: {
2634
2582
  coord: number;
@@ -2639,7 +2587,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2639
2587
  offset: number;
2640
2588
  start: number;
2641
2589
  end: number;
2642
- reversed: boolean;
2590
+ reversed?: boolean | undefined;
2643
2591
  } | undefined;
2644
2592
  } & {
2645
2593
  afterCreate(): void;
@@ -2652,16 +2600,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2652
2600
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
2653
2601
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2654
2602
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2655
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
2656
- refName: import("mobx-state-tree").ISimpleType<string>;
2657
- start: import("mobx-state-tree").ISimpleType<number>;
2658
- end: import("mobx-state-tree").ISimpleType<number>;
2659
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
2660
- } & {
2661
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
2662
- }, {
2663
- setRefName(newRefName: string): void;
2664
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
2603
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
2665
2604
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
2666
2605
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2667
2606
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -2764,6 +2703,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2764
2703
  getSelectedRegions(leftOffset?: import("./LinearGenomeView").BpOffset | undefined, rightOffset?: import("./LinearGenomeView").BpOffset | undefined): {
2765
2704
  start: number;
2766
2705
  end: number;
2706
+ type: string;
2767
2707
  regionNumber?: number | undefined;
2768
2708
  reversed?: boolean | undefined;
2769
2709
  refName: string;
@@ -2957,7 +2897,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2957
2897
  offset: number;
2958
2898
  start: number;
2959
2899
  end: number;
2960
- reversed: boolean;
2900
+ reversed?: boolean | undefined;
2961
2901
  };
2962
2902
  readonly centerLineInfo: {
2963
2903
  coord: number;
@@ -2968,7 +2908,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2968
2908
  offset: number;
2969
2909
  start: number;
2970
2910
  end: number;
2971
- reversed: boolean;
2911
+ reversed?: boolean | undefined;
2972
2912
  } | undefined;
2973
2913
  } & {
2974
2914
  afterCreate(): void;
@@ -2981,16 +2921,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
2981
2921
  type: import("mobx-state-tree").IType<string | undefined, string, string>;
2982
2922
  offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2983
2923
  bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
2984
- displayedRegions: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
2985
- refName: import("mobx-state-tree").ISimpleType<string>;
2986
- start: import("mobx-state-tree").ISimpleType<number>;
2987
- end: import("mobx-state-tree").ISimpleType<number>;
2988
- reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
2989
- } & {
2990
- assemblyName: import("mobx-state-tree").ISimpleType<string>;
2991
- }, {
2992
- setRefName(newRefName: string): void;
2993
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
2924
+ displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[], import("@jbrowse/core/util").Region[]>, [undefined]>;
2994
2925
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
2995
2926
  hideHeader: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
2996
2927
  hideHeaderOverview: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  import { makeStyles } from 'tss-react/mui';
3
3
  import { getContainingView } from '@jbrowse/core/util';
4
4
  import { observer } from 'mobx-react';
5
- import { ContentBlock, ElidedBlock, InterRegionPaddingBlock, } from '@jbrowse/core/util/blockTypes';
6
5
  import { ContentBlock as ContentBlockComponent, ElidedBlock as ElidedBlockComponent, InterRegionPaddingBlock as InterRegionPaddingBlockComponent, } from './Block';
7
6
  const useStyles = makeStyles()({
8
7
  linearBlocks: {
@@ -29,9 +28,10 @@ const RenderedBlocks = observer(function ({ model, }) {
29
28
  const { classes } = useStyles();
30
29
  const { blockDefinitions, blockState } = model;
31
30
  return (React.createElement(React.Fragment, null, blockDefinitions.map(block => {
32
- if (block instanceof ContentBlock) {
31
+ const key = `${model.id}-${block.key}`;
32
+ if (block.type === 'ContentBlock') {
33
33
  const state = blockState.get(block.key);
34
- return (React.createElement(ContentBlockComponent, { block: block, key: `${model.id}-${block.key}` },
34
+ return (React.createElement(ContentBlockComponent, { block: block, key: key },
35
35
  (state === null || state === void 0 ? void 0 : state.ReactComponent) ? (React.createElement(state.ReactComponent, { model: state })) : null,
36
36
  (state === null || state === void 0 ? void 0 : state.maxHeightReached) ? (React.createElement("div", { className: classes.heightOverflowed, style: {
37
37
  top: state.layout.getTotalHeight() - 16,
@@ -39,11 +39,11 @@ const RenderedBlocks = observer(function ({ model, }) {
39
39
  height: 16,
40
40
  } }, "Max height reached")) : null));
41
41
  }
42
- if (block instanceof ElidedBlock) {
43
- return (React.createElement(ElidedBlockComponent, { key: `${model.id}-${block.key}`, width: block.widthPx }));
42
+ else if (block.type === 'ElidedBlock') {
43
+ return React.createElement(ElidedBlockComponent, { key: key, width: block.widthPx });
44
44
  }
45
- if (block instanceof InterRegionPaddingBlock) {
46
- return (React.createElement(InterRegionPaddingBlockComponent, { key: block.key, width: block.widthPx, style: { background: 'none' }, boundary: block.variant === 'boundary' }));
45
+ else if (block.type === 'InterRegionPaddingBlock') {
46
+ return (React.createElement(InterRegionPaddingBlockComponent, { key: key, width: block.widthPx, style: { background: 'none' }, boundary: block.variant === 'boundary' }));
47
47
  }
48
48
  throw new Error(`invalid block type ${JSON.stringify(block)}`);
49
49
  })));
@@ -110,6 +110,11 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
110
110
  defaultValue: string;
111
111
  contextVariable: string[];
112
112
  };
113
+ jexlFilters: {
114
+ type: string;
115
+ description: string;
116
+ defaultValue: never[];
117
+ };
113
118
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
114
119
  }, {
115
120
  rendererTypeName: string;
@@ -200,7 +205,9 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
200
205
  readonly regionTooLarge: boolean;
201
206
  readonly regionTooLargeReason: string;
202
207
  } & {
203
- regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
208
+ regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features"; /**
209
+ * #action
210
+ */
204
211
  regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): React.JSX.Element | null;
205
212
  } & {
206
213
  featureIdUnderMouse: string | undefined;
@@ -273,6 +280,10 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
273
280
  * #action
274
281
  */
275
282
  selectFeature(feature: Feature): void;
283
+ /**
284
+ * #action
285
+ */
286
+ navToFeature(feature: Feature): void;
276
287
  /**
277
288
  * #action
278
289
  */
@@ -401,6 +412,11 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
401
412
  defaultValue: string;
402
413
  contextVariable: string[];
403
414
  };
415
+ jexlFilters: {
416
+ type: string;
417
+ description: string;
418
+ defaultValue: never[];
419
+ };
404
420
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
405
421
  }>>, {
406
422
  type: string;
@@ -7,6 +7,7 @@ import { autorun } from 'mobx';
7
7
  import { addDisposer, isAlive, types } from 'mobx-state-tree';
8
8
  // icons
9
9
  import MenuOpenIcon from '@mui/icons-material/MenuOpen';
10
+ import CenterFocusStrongIcon from '@mui/icons-material/CenterFocusStrong';
10
11
  import { Tooltip } from '../components/BaseLinearDisplay';
11
12
  import BlockState from './serverSideRenderedBlock';
12
13
  import configSchema from './configSchema';
@@ -182,6 +183,17 @@ function stateModelFactory() {
182
183
  session.setSelection(feature);
183
184
  }
184
185
  },
186
+ /**
187
+ * #action
188
+ */
189
+ navToFeature(feature) {
190
+ const view = getContainingView(self);
191
+ view.navTo({
192
+ refName: feature.get('refName'),
193
+ start: feature.get('start'),
194
+ end: feature.get('end'),
195
+ });
196
+ },
185
197
  /**
186
198
  * #action
187
199
  */
@@ -239,6 +251,15 @@ function stateModelFactory() {
239
251
  }
240
252
  },
241
253
  },
254
+ {
255
+ label: 'Zoom to feature',
256
+ icon: CenterFocusStrongIcon,
257
+ onClick: () => {
258
+ if (self.contextMenuFeature) {
259
+ self.navToFeature(self.contextMenuFeature);
260
+ }
261
+ },
262
+ },
242
263
  ]
243
264
  : []),
244
265
  ];
@@ -32,5 +32,15 @@ declare const baseLinearDisplayConfigSchema: import("@jbrowse/core/configuration
32
32
  defaultValue: string;
33
33
  contextVariable: string[];
34
34
  };
35
+ /**
36
+ * #slot
37
+ * config jexlFilters are deferred evaluated so they are prepended with
38
+ * jexl at runtime rather than being stored with jexl in the config
39
+ */
40
+ jexlFilters: {
41
+ type: string;
42
+ description: string;
43
+ defaultValue: never[];
44
+ };
35
45
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
36
46
  export default baseLinearDisplayConfigSchema;
@@ -2,9 +2,11 @@ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
2
  /**
3
3
  * #config BaseLinearDisplay
4
4
  * #category display
5
- * `BaseLinearDisplay` is a "base" config that is extended by classes like
6
- * `LinearBasicDisplay` (used for feature tracks, etc) and `LinearBareDisplay`
7
- * (more stripped down than even the basic display, not commonly used)
5
+ *
6
+ * `BaseLinearDisplay` is a "base" config that is extended by other configs including
7
+ * - `LinearBasicDisplay` (used for feature tracks, etc)
8
+ * - `LinearBareDisplay` (more stripped down than even the basic display, not
9
+ * commonly used)
8
10
  */
9
11
  function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
10
12
  const baseLinearDisplayConfigSchema = ConfigurationSchema('BaseLinearDisplay', {
@@ -41,6 +43,16 @@ const baseLinearDisplayConfigSchema = ConfigurationSchema('BaseLinearDisplay', {
41
43
  defaultValue: `jexl:get(feature,'name')`,
42
44
  contextVariable: ['feature'],
43
45
  },
46
+ /**
47
+ * #slot
48
+ * config jexlFilters are deferred evaluated so they are prepended with
49
+ * jexl at runtime rather than being stored with jexl in the config
50
+ */
51
+ jexlFilters: {
52
+ type: 'stringArray',
53
+ description: 'default set of jexl filters to apply to a track. note: these do not use the jexl prefix because they have a deferred evaluation system',
54
+ defaultValue: [],
55
+ },
44
56
  }, {
45
57
  /**
46
58
  * #identifier
@@ -96,6 +96,7 @@ const blockState = types
96
96
  renderInProgress = undefined;
97
97
  },
98
98
  setError(error) {
99
+ console.error(error);
99
100
  if (renderInProgress && !renderInProgress.signal.aborted) {
100
101
  renderInProgress.abort();
101
102
  }
@@ -30,5 +30,10 @@ declare function configSchemaFactory(pluginManager: PluginManager): import("@jbr
30
30
  defaultValue: string;
31
31
  contextVariable: string[];
32
32
  };
33
+ jexlFilters: {
34
+ type: string;
35
+ description: string;
36
+ defaultValue: never[];
37
+ };
33
38
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>, undefined>>;
34
39
  export { configSchemaFactory };