@jbrowse/core 1.7.11 → 2.1.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 (204) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +20 -4
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +313 -558
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -473
  4. package/BaseFeatureWidget/index.d.ts +2 -2
  5. package/BaseFeatureWidget/index.js +88 -124
  6. package/BaseFeatureWidget/types.d.ts +1 -0
  7. package/BaseFeatureWidget/types.js +1 -4
  8. package/BaseFeatureWidget/util.js +40 -75
  9. package/CorePlugin.js +55 -94
  10. package/Plugin.js +9 -34
  11. package/PluginLoader.js +153 -422
  12. package/PluginManager.d.ts +84 -117
  13. package/PluginManager.js +377 -666
  14. package/ReExports/Attributes.d.ts +2 -0
  15. package/ReExports/Attributes.js +5 -0
  16. package/ReExports/BaseCard.d.ts +2 -0
  17. package/ReExports/BaseCard.js +5 -0
  18. package/ReExports/DataGrid.d.ts +2 -0
  19. package/ReExports/DataGrid.js +6 -0
  20. package/ReExports/FeatureDetails.d.ts +2 -0
  21. package/ReExports/FeatureDetails.js +5 -0
  22. package/ReExports/index.js +6 -12
  23. package/ReExports/list.d.ts +5 -0
  24. package/ReExports/list.js +271 -7
  25. package/ReExports/material-ui-colors.d.ts +1 -19
  26. package/ReExports/material-ui-colors.js +16 -158
  27. package/ReExports/modules.d.ts +68 -109
  28. package/ReExports/modules.js +455 -244
  29. package/TextSearch/BaseResults.js +51 -123
  30. package/TextSearch/TextSearchManager.d.ts +3 -1
  31. package/TextSearch/TextSearchManager.js +66 -144
  32. package/assemblyManager/assembly.js +280 -554
  33. package/assemblyManager/assemblyConfigSchema.js +47 -64
  34. package/assemblyManager/assemblyManager.d.ts +12 -10
  35. package/assemblyManager/assemblyManager.js +126 -270
  36. package/assemblyManager/index.js +9 -22
  37. package/configuration/configurationSchema.js +167 -203
  38. package/configuration/configurationSlot.js +248 -326
  39. package/configuration/index.js +19 -35
  40. package/configuration/util.d.ts +1 -1
  41. package/configuration/util.js +131 -173
  42. package/data_adapters/BaseAdapter.d.ts +2 -2
  43. package/data_adapters/BaseAdapter.js +132 -521
  44. package/data_adapters/CytobandAdapter.js +40 -126
  45. package/data_adapters/dataAdapterCache.js +77 -158
  46. package/package.json +16 -18
  47. package/pluggableElementTypes/AdapterType.js +24 -79
  48. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
  49. package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
  50. package/pluggableElementTypes/ConnectionType.js +22 -65
  51. package/pluggableElementTypes/DisplayType.js +35 -82
  52. package/pluggableElementTypes/InternetAccountType.js +23 -64
  53. package/pluggableElementTypes/PluggableElementBase.js +8 -20
  54. package/pluggableElementTypes/RpcMethodType.js +85 -427
  55. package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
  56. package/pluggableElementTypes/TrackType.js +26 -70
  57. package/pluggableElementTypes/ViewType.js +21 -63
  58. package/pluggableElementTypes/WidgetType.js +21 -64
  59. package/pluggableElementTypes/index.d.ts +4 -3
  60. package/pluggableElementTypes/index.js +42 -125
  61. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
  62. package/pluggableElementTypes/models/BaseDisplayModel.d.ts +10 -10
  63. package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
  64. package/pluggableElementTypes/models/BaseTrackModel.d.ts +1 -1
  65. package/pluggableElementTypes/models/BaseTrackModel.js +139 -200
  66. package/pluggableElementTypes/models/BaseViewModel.js +24 -40
  67. package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
  68. package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
  69. package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
  70. package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
  71. package/pluggableElementTypes/models/index.js +21 -70
  72. package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
  73. package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
  74. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
  75. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
  76. package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -255
  77. package/pluggableElementTypes/renderers/RendererType.js +31 -105
  78. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
  79. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +2 -2
  80. package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
  81. package/pluggableElementTypes/renderers/index.js +19 -62
  82. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
  83. package/rpc/BaseRpcDriver.js +169 -405
  84. package/rpc/MainThreadRpcDriver.js +27 -150
  85. package/rpc/RpcManager.js +58 -159
  86. package/rpc/WebWorkerRpcDriver.js +54 -171
  87. package/rpc/configSchema.js +25 -49
  88. package/rpc/coreRpcMethods.d.ts +1 -3
  89. package/rpc/coreRpcMethods.js +221 -959
  90. package/rpc/remoteAbortSignals.js +46 -70
  91. package/tsconfig.build.tsbuildinfo +1 -1
  92. package/ui/AboutDialog.js +107 -158
  93. package/ui/App.js +157 -261
  94. package/ui/AssemblySelector.d.ts +1 -1
  95. package/ui/AssemblySelector.js +59 -115
  96. package/ui/CascadingMenu.js +100 -199
  97. package/ui/ColorPicker.d.ts +16 -0
  98. package/ui/ColorPicker.js +97 -0
  99. package/ui/Drawer.js +28 -58
  100. package/ui/DrawerWidget.js +109 -209
  101. package/ui/DropDownMenu.d.ts +0 -8
  102. package/ui/DropDownMenu.js +60 -97
  103. package/ui/EditableTypography.d.ts +1 -1
  104. package/ui/EditableTypography.js +87 -155
  105. package/ui/ErrorMessage.js +41 -66
  106. package/ui/FactoryResetDialog.js +24 -57
  107. package/ui/FatalErrorDialog.js +59 -91
  108. package/ui/FileSelector/FileSelector.js +123 -189
  109. package/ui/FileSelector/LocalFileChooser.js +44 -71
  110. package/ui/FileSelector/UrlChooser.js +17 -38
  111. package/ui/FileSelector/index.js +6 -12
  112. package/ui/Icons.d.ts +1 -1
  113. package/ui/Icons.js +45 -69
  114. package/ui/Logo.js +57 -110
  115. package/ui/Menu.d.ts +1 -1
  116. package/ui/Menu.js +232 -355
  117. package/ui/PrerenderedCanvas.js +63 -78
  118. package/ui/ResizeHandle.js +87 -114
  119. package/ui/ReturnToImportFormDialog.js +32 -59
  120. package/ui/SanitizedHTML.js +63 -52
  121. package/ui/Snackbar.js +74 -99
  122. package/ui/SnackbarModel.js +37 -51
  123. package/ui/Tooltip.d.ts +3 -1
  124. package/ui/Tooltip.js +49 -74
  125. package/ui/ViewContainer.js +113 -183
  126. package/ui/colors.d.ts +10 -0
  127. package/ui/colors.js +78 -0
  128. package/ui/index.js +51 -181
  129. package/ui/react-colorful.d.ts +17 -0
  130. package/ui/react-colorful.js +455 -0
  131. package/ui/theme.d.ts +279 -131
  132. package/ui/theme.js +197 -225
  133. package/util/Base1DUtils.d.ts +32 -0
  134. package/util/Base1DUtils.js +174 -0
  135. package/util/Base1DViewModel.d.ts +16 -37
  136. package/util/Base1DViewModel.js +116 -295
  137. package/util/QuickLRU.js +84 -332
  138. package/util/TimeTraveller.d.ts +19 -0
  139. package/util/TimeTraveller.js +86 -0
  140. package/util/aborting.js +49 -127
  141. package/util/analytics.js +91 -154
  142. package/util/blockTypes.js +106 -240
  143. package/util/calculateDynamicBlocks.js +98 -128
  144. package/util/calculateStaticBlocks.js +105 -125
  145. package/util/color/cssColorsLevel4.js +156 -160
  146. package/util/color/index.js +33 -55
  147. package/util/compositeMap.js +49 -333
  148. package/util/formatFastaStrings.js +9 -14
  149. package/util/idMaker.js +18 -31
  150. package/util/index.d.ts +18 -39
  151. package/util/index.js +743 -1236
  152. package/util/io/RemoteFileWithRangeCache.js +88 -257
  153. package/util/io/index.js +95 -169
  154. package/util/jexl.js +60 -115
  155. package/util/jexlStrings.js +24 -29
  156. package/util/layouts/BaseLayout.js +1 -4
  157. package/util/layouts/GranularRectLayout.js +388 -557
  158. package/util/layouts/MultiLayout.js +41 -109
  159. package/util/layouts/PrecomputedLayout.js +56 -114
  160. package/util/layouts/PrecomputedMultiLayout.js +22 -59
  161. package/util/layouts/SceneGraph.js +127 -197
  162. package/util/layouts/index.js +29 -66
  163. package/util/mst-reflection.js +55 -71
  164. package/util/offscreenCanvasPonyfill.js +66 -134
  165. package/util/offscreenCanvasUtils.d.ts +2 -7
  166. package/util/offscreenCanvasUtils.js +49 -146
  167. package/util/range.js +29 -40
  168. package/util/rxjs.js +20 -27
  169. package/util/simpleFeature.js +88 -152
  170. package/util/stats.js +91 -151
  171. package/util/tracks.js +130 -171
  172. package/util/types/index.d.ts +3 -3
  173. package/util/types/index.js +110 -179
  174. package/util/types/mst.d.ts +3 -3
  175. package/util/types/mst.js +91 -142
  176. package/util/types/util.js +1 -4
  177. package/util/when.js +54 -101
  178. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
  179. package/BaseFeatureWidget/index.test.js +0 -51
  180. package/TextSearch/BaseResults.test.js +0 -42
  181. package/configuration/configurationSchema.test.js +0 -266
  182. package/configuration/configurationSlot.test.js +0 -69
  183. package/configuration/util.test.js +0 -39
  184. package/data_adapters/BaseAdapter.test.js +0 -200
  185. package/declare.d.js +0 -1
  186. package/pluggableElementTypes/RpcMethodType.test.js +0 -118
  187. package/pluggableElementTypes/renderers/declare.d.js +0 -1
  188. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
  189. package/rpc/BaseRpcDriver.test.js +0 -540
  190. package/rpc/declaration.d.js +0 -1
  191. package/ui/FatalErrorDialog.test.js +0 -82
  192. package/ui/SanitizedHTML.test.js +0 -36
  193. package/ui/theme.test.js +0 -111
  194. package/util/Base1DViewModel.test.js +0 -130
  195. package/util/calculateDynamicBlocks.test.js +0 -74
  196. package/util/calculateStaticBlocks.test.js +0 -297
  197. package/util/declare.d.js +0 -1
  198. package/util/formatFastaStrings.test.js +0 -40
  199. package/util/index.test.js +0 -213
  200. package/util/jexlStrings.test.js +0 -48
  201. package/util/layouts/GranularRectLayout.test.js +0 -99
  202. package/util/range.test.js +0 -64
  203. package/util/simpleFeature.test.js +0 -34
  204. package/util/stats.test.js +0 -172
