@jbrowse/plugin-spreadsheet-view 2.18.0 → 3.0.1

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 (43) hide show
  1. package/dist/SpreadsheetView/ImportWizard.js +17 -7
  2. package/dist/SpreadsheetView/SpreadsheetModel.d.ts +4 -5
  3. package/dist/SpreadsheetView/SpreadsheetModel.js +15 -29
  4. package/dist/SpreadsheetView/SpreadsheetViewModel.d.ts +8 -8
  5. package/dist/SpreadsheetView/SpreadsheetViewModel.js +9 -2
  6. package/dist/SpreadsheetView/components/FeatureMenu.d.ts +1 -2
  7. package/dist/SpreadsheetView/components/FeatureMenu.js +21 -11
  8. package/dist/SpreadsheetView/components/ImportWizard.d.ts +1 -2
  9. package/dist/SpreadsheetView/components/ImportWizard.js +16 -56
  10. package/dist/SpreadsheetView/components/LocationCell.d.ts +1 -2
  11. package/dist/SpreadsheetView/components/LocationCell.js +16 -18
  12. package/dist/SpreadsheetView/components/NumberEditor.d.ts +1 -2
  13. package/dist/SpreadsheetView/components/NumberEditor.js +3 -25
  14. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +1 -2
  15. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.js +3 -7
  16. package/dist/SpreadsheetView/components/SpreadsheetView.d.ts +1 -2
  17. package/dist/SpreadsheetView/components/SpreadsheetView.js +21 -38
  18. package/dist/SpreadsheetView/components/SpreadsheetViewActual.d.ts +5 -0
  19. package/dist/SpreadsheetView/components/SpreadsheetViewActual.js +34 -0
  20. package/dist/SpreadsheetView/components/TrackSelector.d.ts +1 -2
  21. package/dist/SpreadsheetView/components/TrackSelector.js +5 -27
  22. package/dist/SpreadsheetView/index.js +17 -7
  23. package/esm/SpreadsheetView/SpreadsheetModel.d.ts +4 -5
  24. package/esm/SpreadsheetView/SpreadsheetModel.js +16 -30
  25. package/esm/SpreadsheetView/SpreadsheetViewModel.d.ts +8 -8
  26. package/esm/SpreadsheetView/SpreadsheetViewModel.js +9 -2
  27. package/esm/SpreadsheetView/components/FeatureMenu.d.ts +1 -2
  28. package/esm/SpreadsheetView/components/FeatureMenu.js +4 -4
  29. package/esm/SpreadsheetView/components/ImportWizard.d.ts +1 -2
  30. package/esm/SpreadsheetView/components/ImportWizard.js +16 -33
  31. package/esm/SpreadsheetView/components/LocationCell.d.ts +1 -2
  32. package/esm/SpreadsheetView/components/LocationCell.js +16 -18
  33. package/esm/SpreadsheetView/components/NumberEditor.d.ts +1 -2
  34. package/esm/SpreadsheetView/components/NumberEditor.js +3 -2
  35. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +1 -2
  36. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.js +3 -4
  37. package/esm/SpreadsheetView/components/SpreadsheetView.d.ts +1 -2
  38. package/esm/SpreadsheetView/components/SpreadsheetView.js +4 -31
  39. package/esm/SpreadsheetView/components/SpreadsheetViewActual.d.ts +5 -0
  40. package/esm/SpreadsheetView/components/SpreadsheetViewActual.js +29 -0
  41. package/esm/SpreadsheetView/components/TrackSelector.d.ts +1 -2
  42. package/esm/SpreadsheetView/components/TrackSelector.js +5 -4
  43. package/package.json +11 -11
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import type { SpreadsheetModel } from '../SpreadsheetModel';
3
2
  declare const SpreadsheetDataGrid: ({ model, }: {
4
3
  model: SpreadsheetModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element | null;
6
5
  export default SpreadsheetDataGrid;
@@ -1,11 +1,10 @@
1
- import React from 'react';
2
- import { LoadingEllipses } from '@jbrowse/core/ui';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
3
2
  import { DataGrid, GridToolbar, useGridApiRef } from '@mui/x-data-grid';
4
3
  import { observer } from 'mobx-react';
5
4
  const SpreadsheetDataGrid = observer(function ({ model, }) {
6
5
  const { rows, dataGridColumns, visibleColumns } = model;
7
6
  const apiRef = useGridApiRef();
8
- return rows && dataGridColumns ? (React.createElement(DataGrid, { apiRef: apiRef, checkboxSelection: true, disableRowSelectionOnClick: true, columnHeaderHeight: 35, columnVisibilityModel: visibleColumns, onFilterModelChange: () => {
7
+ return rows && dataGridColumns ? (_jsx(DataGrid, { apiRef: apiRef, checkboxSelection: true, disableRowSelectionOnClick: true, columnHeaderHeight: 35, columnVisibilityModel: visibleColumns, onFilterModelChange: () => {
9
8
  setTimeout(() => {
10
9
  model.setVisibleRows(apiRef.current.state.visibleRowsLookup);
11
10
  });
@@ -17,6 +16,6 @@ const SpreadsheetDataGrid = observer(function ({ model, }) {
17
16
  toolbar: {
18
17
  showQuickFilter: true,
19
18
  },
20
- }, rows: rows, columns: dataGridColumns })) : (React.createElement(LoadingEllipses, { variant: "h6" }));
19
+ }, rows: rows, columns: dataGridColumns })) : null;
21
20
  });
22
21
  export default SpreadsheetDataGrid;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import type { SpreadsheetViewModel } from '../SpreadsheetViewModel';
3
2
  declare const SpreadsheetContainer: ({ model, }: {
4
3
  model: SpreadsheetViewModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
6
5
  export default SpreadsheetContainer;
@@ -1,37 +1,10 @@
1
- import React, { Suspense, lazy, useState } from 'react';
2
- import { ResizeHandle } from '@jbrowse/core/ui';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Suspense, lazy } from 'react';
3
3
  import { observer } from 'mobx-react';
4
- import { makeStyles } from 'tss-react/mui';
5
- import SpreadsheetDataGrid from './SpreadsheetDataGrid';
4
+ import SpreadsheetViewActual from './SpreadsheetViewActual';
6
5
  const ImportWizard = lazy(() => import('./ImportWizard'));
7
- const useStyles = makeStyles()(theme => ({
8
- contentArea: {
9
- overflow: 'auto',
10
- position: 'relative',
11
- marginBottom: theme.spacing(1),
12
- background: theme.palette.background.paper,
13
- },
14
- resizeHandle: {
15
- height: 5,
16
- boxSizing: 'border-box',
17
- background: theme.palette.action.disabled,
18
- borderTop: '1px solid #fafafa',
19
- },
20
- }));
21
- const SpreadsheetView = observer(function ({ model, }) {
22
- const [initialHeight, setInitialHeight] = useState(0);
23
- const { classes } = useStyles();
24
- const { spreadsheet, hideVerticalResizeHandle, height } = model;
25
- return spreadsheet ? (React.createElement(React.Fragment, null,
26
- React.createElement("div", { style: { height }, className: classes.contentArea },
27
- React.createElement(SpreadsheetDataGrid, { model: spreadsheet })),
28
- hideVerticalResizeHandle ? null : (React.createElement(ResizeHandle, { onMouseDown: () => {
29
- setInitialHeight(height);
30
- }, onDrag: (_, dist) => model.setHeight(initialHeight - dist), className: classes.resizeHandle })))) : (React.createElement("div", null, "Unknown"));
31
- });
32
6
  const SpreadsheetContainer = observer(function ({ model, }) {
33
7
  var _a;
34
- return !((_a = model.spreadsheet) === null || _a === void 0 ? void 0 : _a.initialized) ? (React.createElement(Suspense, { fallback: null },
35
- React.createElement(ImportWizard, { model: model.importWizard }))) : (React.createElement(SpreadsheetView, { model: model }));
8
+ return !((_a = model.spreadsheet) === null || _a === void 0 ? void 0 : _a.initialized) ? (_jsx(Suspense, { fallback: null, children: _jsx(ImportWizard, { model: model.importWizard }) })) : (_jsx(SpreadsheetViewActual, { model: model }));
36
9
  });
37
10
  export default SpreadsheetContainer;
@@ -0,0 +1,5 @@
1
+ import type { SpreadsheetViewModel } from '../SpreadsheetViewModel';
2
+ declare const SpreadsheetViewActual: ({ model, }: {
3
+ model: SpreadsheetViewModel;
4
+ }) => import("react/jsx-runtime").JSX.Element;
5
+ export default SpreadsheetViewActual;
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { ResizeHandle } from '@jbrowse/core/ui';
4
+ import { observer } from 'mobx-react';
5
+ import { makeStyles } from 'tss-react/mui';
6
+ import SpreadsheetDataGrid from './SpreadsheetDataGrid';
7
+ const useStyles = makeStyles()(theme => ({
8
+ contentArea: {
9
+ overflow: 'auto',
10
+ position: 'relative',
11
+ marginBottom: theme.spacing(1),
12
+ background: theme.palette.background.paper,
13
+ },
14
+ resizeHandle: {
15
+ height: 5,
16
+ boxSizing: 'border-box',
17
+ background: theme.palette.action.disabled,
18
+ borderTop: '1px solid #fafafa',
19
+ },
20
+ }));
21
+ const SpreadsheetViewActual = observer(function ({ model, }) {
22
+ const [initialHeight, setInitialHeight] = useState(0);
23
+ const { classes } = useStyles();
24
+ const { spreadsheet, hideVerticalResizeHandle, height } = model;
25
+ return spreadsheet ? (_jsxs(_Fragment, { children: [_jsx("div", { style: { height }, className: classes.contentArea, children: _jsx(SpreadsheetDataGrid, { model: spreadsheet }) }), hideVerticalResizeHandle ? null : (_jsx(ResizeHandle, { onMouseDown: () => {
26
+ setInitialHeight(height);
27
+ }, onDrag: (_, dist) => model.setHeight(initialHeight - dist), className: classes.resizeHandle }))] })) : (_jsx("div", { children: "Unknown" }));
28
+ });
29
+ export default SpreadsheetViewActual;
@@ -1,7 +1,6 @@
1
- import React from 'react';
2
1
  import type { ImportWizardModel } from '../ImportWizard';
3
2
  declare const TrackSelector: ({ model, selectedAssembly, }: {
4
3
  model: ImportWizardModel;
5
4
  selectedAssembly: string;
6
- }) => React.JSX.Element;
5
+ }) => import("react/jsx-runtime").JSX.Element;
7
6
  export default TrackSelector;
@@ -1,4 +1,5 @@
1
- import React, { useEffect, useState } from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
2
3
  import { ErrorMessage } from '@jbrowse/core/ui';
3
4
  import { coarseStripHTML } from '@jbrowse/core/util';
4
5
  import { MenuItem, TextField } from '@mui/material';
@@ -17,8 +18,8 @@ const TrackSelector = observer(function ({ model, selectedAssembly, }) {
17
18
  model.setFileType(entry.type);
18
19
  }
19
20
  }, [model, selectedTrack, filteredTracks]);
20
- return (React.createElement("div", null, (filteredTracks === null || filteredTracks === void 0 ? void 0 : filteredTracks.length) ? (React.createElement(TextField, { select: true, label: "Tracks", variant: "outlined", value: selectedTrack, onChange: event => {
21
- setSelectedTrack(event.target.value);
22
- } }, filteredTracks.map(({ track, label }) => (React.createElement(MenuItem, { key: track.trackId, value: track.trackId }, coarseStripHTML(label)))))) : (React.createElement(ErrorMessage, { error: `No tracks found for ${selectedAssembly}` }))));
21
+ return (_jsx("div", { children: (filteredTracks === null || filteredTracks === void 0 ? void 0 : filteredTracks.length) ? (_jsx(TextField, { select: true, label: "Tracks", variant: "outlined", value: selectedTrack, onChange: event => {
22
+ setSelectedTrack(event.target.value);
23
+ }, children: filteredTracks.map(({ track, label }) => (_jsx(MenuItem, { value: track.trackId, children: coarseStripHTML(label) }, track.trackId))) })) : (_jsx(ErrorMessage, { error: `No tracks found for ${selectedAssembly}` })) }));
23
24
  });
