@jbrowse/core 2.17.0 → 3.0.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 (354) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.d.ts +1 -2
  2. package/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.js +7 -13
  3. package/BaseFeatureWidget/BaseFeatureDetail/Attributes.d.ts +1 -2
  4. package/BaseFeatureWidget/BaseFeatureDetail/Attributes.js +20 -25
  5. package/BaseFeatureWidget/BaseFeatureDetail/BaseCard.d.ts +2 -3
  6. package/BaseFeatureWidget/BaseFeatureDetail/BaseCard.js +3 -7
  7. package/BaseFeatureWidget/BaseFeatureDetail/BasicValue.d.ts +1 -2
  8. package/BaseFeatureWidget/BaseFeatureDetail/BasicValue.js +5 -8
  9. package/BaseFeatureWidget/BaseFeatureDetail/CoreDetails.d.ts +2 -3
  10. package/BaseFeatureWidget/BaseFeatureDetail/CoreDetails.js +7 -10
  11. package/BaseFeatureWidget/BaseFeatureDetail/DataGridDetails.d.ts +1 -2
  12. package/BaseFeatureWidget/BaseFeatureDetail/DataGridDetails.js +25 -55
  13. package/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails.d.ts +3 -4
  14. package/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails.js +16 -34
  15. package/BaseFeatureWidget/BaseFeatureDetail/FieldName.d.ts +1 -2
  16. package/BaseFeatureWidget/BaseFeatureDetail/FieldName.js +2 -6
  17. package/BaseFeatureWidget/BaseFeatureDetail/Position.d.ts +2 -3
  18. package/BaseFeatureWidget/BaseFeatureDetail/Position.js +2 -5
  19. package/BaseFeatureWidget/BaseFeatureDetail/SimpleField.d.ts +1 -2
  20. package/BaseFeatureWidget/BaseFeatureDetail/SimpleField.js +3 -5
  21. package/BaseFeatureWidget/BaseFeatureDetail/UriField.d.ts +1 -2
  22. package/BaseFeatureWidget/BaseFeatureDetail/UriField.js +3 -5
  23. package/BaseFeatureWidget/BaseFeatureDetail/index.d.ts +4 -5
  24. package/BaseFeatureWidget/BaseFeatureDetail/index.js +6 -14
  25. package/BaseFeatureWidget/BaseFeatureDetail/util.js +4 -13
  26. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceContents.d.ts +10 -0
  27. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceContents.js +48 -0
  28. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureDetails.d.ts +3 -4
  29. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureDetails.js +33 -41
  30. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeaturePanel.d.ts +3 -4
  31. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeaturePanel.js +30 -29
  32. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceName.d.ts +8 -0
  33. package/BaseFeatureWidget/SequenceFeatureDetails/SequenceName.js +28 -0
  34. package/BaseFeatureWidget/SequenceFeatureDetails/SequencePanel.d.ts +2 -10
  35. package/BaseFeatureWidget/SequenceFeatureDetails/SequencePanel.js +11 -85
  36. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/HelpDialog.d.ts +1 -2
  37. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/HelpDialog.js +6 -25
  38. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceDialog.d.ts +3 -4
  39. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceDialog.js +11 -46
  40. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceFeatureMenu.d.ts +3 -4
  41. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceFeatureMenu.js +101 -96
  42. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceTypeSelector.d.ts +2 -3
  43. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceTypeSelector.js +49 -53
  44. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SettingsDialog.d.ts +2 -3
  45. package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SettingsDialog.js +20 -55
  46. package/BaseFeatureWidget/SequenceFeatureDetails/hooks.d.ts +2 -2
  47. package/BaseFeatureWidget/SequenceFeatureDetails/hooks.js +1 -2
  48. package/BaseFeatureWidget/SequenceFeatureDetails/model.d.ts +2 -56
  49. package/BaseFeatureWidget/SequenceFeatureDetails/model.js +4 -66
  50. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDNASequence.d.ts +4 -5
  51. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDNASequence.js +6 -9
  52. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDSSequence.d.ts +3 -4
  53. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDSSequence.js +6 -7
  54. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/GenomicSequence.d.ts +3 -4
  55. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/GenomicSequence.js +5 -9
  56. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/ProteinSequence.d.ts +3 -4
  57. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/ProteinSequence.js +2 -4
  58. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/SequenceDisplay.d.ts +2 -3
  59. package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/SequenceDisplay.js +3 -10
  60. package/BaseFeatureWidget/SequenceFeatureDetails/types.d.ts +8 -0
  61. package/BaseFeatureWidget/SequenceFeatureDetails/types.js +2 -0
  62. package/BaseFeatureWidget/SequenceFeatureDetails/util.js +1 -5
  63. package/BaseFeatureWidget/stateModelFactory.d.ts +2 -93
  64. package/BaseFeatureWidget/stateModelFactory.js +3 -73
  65. package/BaseFeatureWidget/types.d.ts +3 -3
  66. package/BaseFeatureWidget/util.js +0 -4
  67. package/CorePlugin.d.ts +1 -1
  68. package/CorePlugin.js +19 -12
  69. package/Plugin.d.ts +2 -5
  70. package/Plugin.js +0 -3
  71. package/PluginLoader.d.ts +1 -1
  72. package/PluginLoader.js +2 -19
  73. package/PluginManager.d.ts +17 -32
  74. package/PluginManager.js +15 -41
  75. package/ReExports/DataGrid.js +0 -1
  76. package/ReExports/list.d.ts +0 -5
  77. package/ReExports/list.js +3 -5
  78. package/ReExports/modules.d.ts +26 -22
  79. package/ReExports/modules.js +45 -44
  80. package/TextSearch/BaseResults.d.ts +4 -4
  81. package/TextSearch/TextSearchManager.d.ts +4 -16
  82. package/TextSearch/TextSearchManager.js +1 -13
  83. package/assemblyManager/assembly.d.ts +5 -100
  84. package/assemblyManager/assembly.js +30 -146
  85. package/assemblyManager/assemblyConfigSchema.d.ts +1 -34
  86. package/assemblyManager/assemblyConfigSchema.js +12 -46
  87. package/assemblyManager/assemblyManager.d.ts +7 -57
  88. package/assemblyManager/assemblyManager.js +2 -57
  89. package/configuration/configurationSchema.d.ts +4 -4
  90. package/configuration/configurationSchema.js +2 -14
  91. package/configuration/configurationSlot.d.ts +2 -13
  92. package/configuration/configurationSlot.js +2 -32
  93. package/configuration/index.d.ts +2 -2
  94. package/configuration/index.js +2 -2
  95. package/configuration/types.d.ts +2 -3
  96. package/configuration/util.d.ts +1 -25
  97. package/configuration/util.js +19 -56
  98. package/data_adapters/BaseAdapter/BaseAdapter.d.ts +4 -14
  99. package/data_adapters/BaseAdapter/BaseAdapter.js +1 -10
  100. package/data_adapters/BaseAdapter/BaseFeatureDataAdapter.d.ts +5 -114
  101. package/data_adapters/BaseAdapter/BaseFeatureDataAdapter.js +3 -79
  102. package/data_adapters/BaseAdapter/BaseOptions.d.ts +2 -2
  103. package/data_adapters/BaseAdapter/BaseRefNameAliasAdapter.d.ts +2 -2
  104. package/data_adapters/BaseAdapter/BaseSequenceAdapter.d.ts +3 -6
  105. package/data_adapters/BaseAdapter/BaseTextSearchAdapter.d.ts +3 -3
  106. package/data_adapters/BaseAdapter/RegionsAdapter.d.ts +3 -3
  107. package/data_adapters/BaseAdapter/index.d.ts +4 -4
  108. package/data_adapters/BaseAdapter/types.d.ts +2 -2
  109. package/data_adapters/BaseAdapter/util.d.ts +6 -6
  110. package/data_adapters/CytobandAdapter/CytobandAdapter.d.ts +1 -1
  111. package/data_adapters/CytobandAdapter/CytobandAdapter.js +2 -6
  112. package/data_adapters/CytobandAdapter/configSchema.d.ts +0 -3
  113. package/data_adapters/CytobandAdapter/configSchema.js +1 -7
  114. package/data_adapters/CytobandAdapter/index.d.ts +1 -1
  115. package/data_adapters/CytobandAdapter/index.js +21 -8
  116. package/data_adapters/dataAdapterCache.d.ts +4 -22
  117. package/data_adapters/dataAdapterCache.js +2 -28
  118. package/data_adapters/util.d.ts +1 -0
  119. package/data_adapters/util.js +10 -0
  120. package/package.json +8 -11
  121. package/pluggableElementTypes/AdapterType.d.ts +2 -2
  122. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +2 -2
  123. package/pluggableElementTypes/ConnectionType.d.ts +3 -3
  124. package/pluggableElementTypes/DisplayType.d.ts +3 -9
  125. package/pluggableElementTypes/InternetAccountType.d.ts +2 -2
  126. package/pluggableElementTypes/PluggableElementBase.d.ts +1 -1
  127. package/pluggableElementTypes/PluggableElementBase.js +2 -2
  128. package/pluggableElementTypes/RpcMethodType.d.ts +5 -11
  129. package/pluggableElementTypes/RpcMethodType.js +7 -19
  130. package/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions.d.ts +9 -0
  131. package/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions.js +35 -0
  132. package/pluggableElementTypes/TextSearchAdapterType.d.ts +2 -2
  133. package/pluggableElementTypes/TrackType.d.ts +3 -3
  134. package/pluggableElementTypes/ViewType.d.ts +3 -3
  135. package/pluggableElementTypes/WidgetType.d.ts +4 -3
  136. package/pluggableElementTypes/index.d.ts +11 -11
  137. package/pluggableElementTypes/models/BaseConnectionModelFactory.d.ts +2 -29
  138. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +1 -28
  139. package/pluggableElementTypes/models/BaseDisplayModel.d.ts +3 -83
  140. package/pluggableElementTypes/models/BaseDisplayModel.js +2 -69
  141. package/pluggableElementTypes/models/BaseTrackModel.d.ts +4 -46
  142. package/pluggableElementTypes/models/BaseTrackModel.js +9 -63
  143. package/pluggableElementTypes/models/BaseViewModel.d.ts +2 -42
  144. package/pluggableElementTypes/models/BaseViewModel.js +2 -38
  145. package/pluggableElementTypes/models/InternetAccountModel.d.ts +3 -119
  146. package/pluggableElementTypes/models/InternetAccountModel.js +3 -123
  147. package/pluggableElementTypes/models/baseConnectionConfig.d.ts +0 -6
  148. package/pluggableElementTypes/models/baseConnectionConfig.js +1 -13
  149. package/pluggableElementTypes/models/baseInternetAccountConfig.d.ts +0 -15
  150. package/pluggableElementTypes/models/baseInternetAccountConfig.js +1 -23
  151. package/pluggableElementTypes/models/baseTrackConfig.d.ts +2 -53
  152. package/pluggableElementTypes/models/baseTrackConfig.js +1 -58
  153. package/pluggableElementTypes/renderers/BoxRendererType.d.ts +7 -15
  154. package/pluggableElementTypes/renderers/BoxRendererType.js +3 -14
  155. package/pluggableElementTypes/renderers/CircularChordRendererType.d.ts +4 -4
  156. package/pluggableElementTypes/renderers/CircularChordRendererType.js +3 -8
  157. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.d.ts +6 -21
  158. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +2 -25
  159. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +5 -47
  160. package/pluggableElementTypes/renderers/FeatureRendererType.js +15 -68
  161. package/pluggableElementTypes/renderers/RendererType.d.ts +5 -9
  162. package/pluggableElementTypes/renderers/RendererType.js +3 -7
  163. package/pluggableElementTypes/renderers/RpcRenderedSvgGroup.d.ts +3 -4
  164. package/pluggableElementTypes/renderers/RpcRenderedSvgGroup.js +11 -76
  165. package/pluggableElementTypes/renderers/ServerSideRenderedContent.d.ts +2 -3
  166. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +10 -74
  167. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +9 -49
  168. package/pluggableElementTypes/renderers/ServerSideRendererType.js +10 -60
  169. package/pluggableElementTypes/renderers/index.d.ts +1 -1
  170. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +1 -3
  171. package/rpc/BaseRpcDriver.d.ts +3 -4
  172. package/rpc/BaseRpcDriver.js +20 -80
  173. package/rpc/MainThreadRpcDriver.d.ts +3 -7
  174. package/rpc/MainThreadRpcDriver.js +0 -5
  175. package/rpc/RpcManager.d.ts +3 -3
  176. package/rpc/RpcManager.js +2 -4
  177. package/rpc/WebWorkerRpcDriver.d.ts +3 -2
  178. package/rpc/WebWorkerRpcDriver.js +2 -13
  179. package/rpc/baseRpcConfig.d.ts +0 -3
  180. package/rpc/baseRpcConfig.js +1 -7
  181. package/rpc/configSchema.d.ts +0 -6
  182. package/rpc/configSchema.js +2 -11
  183. package/rpc/mainThreadRpcConfig.js +1 -7
  184. package/rpc/methods/CoreFreeResources.d.ts +0 -6
  185. package/rpc/methods/CoreFreeResources.js +2 -9
  186. package/rpc/methods/CoreGetFeatureDensityStats.d.ts +4 -5
  187. package/rpc/methods/CoreGetFeatureDensityStats.js +1 -1
  188. package/rpc/methods/CoreGetFeatureDetails.d.ts +2 -7
  189. package/rpc/methods/CoreGetFeatureDetails.js +0 -5
  190. package/rpc/methods/CoreGetFeatures.d.ts +5 -5
  191. package/rpc/methods/CoreGetFeatures.js +4 -5
  192. package/rpc/methods/CoreGetFileInfo.d.ts +1 -2
  193. package/rpc/methods/CoreGetFileInfo.js +1 -1
  194. package/rpc/methods/CoreGetMetadata.d.ts +1 -2
  195. package/rpc/methods/CoreGetMetadata.js +1 -1
  196. package/rpc/methods/CoreGetRefNames.d.ts +1 -2
  197. package/rpc/methods/CoreGetRefNames.js +1 -1
  198. package/rpc/methods/CoreRender.d.ts +2 -6
  199. package/rpc/methods/CoreRender.js +5 -7
  200. package/rpc/methods/util.d.ts +3 -3
  201. package/rpc/methods/util.js +0 -1
  202. package/rpc/webWorkerRpcConfig.js +1 -7
  203. package/stories/JBrowseCore.stories.d.ts +1 -1
  204. package/stories/JBrowseCore.stories.js +3 -3
  205. package/stories/examples/WithSequencePanel.d.ts +6 -7
  206. package/stories/examples/WithSequencePanel.js +9 -9
  207. package/tsconfig.build.tsbuildinfo +1 -1
  208. package/ui/AppLogo.d.ts +2 -3
  209. package/ui/AppLogo.js +2 -7
  210. package/ui/AssemblySelector.d.ts +5 -5
  211. package/ui/AssemblySelector.js +11 -36
  212. package/ui/BaseTooltip.d.ts +1 -2
  213. package/ui/BaseTooltip.js +10 -17
  214. package/ui/CascadingMenu.d.ts +3 -4
  215. package/ui/CascadingMenu.js +18 -57
  216. package/ui/CascadingMenuButton.d.ts +2 -3
  217. package/ui/CascadingMenuButton.js +18 -42
  218. package/ui/ColorPicker.d.ts +3 -4
  219. package/ui/ColorPicker.js +33 -37
  220. package/ui/Dialog.d.ts +2 -3
  221. package/ui/Dialog.js +15 -27
  222. package/ui/DraggableDialog.d.ts +5 -0
  223. package/ui/DraggableDialog.js +32 -0
  224. package/ui/DropDownMenu.d.ts +2 -3
  225. package/ui/DropDownMenu.js +10 -36
  226. package/ui/EditableTypography.d.ts +2 -3
  227. package/ui/EditableTypography.js +30 -59
  228. package/ui/ErrorBoundary.d.ts +3 -2
  229. package/ui/ErrorBoundary.js +3 -25
  230. package/ui/ErrorMessage.d.ts +1 -2
  231. package/ui/ErrorMessage.js +27 -34
  232. package/ui/ErrorMessageStackTraceDialog.d.ts +1 -2
  233. package/ui/ErrorMessageStackTraceDialog.js +13 -54
  234. package/ui/FactoryResetDialog.d.ts +1 -2
  235. package/ui/FactoryResetDialog.js +8 -13
  236. package/ui/FatalErrorDialog.d.ts +1 -2
  237. package/ui/FatalErrorDialog.js +11 -42
  238. package/ui/FileSelector/FileSelector.d.ts +5 -5
  239. package/ui/FileSelector/FileSelector.js +41 -80
  240. package/ui/FileSelector/LocalFileChooser.d.ts +2 -3
  241. package/ui/FileSelector/LocalFileChooser.js +17 -29
  242. package/ui/FileSelector/UrlChooser.d.ts +5 -5
  243. package/ui/FileSelector/UrlChooser.js +6 -7
  244. package/ui/Icons.d.ts +10 -11
  245. package/ui/Icons.js +10 -25
  246. package/ui/LoadingEllipses.d.ts +2 -3
  247. package/ui/LoadingEllipses.js +4 -7
  248. package/ui/Logo.d.ts +2 -3
  249. package/ui/Logo.js +5 -23
  250. package/ui/Menu.d.ts +3 -4
  251. package/ui/Menu.js +85 -122
  252. package/ui/MenuButton.d.ts +2 -3
  253. package/ui/MenuButton.js +11 -35
  254. package/ui/PrerenderedCanvas.d.ts +1 -2
  255. package/ui/PrerenderedCanvas.js +3 -25
  256. package/ui/RedErrorMessageBox.d.ts +1 -2
  257. package/ui/RedErrorMessageBox.js +2 -5
  258. package/ui/ResizeHandle.d.ts +1 -2
  259. package/ui/ResizeHandle.js +5 -27
  260. package/ui/ReturnToImportFormDialog.d.ts +1 -2
  261. package/ui/ReturnToImportFormDialog.js +8 -13
  262. package/ui/SanitizedHTML.d.ts +2 -3
  263. package/ui/SanitizedHTML.js +4 -24
  264. package/ui/Snackbar.d.ts +3 -4
  265. package/ui/Snackbar.js +41 -21
  266. package/ui/SnackbarContents.d.ts +5 -0
  267. package/ui/SnackbarContents.js +16 -0
  268. package/ui/SnackbarModel.d.ts +1 -26
  269. package/ui/SnackbarModel.js +22 -39
  270. package/ui/colors.d.ts +1 -1
  271. package/ui/colors.js +2 -2
  272. package/ui/index.d.ts +0 -2
  273. package/ui/index.js +1 -5
  274. package/ui/react-colorful.js +17 -10
  275. package/ui/theme.d.ts +1 -1
  276. package/ui/theme.js +7 -40
  277. package/util/Base1DUtils.d.ts +1 -1
  278. package/util/Base1DUtils.js +0 -12
  279. package/util/Base1DViewModel.d.ts +4 -81
  280. package/util/Base1DViewModel.js +4 -108
  281. package/util/QuickLRU.js +0 -9
  282. package/util/TimeTraveller.js +0 -4
  283. package/util/aborting.d.ts +0 -20
  284. package/util/aborting.js +0 -31
  285. package/util/analytics.js +1 -12
  286. package/util/blockTypes.d.ts +0 -11
  287. package/util/blockTypes.js +0 -13
  288. package/util/calculateDynamicBlocks.d.ts +1 -20
  289. package/util/calculateDynamicBlocks.js +1 -22
  290. package/util/calculateStaticBlocks.d.ts +2 -2
  291. package/util/calculateStaticBlocks.js +0 -2
  292. package/util/color/cssColorsLevel4.js +0 -1
  293. package/util/color/index.d.ts +0 -19
  294. package/util/color/index.js +0 -30
  295. package/util/compositeMap.js +0 -2
  296. package/util/dedupe.js +0 -1
  297. package/util/formatFastaStrings.d.ts +0 -13
  298. package/util/formatFastaStrings.js +0 -13
  299. package/util/idMaker.d.ts +1 -1
  300. package/util/idMaker.js +16 -12
  301. package/util/index.d.ts +27 -173
  302. package/util/index.js +53 -293
  303. package/util/io/RemoteFileWithRangeCache.d.ts +4 -5
  304. package/util/io/RemoteFileWithRangeCache.js +12 -14
  305. package/util/io/index.d.ts +3 -4
  306. package/util/io/index.js +5 -19
  307. package/util/jexl.js +3 -13
  308. package/util/jexlStrings.d.ts +0 -6
  309. package/util/jexlStrings.js +0 -8
  310. package/util/layouts/BaseLayout.d.ts +1 -1
  311. package/util/layouts/GranularRectLayout.d.ts +1 -17
  312. package/util/layouts/GranularRectLayout.js +4 -81
  313. package/util/layouts/MultiLayout.d.ts +1 -6
  314. package/util/layouts/MultiLayout.js +0 -6
  315. package/util/layouts/PrecomputedLayout.d.ts +1 -4
  316. package/util/layouts/PrecomputedLayout.js +0 -5
  317. package/util/layouts/PrecomputedMultiLayout.js +0 -2
  318. package/util/layouts/SceneGraph.d.ts +0 -12
  319. package/util/layouts/SceneGraph.js +0 -13
  320. package/util/makeAbortableReaction.d.ts +2 -0
  321. package/util/makeAbortableReaction.js +50 -0
  322. package/util/map-obj.js +0 -4
  323. package/util/mst-reflection.d.ts +1 -14
  324. package/util/mst-reflection.js +1 -28
  325. package/util/nanoid.d.ts +1 -1
  326. package/util/nanoid.js +0 -31
  327. package/util/nextTick.d.ts +1 -0
  328. package/util/nextTick.js +6 -0
  329. package/util/offscreenCanvasPonyfill.d.ts +0 -1
  330. package/util/offscreenCanvasPonyfill.js +1 -9
  331. package/util/offscreenCanvasUtils.d.ts +2 -3
  332. package/util/offscreenCanvasUtils.js +22 -21
  333. package/util/range.d.ts +0 -25
  334. package/util/range.js +0 -34
  335. package/util/rxjs.d.ts +3 -7
  336. package/util/rxjs.js +2 -9
  337. package/util/simpleFeature.d.ts +0 -50
  338. package/util/simpleFeature.js +0 -35
  339. package/util/stats.d.ts +3 -26
  340. package/util/stats.js +0 -25
  341. package/util/stopToken.d.ts +3 -0
  342. package/util/stopToken.js +29 -0
  343. package/util/tracks.d.ts +4 -26
  344. package/util/tracks.js +8 -33
  345. package/util/types/index.d.ts +14 -30
  346. package/util/types/index.js +5 -14
  347. package/util/types/mst.js +0 -9
  348. package/util/types/util.d.ts +2 -9
  349. package/util/useMeasure.d.ts +1 -1
  350. package/util/useMeasure.js +0 -1
  351. package/util/when.d.ts +1 -15
  352. package/util/when.js +3 -70
  353. package/rpc/remoteAbortSignals.d.ts +0 -36
  354. package/rpc/remoteAbortSignals.js +0 -79
