@jbrowse/plugin-grid-bookmark 2.6.1 → 2.6.3
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/GridBookmarkWidget/components/AssemblySelector.js +0 -1
- package/dist/GridBookmarkWidget/components/ClearBookmarks.js +0 -1
- package/dist/GridBookmarkWidget/components/DeleteBookmark.js +0 -1
- package/dist/GridBookmarkWidget/components/DownloadBookmarks.js +0 -1
- package/dist/GridBookmarkWidget/components/GridBookmarkWidget.js +8 -4
- package/dist/GridBookmarkWidget/components/ImportBookmarks.js +0 -1
- package/dist/GridBookmarkWidget/index.js +0 -1
- package/dist/GridBookmarkWidget/model.js +0 -1
- package/dist/GridBookmarkWidget/types.js +0 -1
- package/dist/GridBookmarkWidget/utils.js +0 -1
- package/dist/index.js +0 -1
- package/esm/GridBookmarkWidget/components/AssemblySelector.js +0 -1
- package/esm/GridBookmarkWidget/components/ClearBookmarks.js +0 -1
- package/esm/GridBookmarkWidget/components/DeleteBookmark.js +0 -1
- package/esm/GridBookmarkWidget/components/DownloadBookmarks.js +0 -1
- package/esm/GridBookmarkWidget/components/GridBookmarkWidget.js +8 -4
- package/esm/GridBookmarkWidget/components/ImportBookmarks.js +0 -1
- package/esm/GridBookmarkWidget/index.js +0 -1
- package/esm/GridBookmarkWidget/model.js +0 -1
- package/esm/GridBookmarkWidget/types.js +0 -1
- package/esm/GridBookmarkWidget/utils.js +0 -1
- package/esm/index.js +0 -1
- package/package.json +3 -4
- package/dist/GridBookmarkWidget/components/AssemblySelector.js.map +0 -1
- package/dist/GridBookmarkWidget/components/ClearBookmarks.js.map +0 -1
- package/dist/GridBookmarkWidget/components/DeleteBookmark.js.map +0 -1
- package/dist/GridBookmarkWidget/components/DownloadBookmarks.js.map +0 -1
- package/dist/GridBookmarkWidget/components/GridBookmarkWidget.js.map +0 -1
- package/dist/GridBookmarkWidget/components/ImportBookmarks.js.map +0 -1
- package/dist/GridBookmarkWidget/index.js.map +0 -1
- package/dist/GridBookmarkWidget/model.js.map +0 -1
- package/dist/GridBookmarkWidget/types.js.map +0 -1
- package/dist/GridBookmarkWidget/utils.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/esm/GridBookmarkWidget/components/AssemblySelector.js.map +0 -1
- package/esm/GridBookmarkWidget/components/ClearBookmarks.js.map +0 -1
- package/esm/GridBookmarkWidget/components/DeleteBookmark.js.map +0 -1
- package/esm/GridBookmarkWidget/components/DownloadBookmarks.js.map +0 -1
- package/esm/GridBookmarkWidget/components/GridBookmarkWidget.js.map +0 -1
- package/esm/GridBookmarkWidget/components/ImportBookmarks.js.map +0 -1
- package/esm/GridBookmarkWidget/index.js.map +0 -1
- package/esm/GridBookmarkWidget/model.js.map +0 -1
- package/esm/GridBookmarkWidget/types.js.map +0 -1
- package/esm/GridBookmarkWidget/utils.js.map +0 -1
- package/esm/index.js.map +0 -1
- package/src/GridBookmarkWidget/components/AssemblySelector.tsx +0 -60
- package/src/GridBookmarkWidget/components/ClearBookmarks.tsx +0 -60
- package/src/GridBookmarkWidget/components/DeleteBookmark.tsx +0 -58
- package/src/GridBookmarkWidget/components/DownloadBookmarks.tsx +0 -80
- package/src/GridBookmarkWidget/components/GridBookmarkWidget.test.tsx +0 -161
- package/src/GridBookmarkWidget/components/GridBookmarkWidget.tsx +0 -136
- package/src/GridBookmarkWidget/components/ImportBookmarks.tsx +0 -131
- package/src/GridBookmarkWidget/index.ts +0 -19
- package/src/GridBookmarkWidget/model.ts +0 -66
- package/src/GridBookmarkWidget/types.ts +0 -5
- package/src/GridBookmarkWidget/utils.ts +0 -90
- package/src/__snapshots__/index.test.ts.snap +0 -3
- package/src/index.test.ts +0 -26
- package/src/index.ts +0 -133
package/src/index.test.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager'
|
|
2
|
-
import Config from '@jbrowse/plugin-config'
|
|
3
|
-
import { getSnapshot } from 'mobx-state-tree'
|
|
4
|
-
import ThisPlugin from '.'
|
|
5
|
-
|
|
6
|
-
let pluginManager: PluginManager
|
|
7
|
-
|
|
8
|
-
beforeAll(() => {
|
|
9
|
-
pluginManager = new PluginManager([new ThisPlugin(), new Config()])
|
|
10
|
-
pluginManager.createPluggableElements()
|
|
11
|
-
pluginManager.configure()
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
test("won't add if already added", () => {
|
|
15
|
-
expect(() => pluginManager.addPlugin(new ThisPlugin())).toThrow(
|
|
16
|
-
/JBrowse already configured, cannot add plugins/,
|
|
17
|
-
)
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
test('adds grid bookmark widget', () => {
|
|
21
|
-
const GridBookmarkWidget = pluginManager.getWidgetType('GridBookmarkWidget')
|
|
22
|
-
const config = GridBookmarkWidget.configSchema.create({
|
|
23
|
-
type: 'GridBookmarkWidget',
|
|
24
|
-
})
|
|
25
|
-
expect(getSnapshot(config)).toMatchSnapshot()
|
|
26
|
-
})
|
package/src/index.ts
DELETED
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import Plugin from '@jbrowse/core/Plugin'
|
|
2
|
-
import PluginManager from '@jbrowse/core/PluginManager'
|
|
3
|
-
import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view'
|
|
4
|
-
import { getSession, isSessionModelWithWidgets } from '@jbrowse/core/util'
|
|
5
|
-
import {
|
|
6
|
-
PluggableElementType,
|
|
7
|
-
ViewType,
|
|
8
|
-
} from '@jbrowse/core/pluggableElementTypes'
|
|
9
|
-
|
|
10
|
-
// icons
|
|
11
|
-
import BookmarkIcon from '@mui/icons-material/Bookmark'
|
|
12
|
-
import BookmarksIcon from '@mui/icons-material/Bookmarks'
|
|
13
|
-
|
|
14
|
-
import GridBookmarkWidgetF from './GridBookmarkWidget'
|
|
15
|
-
|
|
16
|
-
export default class extends Plugin {
|
|
17
|
-
name = 'GridBookmarkPlugin'
|
|
18
|
-
|
|
19
|
-
install(pluginManager: PluginManager) {
|
|
20
|
-
GridBookmarkWidgetF(pluginManager)
|
|
21
|
-
|
|
22
|
-
pluginManager.addToExtensionPoint(
|
|
23
|
-
'Core-extendPluggableElement',
|
|
24
|
-
(pluggableElement: PluggableElementType) => {
|
|
25
|
-
if (pluggableElement.name === 'LinearGenomeView') {
|
|
26
|
-
const { stateModel } = pluggableElement as ViewType
|
|
27
|
-
const newStateModel = stateModel.extend(
|
|
28
|
-
(self: LinearGenomeViewModel) => {
|
|
29
|
-
const superMenuItems = self.menuItems
|
|
30
|
-
const superRubberBandMenuItems = self.rubberBandMenuItems
|
|
31
|
-
return {
|
|
32
|
-
actions: {
|
|
33
|
-
activateBookmarkWidget() {
|
|
34
|
-
const session = getSession(self)
|
|
35
|
-
if (isSessionModelWithWidgets(session)) {
|
|
36
|
-
let bookmarkWidget = session.widgets.get('GridBookmark')
|
|
37
|
-
if (!bookmarkWidget) {
|
|
38
|
-
bookmarkWidget = session.addWidget(
|
|
39
|
-
'GridBookmarkWidget',
|
|
40
|
-
'GridBookmark',
|
|
41
|
-
{ view: self },
|
|
42
|
-
)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
session.showWidget(bookmarkWidget)
|
|
46
|
-
return bookmarkWidget
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
throw new Error('Could not open bookmark widget')
|
|
50
|
-
},
|
|
51
|
-
|
|
52
|
-
bookmarkCurrentRegion() {
|
|
53
|
-
const selectedRegions = self.getSelectedRegions(
|
|
54
|
-
self.leftOffset,
|
|
55
|
-
self.rightOffset,
|
|
56
|
-
)
|
|
57
|
-
const firstRegion = selectedRegions[0]
|
|
58
|
-
const session = getSession(self)
|
|
59
|
-
if (isSessionModelWithWidgets(session)) {
|
|
60
|
-
const { widgets } = session
|
|
61
|
-
let bookmarkWidget = widgets.get('GridBookmark')
|
|
62
|
-
if (!bookmarkWidget) {
|
|
63
|
-
this.activateBookmarkWidget()
|
|
64
|
-
bookmarkWidget = widgets.get('GridBookmark')
|
|
65
|
-
}
|
|
66
|
-
// @ts-expect-error
|
|
67
|
-
bookmarkWidget.addBookmark(firstRegion)
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
views: {
|
|
72
|
-
menuItems() {
|
|
73
|
-
return [
|
|
74
|
-
...superMenuItems(),
|
|
75
|
-
{ type: 'divider' },
|
|
76
|
-
{
|
|
77
|
-
label: 'Open bookmark widget',
|
|
78
|
-
icon: BookmarksIcon,
|
|
79
|
-
// @ts-expect-error
|
|
80
|
-
onClick: self.activateBookmarkWidget,
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
label: 'Bookmark current region',
|
|
84
|
-
icon: BookmarkIcon,
|
|
85
|
-
// @ts-expect-error
|
|
86
|
-
onClick: self.bookmarkCurrentRegion,
|
|
87
|
-
},
|
|
88
|
-
]
|
|
89
|
-
},
|
|
90
|
-
|
|
91
|
-
rubberBandMenuItems() {
|
|
92
|
-
return [
|
|
93
|
-
...superRubberBandMenuItems(),
|
|
94
|
-
{
|
|
95
|
-
label: 'Bookmark region',
|
|
96
|
-
icon: BookmarkIcon,
|
|
97
|
-
onClick: () => {
|
|
98
|
-
const { leftOffset, rightOffset } = self
|
|
99
|
-
const selectedRegions = self.getSelectedRegions(
|
|
100
|
-
leftOffset,
|
|
101
|
-
rightOffset,
|
|
102
|
-
)
|
|
103
|
-
const firstRegion = selectedRegions[0]
|
|
104
|
-
const session = getSession(self)
|
|
105
|
-
if (isSessionModelWithWidgets(session)) {
|
|
106
|
-
const { widgets } = session
|
|
107
|
-
let bookmarkWidget = widgets.get('GridBookmark')
|
|
108
|
-
if (!bookmarkWidget) {
|
|
109
|
-
// @ts-expect-error
|
|
110
|
-
self.activateBookmarkWidget()
|
|
111
|
-
bookmarkWidget = widgets.get('GridBookmark')
|
|
112
|
-
}
|
|
113
|
-
// @ts-expect-error
|
|
114
|
-
bookmarkWidget.addBookmark(firstRegion)
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
},
|
|
118
|
-
]
|
|
119
|
-
},
|
|
120
|
-
},
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
)
|
|
124
|
-
|
|
125
|
-
;(pluggableElement as ViewType).stateModel = newStateModel
|
|
126
|
-
}
|
|
127
|
-
return pluggableElement
|
|
128
|
-
},
|
|
129
|
-
)
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
configure(_pluginManager: PluginManager) {}
|
|
133
|
-
}
|