@jbrowse/core 1.5.0 → 1.5.4

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 (127) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +4 -2
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +43 -16
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +5 -4
  4. package/BaseFeatureWidget/index.js +1 -1
  5. package/BaseFeatureWidget/util.js +5 -5
  6. package/CorePlugin.d.ts +0 -1
  7. package/CorePlugin.js +13 -1
  8. package/PluginLoader.d.ts +25 -2
  9. package/PluginLoader.js +334 -47
  10. package/PluginManager.d.ts +9 -7
  11. package/PluginManager.js +1 -5
  12. package/ReExports/list.js +1 -1
  13. package/ReExports/material-ui-colors.js +38 -38
  14. package/ReExports/modules.d.ts +11 -13
  15. package/ReExports/modules.js +8 -2
  16. package/TextSearch/BaseResults.js +1 -1
  17. package/TextSearch/TextSearchManager.d.ts +2 -2
  18. package/TextSearch/TextSearchManager.js +0 -2
  19. package/assemblyManager/assembly.d.ts +21 -8
  20. package/assemblyManager/assembly.js +165 -122
  21. package/assemblyManager/assemblyConfigSchema.d.ts +3 -0
  22. package/assemblyManager/{assemblyConfigSchemas.js → assemblyConfigSchema.js} +35 -27
  23. package/assemblyManager/assemblyManager.d.ts +126 -45
  24. package/assemblyManager/index.d.ts +1 -1
  25. package/assemblyManager/index.js +5 -5
  26. package/configuration/configurationSchema.js +7 -7
  27. package/configuration/configurationSlot.js +3 -1
  28. package/configuration/index.js +4 -4
  29. package/configuration/util.js +2 -2
  30. package/data_adapters/BaseAdapter.d.ts +5 -5
  31. package/data_adapters/BaseAdapter.js +9 -18
  32. package/data_adapters/CytobandAdapter.d.ts +8 -0
  33. package/data_adapters/CytobandAdapter.js +128 -0
  34. package/data_adapters/dataAdapterCache.js +2 -2
  35. package/package.json +9 -8
  36. package/pluggableElementTypes/AdapterType.d.ts +9 -1
  37. package/pluggableElementTypes/AdapterType.js +23 -1
  38. package/pluggableElementTypes/ConnectionType.js +3 -1
  39. package/pluggableElementTypes/DisplayType.js +3 -1
  40. package/pluggableElementTypes/InternetAccountType.js +3 -1
  41. package/pluggableElementTypes/PluggableElementBase.js +4 -3
  42. package/pluggableElementTypes/RpcMethodType.js +2 -4
  43. package/pluggableElementTypes/TextSearchAdapterType.js +3 -1
  44. package/pluggableElementTypes/WidgetType.js +3 -1
  45. package/pluggableElementTypes/index.d.ts +6 -3
  46. package/pluggableElementTypes/index.js +127 -1
  47. package/pluggableElementTypes/models/BaseDisplayModel.js +2 -2
  48. package/pluggableElementTypes/models/BaseTrackModel.js +4 -3
  49. package/pluggableElementTypes/models/BaseViewModel.js +6 -2
  50. package/pluggableElementTypes/models/InternetAccountModel.d.ts +2 -2
  51. package/pluggableElementTypes/models/baseTrackConfig.js +2 -2
  52. package/pluggableElementTypes/models/index.js +14 -14
  53. package/pluggableElementTypes/renderers/BoxRendererType.js +3 -3
  54. package/pluggableElementTypes/renderers/CircularChordRendererType.js +3 -1
  55. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +2 -2
  56. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +1 -1
  57. package/pluggableElementTypes/renderers/FeatureRendererType.js +4 -4
  58. package/pluggableElementTypes/renderers/RendererType.js +3 -1
  59. package/pluggableElementTypes/renderers/ServerSideRendererType.js +2 -2
  60. package/pluggableElementTypes/renderers/index.d.ts +9 -0
  61. package/pluggableElementTypes/renderers/index.js +63 -0
  62. package/rpc/BaseRpcDriver.d.ts +1 -1
  63. package/rpc/BaseRpcDriver.js +3 -5
  64. package/rpc/BaseRpcDriver.test.js +1 -1
  65. package/rpc/RpcManager.d.ts +3 -3
  66. package/rpc/RpcManager.js +44 -22
  67. package/rpc/WebWorkerRpcDriver.d.ts +2 -2
  68. package/rpc/WebWorkerRpcDriver.js +5 -7
  69. package/rpc/coreRpcMethods.js +3 -3
  70. package/rpc/remoteAbortSignals.js +2 -2
  71. package/ui/App.js +13 -12
  72. package/ui/DrawerWidget.js +10 -3
  73. package/ui/EditableTypography.js +2 -2
  74. package/ui/ErrorMessage.d.ts +5 -0
  75. package/ui/ErrorMessage.js +54 -0
  76. package/ui/FileSelector/FileSelector.js +75 -100
  77. package/ui/Icons.js +4 -4
  78. package/ui/Logo.js +1 -1
  79. package/ui/Menu.js +2 -2
  80. package/ui/NewSessionCards.js +2 -2
  81. package/ui/PrerenderedCanvas.d.ts +1 -0
  82. package/ui/PrerenderedCanvas.js +6 -3
  83. package/ui/SanitizedHTML.js +1 -1
  84. package/ui/SnackbarModel.d.ts +16 -0
  85. package/ui/SnackbarModel.js +56 -0
  86. package/ui/ViewContainer.js +4 -3
  87. package/ui/index.js +24 -24
  88. package/ui/theme.js +7 -5
  89. package/util/Base1DViewModel.js +2 -2
  90. package/util/aborting.js +7 -4
  91. package/util/blockTypes.js +8 -11
  92. package/util/calculateDynamicBlocks.test.js +2 -2
  93. package/util/color/cssColorsLevel4.js +1 -1
  94. package/util/color/index.js +5 -5
  95. package/util/compositeMap.js +3 -11
  96. package/util/index.d.ts +3 -1
  97. package/util/index.js +75 -32
  98. package/util/index.test.js +2 -2
  99. package/util/io/RemoteFileWithRangeCache.js +3 -3
  100. package/util/io/index.js +1 -1
  101. package/util/jexl.js +4 -1
  102. package/util/layouts/BaseLayout.d.ts +3 -0
  103. package/util/layouts/GranularRectLayout.d.ts +19 -10
  104. package/util/layouts/GranularRectLayout.js +459 -100
  105. package/util/layouts/GranularRectLayout.test.js +57 -10
  106. package/util/layouts/MultiLayout.d.ts +1 -1
  107. package/util/layouts/MultiLayout.js +0 -2
  108. package/util/layouts/PrecomputedLayout.js +2 -1
  109. package/util/layouts/PrecomputedMultiLayout.js +5 -3
  110. package/util/layouts/SceneGraph.d.ts +3 -3
  111. package/util/layouts/SceneGraph.js +0 -14
  112. package/util/layouts/index.d.ts +7 -0
  113. package/util/layouts/index.js +68 -0
  114. package/util/mst-reflection.d.ts +3 -3
  115. package/util/mst-reflection.js +3 -3
  116. package/util/offscreenCanvasPonyfill.js +1 -1
  117. package/util/range.js +1 -1
  118. package/util/simpleFeature.js +3 -3
  119. package/util/stats.js +4 -4
  120. package/util/tracks.d.ts +30 -433
  121. package/util/tracks.js +72 -192
  122. package/util/types/index.d.ts +14 -2
  123. package/util/types/index.js +21 -18
  124. package/util/types/mst.js +6 -6
  125. package/assemblyManager/assemblyConfigSchemas.d.ts +0 -7
  126. package/value.d.ts +0 -1
  127. package/value.js +0 -10