@@ -2,153 +2,68 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InternetAccount = void 0;
4
4
  const mobx_state_tree_1 = require("mobx-state-tree");
5
+ const baseInternetAccountConfig_1 = require("./baseInternetAccountConfig");
5
6
  const configuration_1 = require("../../configuration");
6
7
  const io_1 = require("../../util/io");
7
8
  const mst_1 = require("../../util/types/mst");
8
- const baseInternetAccountConfig_1 = require("./baseInternetAccountConfig");
9
9
  const inWebWorker = typeof sessionStorage === 'undefined';
10
- /**
11
- * #stateModel BaseInternetAccountModel
12
- * #category internetAccount
13
- */
14
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
10
+ function x() { }
15
11
  exports.InternetAccount = mobx_state_tree_1.types
16
12
  .model('InternetAccount', {
17
- /**
18
- * #property
19
- */
20
13
  id: mst_1.ElementId,
21
- /**
22
- * #property
23
- */
24
14
  type: mobx_state_tree_1.types.string,
25
- /**
26
- * #property
27
- */
28
15
  configuration: (0, configuration_1.ConfigurationReference)(baseInternetAccountConfig_1.BaseInternetAccountConfig),
29
16
  })
30
17
  .views(self => ({
31
- /**
32
- * #getter
33
- */
34
18
  get name() {
35
19
  return (0, configuration_1.getConf)(self, 'name');
36
20
  },
37
- /**
38
- * #getter
39
- */
40
21
  get description() {
41
22
  return (0, configuration_1.getConf)(self, 'description');
42
23
  },
43
- /**
44
- * #getter
45
- */
46
24
  get internetAccountId() {
47
- return (0, configuration_1.getConf)(self, 'internetAccountId'); // NOTE: this is the explicitIdentifier of the config schema
25
+ return (0, configuration_1.getConf)(self, 'internetAccountId');
48
26
  },
49
- /**
50
- * #getter
51
- */
52
27
  get authHeader() {
53
28
  return (0, configuration_1.getConf)(self, 'authHeader');
54
29
  },
55
- /**
56
- * #getter
57
- */
58
30
  get tokenType() {
59
31
  return (0, configuration_1.getConf)(self, 'tokenType');
60
32
  },
61
- /**
62
- * #getter
63
- */
64
33
  get domains() {
65
34
  return (0, configuration_1.getConf)(self, 'domains');
66
35
  },
67
- /**
68
- * #getter
69
- * Can use this to customize what is displayed in fileSelector's toggle box
70
- */
71
36
  get toggleContents() {
72
37
  return null;
73
38
  },
74
- /**
75
- * #getter
76
- * Can use this to customize what the fileSelector. It takes a prop called
77
- * `setLocation` that should be used to set a UriLocation
78
- */
79
39
  get SelectorComponent() {
80
40
  return undefined;
81
41
  },
82
- /**
83
- * #getter
84
- * Can use this to add a label to the UrlChooser. Has no effect if a custom
85
- * SelectorComponent is supplied
86
- */
87
42
  get selectorLabel() {
88
43
  return undefined;
89
44
  },
90
45
  }))
