@jbrowse/plugin-grid-bookmark 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 (75) hide show
  1. package/dist/GridBookmarkWidget/components/AssemblySelector.d.ts +2 -3
  2. package/dist/GridBookmarkWidget/components/AssemblySelector.js +10 -25
  3. package/dist/GridBookmarkWidget/components/BookmarkGrid.d.ts +2 -3
  4. package/dist/GridBookmarkWidget/components/BookmarkGrid.js +52 -82
  5. package/dist/GridBookmarkWidget/components/GridBookmarkWidget.d.ts +2 -3
  6. package/dist/GridBookmarkWidget/components/GridBookmarkWidget.js +90 -93
  7. package/dist/GridBookmarkWidget/components/Highlight/Highlight.d.ts +2 -3
  8. package/dist/GridBookmarkWidget/components/Highlight/Highlight.js +34 -58
  9. package/dist/GridBookmarkWidget/components/Highlight/OverviewHighlight.d.ts +3 -4
  10. package/dist/GridBookmarkWidget/components/Highlight/OverviewHighlight.js +8 -31
  11. package/dist/GridBookmarkWidget/components/Highlight/index.d.ts +1 -1
  12. package/dist/GridBookmarkWidget/components/Highlight/index.js +5 -10
  13. package/dist/GridBookmarkWidget/components/dialogs/DeleteBookmarksDialog.d.ts +2 -3
  14. package/dist/GridBookmarkWidget/components/dialogs/DeleteBookmarksDialog.js +12 -23
  15. package/dist/GridBookmarkWidget/components/dialogs/EditHighlightColorDialog.d.ts +2 -3
  16. package/dist/GridBookmarkWidget/components/dialogs/EditHighlightColorDialog.js +12 -41
  17. package/dist/GridBookmarkWidget/components/dialogs/ExportBookmarksDialog.d.ts +3 -4
  18. package/dist/GridBookmarkWidget/components/dialogs/ExportBookmarksDialog.js +14 -47
  19. package/dist/GridBookmarkWidget/components/dialogs/HighlightSettingsDialog.d.ts +2 -3
  20. package/dist/GridBookmarkWidget/components/dialogs/HighlightSettingsDialog.js +10 -23
  21. package/dist/GridBookmarkWidget/components/dialogs/ImportBookmarksDialog.d.ts +2 -3
  22. package/dist/GridBookmarkWidget/components/dialogs/ImportBookmarksDialog.js +39 -81
  23. package/dist/GridBookmarkWidget/components/dialogs/ShareBookmarksDialog.d.ts +2 -3
  24. package/dist/GridBookmarkWidget/components/dialogs/ShareBookmarksDialog.js +19 -53
  25. package/dist/GridBookmarkWidget/index.d.ts +1 -1
  26. package/dist/GridBookmarkWidget/index.js +18 -9
  27. package/dist/GridBookmarkWidget/model.d.ts +10 -86
  28. package/dist/GridBookmarkWidget/model.js +18 -94
  29. package/dist/GridBookmarkWidget/sessionSharing.d.ts +1 -1
  30. package/dist/GridBookmarkWidget/sessionSharing.js +20 -16
  31. package/dist/GridBookmarkWidget/types.d.ts +1 -1
  32. package/dist/GridBookmarkWidget/utils.d.ts +2 -16
  33. package/dist/GridBookmarkWidget/utils.js +19 -30
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +10 -29
  36. package/esm/GridBookmarkWidget/components/AssemblySelector.d.ts +2 -3
  37. package/esm/GridBookmarkWidget/components/AssemblySelector.js +10 -22
  38. package/esm/GridBookmarkWidget/components/BookmarkGrid.d.ts +2 -3
  39. package/esm/GridBookmarkWidget/components/BookmarkGrid.js +52 -59
  40. package/esm/GridBookmarkWidget/components/GridBookmarkWidget.d.ts +2 -3
  41. package/esm/GridBookmarkWidget/components/GridBookmarkWidget.js +73 -86
  42. package/esm/GridBookmarkWidget/components/Highlight/Highlight.d.ts +2 -3
  43. package/esm/GridBookmarkWidget/components/Highlight/Highlight.js +34 -35
  44. package/esm/GridBookmarkWidget/components/Highlight/OverviewHighlight.d.ts +3 -4
  45. package/esm/GridBookmarkWidget/components/Highlight/OverviewHighlight.js +8 -8
  46. package/esm/GridBookmarkWidget/components/Highlight/index.d.ts +1 -1
  47. package/esm/GridBookmarkWidget/components/Highlight/index.js +5 -10
  48. package/esm/GridBookmarkWidget/components/dialogs/DeleteBookmarksDialog.d.ts +2 -3
  49. package/esm/GridBookmarkWidget/components/dialogs/DeleteBookmarksDialog.js +12 -20
  50. package/esm/GridBookmarkWidget/components/dialogs/EditHighlightColorDialog.d.ts +2 -3
  51. package/esm/GridBookmarkWidget/components/dialogs/EditHighlightColorDialog.js +12 -18
  52. package/esm/GridBookmarkWidget/components/dialogs/ExportBookmarksDialog.d.ts +3 -4
  53. package/esm/GridBookmarkWidget/components/dialogs/ExportBookmarksDialog.js +14 -24
  54. package/esm/GridBookmarkWidget/components/dialogs/HighlightSettingsDialog.d.ts +2 -3
  55. package/esm/GridBookmarkWidget/components/dialogs/HighlightSettingsDialog.js +10 -20
  56. package/esm/GridBookmarkWidget/components/dialogs/ImportBookmarksDialog.d.ts +2 -3
  57. package/esm/GridBookmarkWidget/components/dialogs/ImportBookmarksDialog.js +40 -59
  58. package/esm/GridBookmarkWidget/components/dialogs/ShareBookmarksDialog.d.ts +2 -3
  59. package/esm/GridBookmarkWidget/components/dialogs/ShareBookmarksDialog.js +19 -30
  60. package/esm/GridBookmarkWidget/index.d.ts +1 -1
  61. package/esm/GridBookmarkWidget/index.js +1 -2
  62. package/esm/GridBookmarkWidget/model.d.ts +10 -86
  63. package/esm/GridBookmarkWidget/model.js +18 -94
  64. package/esm/GridBookmarkWidget/sessionSharing.d.ts +1 -1
  65. package/esm/GridBookmarkWidget/sessionSharing.js +3 -9
  66. package/esm/GridBookmarkWidget/types.d.ts +1 -1
  67. package/esm/GridBookmarkWidget/utils.d.ts +2 -16
  68. package/esm/GridBookmarkWidget/utils.js +2 -23
  69. package/esm/index.d.ts +1 -1
  70. package/esm/index.js +10 -29
  71. package/package.json +2 -2
  72. package/dist/GridBookmarkWidget/components/dialogs/EditBookmarkLabelDialog.d.ts +0 -8
  73. package/dist/GridBookmarkWidget/components/dialogs/EditBookmarkLabelDialog.js +0 -54
  74. package/esm/GridBookmarkWidget/components/dialogs/EditBookmarkLabelDialog.d.ts +0 -8
  75. package/esm/GridBookmarkWidget/components/dialogs/EditBookmarkLabelDialog.js +0 -29
