@jbrowse/plugin-spreadsheet-view 3.7.0 → 4.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 (84) hide show
  1. package/esm/LaunchSpreadsheetView/index.js +6 -13
  2. package/esm/SpreadsheetView/ImportWizard.d.ts +11 -15
  3. package/esm/SpreadsheetView/ImportWizard.js +44 -46
  4. package/esm/SpreadsheetView/SpreadsheetModel.d.ts +13 -16
  5. package/esm/SpreadsheetView/SpreadsheetModel.js +14 -22
  6. package/esm/SpreadsheetView/SpreadsheetViewModel.d.ts +68 -171
  7. package/esm/SpreadsheetView/SpreadsheetViewModel.js +54 -16
  8. package/esm/SpreadsheetView/components/BreakpointSplitViewChoiceDialog.d.ts +1 -0
  9. package/esm/SpreadsheetView/components/BreakpointSplitViewChoiceDialog.js +1 -0
  10. package/esm/SpreadsheetView/components/FeatureMenu.js +6 -29
  11. package/esm/SpreadsheetView/components/ImportWizard.d.ts +1 -1
  12. package/esm/SpreadsheetView/components/ImportWizard.js +5 -6
  13. package/esm/SpreadsheetView/components/LocationCell.js +3 -3
  14. package/esm/SpreadsheetView/components/NumberEditor.d.ts +1 -1
  15. package/esm/SpreadsheetView/components/NumberEditor.js +2 -2
  16. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +1 -1
  17. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.js +3 -2
  18. package/esm/SpreadsheetView/components/SpreadsheetView.d.ts +1 -1
  19. package/esm/SpreadsheetView/components/SpreadsheetView.js +4 -5
  20. package/esm/SpreadsheetView/components/SpreadsheetViewActual.d.ts +1 -1
  21. package/esm/SpreadsheetView/components/SpreadsheetViewActual.js +3 -3
  22. package/esm/SpreadsheetView/components/TrackSelector.d.ts +1 -1
  23. package/esm/SpreadsheetView/components/TrackSelector.js +4 -5
  24. package/esm/SpreadsheetView/importAdapters/BedImport.js +4 -5
  25. package/esm/SpreadsheetView/importAdapters/BedpeImport.js +3 -4
  26. package/esm/SpreadsheetView/importAdapters/STARFusionImport.js +2 -2
  27. package/esm/SpreadsheetView/importAdapters/VcfImport.js +6 -4
  28. package/esm/SpreadsheetView/index.d.ts +1 -1
  29. package/esm/SpreadsheetView/index.js +2 -2
  30. package/esm/index.d.ts +1 -1
  31. package/esm/index.js +4 -6
  32. package/package.json +29 -36
  33. package/dist/LaunchSpreadsheetView/index.d.ts +0 -2
  34. package/dist/LaunchSpreadsheetView/index.js +0 -21
  35. package/dist/SpreadsheetView/ImportWizard.d.ts +0 -51
  36. package/dist/SpreadsheetView/ImportWizard.js +0 -250
  37. package/dist/SpreadsheetView/SpreadsheetModel.d.ts +0 -78
  38. package/dist/SpreadsheetView/SpreadsheetModel.js +0 -119
  39. package/dist/SpreadsheetView/SpreadsheetViewModel.d.ts +0 -299
  40. package/dist/SpreadsheetView/SpreadsheetViewModel.js +0 -101
  41. package/dist/SpreadsheetView/components/BreakendMultiLevelOptionDialog.d.ts +0 -1
  42. package/dist/SpreadsheetView/components/BreakendMultiLevelOptionDialog.js +0 -5
  43. package/dist/SpreadsheetView/components/BreakendSingleLevelOptionDialog.d.ts +0 -1
  44. package/dist/SpreadsheetView/components/BreakendSingleLevelOptionDialog.js +0 -5
  45. package/dist/SpreadsheetView/components/FeatureMenu.d.ts +0 -7
  46. package/dist/SpreadsheetView/components/FeatureMenu.js +0 -105
  47. package/dist/SpreadsheetView/components/ImportWizard.d.ts +0 -5
  48. package/dist/SpreadsheetView/components/ImportWizard.js +0 -47
  49. package/dist/SpreadsheetView/components/LocationCell.d.ts +0 -7
  50. package/dist/SpreadsheetView/components/LocationCell.js +0 -29
  51. package/dist/SpreadsheetView/components/NumberEditor.d.ts +0 -8
  52. package/dist/SpreadsheetView/components/NumberEditor.js +0 -32
  53. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +0 -5
  54. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.js +0 -23
  55. package/dist/SpreadsheetView/components/SpreadsheetView.d.ts +0 -5
  56. package/dist/SpreadsheetView/components/SpreadsheetView.js +0 -48
  57. package/dist/SpreadsheetView/components/SpreadsheetViewActual.d.ts +0 -5
  58. package/dist/SpreadsheetView/components/SpreadsheetViewActual.js +0 -34
  59. package/dist/SpreadsheetView/components/TrackSelector.d.ts +0 -6
  60. package/dist/SpreadsheetView/components/TrackSelector.js +0 -27
  61. package/dist/SpreadsheetView/components/util.d.ts +0 -1
  62. package/dist/SpreadsheetView/components/util.js +0 -17
  63. package/dist/SpreadsheetView/importAdapters/BedImport.d.ts +0 -26
  64. package/dist/SpreadsheetView/importAdapters/BedImport.js +0 -58
  65. package/dist/SpreadsheetView/importAdapters/BedpeImport.d.ts +0 -36
  66. package/dist/SpreadsheetView/importAdapters/BedpeImport.js +0 -79
  67. package/dist/SpreadsheetView/importAdapters/STARFusionImport.d.ts +0 -25
  68. package/dist/SpreadsheetView/importAdapters/STARFusionImport.js +0 -35
  69. package/dist/SpreadsheetView/importAdapters/VcfImport.d.ts +0 -20
  70. package/dist/SpreadsheetView/importAdapters/VcfImport.js +0 -66
  71. package/dist/SpreadsheetView/importAdapters/isNumber.d.ts +0 -1
  72. package/dist/SpreadsheetView/importAdapters/isNumber.js +0 -14
  73. package/dist/SpreadsheetView/importAdapters/util.d.ts +0 -2
  74. package/dist/SpreadsheetView/importAdapters/util.js +0 -22
  75. package/dist/SpreadsheetView/index.d.ts +0 -3
  76. package/dist/SpreadsheetView/index.js +0 -52
  77. package/dist/SpreadsheetView/util.d.ts +0 -7
  78. package/dist/SpreadsheetView/util.js +0 -13
  79. package/dist/index.d.ts +0 -8
  80. package/dist/index.js +0 -33
  81. package/esm/SpreadsheetView/components/BreakendMultiLevelOptionDialog.d.ts +0 -1
  82. package/esm/SpreadsheetView/components/BreakendMultiLevelOptionDialog.js +0 -1
  83. package/esm/SpreadsheetView/components/BreakendSingleLevelOptionDialog.d.ts +0 -1
  84. package/esm/SpreadsheetView/components/BreakendSingleLevelOptionDialog.js +0 -1