91
46
  .views(self => ({
92
- /**
93
- * #method
94
- * Determine whether this internetAccount provides credentials for a URL
95
- * @param location - UriLocation of resource
96
- * @returns true or false
97
- */
98
47
  handlesLocation(location) {
99
48
  return self.domains.some(domain => location.uri.includes(domain));
100
49
  },
101
- /**
102
- * #getter
103
- * The key used to store this internetAccount's token in sessionStorage
104
- */
105
50
  get tokenKey() {
106
51
  return `${self.internetAccountId}-token`;
107
52
  },
108
53
  }))
109
54
  .actions(self => ({
110
- /**
111
- * #action
112
- * Must be implemented by a model extending or composing this one. Pass the
113
- * user's token to `resolve`.
114
- * @param resolve - Pass the token to this function
115
- * @param reject - If there is an error getting the token, call this function
116
- */
117
55
  getTokenFromUser(_resolve, _reject) {
118
56
  throw new Error('getTokenFromUser must be implemented by extending model');
119
57
  },
120
- /**
121
- * #action
122
- */
123
58
  storeToken(token) {
124
59
  sessionStorage.setItem(self.tokenKey, token);
125
60
  },
126
- /**
127
- * #action
128
- */
129
61
  removeToken() {
130
62
  sessionStorage.removeItem(self.tokenKey);
131
63
  },
132
- /**
133
- * #action
134
- */
135
64
  retrieveToken() {
136
65
  return sessionStorage.getItem(self.tokenKey);
137
66
  },
138
- /**
139
- * #action
140
- * This can be used by an internetAccount to validate a token works before
141
- * it is used. This is run when preAuthorizationInformation is requested,
142
- * so it can be used to check that a token is valid before sending it to a
143
- * worker thread. It expects the token to be returned so that this action
144
- * can also be used to generate a new token (e.g. by using a refresh token)
145
- * if the original one was invalid. Should throw an error if a token is
146
- * invalid.
147
- *
148
- * @param token - Auth token
149
- * @param loc - UriLocation of the resource
150
- * @returns - Valid auth token
151
- */
152
67
  async validateToken(token, _loc) {
153
68
  return token;
154
69
  },
@@ -156,15 +71,6 @@ exports.InternetAccount = mobx_state_tree_1.types
156
71
  .actions(self => {
157
72
  let tokenPromise = undefined;
158
73
  return {
159
- /**
160
- * #action
161
- * Try to get the token from the location pre-auth, from local storage,
162
- * or from a previously cached promise. If token is not available, uses
163
- * `getTokenFromUser`.
164
- *
165
- * @param location - UriLocation of the resource
166
- * @returns A promise for the token
167
- */
168
74
  async getToken(location) {
169
75
  var _a, _b;
170
76
  if (tokenPromise) {
@@ -197,9 +103,6 @@ exports.InternetAccount = mobx_state_tree_1.types
197
103
  };
198
104
  })
199
105
  .actions(self => ({
200
- /**
201
- * #action
202
- */
203
106
  addAuthHeaderToInit(init, token) {
204
107
  return {
205
108
  ...init,
@@ -215,14 +118,6 @@ exports.InternetAccount = mobx_state_tree_1.types
215
118
  }),
216
119
  };
217
120
  },
218
- /**
219
- * #action
220
- * Gets the token and returns it along with the information needed to
221
- * create a new internetAccount.
222
- *
223
- * @param location - UriLocation of the resource
224
- * @returns
225
- */
226
121
  async getPreAuthorizationInformation(location) {
227
122
  const authToken = await self.getToken(location);
228
123
  let validatedToken;
@@ -243,15 +138,6 @@ exports.InternetAccount = mobx_state_tree_1.types
243
138
  },
244
139
  }))
245
140
  .actions(self => ({
246
- /**
247
- * #action
248
- * Get a fetch method that will add any needed authentication headers to
249
- * the request before sending it. If location is provided, it will be
250
- * checked to see if it includes a token in it pre-auth information.
251
- *
252
- * @param loc - UriLocation of the resource
253
- * @returns A function that can be used to fetch
254
- */
255
141
  getFetcher(loc) {
256
142
  return async (input, init) => {
257
143
  const authToken = await self.getToken(loc);
@@ -261,12 +147,6 @@ exports.InternetAccount = mobx_state_tree_1.types
261
147
  },
262
148
  }))
263
149
  .actions(self => ({
264
- /**
265
- * #action
266
- * Gets a filehandle that uses a fetch that adds auth headers
267
- * @param location - UriLocation of the resource
268
- * @returns A filehandle
269
- */
270
150
  openLocation(location) {
271
151
  return new io_1.RemoteFileWithRangeCache(location.uri, {
272
152
  fetch: self.getFetcher(location),
@@ -1,16 +1,10 @@
1
1
  import type { Instance } from 'mobx-state-tree';
2
2
  declare const BaseConnectionConfig: import("../../configuration/configurationSchema").ConfigurationSchemaType<{
3
- /**
4
- * #slot
5
- */
6
3
  name: {
7
4
  type: string;
8
5
  defaultValue: string;
9
6
  description: string;
10
7
  };
11
- /**
12
- * #slot
13
- */
14
8
  assemblyNames: {
15
9
  type: string;
16
10
  defaultValue: never[];
@@ -1,22 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const configuration_1 = require("../../configuration");
4
- /**
5
- * #config BaseConnection
6
- */
7
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
4
+ function x() { }
8
5
  const BaseConnectionConfig = (0, configuration_1.ConfigurationSchema)('BaseConnection', {
9
- /**
10
- * #slot
11
- */
12
6
  name: {
13
7
  type: 'string',
14
8
  defaultValue: 'nameOfConnection',
15
9
  description: 'a unique name for this connection',
16
10
  },
17
- /**
18
- * #slot
19
- */
20
11
  assemblyNames: {
21
12
  type: 'stringArray',
22
13
  defaultValue: [],
@@ -24,9 +15,6 @@ const BaseConnectionConfig = (0, configuration_1.ConfigurationSchema)('BaseConne
24
15
  },
25
16
  }, {
26
17
  explicitlyTyped: true,
27
- /**
28
- * #identifier
29
- */
30
18
  explicitIdentifier: 'connectionId',
31
19
  });
32
20
  exports.default = BaseConnectionConfig;
@@ -1,39 +1,24 @@
1
1
  export declare const BaseInternetAccountConfig: import("../../configuration/configurationSchema").ConfigurationSchemaType<{
2
- /**
3
- * #slot
4
- */
5
2
  name: {
6
3
  description: string;
7
4
  type: string;
8
5
  defaultValue: string;
9
6
  };
10
- /**
11
- * #slot
12
- */
13
7
  description: {
14
8
  description: string;
15
9
  type: string;
16
10
  defaultValue: string;
17
11
  };
18
- /**
19
- * #slot
20
- */
21
12
  authHeader: {
22
13
  description: string;
23
14
  type: string;
24
15
  defaultValue: string;
25
16
  };
26
- /**
27
- * #slot
28
- */
29
17
  tokenType: {
30
18
  description: string;
31
19
  type: string;
32
20
  defaultValue: string;
33
21
  };
34
- /**
35
- * #slot
36
- */
37
22
  domains: {
38
23
  description: string;
39
24
  type: string;
@@ -2,56 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseInternetAccountConfig = void 0;
4
4
  const configuration_1 = require("../../configuration");
5
- /**
6
- * #config BaseInternetAccount
7
- * the "base" internet account type
8
- */
9
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
5
+ function x() { }
10
6
  exports.BaseInternetAccountConfig = (0, configuration_1.ConfigurationSchema)('InternetAccount', {
11
- /**
12
- * #slot
13
- */
14
7
  name: {
15
8
  description: 'descriptive name of the internet account',
16
9
  type: 'string',
17
10
  defaultValue: '',
18
11
  },
19
- /**
20
- * #slot
21
- */
22
12
  description: {
23
13
  description: 'a description of the internet account',
24
14
  type: 'string',
25
15
  defaultValue: '',
26
16
  },
27
- /**
28
- * #slot
29
- */
30
17
  authHeader: {
31
18
  description: 'request header for credentials',
32
19
  type: 'string',
33
20
  defaultValue: 'Authorization',
34
21
  },
35
- /**
36
- * #slot
37
- */
38
22
  tokenType: {
39
23
  description: 'a custom name for a token to include in the header',
40
24
  type: 'string',
41
25
  defaultValue: '',
42
26
  },
43
- /**
44
- * #slot
45
- */
46
27
  domains: {
47
28
  description: 'array of valid domains the url can contain to use this account',
48
29
  type: 'stringArray',
49
30
  defaultValue: [],
50
31
  },
51
32
  }, {
52
- /**
53
- * #identifier
54
- */
55
33
  explicitIdentifier: 'internetAccountId',
56
34
  explicitlyTyped: true,
57
35
  });
@@ -1,109 +1,64 @@
1
- import { Instance } from 'mobx-state-tree';
2
- import PluginManager from '../../PluginManager';
3
- /**
4
- * #config BaseTrack
5
- */
1
+ import type PluginManager from '../../PluginManager';
2
+ import type { Instance } from 'mobx-state-tree';
6
3
  export declare function createBaseTrackConfig(pluginManager: PluginManager): import("../../configuration/configurationSchema").ConfigurationSchemaType<{
7
- /**
8
- * #slot
9
- */
10
4
  name: {
11
5
  description: string;
12
6
  type: string;
13
7
  defaultValue: string;
14
8
  };
15
- /**
16
- * #slot
17
- */
18
9
  assemblyNames: {
19
10
  description: string;
20
11
  type: string;
21
12
  defaultValue: string[];
22
13
  };
23
- /**
24
- * #slot
25
- */
26
14
  description: {
27
15
  description: string;
28
16
  type: string;
29
17
  defaultValue: string;
30
18
  };
31
- /**
32
- * #slot
33
- */
34
19
  category: {
35
20
  description: string;
36
21
  type: string;
37
22
  defaultValue: never[];
38
23
  };
39
- /**
40
- * #slot
41
- */
42
24
  metadata: {
43
25
  type: string;
44
26
  description: string;
45
27
  defaultValue: {};
46
28
  };
47
- /**
48
- * #slot
49
- */
50
29
  adapter: import("mobx-state-tree").IAnyModelType;
51
30
  textSearching: import("../../configuration/configurationSchema").ConfigurationSchemaType<{
52
- /**
53
- * #slot textSearching.indexedAttributes
54
- */
55
31
  indexingAttributes: {
56
32
  type: string;
57
33
  description: string;
58
34
  defaultValue: string[];
59
35
  };
60
- /**
61
- * #slot textSearching.indexingFeatureTypesToExclude
62
- */
63
36
  indexingFeatureTypesToExclude: {
64
37
  type: string;
65
38
  description: string;
66
39
  defaultValue: string[];
67
40
  };
68
- /**
69
- * #slot textSearching.textSearchAdapter
70
- */
71
41
  textSearchAdapter: import("mobx-state-tree").IAnyModelType;
72
42
  }, import("../../configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
73
- /**
74
- * #slot
75
- */
76
43
  displays: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>;
77
44
  formatDetails: import("../../configuration/configurationSchema").ConfigurationSchemaType<{
78
- /**
79
- * #slot formatDetails.feature
80
- */
81
45
  feature: {
82
46
  type: string;
83
47
  description: string;
84
48
  defaultValue: {};
85
49
  contextVariable: string[];
86
50
  };
87
- /**
88
- * #slot formatDetails.subfeatures
89
- */
90
51
  subfeatures: {
91
52
  type: string;
92
53
  description: string;
93
54
  defaultValue: {};
94
55
  contextVariable: string[];
95
56
  };
96
- /**
97
- * #slot formatDetails.depth
98
- */
99
57
  depth: {
100
58
  type: string;
101
59
  defaultValue: number;
102
60
  description: string;
103
61
  };
104
- /**
105
- * #slot formatDetails.maxDepth
106
- */
107
62
  maxDepth: {
108
63
  type: string;
109
64
  defaultValue: number;
@@ -111,18 +66,12 @@ export declare function createBaseTrackConfig(pluginManager: PluginManager): imp
111
66
  };
112
67
  }, import("../../configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
113
68
  formatAbout: import("../../configuration/configurationSchema").ConfigurationSchemaType<{
114
- /**
115
- * #slot formatAbout.config
116
- */
117
69
  config: {
118
70
  type: string;
119
71
  description: string;
120
72
  defaultValue: {};
121
73
  contextVariable: string[];
122
74
  };
123
- /**
124
- * #slot formatAbout.hideUris
125
- */
126
75
  hideUris: {
127
76
  type: string;
128
77
  defaultValue: boolean;
@@ -3,111 +3,66 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createBaseTrackConfig = createBaseTrackConfig;
4
4
  const mobx_state_tree_1 = require("mobx-state-tree");
5
5
  const configuration_1 = require("../../configuration");
6
- /**
7
- * #config BaseTrack
8
- */
9
6
  function createBaseTrackConfig(pluginManager) {
10
7
  return (0, configuration_1.ConfigurationSchema)('BaseTrack', {
11
- /**
12
- * #slot
13
- */
14
8
  name: {
15
9
  description: 'descriptive name of the track',
16
10
  type: 'string',
17
11
  defaultValue: 'Track',
18
12
  },
19
- /**
20
- * #slot
21
- */
22
13
  assemblyNames: {
23
14
  description: 'name of the assembly (or assemblies) track belongs to',
24
15
  type: 'stringArray',
25
16
  defaultValue: ['assemblyName'],
26
17
  },
27
- /**
28
- * #slot
29
- */
30
18
  description: {
31
19
  description: 'a description of the track',
32
20
  type: 'string',
33
21
  defaultValue: '',
34
22
  },
35
- /**
36
- * #slot
37
- */
38
23
  category: {
39
24
  description: 'the category and sub-categories of a track',
40
25
  type: 'stringArray',
41
26
  defaultValue: [],
42
27
  },
43
- /**
44
- * #slot
45
- */
46
28
  metadata: {
47
29
  type: 'frozen',
48
30
  description: 'anything to add about this track',
49
31
  defaultValue: {},
50
32
  },
51
- /**
52
- * #slot
53
- */
54
33
  adapter: pluginManager.pluggableConfigSchemaType('adapter'),
55
34
  textSearching: (0, configuration_1.ConfigurationSchema)('textSearching', {
56
- /**
57
- * #slot textSearching.indexedAttributes
58
- */
59
35
  indexingAttributes: {
60
36
  type: 'stringArray',
61
37
  description: 'list of which feature attributes to index for text searching',
62
38
  defaultValue: ['Name', 'ID'],
63
39
  },
64
- /**
65
- * #slot textSearching.indexingFeatureTypesToExclude
66
- */
67
40
  indexingFeatureTypesToExclude: {
68
41
  type: 'stringArray',
69
42
  description: 'list of feature types to exclude in text search index',
70
43
  defaultValue: ['CDS', 'exon'],
71
44
  },
72
- /**
73
- * #slot textSearching.textSearchAdapter
74
- */
75
45
  textSearchAdapter: pluginManager.pluggableConfigSchemaType('text search adapter'),
76
46
  }),
77
- /**
78
- * #slot
79
- */
80
47
  displays: mobx_state_tree_1.types.array(pluginManager.pluggableConfigSchemaType('display')),
81
48
  formatDetails: (0, configuration_1.ConfigurationSchema)('FormatDetails', {
82
- /**
83
- * #slot formatDetails.feature
84
- */
85
49
  feature: {
86
50
  type: 'frozen',
87
51
  description: 'adds extra fields to the feature details',
88
52
  defaultValue: {},
89
53
  contextVariable: ['feature'],
90
54
  },
91
- /**
92
- * #slot formatDetails.subfeatures
93
- */
94
55
  subfeatures: {
95
56
  type: 'frozen',
96
57
  description: 'adds extra fields to the subfeatures of a feature',
97
58
  defaultValue: {},
98
59
  contextVariable: ['feature'],
99
60
  },
100
- /**
101
- * #slot formatDetails.depth
102
- */
103
61
  depth: {
104
62
  type: 'number',
105
63
  defaultValue: 2,
106
64
  description: 'depth of subfeatures to iterate the formatter on formatDetails.subfeatures (e.g. you may not want to format the exon/cds subfeatures, so limited to 2',
107
65
  },
108
- /**
109
- * #slot formatDetails.maxDepth
110
- */
111
66
  maxDepth: {
112
67
  type: 'number',
113
68
  defaultValue: 99999,
@@ -115,18 +70,12 @@ function createBaseTrackConfig(pluginManager) {
115
70
  },
116
71
  }),
117
72
  formatAbout: (0, configuration_1.ConfigurationSchema)('FormatAbout', {
118
- /**
119
- * #slot formatAbout.config
120
- */
121
73
  config: {
122
74
  type: 'frozen',
123
75
  description: 'formats configuration object in about dialog',
124
76
  defaultValue: {},
125
77
  contextVariable: ['config'],
126
78
  },
127
- /**
128
- * #slot formatAbout.hideUris
129
- */
130
79
  hideUris: {
131
80
  type: 'boolean',
132
81
  defaultValue: false,
@@ -134,12 +83,9 @@ function createBaseTrackConfig(pluginManager) {
134
83
  }),
135
84
  }, {
136
85
  preProcessSnapshot: s2 => {
137
- const snap = pluginManager.evaluateExtensionPoint('Core-preProcessTrackConfig', JSON.parse(JSON.stringify(s2)));
86
+ const snap = pluginManager.evaluateExtensionPoint('Core-preProcessTrackConfig', structuredClone(s2));
138
87
  const { displays = [] } = snap;
139
88
  if (snap.trackId !== 'placeholderId') {
140
- // Gets the displays on the track snapshot and the possible displays
141
- // from the track type and adds any missing possible displays to the
142
- // snapshot
143
89
  const configDisplayTypes = new Set(displays.map(d => d.type));
144
90
  pluginManager.getTrackType(snap.type).displayTypes.forEach(d => {
145
91
  if (!configDisplayTypes.has(d.name)) {
@@ -152,9 +98,6 @@ function createBaseTrackConfig(pluginManager) {
152
98
  }
153
99
  return { ...snap, displays };
154
100
  },
155
- /**
156
- * #identifier
157
- */
158
101
  explicitIdentifier: 'trackId',
159
102
  explicitlyTyped: true,
160
103
  actions: (self) => ({