package/esm/index.js CHANGED
@@ -1,6 +1,5 @@
1
1
  import Plugin from '@jbrowse/core/Plugin';
2
2
  import { getSession, isAbstractMenuManager, isSessionModelWithWidgets, } from '@jbrowse/core/util';
3
- // icons
4
3
  import BookmarkIcon from '@mui/icons-material/Bookmark';
5
4
  import BookmarksIcon from '@mui/icons-material/Bookmarks';
6
5
  import HighlightIcon from '@mui/icons-material/Highlight';
@@ -19,31 +18,15 @@ export default class GridBookmarkPlugin extends Plugin {
19
18
  const lgv = stateModel;
20
19
  const newStateModel = lgv
21
20
  .props({
22
- /**
23
- * #property
24
- * show the bookmark highlights on this track
25
- */
26
- showBookmarkHighlights: true,
27
- /**
28
- * #property
29
- * show the bookmark labels on this track
30
- */
31
- showBookmarkLabels: true,
21
+ bookmarkHighlightsVisible: true,
22
+ bookmarkLabelsVisible: true,
32
23
  })
33
24
  .actions(self => ({
34
- /**
35
- * #action
36
- */
37
- toggleShowBookmarkHighlights(toggle) {
38
- self.showBookmarkHighlights =
39
- toggle !== undefined ? toggle : !self.showBookmarkHighlights;
25
+ setBookmarkHighlightsVisible(arg) {
26
+ self.bookmarkHighlightsVisible = arg;
40
27
  },
41
- /**
42
- * #action
43
- */
44
- toggleShowBookmarkLabels(toggle) {
45
- self.showBookmarkLabels =
46
- toggle !== undefined ? toggle : !self.showBookmarkLabels;
28
+ setBookmarkLabelsVisible(arg) {
29
+ self.bookmarkLabelsVisible = arg;
47
30
  },
48
31
  activateBookmarkWidget() {
49
32
  const session = getSession(self);
@@ -110,18 +93,18 @@ export default class GridBookmarkPlugin extends Plugin {
110
93
  label: 'Toggle bookmark highlights',
111
94
  icon: HighlightIcon,
112
95
  type: 'checkbox',
113
- checked: self.showBookmarkHighlights,
96
+ checked: self.bookmarkHighlightsVisible,
114
97
  onClick: () => {
115
- self.toggleShowBookmarkHighlights();
98
+ self.setBookmarkHighlightsVisible(!self.bookmarkHighlightsVisible);
116
99
  },
117
100
  },
118
101
  {
119
102
  label: 'Toggle bookmark labels',
120
103
  icon: LabelIcon,
121
104
  type: 'checkbox',
122
- checked: self.showBookmarkLabels,
105
+ checked: self.bookmarkLabelsVisible,
123
106
  onClick: () => {
124
- self.toggleShowBookmarkLabels();
107
+ self.setBookmarkLabelsVisible(!self.bookmarkLabelsVisible);
125
108
  },
126
109
  },
127
110
  ],
@@ -154,14 +137,12 @@ export default class GridBookmarkPlugin extends Plugin {
154
137
  afterCreate() {
155
138
  document.addEventListener('keydown', e => {
156
139
  const activationSequence = (e.ctrlKey || e.metaKey) && e.shiftKey;
157
- // ctrl+shift+d or cmd+shift+d
158
140
  if (activationSequence && e.code === 'KeyD') {
159
141
  e.preventDefault();
160
142
  self.activateBookmarkWidget();
161
143
  self.bookmarkCurrentRegion();
162
144
  getSession(self).notify('Bookmark created.', 'success');
163
145
  }
164
- // ctrl+shift+m or cmd+shift+m
165
146
  if (activationSequence && e.code === 'KeyM') {
166
147
  e.preventDefault();
167
148
  self.navigateNewestBookmark();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-grid-bookmark",
3
- "version": "2.17.0",
3
+ "version": "3.0.0",
4
4
  "description": "JBrowse 2 grid bookmark widget",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -59,5 +59,5 @@
59
59
  "distModule": "esm/index.js",
60
60
  "srcModule": "src/index.ts",
61
61
  "module": "esm/index.js",
62
- "gitHead": "eed30b5e671f8f7823652d7cecc51aa89226de46"
62
+ "gitHead": "2c6897f1fa732b1db5b094d1dca197e333e95319"
63
63
  }
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { GridBookmarkModel, IExtendedLabeledRegionModel } from '../../model';
3
- declare const EditBookmarkLabelDialog: ({ model, onClose, dialogRow, }: {
4
- model: GridBookmarkModel;
5
- dialogRow: IExtendedLabeledRegionModel;
6
- onClose: () => void;
7
- }) => React.JSX.Element;
8
- export default EditBookmarkLabelDialog;
@@ -1,54 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const react_1 = __importStar(require("react"));
27
- const material_1 = require("@mui/material");
28
- const ui_1 = require("@jbrowse/core/ui");
29
- const mobx_react_1 = require("mobx-react");
30
- const util_1 = require("@jbrowse/core/util");
31
- const EditBookmarkLabelDialog = (0, mobx_react_1.observer)(function ({ model, onClose, dialogRow, }) {
32
- const [newLabel, setNewLabel] = (0, react_1.useState)(dialogRow.label || '');
33
- return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: onClose, title: "Edit bookmark label" },
34
- react_1.default.createElement(material_1.DialogContent, null,
35
- react_1.default.createElement(material_1.Alert, null,
36
- "Editing label for bookmark",
37
- ' ',
38
- react_1.default.createElement("strong", null, (0, util_1.assembleLocString)(dialogRow.correspondingObj)),
39
- ":"),
40
- react_1.default.createElement(material_1.TextField, { fullWidth: true, variant: "outlined", value: newLabel, onChange: e => {
41
- setNewLabel(e.target.value);
42
- }, autoFocus: true, slotProps: {
43
- htmlInput: { 'data-testid': 'edit-bookmark-label-field' },
44
- } })),
45
- react_1.default.createElement(material_1.DialogActions, null,
46
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", onClick: () => {
47
- if (newLabel) {
48
- model.updateBookmarkLabel(dialogRow, newLabel);
49
- }
50
- setNewLabel('');
51
- onClose();
52
- } }, "Confirm"))));
53
- });
54
- exports.default = EditBookmarkLabelDialog;
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { GridBookmarkModel, IExtendedLabeledRegionModel } from '../../model';
3
- declare const EditBookmarkLabelDialog: ({ model, onClose, dialogRow, }: {
4
- model: GridBookmarkModel;
5
- dialogRow: IExtendedLabeledRegionModel;
6
- onClose: () => void;
7
- }) => React.JSX.Element;
8
- export default EditBookmarkLabelDialog;
@@ -1,29 +0,0 @@
1
- import React, { useState } from 'react';
2
- import { Alert, DialogContent, DialogActions, Button, TextField, } from '@mui/material';
3
- import { Dialog } from '@jbrowse/core/ui';
4
- import { observer } from 'mobx-react';
5
- import { assembleLocString } from '@jbrowse/core/util';
6
- const EditBookmarkLabelDialog = observer(function ({ model, onClose, dialogRow, }) {
7
- const [newLabel, setNewLabel] = useState(dialogRow.label || '');
8
- return (React.createElement(Dialog, { open: true, onClose: onClose, title: "Edit bookmark label" },
9
- React.createElement(DialogContent, null,
10
- React.createElement(Alert, null,
11
- "Editing label for bookmark",
12
- ' ',
13
- React.createElement("strong", null, assembleLocString(dialogRow.correspondingObj)),
14
- ":"),
15
- React.createElement(TextField, { fullWidth: true, variant: "outlined", value: newLabel, onChange: e => {
16
- setNewLabel(e.target.value);
17
- }, autoFocus: true, slotProps: {
18
- htmlInput: { 'data-testid': 'edit-bookmark-label-field' },
19
- } })),
20
- React.createElement(DialogActions, null,
21
- React.createElement(Button, { variant: "contained", color: "primary", onClick: () => {
22
- if (newLabel) {
23
- model.updateBookmarkLabel(dialogRow, newLabel);
24
- }
25
- setNewLabel('');
26
- onClose();
27
- } }, "Confirm"))));
28
- });
29
- export default EditBookmarkLabelDialog;