24
25
  export default TrackSelector;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-spreadsheet-view",
3
- "version": "2.18.0",
3
+ "version": "3.0.1",
4
4
  "description": "JBrowse 2 spreadsheet view",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -36,29 +36,29 @@
36
36
  "clean": "rimraf dist esm *.tsbuildinfo"
37
37
  },
38
38
  "dependencies": {
39
- "@gmod/bgzf-filehandle": "^1.4.3",
39
+ "@gmod/bgzf-filehandle": "^2.0.1",
40
40
  "@gmod/vcf": "^6.0.0",
41
- "@jbrowse/plugin-variants": "^2.18.0",
42
- "@mui/icons-material": "^6.0.0"
43
- },
44
- "peerDependencies": {
45
- "@jbrowse/core": "^2.0.0",
46
- "@jbrowse/plugin-linear-genome-view": "^2.0.0",
41
+ "@jbrowse/core": "^3.0.1",
42
+ "@jbrowse/plugin-linear-genome-view": "^3.0.1",
43
+ "@jbrowse/plugin-variants": "^3.0.1",
44
+ "@mui/icons-material": "^6.0.0",
47
45
  "@mui/material": "^6.0.0",
48
46
  "@mui/x-data-grid": "^7.0.0",
49
47
  "mobx": "^6.0.0",
50
48
  "mobx-react": "^9.0.0",
51
49
  "mobx-state-tree": "^5.0.0",
52
- "react": ">=16.8.0",
53
- "react-dom": ">=16.8.0",
54
50
  "rxjs": "^7.0.0",
55
51
  "tss-react": "^4.0.0"
56
52
  },
53
+ "peerDependencies": {
54
+ "react": ">=18.0.0",
55
+ "react-dom": ">=18.0.0"
56
+ },
57
57
  "distModule": "esm/index.js",
58
58
  "srcModule": "src/index.ts",
59
59
  "module": "esm/index.js",
60
60
  "publishConfig": {
61
61
  "access": "public"
62
62
  },
63
- "gitHead": "c344ea60099cb7e460b77f15808946b24a7eee74"
63
+ "gitHead": "aa2f1d1a89d2361c7fd1a93fe29506fa4554f5cc"
64
64
  }