@@ -1,38 +1,47 @@
1
- import { RectTuple, SerializedLayout, BaseLayout } from './BaseLayout';
1
+ import { RectTuple, SerializedLayout, Rectangle, BaseLayout } from './BaseLayout';
2
2
  export default class GranularRectLayout<T> implements BaseLayout<T> {
3
+ private pitchX;
4
+ private pitchY;
5
+ private hardRowLimit;
6
+ private bitmap;
3
7
  private rectangles;
4
8
  maxHeightReached: boolean;
5
9
  private maxHeight;
6
- private rbush;
7
- private spacing;
10
+ private displayMode;
8
11
  private pTotalHeight;
9
- private pitchX;
10
- constructor({ maxHeight, spacing, pitchX, }?: {
11
- maxHeight?: number;
12
- spacing?: number;
12
+ constructor({ pitchX, pitchY, maxHeight, hardRowLimit, displayMode, }?: {
13
13
  pitchX?: number;
14
+ pitchY?: number;
15
+ maxHeight?: number;
16
+ displayMode?: string;
17
+ hardRowLimit?: number;
14
18
  });
15
19
  /**
16
20
  * @returns top position for the rect, or Null if laying
17
21
  * out the rect would exceed maxHeight
18
22
  */
19
23
  addRect(id: string, left: number, right: number, height: number, data?: Record<string, T>): number | null;
20
- collides(): boolean;
24
+ collides(rect: Rectangle<T>, top: number): boolean;
25
+ /**
26
+ * make a subarray if it does not exist
27
+ */
28
+ private autovivifyRow;
29
+ addRectToBitmap(rect: Rectangle<T>): void;
21
30
  /**
22
31
  * Given a range of X coordinates, deletes all data dealing with
23
32
  * the features.
24
33
  */
25
- discardRange(): void;
34
+ discardRange(left: number, right: number): void;
26
35
  hasSeen(id: string): boolean;
27
36
  getByCoord(x: number, y: number): Record<string, T> | string | undefined;
28
37
  getByID(id: string): RectTuple | undefined;
29
38
  cleanup(): void;
30
39
  getTotalHeight(): number;
31
40
  get totalHeight(): number;
41
+ getRectangles(): Map<string, RectTuple>;
32
42
  serializeRegion(region: {
33
43
  start: number;
34
44
  end: number;
35
45
  }): SerializedLayout;
36
- getRectangles(): Map<string, RectTuple>;
37
46
  toJSON(): SerializedLayout;
38
47
  }