@apollo-annotation/jbrowse-plugin-apollo 0.1.20 → 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.
- package/dist/index.esm.js +552 -642
- package/dist/index.esm.js.map +1 -1
- package/dist/jbrowse-plugin-apollo.cjs.development.js +560 -650
- package/dist/jbrowse-plugin-apollo.cjs.development.js.map +1 -1
- package/dist/jbrowse-plugin-apollo.cjs.production.min.js +1 -1
- package/dist/jbrowse-plugin-apollo.cjs.production.min.js.map +1 -1
- package/dist/jbrowse-plugin-apollo.umd.development.js +11294 -1232
- package/dist/jbrowse-plugin-apollo.umd.development.js.map +1 -1
- package/dist/jbrowse-plugin-apollo.umd.production.min.js +1 -1
- package/dist/jbrowse-plugin-apollo.umd.production.min.js.map +1 -1
- package/package.json +4 -5
- package/src/ApolloInternetAccount/components/AuthTypeSelector.tsx +4 -2
- package/src/ApolloInternetAccount/configSchema.ts +1 -1
- package/src/ApolloInternetAccount/model.ts +5 -10
- package/src/ApolloRefNameAliasAdapter/ApolloRefNameAliasAdapter.ts +1 -1
- package/src/ApolloSixFrameRenderer/components/ApolloRendering.tsx +4 -5
- package/src/BackendDrivers/DesktopFileDriver.ts +3 -2
- package/src/FeatureDetailsWidget/Attributes.tsx +1 -6
- package/src/FeatureDetailsWidget/NumberTextField.tsx +1 -0
- package/src/FeatureDetailsWidget/StringTextField.tsx +1 -0
- package/src/FeatureDetailsWidget/TranscriptBasic.tsx +131 -382
- package/src/FeatureDetailsWidget/TranscriptSequence.tsx +209 -284
- package/src/FeatureDetailsWidget/model.ts +4 -4
- package/src/LinearApolloDisplay/components/LinearApolloDisplay.tsx +1 -4
- package/src/LinearApolloDisplay/configSchema.ts +5 -14
- package/src/LinearApolloDisplay/glyphs/BoxGlyph.ts +25 -3
- package/src/LinearApolloDisplay/glyphs/GeneGlyph.ts +95 -32
- package/src/LinearApolloDisplay/index.ts +1 -1
- package/src/LinearApolloDisplay/stateModel/base.ts +104 -17
- package/src/LinearApolloDisplay/stateModel/index.ts +1 -1
- package/src/LinearApolloDisplay/stateModel/mouseEvents.ts +1 -1
- package/src/LinearApolloDisplay/stateModel/rendering.ts +1 -1
- package/src/OntologyManager/OntologyStore/fulltext.ts +5 -2
- package/src/OntologyManager/OntologyStore/index.ts +25 -22
- package/src/OntologyManager/OntologyStore/indexeddb-storage.ts +8 -3
- package/src/OntologyManager/index.ts +31 -8
- package/src/SixFrameFeatureDisplay/stateModel.ts +1 -1
- package/src/TabularEditor/HybridGrid/HybridGrid.tsx +1 -0
- package/src/TabularEditor/HybridGrid/NumberCell.tsx +1 -0
- package/src/TabularEditor/model.ts +1 -1
- package/src/components/AddChildFeature.tsx +1 -0
- package/src/components/AddFeature.tsx +1 -1
- package/src/components/AddRefSeqAliases.tsx +1 -0
- package/src/components/CopyFeature.tsx +1 -0
- package/src/components/DeleteAssembly.tsx +1 -0
- package/src/components/DeleteFeature.tsx +1 -0
- package/src/components/LogOut.tsx +2 -1
- package/src/components/ManageChecks.tsx +1 -1
- package/src/components/ManageUsers.tsx +2 -1
- package/src/components/OntologyTermAutocomplete.tsx +7 -9
- package/src/components/OntologyTermMultiSelect.tsx +2 -1
- package/src/components/OpenLocalFile.tsx +3 -1
- package/src/components/ViewChangeLog.tsx +1 -0
- package/src/components/ViewCheckResults.tsx +1 -0
- package/src/config.ts +5 -0
- package/src/extensions/annotationFromPileup.ts +1 -1
- package/src/index.ts +2 -2
- package/src/makeDisplayComponent.tsx +77 -32
- package/src/session/ClientDataStore.ts +1 -1
- package/src/session/session.ts +2 -1
- package/src/LinearApolloDisplay/stateModel/trackHeightMixin.ts +0 -43
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apollo-annotation/jbrowse-plugin-apollo",
|
|
3
|
-
"version": "0.
|
|
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.
|
|
52
|
-
"@apollo-annotation/mst": "^0.
|
|
53
|
-
"@apollo-annotation/shared": "^0.
|
|
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
|
-
|
|
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-
|
|
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
|
-
:
|
|
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 } =
|
|
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,
|
|
348
|
+
const { channel, userSessionId } = message
|
|
349
349
|
if (channel === 'REQUEST_INFORMATION' && userSessionId !== token) {
|
|
350
|
-
|
|
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-
|
|
460
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
|
466
461
|
export interface ApolloInternetAccountModel
|
|
467
462
|
extends Instance<ApolloInternetAccountStateModel> {}
|
|
@@ -551,7 +551,7 @@ function ApolloRendering(props: ApolloRenderingProps) {
|
|
|
551
551
|
}
|
|
552
552
|
await changeManager.submit(change)
|
|
553
553
|
}
|
|
554
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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-
|
|
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 === '') {
|