@@ -1,18 +1,11 @@
1
1
  export default function LaunchSpreadsheetViewF(pluginManager) {
2
2
  pluginManager.addToExtensionPoint('LaunchView-SpreadsheetView', async ({ session, assembly, uri, fileType, }) => {
3
- var _a, _b;
4
- const view = session.addView('SpreadsheetView');
5
- const exts = uri.split('.');
6
- let ext = (_a = exts.pop()) === null || _a === void 0 ? void 0 : _a.toUpperCase();
7
- if (ext === 'GZ') {
8
- ext = (_b = exts.pop()) === null || _b === void 0 ? void 0 : _b.toUpperCase();
9
- }
10
- view.importWizard.setFileType(fileType || ext || '');
11
- view.importWizard.setSelectedAssemblyName(assembly);
12
- view.importWizard.setFileSource({
13
- uri,
14
- locationType: 'UriLocation',
3
+ session.addView('SpreadsheetView', {
4
+ init: {
5
+ assembly,
6
+ uri,
7
+ fileType,
8
+ },
15
9
  });
16
- await view.importWizard.import(assembly);
17
10
  });
18
11
  }
@@ -1,11 +1,11 @@
1
1
  import type { FileLocation } from '@jbrowse/core/util';
2
- import type { Instance } from 'mobx-state-tree';
3
- export default function stateModelFactory(): import("mobx-state-tree").IModelType<{
4
- fileType: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
5
- hasColumnNameLine: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
6
- columnNameLineNumber: import("mobx-state-tree").IType<number | undefined, number, number>;
7
- selectedAssemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
8
- cachedFileLocation: import("mobx-state-tree").IType<FileLocation | undefined, FileLocation | undefined, FileLocation | undefined>;
2
+ import type { Instance } from '@jbrowse/mobx-state-tree';
3
+ export default function stateModelFactory(): import("@jbrowse/mobx-state-tree").IModelType<{
4
+ fileType: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
5
+ hasColumnNameLine: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
6
+ columnNameLineNumber: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
7
+ selectedAssemblyName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
8
+ cachedFileLocation: import("@jbrowse/mobx-state-tree").IType<FileLocation | undefined, FileLocation | undefined, FileLocation | undefined>;
9
9
  }, {
10
10
  fileTypes: string[];
11
11
  fileSource: any;
@@ -19,15 +19,11 @@ export default function stateModelFactory(): import("mobx-state-tree").IModelTyp
19
19
  tracksForAssembly(selectedAssembly: string): {
20
20
  track: {
21
21
  [x: string]: any;
22
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
22
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
23
23
  setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
24
24
  [x: string]: any;
25
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
26
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
27
- [x: string]: any;
28
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
29
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
30
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>;
25
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & any & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
26
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>;
31
27
  label: string;
32
28
  assemblyNames: any;
33
29
  type: string;
@@ -46,6 +42,6 @@ export default function stateModelFactory(): import("mobx-state-tree").IModelTyp
46
42
  import(assemblyName: string): Promise<void>;
47
43
  } & {
48
44
  afterAttach(): void;
49
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
45
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
50
46
  export type ImportWizardStateModel = ReturnType<typeof stateModelFactory>;
51
47
  export type ImportWizardModel = Instance<ImportWizardStateModel>;
@@ -2,35 +2,30 @@ import { readConfObject } from '@jbrowse/core/configuration';
2
2
  import { getEnv, getSession } from '@jbrowse/core/util';
3
3
  import { openLocation } from '@jbrowse/core/util/io';
4
4
  import { getTrackName } from '@jbrowse/core/util/tracks';
5
- import { getParent, types } from 'mobx-state-tree';
6
- const IMPORT_SIZE_LIMIT = 100000000;
5
+ import { getParent, types } from '@jbrowse/mobx-state-tree';
6
+ const IMPORT_SIZE_LIMIT = 100_000_000;
7
7
  const fileTypes = ['VCF', 'BED', 'BEDPE', 'STAR-Fusion'];
8
8
  const fileTypeParsers = {
9
- VCF: () => import('./importAdapters/VcfImport').then(r => r.parseVcfBuffer),
10
- BED: () => import('./importAdapters/BedImport').then(r => r.parseBedBuffer),
11
- BEDPE: () => import('./importAdapters/BedpeImport').then(r => r.parseBedPEBuffer),
12
- 'STAR-Fusion': () => import('./importAdapters/STARFusionImport').then(r => r.parseSTARFusionBuffer),
9
+ VCF: () => import("./importAdapters/VcfImport.js").then(r => r.parseVcfBuffer),
10
+ BED: () => import("./importAdapters/BedImport.js").then(r => r.parseBedBuffer),
11
+ BEDPE: () => import("./importAdapters/BedpeImport.js").then(r => r.parseBedPEBuffer),
12
+ 'STAR-Fusion': () => import("./importAdapters/STARFusionImport.js").then(r => r.parseSTARFusionBuffer),
13
13
  };
14
- function getType(adapter) {
15
- if (adapter.vcfLocation || adapter.vcfGzLocation) {
16
- return 'VCF';
17
- }
18
- else if (adapter.bedLocation || adapter.bedGzLocation) {
19
- return 'BED';
20
- }
21
- else if (adapter.bedpeLocation) {
22
- return 'BEDPE';
23
- }
24
- else {
14
+ const adapterTypeMap = {
15
+ VcfAdapter: { fileType: 'VCF', locationKey: 'vcfLocation' },
16
+ VcfTabixAdapter: { fileType: 'VCF', locationKey: 'vcfGzLocation' },
17
+ BedAdapter: { fileType: 'BED', locationKey: 'bedLocation' },
18
+ BedTabixAdapter: { fileType: 'BED', locationKey: 'bedGzLocation' },
19
+ BedpeAdapter: { fileType: 'BEDPE', locationKey: 'bedpeLocation' },
20
+ };
21
+ function getAdapterInfo(adapter) {
22
+ const entry = adapterTypeMap[adapter.type];
23
+ if (!entry) {
25
24
  return undefined;
26
25
  }
27
- }
28
- function getAdapterLoc(adapter) {
29
- return (adapter.vcfLocation ||
30
- adapter.vcfGzLocation ||
31
- adapter.bedLocation ||
32
- adapter.bedGzLocation ||
33
- adapter.bedpeLocation);
26
+ const loc = adapter[entry.locationKey] ??
27
+ adapter;
28
+ return { fileType: entry.fileType, loc };
34
29
  }
35
30
  const fileTypesRegexp = new RegExp(String.raw `\.(${fileTypes.join('|')})(\.gz)?$`, 'i');
36
31
  function x() { }
@@ -72,33 +67,37 @@ export default function stateModelFactory() {
72
67
  },
73
68
  tracksForAssembly(selectedAssembly) {
74
69
  const session = getSession(self);
75
- const { tracks = [], sessionTracks = [] } = session;
70
+ const { tracks, sessionTracks = [] } = session;
76
71
  const allTracks = [
77
72
  ...tracks,
78
73
  ...sessionTracks,
79
74
  ];
80
75
  return allTracks
81
- .map(track => {
82
- const assemblyNames = readConfObject(track, 'assemblyNames');
76
+ .flatMap(track => {
77
+ const assemblyNames = readConfObject(track, 'assemblyNames') ?? [];
78
+ if (!assemblyNames.includes(selectedAssembly)) {
79
+ return [];
80
+ }
83
81
  const adapter = readConfObject(track, 'adapter');
84
- const category = readConfObject(track, 'category').join(',');
85
- const loc = getAdapterLoc(adapter);
86
- return assemblyNames.includes(selectedAssembly) && loc
87
- ? {
88
- track,
89
- label: [
90
- category ? `[${category}]` : '',
91
- getTrackName(track, session),
92
- ]
93
- .filter(f => !!f)
94
- .join(' '),
95
- assemblyNames,
96
- type: getType(adapter) || 'UNKNOWN',
97
- loc,
98
- }
99
- : undefined;
82
+ const info = getAdapterInfo(adapter);
83
+ if (!info) {
84
+ return [];
85
+ }
86
+ const category = readConfObject(track, 'category') ?? [];
87
+ const categoryStr = category.join(',');
88
+ return {
89
+ track,
90
+ label: [
91
+ categoryStr ? `[${categoryStr}]` : '',
92
+ getTrackName(track, session),
93
+ ]
94
+ .filter(f => !!f)
95
+ .join(' '),
96
+ assemblyNames,
97
+ type: info.fileType,
98
+ loc: info.loc,
99
+ };
100
100
  })
101
- .filter(f => !!f)
102
101
  .sort((a, b) => a.label.localeCompare(b.label));
103
102
  },
104
103
  }))
@@ -107,13 +106,12 @@ export default function stateModelFactory() {
107
106
  self.selectedAssemblyName = s;
108
107
  },
109
108
  setFileSource(newSource) {
110
- var _a;
111
109
  self.fileSource = newSource;
112
110
  self.error = undefined;
113
111
  if (self.fileSource) {
114
112
  const name = self.fileName;
115
113
  if (name) {
116
- const firstMatch = (_a = fileTypesRegexp.exec(name)) === null || _a === void 0 ? void 0 : _a[1];
114
+ const firstMatch = fileTypesRegexp.exec(name)?.[1];
117
115
  if (firstMatch) {
118
116
  self.fileType =
119
117
  firstMatch === 'tsv' && name.includes('star-fusion')
@@ -1,5 +1,5 @@
1
1
  import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
2
- import type { Instance } from 'mobx-state-tree';
2
+ import type { Instance } from '@jbrowse/mobx-state-tree';
3
3
  export interface Row {
4
4
  feature?: SimpleFeatureSerialized;
5
5
  cellData?: Record<string, unknown>;
@@ -10,17 +10,17 @@ export interface Row {
10
10
  export interface RowSet {
11
11
  rows: Row[];
12
12
  }
13
- export default function stateModelFactory(): import("mobx-state-tree").IModelType<{
14
- rowSet: import("mobx-state-tree").IType<RowSet | undefined, RowSet | undefined, RowSet | undefined>;
15
- columns: import("mobx-state-tree").IType<{
13
+ export default function stateModelFactory(): import("@jbrowse/mobx-state-tree").IModelType<{
14
+ rowSet: import("@jbrowse/mobx-state-tree").IType<RowSet | undefined, RowSet | undefined, RowSet | undefined>;
15
+ columns: import("@jbrowse/mobx-state-tree").IType<{
16
16
  name: string;
17
17
  }[], {
18
18
  name: string;
19
19
  }[], {
20
20
  name: string;
21
21
  }[]>;
22
- assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
23
- visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
22
+ assemblyName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
23
+ visibleColumns: import("@jbrowse/mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
24
24
  }, {
25
25
  visibleRowFlags: Record<number, boolean> | undefined;
26
26
  } & {
@@ -37,10 +37,7 @@ export default function stateModelFactory(): import("mobx-state-tree").IModelTyp
37
37
  } | {
38
38
  field: string;
39
39
  width: number;
40
- renderCell: ({ row }: import("@mui/x-data-grid").GridRenderCellParams<{
41
- id: number;
42
- feature: SimpleFeatureSerialized | undefined;
43
- }, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => import("react/jsx-runtime").JSX.Element | "N/A";
40
+ renderCell: ({ row }: import("@mui/x-data-grid").GridRenderCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => import("react/jsx-runtime").JSX.Element | "N/A";
44
41
  type?: undefined;
45
42
  valueGetter?: undefined;
46
43
  valueFormatter?: undefined;
@@ -62,17 +59,17 @@ export default function stateModelFactory(): import("mobx-state-tree").IModelTyp
62
59
  } & {
63
60
  setVisibleRows(arg?: Record<number, boolean>): void;
64
61
  setVisibleColumns(arg: Record<string, boolean>): void;
65
- }, import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<{
66
- rowSet: import("mobx-state-tree").IType<RowSet | undefined, RowSet | undefined, RowSet | undefined>;
67
- columns: import("mobx-state-tree").IType<{
62
+ }, import("@jbrowse/mobx-state-tree").ModelCreationType<import("@jbrowse/mobx-state-tree/dist/internal").ExtractCFromProps<{
63
+ rowSet: import("@jbrowse/mobx-state-tree").IType<RowSet | undefined, RowSet | undefined, RowSet | undefined>;
64
+ columns: import("@jbrowse/mobx-state-tree").IType<{
68
65
  name: string;
69
66
  }[], {
70
67
  name: string;
71
68
  }[], {
72
69
  name: string;
73
70
  }[]>;
74
- assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
75
- visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
76
- }>>, import("mobx-state-tree")._NotCustomized>;
71
+ assemblyName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
72
+ visibleColumns: import("@jbrowse/mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
73
+ }>>, import("@jbrowse/mobx-state-tree")._NotCustomized>;
77
74
  export type SpreadsheetStateModel = ReturnType<typeof stateModelFactory>;
78
75
  export type SpreadsheetModel = Instance<SpreadsheetStateModel>;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { assembleLocStringFast, getSession, measureGridWidth, toLocale, } from '@jbrowse/core/util';
3
- import { types } from 'mobx-state-tree';
4
- import LocationCell from './components/LocationCell';
3
+ import { types } from '@jbrowse/mobx-state-tree';
4
+ import LocationCell from "./components/LocationCell.js";
5
5
  export default function stateModelFactory() {
6
6
  return types
7
7
  .model('Spreadsheet', {
@@ -15,25 +15,20 @@ export default function stateModelFactory() {
15
15
  }))
16
16
  .views(self => ({
17
17
  get rows() {
18
- var _a;
19
- return (_a = self.rowSet) === null || _a === void 0 ? void 0 : _a.rows.map((row, i) => ({
18
+ return self.rowSet?.rows.map((row, i) => ({
20
19
  id: i,
21
20
  feature: row.feature,
22
- ...Object.fromEntries(self.columns.map((c, idx) => {
23
- var _a, _b, _c, _d;
24
- return [
25
- c.name,
26
- (_b = (_a = row.cellData) === null || _a === void 0 ? void 0 : _a[c.name]) !== null && _b !== void 0 ? _b : (_d = (_c = row.cells) === null || _c === void 0 ? void 0 : _c[idx]) === null || _d === void 0 ? void 0 : _d.text,
27
- ];
28
- })),
21
+ ...Object.fromEntries(self.columns.map((c, idx) => [
22
+ c.name,
23
+ row.cellData?.[c.name] ?? row.cells?.[idx]?.text,
24
+ ])),
29
25
  }));
30
26
  },
31
27
  get initialized() {
32
- var _a;
33
28
  const session = getSession(self);
34
29
  const name = self.assemblyName;
35
30
  return (self.rowSet &&
36
- (name ? (_a = session.assemblyManager.get(name)) === null || _a === void 0 ? void 0 : _a.initialized : false));
31
+ (name ? session.assemblyManager.get(name)?.initialized : false));
37
32
  },
38
33
  }))
39
34
  .views(self => ({
@@ -75,10 +70,9 @@ export default function stateModelFactory() {
75
70
  }))
76
71
  .views(self => ({
77
72
  get visibleRows() {
78
- var _a;
79
73
  const { visibleRowFlags } = self;
80
74
  return visibleRowFlags
81
- ? (_a = self.rows) === null || _a === void 0 ? void 0 : _a.filter((_f, idx) => visibleRowFlags[idx] !== false)
75
+ ? self.rows?.filter((_f, idx) => visibleRowFlags[idx] !== false)
82
76
  : self.rows;
83
77
  },
84
78
  }))
@@ -98,13 +92,11 @@ export default function stateModelFactory() {
98
92
  rowSet: snap.rowSet
99
93
  ? {
100
94
  ...snap.rowSet,
101
- rows: snap.rowSet.rows.map(r => {
102
- var _a, _b;
103
- return ({
104
- ...r,
105
- feature: (_a = r.feature) !== null && _a !== void 0 ? _a : (_b = r.extendedData) === null || _b === void 0 ? void 0 : _b.vcfFeature,
106
- });
107
- }),
95
+ rows: snap.rowSet.rows.map(r => ({
96
+ ...r,
97
+ feature: r.feature ??
98
+ r.extendedData?.vcfFeature,
99
+ })),
108
100
  }
109
101
  : undefined,
110
102
  }