package/ui/theme.d.ts CHANGED
@@ -1,27 +1,4 @@
1
- import { ThemeOptions } from '@material-ui/core/styles';
2
- import { PaletteOptions } from '@material-ui/core/styles/createPalette';
3
- declare module '@material-ui/core/styles/createPalette' {
4
- interface Palette {
5
- tertiary: Palette['primary'];
6
- quaternary: Palette['primary'];
7
- bases: {
8
- A: Palette['primary'];
9
- C: Palette['primary'];
10
- G: Palette['primary'];
11
- T: Palette['primary'];
12
- };
13
- }
14
- interface PaletteOptions {
15
- tertiary?: PaletteOptions['primary'];
16
- quaternary?: PaletteOptions['primary'];
17
- bases?: {
18
- A?: PaletteOptions['primary'];
19
- C?: PaletteOptions['primary'];
20
- G?: PaletteOptions['primary'];
21
- T?: PaletteOptions['primary'];
22
- };
23
- }
24
- }
1
+ import { PaletteOptions } from '@mui/material/styles/createPalette';
25
2
  export declare const jbrowseDefaultPalette: {
26
3
  primary: {
27
4
  main: string;
@@ -29,135 +6,306 @@ export declare const jbrowseDefaultPalette: {
29
6
  secondary: {
30
7
  main: string;
31
8
  };
32
- tertiary: import("@material-ui/core/styles/createPalette").PaletteColor;
33
- quaternary: import("@material-ui/core/styles/createPalette").PaletteColor;
9
+ tertiary: import("@mui/material/styles").PaletteColor;
10
+ quaternary: import("@mui/material/styles").PaletteColor;
34
11
  stopCodon: string;
35
12
  startCodon: string;
36
13
  bases: {
37
- A: import("@material-ui/core/styles/createPalette").PaletteColor;
38
- C: import("@material-ui/core/styles/createPalette").PaletteColor;
39
- G: import("@material-ui/core/styles/createPalette").PaletteColor;
40
- T: import("@material-ui/core/styles/createPalette").PaletteColor;
14
+ A: import("@mui/material/styles").PaletteColor;
15
+ C: import("@mui/material/styles").PaletteColor;
16
+ G: import("@mui/material/styles").PaletteColor;
17
+ T: import("@mui/material/styles").PaletteColor;
41
18
  };
42
19
  };
43
20
  export declare function createJBrowseDefaultProps(): {
44
- MuiButton: {
45
- size: "small";
46
- };
47
- MuiFilledInput: {
48
- margin: "dense";
49
- };
50
- MuiFormControl: {
51
- margin: "dense";
52
- };
53
- MuiFormHelperText: {
54
- margin: "dense";
55
- };
56
- MuiIconButton: {
57
- size: "small";
58
- };
59
- MuiInputBase: {
60
- margin: "dense";
61
- };
62
- MuiList: {
63
- dense: boolean;
64
- };
65
- MuiListItem: {
66
- dense: boolean;
67
- };
68
- MuiOutlinedInput: {
69
- margin: "dense";
70
- };
71
- MuiFab: {
72
- size: "small";
73
- };
74
- MuiTable: {
75
- size: "small";
76
- };
77
- MuiTextField: {
78
- margin: "dense";
79
- size: "small";
80
- };
81
- MuiToolbar: {
82
- variant: "dense";
83
- };
84
- MuiSvgIcon: {
85
- fontSize: "small";
86
- };
87
- MuiToggleButtonGroup: {
88
- size: "small";
89
- };
90
- MuiCheckbox: {
91
- size: "small";
92
- };
93
- MuiLink: {
94
- underline: "always";
21
+ components: {
22
+ MuiButton: {
23
+ defaultProps: {
24
+ size: string;
25
+ };
26
+ };
27
+ MuiAccordion: {
28
+ defaultProps: {
29
+ disableGutters: boolean;
30
+ TransitionProps: {
31
+ timeout: number;
32
+ };
33
+ };
34
+ };
35
+ MuiFilledInput: {
36
+ defaultProps: {
37
+ margin: string;
38
+ };
39
+ };
40
+ MuiFormControl: {
41
+ defaultProps: {
42
+ margin: string;
43
+ size: string;
44
+ };
45
+ };
46
+ MuiFormHelperText: {
47
+ defaultProps: {
48
+ margin: string;
49
+ };
50
+ };
51
+ MuiIconButton: {
52
+ defaultProps: {
53
+ size: string;
54
+ };
55
+ };
56
+ MuiInputBase: {
57
+ defaultProps: {
58
+ margin: string;
59
+ };
60
+ };
61
+ MuiAutocomplete: {
62
+ defaultProps: {
63
+ size: string;
64
+ };
65
+ };
66
+ MuiInputLabel: {
67
+ defaultProps: {
68
+ margin: string;
69
+ };
70
+ };
71
+ MuiToolbar: {
72
+ defaultProps: {
73
+ variant: string;
74
+ };
75
+ };
76
+ MuiListItem: {
77
+ defaultProps: {
78
+ dense: boolean;
79
+ };
80
+ };
81
+ MuiOutlinedInput: {
82
+ defaultProps: {
83
+ margin: string;
84
+ };
85
+ };
86
+ MuiFab: {
87
+ defaultProps: {
88
+ size: string;
89
+ };
90
+ };
91
+ MuiTable: {
92
+ defaultProps: {
93
+ size: string;
94
+ };
95
+ };
96
+ MuiMenuList: {
97
+ defaultProps: {
98
+ dense: boolean;
99
+ };
100
+ };
101
+ MuiMenuItem: {
102
+ defaultProps: {
103
+ dense: boolean;
104
+ };
105
+ };
106
+ MuiTextField: {
107
+ defaultProps: {
108
+ margin: string;
109
+ variant: string;
110
+ };
111
+ };
95
112
  };
96
113
  };
97
114
  export declare function createJBrowseDefaultOverrides(palette?: PaletteOptions): {
98
- MuiIconButton: {
99
- colorSecondary: {
100
- color: string;
115
+ components: {
116
+ MuiIconButton: {
117
+ styleOverrides: {
118
+ colorSecondary: {
119
+ color: string;
120
+ };
121
+ };
101
122
  };
102
- };
103
- MuiButton: {
104
- textSecondary: {
105
- color: string;
123
+ MuiButton: {
124
+ styleOverrides: {
125
+ textSecondary: {
126
+ color: string;
127
+ };
128
+ };
106
129
  };
107
- };
108
- MuiFab: {
109
- secondary: {
110
- backgroundColor: string;
130
+ MuiFab: {
131
+ styleOverrides: {
132
+ secondary: {
133
+ backgroundColor: string;
134
+ };
135
+ };
111
136
  };
112
- };
113
- MuiLink: {
114
- root: {
115
- color: string;
137
+ MuiLink: {
138
+ styleOverrides: {
139
+ root: {
140
+ color: string;
141
+ };
142
+ };
116
143
  };
117
- };
118
- MuiAccordion: {
119
- root: {
120
- margin: number;
121
- '&$expanded': {
122
- margin: number;
144
+ MuiAccordionSummary: {
145
+ styleOverrides: {
146
+ root: {
147
+ backgroundColor: string;
148
+ };
149
+ content: {
150
+ color: string;
151
+ };
123
152
  };
124
153
  };
125
154
  };
126
- MuiAccordionSummary: {
127
- root: {
128
- backgroundColor: string;
129
- width: string;
130
- '&$expanded': {
131
- minHeight: number;
132
- color: string;
133
- backgroundColor: string;
134
- };
135
- minHeight: number;
136
- };
137
- content: {
138
- '&$expanded': {
155
+ };
156
+ export declare const jbrowseBaseTheme: {
157
+ components: {
158
+ MuiButton: {
159
+ defaultProps: {
160
+ size: string;
161
+ };
162
+ };
163
+ MuiAccordion: {
164
+ defaultProps: {
165
+ disableGutters: boolean;
166
+ TransitionProps: {
167
+ timeout: number;
168
+ };
169
+ };
170
+ };
171
+ MuiFilledInput: {
172
+ defaultProps: {
139
173
  margin: string;
140
174
  };
141
- margin: string;
142
- color: string;
143
175
  };
144
- };
145
- MuiMenuItem: {
146
- root: {
147
- paddingTop: number;
148
- paddingBottom: number;
176
+ MuiFormControl: {
177
+ defaultProps: {
178
+ margin: string;
179
+ size: string;
180
+ };
149
181
  };
150
- };
151
- MuiListItemIcon: {
152
- root: {
153
- minWidth: number;
182
+ MuiFormHelperText: {
183
+ defaultProps: {
184
+ margin: string;
185
+ };
186
+ };
187
+ MuiIconButton: {
188
+ defaultProps: {
189
+ size: string;
190
+ };
191
+ };
192
+ MuiInputBase: {
193
+ defaultProps: {
194
+ margin: string;
195
+ };
196
+ };
197
+ MuiAutocomplete: {
198
+ defaultProps: {
199
+ size: string;
200
+ };
201
+ };
202
+ MuiInputLabel: {
203
+ defaultProps: {
204
+ margin: string;
205
+ };
206
+ };
207
+ MuiToolbar: {
208
+ defaultProps: {
209
+ variant: string;
210
+ };
211
+ };
212
+ MuiListItem: {
213
+ defaultProps: {
214
+ dense: boolean;
215
+ };
216
+ };
217
+ MuiOutlinedInput: {
218
+ defaultProps: {
219
+ margin: string;
220
+ };
221
+ };
222
+ MuiFab: {
223
+ defaultProps: {
224
+ size: string;
225
+ };
226
+ };
227
+ MuiTable: {
228
+ defaultProps: {
229
+ size: string;
230
+ };
231
+ };
232
+ MuiMenuList: {
233
+ defaultProps: {
234
+ dense: boolean;
235
+ };
236
+ };
237
+ MuiMenuItem: {
238
+ defaultProps: {
239
+ dense: boolean;
240
+ };
241
+ };
242
+ MuiTextField: {
243
+ defaultProps: {
244
+ margin: string;
245
+ variant: string;
246
+ };
247
+ };
248
+ } & {
249
+ MuiIconButton: {
250
+ styleOverrides: {
251
+ colorSecondary: {
252
+ color: string;
253
+ };
254
+ };
255
+ };
256
+ MuiButton: {
257
+ styleOverrides: {
258
+ textSecondary: {
259
+ color: string;
260
+ };
261
+ };
262
+ };
263
+ MuiFab: {
264
+ styleOverrides: {
265
+ secondary: {
266
+ backgroundColor: string;
267
+ };
268
+ };
269
+ };
270
+ MuiLink: {
271
+ styleOverrides: {
272
+ root: {
273
+ color: string;
274
+ };
275
+ };
276
+ };
277
+ MuiAccordionSummary: {
278
+ styleOverrides: {
279
+ root: {
280
+ backgroundColor: string;
281
+ };
282
+ content: {
283
+ color: string;
284
+ };
285
+ };
154
286
  };
155
287
  };
156
- MuiListItemText: {
157
- inset: {
158
- paddingLeft: number;
288
+ palette: {
289
+ primary: {
290
+ main: string;
291
+ };
292
+ secondary: {
293
+ main: string;
159
294
  };
295
+ tertiary: import("@mui/material/styles").PaletteColor;
296
+ quaternary: import("@mui/material/styles").PaletteColor;
297
+ stopCodon: string;
298
+ startCodon: string;
299
+ bases: {
300
+ A: import("@mui/material/styles").PaletteColor;
301
+ C: import("@mui/material/styles").PaletteColor;
302
+ G: import("@mui/material/styles").PaletteColor;
303
+ T: import("@mui/material/styles").PaletteColor;
304
+ };
305
+ };
306
+ typography: {
307
+ fontSize: number;
160
308
  };
309
+ spacing: number;
161
310
  };
162
- export declare const jbrowseBaseTheme: ThemeOptions;
163
- export declare function createJBrowseTheme(theme?: ThemeOptions): import("@material-ui/core/styles").Theme;
311
+ export declare function createJBrowseTheme(theme?: any): import("@mui/material/styles").Theme;