@apollo-annotation/jbrowse-plugin-apollo 0.1.21 → 0.2.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 (57) hide show
  1. package/dist/index.esm.js +431 -570
  2. package/dist/index.esm.js.map +1 -1
  3. package/dist/jbrowse-plugin-apollo.cjs.development.js +439 -578
  4. package/dist/jbrowse-plugin-apollo.cjs.development.js.map +1 -1
  5. package/dist/jbrowse-plugin-apollo.cjs.production.min.js +1 -1
  6. package/dist/jbrowse-plugin-apollo.cjs.production.min.js.map +1 -1
  7. package/dist/jbrowse-plugin-apollo.umd.development.js +11064 -1091
  8. package/dist/jbrowse-plugin-apollo.umd.development.js.map +1 -1
  9. package/dist/jbrowse-plugin-apollo.umd.production.min.js +1 -1
  10. package/dist/jbrowse-plugin-apollo.umd.production.min.js.map +1 -1
  11. package/package.json +4 -5
  12. package/src/ApolloInternetAccount/components/AuthTypeSelector.tsx +4 -2
  13. package/src/ApolloInternetAccount/configSchema.ts +1 -1
  14. package/src/ApolloInternetAccount/model.ts +5 -10
  15. package/src/ApolloRefNameAliasAdapter/ApolloRefNameAliasAdapter.ts +1 -1
  16. package/src/ApolloSixFrameRenderer/components/ApolloRendering.tsx +4 -5
  17. package/src/BackendDrivers/DesktopFileDriver.ts +3 -2
  18. package/src/FeatureDetailsWidget/Attributes.tsx +1 -6
  19. package/src/FeatureDetailsWidget/NumberTextField.tsx +1 -0
  20. package/src/FeatureDetailsWidget/StringTextField.tsx +1 -0
  21. package/src/FeatureDetailsWidget/TranscriptBasic.tsx +131 -382
  22. package/src/FeatureDetailsWidget/TranscriptSequence.tsx +209 -284
  23. package/src/FeatureDetailsWidget/model.ts +4 -4
  24. package/src/LinearApolloDisplay/components/LinearApolloDisplay.tsx +1 -0
  25. package/src/LinearApolloDisplay/glyphs/BoxGlyph.ts +25 -3
  26. package/src/LinearApolloDisplay/glyphs/GeneGlyph.ts +95 -32
  27. package/src/LinearApolloDisplay/stateModel/base.ts +5 -3
  28. package/src/LinearApolloDisplay/stateModel/index.ts +1 -1
  29. package/src/LinearApolloDisplay/stateModel/mouseEvents.ts +1 -1
  30. package/src/LinearApolloDisplay/stateModel/rendering.ts +1 -1
  31. package/src/OntologyManager/OntologyStore/fulltext.ts +5 -2
  32. package/src/OntologyManager/OntologyStore/index.ts +25 -22
  33. package/src/OntologyManager/OntologyStore/indexeddb-storage.ts +8 -3
  34. package/src/OntologyManager/index.ts +31 -8
  35. package/src/SixFrameFeatureDisplay/stateModel.ts +1 -1
  36. package/src/TabularEditor/HybridGrid/HybridGrid.tsx +1 -0
  37. package/src/TabularEditor/HybridGrid/NumberCell.tsx +1 -0
  38. package/src/TabularEditor/model.ts +1 -1
  39. package/src/components/AddChildFeature.tsx +1 -0
  40. package/src/components/AddFeature.tsx +1 -1
  41. package/src/components/AddRefSeqAliases.tsx +1 -0
  42. package/src/components/CopyFeature.tsx +1 -0
  43. package/src/components/DeleteAssembly.tsx +1 -0
  44. package/src/components/DeleteFeature.tsx +1 -0
  45. package/src/components/LogOut.tsx +2 -1
  46. package/src/components/ManageChecks.tsx +1 -1
  47. package/src/components/ManageUsers.tsx +2 -1
  48. package/src/components/OntologyTermAutocomplete.tsx +7 -9
  49. package/src/components/OntologyTermMultiSelect.tsx +2 -1
  50. package/src/components/OpenLocalFile.tsx +3 -1
  51. package/src/components/ViewChangeLog.tsx +1 -0
  52. package/src/components/ViewCheckResults.tsx +1 -0
  53. package/src/config.ts +5 -0
  54. package/src/extensions/annotationFromPileup.ts +1 -1
  55. package/src/makeDisplayComponent.tsx +28 -7
  56. package/src/session/ClientDataStore.ts +1 -1
  57. package/src/session/session.ts +2 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apollo-annotation/jbrowse-plugin-apollo",
3
- "version": "0.1.21",
3
+ "version": "0.2.0",
4
4
  "description": "Apollo plugin for JBrowse 2",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -48,9 +48,9 @@
48
48
  }
49
49
  },
50
50
  "dependencies": {
51
- "@apollo-annotation/common": "^0.1.21",
52
- "@apollo-annotation/mst": "^0.1.21",
53
- "@apollo-annotation/shared": "^0.1.21",
51
+ "@apollo-annotation/common": "^0.2.0",
52
+ "@apollo-annotation/mst": "^0.2.0",
53
+ "@apollo-annotation/shared": "^0.2.0",
54
54
  "@emotion/react": "^11.10.6",
55
55
  "@emotion/styled": "^11.10.6",
56
56
  "@gmod/gff": "1.2.0",
@@ -67,7 +67,6 @@
67
67
  "idb": "^7.1.1",
68
68
  "jsonpath": "^1.1.1",
69
69
  "nanoid": "^4.0.2",
70
- "regenerator-runtime": "^0.13.9",
71
70
  "socket.io-client": "^4.5.4",
72
71
  "tslib": "^2.3.1"
73
72
  },
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/use-unknown-in-catch-callback-variable */
2
- import { isAbortException } from '@jbrowse/core/util'
2
+ import { isAbortException } from '@jbrowse/core/util/aborting'
3
3
  import {
4
4
  Button,
5
5
  DialogActions,
@@ -51,7 +51,9 @@ export const AuthTypeSelector = ({
51
51
  setLoginTypes(data)
52
52
  }
53
53
  getAuthTypes().catch((error) => {
54
- isAbortException(error) ? '' : setErrorMessage(String(error))
54
+ if (!isAbortException(error)) {
55
+ setErrorMessage(String(error))
56
+ }
55
57
  })
56
58
  return () => {
57
59
  controller.abort()
@@ -23,7 +23,7 @@ export type ApolloInternetAccountConfigModel = typeof ApolloConfigSchema
23
23
 
24
24
  // eslint disable because of
25
25
  // https://mobx-state-tree.js.org/tips/typescript#using-a-mst-type-at-design-time
26
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
26
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
27
27
  export interface ApolloInternetAccountConfig
28
28
  extends Instance<ApolloInternetAccountConfigModel> {}
29
29
  export default ApolloConfigSchema
@@ -135,7 +135,7 @@ const stateModelFactory = (configSchema: ApolloInternetAccountConfigModel) => {
135
135
  ) {
136
136
  const redirectUri = isElectron
137
137
  ? 'http://localhost/auth'
138
- : window.location.origin + window.location.pathname
138
+ : globalThis.location.origin + globalThis.location.pathname
139
139
  const url = new URL('auth/login', self.baseURL)
140
140
  const params = new URLSearchParams({
141
141
  type,
@@ -144,7 +144,7 @@ const stateModelFactory = (configSchema: ApolloInternetAccountConfigModel) => {
144
144
  url.search = params.toString()
145
145
  const eventName = `JBrowseAuthWindow-${self.internetAccountId}`
146
146
  if (isElectron) {
147
- const { ipcRenderer } = window.require('electron')
147
+ const { ipcRenderer } = globalThis.require('electron')
148
148
  const redirectUriFromElectron = await ipcRenderer.invoke(
149
149
  'openAuthWindow',
150
150
  {
@@ -345,14 +345,9 @@ const stateModelFactory = (configSchema: ApolloInternetAccountConfigModel) => {
345
345
  socket.on(
346
346
  'REQUEST_INFORMATION',
347
347
  (message: RequestUserInformationMessage) => {
348
- const { channel, reqType, userSessionId } = message
348
+ const { channel, userSessionId } = message
349
349
  if (channel === 'REQUEST_INFORMATION' && userSessionId !== token) {
350
- switch (reqType) {
351
- case 'CURRENT_LOCATION': {
352
- session.broadcastLocations()
353
- break
354
- }
355
- }
350
+ session.broadcastLocations()
356
351
  }
357
352
  },
358
353
  )
@@ -462,6 +457,6 @@ export type ApolloInternetAccountStateModel = ReturnType<
462
457
  >
463
458
  // eslint disable because of
464
459
  // https://mobx-state-tree.js.org/tips/typescript#using-a-mst-type-at-design-time
465
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
460
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
466
461
  export interface ApolloInternetAccountModel
467
462
  extends Instance<ApolloInternetAccountStateModel> {}
@@ -88,7 +88,7 @@ export default class RefNameAliasAdapter
88
88
  return refNameAliases
89
89
  }
90
90
 
91
- async freeResources() {
91
+ freeResources() {
92
92
  // no resources to free
93
93
  }
94
94
  }
@@ -551,7 +551,7 @@ function ApolloRendering(props: ApolloRenderingProps) {
551
551
  }
552
552
  await changeManager.submit(change)
553
553
  }
554
- // eslint-disable-next-line unicorn/no-useless-undefined
554
+
555
555
  setDragging(undefined)
556
556
  setMovedDuringLastMouseDown(false)
557
557
  }
@@ -575,7 +575,6 @@ function ApolloRendering(props: ApolloRenderingProps) {
575
575
  }
576
576
  data-testid="base_linear_display_context_menu"
577
577
  onClose={() => {
578
- // eslint-disable-next-line unicorn/no-useless-undefined
579
578
  setContextMenuFeature(undefined)
580
579
  }}
581
580
  >
@@ -595,7 +594,7 @@ function ApolloRendering(props: ApolloRenderingProps) {
595
594
  session,
596
595
  handleClose: () => {
597
596
  doneCallback()
598
- // eslint-disable-next-line unicorn/no-useless-undefined
597
+
599
598
  setContextMenuFeature(undefined)
600
599
  },
601
600
  changeManager,
@@ -625,7 +624,7 @@ function ApolloRendering(props: ApolloRenderingProps) {
625
624
  session,
626
625
  handleClose: () => {
627
626
  doneCallback()
628
- // eslint-disable-next-line unicorn/no-useless-undefined
627
+
629
628
  setContextMenuFeature(undefined)
630
629
  },
631
630
  changeManager,
@@ -654,7 +653,7 @@ function ApolloRendering(props: ApolloRenderingProps) {
654
653
  session,
655
654
  handleClose: () => {
656
655
  doneCallback()
657
- // eslint-disable-next-line unicorn/no-useless-undefined
656
+
658
657
  setContextMenuFeature(undefined)
659
658
  },
660
659
  changeManager,
@@ -31,7 +31,8 @@ export class DesktopFileDriver extends BackendDriver {
31
31
  const { file } = getConf(assembly, ['sequence', 'metadata']) as {
32
32
  file: string
33
33
  }
34
- // eslint-disable-next-line @typescript-eslint/no-var-requires
34
+
35
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
35
36
  const fs = require('node:fs') as typeof import('fs')
36
37
  const fileContents = await fs.promises.readFile(file, 'utf8')
37
38
  return loadAssemblyIntoClient(assemblyName, fileContents, this.clientStore)
@@ -165,7 +166,7 @@ export class DesktopFileDriver extends BackendDriver {
165
166
 
166
167
  const gff3Contents = gff.formatSync(gff3Items)
167
168
 
168
- // eslint-disable-next-line @typescript-eslint/no-var-requires
169
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
169
170
  const fs = require('node:fs') as typeof import('fs')
170
171
  await fs.promises.writeFile(file, gff3Contents, 'utf8')
171
172
 
@@ -242,12 +242,7 @@ export const Attributes = observer(function Attributes({
242
242
 
243
243
  return (
244
244
  <>
245
- <Typography
246
- style={{ display: 'inline', marginLeft: '15px' }}
247
- variant="h5"
248
- >
249
- Attributes
250
- </Typography>
245
+ <Typography variant="h5">Attributes</Typography>
251
246
  <Grid container direction="column" spacing={1}>
252
247
  {Object.entries(attributes).map(([key, value]) => {
253
248
  if (key === '') {
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/unbound-method */
1
2
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
3
  import { TextField, TextFieldProps } from '@mui/material'
3
4
  import { observer } from 'mobx-react'
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/unbound-method */
1
2
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
3
  import { TextField, TextFieldProps } from '@mui/material'
3
4
  import { observer } from 'mobx-react'