@jbrowse/plugin-spreadsheet-view 2.17.0 → 2.18.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 (197) hide show
  1. package/dist/LaunchSpreadsheetView/index.d.ts +1 -1
  2. package/dist/LaunchSpreadsheetView/index.js +1 -3
  3. package/dist/SpreadsheetView/ImportWizard.d.ts +51 -0
  4. package/dist/SpreadsheetView/ImportWizard.js +240 -0
  5. package/dist/SpreadsheetView/SpreadsheetModel.d.ts +79 -0
  6. package/dist/SpreadsheetView/SpreadsheetModel.js +133 -0
  7. package/dist/SpreadsheetView/SpreadsheetViewModel.d.ts +299 -0
  8. package/dist/SpreadsheetView/SpreadsheetViewModel.js +94 -0
  9. package/dist/SpreadsheetView/components/BreakendMultiLevelOptionDialog.d.ts +1 -0
  10. package/dist/SpreadsheetView/components/BreakendMultiLevelOptionDialog.js +5 -0
  11. package/dist/SpreadsheetView/components/BreakendSingleLevelOptionDialog.d.ts +1 -0
  12. package/dist/SpreadsheetView/components/BreakendSingleLevelOptionDialog.js +5 -0
  13. package/dist/SpreadsheetView/components/FeatureMenu.d.ts +8 -0
  14. package/dist/SpreadsheetView/components/FeatureMenu.js +95 -0
  15. package/dist/SpreadsheetView/components/ImportWizard.d.ts +2 -2
  16. package/dist/SpreadsheetView/components/ImportWizard.js +40 -43
  17. package/dist/SpreadsheetView/components/LocationCell.d.ts +8 -0
  18. package/dist/SpreadsheetView/components/LocationCell.js +31 -0
  19. package/dist/SpreadsheetView/components/NumberEditor.d.ts +1 -1
  20. package/dist/SpreadsheetView/components/NumberEditor.js +1 -3
  21. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +6 -0
  22. package/dist/SpreadsheetView/components/SpreadsheetDataGrid.js +27 -0
  23. package/dist/SpreadsheetView/components/SpreadsheetView.d.ts +3 -3
  24. package/dist/SpreadsheetView/components/SpreadsheetView.js +23 -44
  25. package/dist/SpreadsheetView/components/TrackSelector.d.ts +7 -0
  26. package/dist/SpreadsheetView/components/TrackSelector.js +49 -0
  27. package/dist/SpreadsheetView/importAdapters/BedImport.d.ts +26 -17
  28. package/dist/SpreadsheetView/importAdapters/BedImport.js +53 -139
  29. package/dist/SpreadsheetView/importAdapters/BedpeImport.d.ts +36 -0
  30. package/dist/SpreadsheetView/importAdapters/BedpeImport.js +79 -0
  31. package/dist/SpreadsheetView/importAdapters/STARFusionImport.d.ts +25 -9
  32. package/dist/SpreadsheetView/importAdapters/STARFusionImport.js +27 -62
  33. package/dist/SpreadsheetView/importAdapters/VcfImport.d.ts +19 -12
  34. package/dist/SpreadsheetView/importAdapters/VcfImport.js +53 -98
  35. package/dist/SpreadsheetView/importAdapters/isNumber.d.ts +1 -0
  36. package/dist/SpreadsheetView/importAdapters/isNumber.js +14 -0
  37. package/dist/SpreadsheetView/importAdapters/util.d.ts +2 -0
  38. package/dist/SpreadsheetView/importAdapters/util.js +22 -0
  39. package/dist/SpreadsheetView/index.d.ts +2 -2
  40. package/dist/SpreadsheetView/index.js +2 -2
  41. package/dist/SpreadsheetView/util.d.ts +7 -0
  42. package/dist/SpreadsheetView/util.js +13 -0
  43. package/dist/index.d.ts +1 -1
  44. package/dist/index.js +1 -3
  45. package/esm/LaunchSpreadsheetView/index.d.ts +1 -1
  46. package/esm/LaunchSpreadsheetView/index.js +1 -3
  47. package/esm/SpreadsheetView/ImportWizard.d.ts +51 -0
  48. package/esm/SpreadsheetView/ImportWizard.js +214 -0
  49. package/esm/SpreadsheetView/SpreadsheetModel.d.ts +79 -0
  50. package/esm/SpreadsheetView/SpreadsheetModel.js +127 -0
  51. package/esm/SpreadsheetView/SpreadsheetViewModel.d.ts +299 -0
  52. package/esm/SpreadsheetView/SpreadsheetViewModel.js +88 -0
  53. package/esm/SpreadsheetView/components/BreakendMultiLevelOptionDialog.d.ts +1 -0
  54. package/esm/SpreadsheetView/components/BreakendMultiLevelOptionDialog.js +1 -0
  55. package/esm/SpreadsheetView/components/BreakendSingleLevelOptionDialog.d.ts +1 -0
  56. package/esm/SpreadsheetView/components/BreakendSingleLevelOptionDialog.js +1 -0
  57. package/esm/SpreadsheetView/components/FeatureMenu.d.ts +8 -0
  58. package/esm/SpreadsheetView/components/FeatureMenu.js +66 -0
  59. package/esm/SpreadsheetView/components/ImportWizard.d.ts +2 -2
  60. package/esm/SpreadsheetView/components/ImportWizard.js +41 -44
  61. package/esm/SpreadsheetView/components/LocationCell.d.ts +8 -0
  62. package/esm/SpreadsheetView/components/LocationCell.js +25 -0
  63. package/esm/SpreadsheetView/components/NumberEditor.d.ts +1 -1
  64. package/esm/SpreadsheetView/components/NumberEditor.js +2 -4
  65. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.d.ts +6 -0
  66. package/esm/SpreadsheetView/components/SpreadsheetDataGrid.js +22 -0
  67. package/esm/SpreadsheetView/components/SpreadsheetView.d.ts +3 -3
  68. package/esm/SpreadsheetView/components/SpreadsheetView.js +24 -45
  69. package/esm/SpreadsheetView/components/TrackSelector.d.ts +7 -0
  70. package/esm/SpreadsheetView/components/TrackSelector.js +24 -0
  71. package/esm/SpreadsheetView/importAdapters/BedImport.d.ts +26 -17
  72. package/esm/SpreadsheetView/importAdapters/BedImport.js +53 -137
  73. package/esm/SpreadsheetView/importAdapters/BedpeImport.d.ts +36 -0
  74. package/esm/SpreadsheetView/importAdapters/BedpeImport.js +76 -0
  75. package/esm/SpreadsheetView/importAdapters/STARFusionImport.d.ts +25 -9
  76. package/esm/SpreadsheetView/importAdapters/STARFusionImport.js +27 -62
  77. package/esm/SpreadsheetView/importAdapters/VcfImport.d.ts +19 -12
  78. package/esm/SpreadsheetView/importAdapters/VcfImport.js +53 -97
  79. package/esm/SpreadsheetView/importAdapters/isNumber.d.ts +1 -0
  80. package/esm/SpreadsheetView/importAdapters/isNumber.js +11 -0
  81. package/esm/SpreadsheetView/importAdapters/util.d.ts +2 -0
  82. package/esm/SpreadsheetView/importAdapters/util.js +18 -0
  83. package/esm/SpreadsheetView/index.d.ts +2 -2
  84. package/esm/SpreadsheetView/index.js +2 -2
  85. package/esm/SpreadsheetView/util.d.ts +7 -0
  86. package/esm/SpreadsheetView/util.js +10 -0
  87. package/esm/index.d.ts +1 -1
  88. package/esm/index.js +1 -3
  89. package/package.json +6 -6
  90. package/dist/SpreadsheetView/components/CellData.d.ts +0 -9
  91. package/dist/SpreadsheetView/components/CellData.js +0 -14
  92. package/dist/SpreadsheetView/components/ColumnFilterControls.d.ts +0 -3
  93. package/dist/SpreadsheetView/components/ColumnFilterControls.js +0 -58
  94. package/dist/SpreadsheetView/components/ColumnMenu.d.ts +0 -16
  95. package/dist/SpreadsheetView/components/ColumnMenu.js +0 -140
  96. package/dist/SpreadsheetView/components/DataRow.d.ts +0 -12
  97. package/dist/SpreadsheetView/components/DataRow.js +0 -81
  98. package/dist/SpreadsheetView/components/DataTable.d.ts +0 -10
  99. package/dist/SpreadsheetView/components/DataTable.js +0 -42
  100. package/dist/SpreadsheetView/components/DataTableHeader.d.ts +0 -6
  101. package/dist/SpreadsheetView/components/DataTableHeader.js +0 -104
  102. package/dist/SpreadsheetView/components/GlobalFilterControls.d.ts +0 -5
  103. package/dist/SpreadsheetView/components/GlobalFilterControls.js +0 -68
  104. package/dist/SpreadsheetView/components/RowCountMessage.d.ts +0 -6
  105. package/dist/SpreadsheetView/components/RowCountMessage.js +0 -33
  106. package/dist/SpreadsheetView/components/RowMenu.d.ts +0 -9
  107. package/dist/SpreadsheetView/components/RowMenu.js +0 -39
  108. package/dist/SpreadsheetView/components/SortIndicator.d.ts +0 -6
  109. package/dist/SpreadsheetView/components/SortIndicator.js +0 -27
  110. package/dist/SpreadsheetView/components/Spreadsheet.d.ts +0 -11
  111. package/dist/SpreadsheetView/components/Spreadsheet.js +0 -25
  112. package/dist/SpreadsheetView/components/StatusBar.d.ts +0 -11
  113. package/dist/SpreadsheetView/components/StatusBar.js +0 -44
  114. package/dist/SpreadsheetView/importAdapters/ImportUtils.d.ts +0 -42
  115. package/dist/SpreadsheetView/importAdapters/ImportUtils.js +0 -123
  116. package/dist/SpreadsheetView/models/ColumnDataTypes/LocEnd.d.ts +0 -12
  117. package/dist/SpreadsheetView/models/ColumnDataTypes/LocEnd.js +0 -20
  118. package/dist/SpreadsheetView/models/ColumnDataTypes/LocRef.d.ts +0 -12
  119. package/dist/SpreadsheetView/models/ColumnDataTypes/LocRef.js +0 -20
  120. package/dist/SpreadsheetView/models/ColumnDataTypes/LocStart.d.ts +0 -12
  121. package/dist/SpreadsheetView/models/ColumnDataTypes/LocStart.js +0 -20
  122. package/dist/SpreadsheetView/models/ColumnDataTypes/LocString.d.ts +0 -13
  123. package/dist/SpreadsheetView/models/ColumnDataTypes/LocString.js +0 -183
  124. package/dist/SpreadsheetView/models/ColumnDataTypes/MakeSpreadsheetColumnType.d.ts +0 -19
  125. package/dist/SpreadsheetView/models/ColumnDataTypes/MakeSpreadsheetColumnType.js +0 -23
  126. package/dist/SpreadsheetView/models/ColumnDataTypes/Number.d.ts +0 -30
  127. package/dist/SpreadsheetView/models/ColumnDataTypes/Number.js +0 -126
  128. package/dist/SpreadsheetView/models/ColumnDataTypes/Text.d.ts +0 -28
  129. package/dist/SpreadsheetView/models/ColumnDataTypes/Text.js +0 -129
  130. package/dist/SpreadsheetView/models/ColumnDataTypes/index.d.ts +0 -71
  131. package/dist/SpreadsheetView/models/ColumnDataTypes/index.js +0 -37
  132. package/dist/SpreadsheetView/models/FilterControls.d.ts +0 -26
  133. package/dist/SpreadsheetView/models/FilterControls.js +0 -85
  134. package/dist/SpreadsheetView/models/ImportWizard.d.ts +0 -31
  135. package/dist/SpreadsheetView/models/ImportWizard.js +0 -186
  136. package/dist/SpreadsheetView/models/Row.d.ts +0 -17
  137. package/dist/SpreadsheetView/models/Row.js +0 -43
  138. package/dist/SpreadsheetView/models/Spreadsheet.d.ts +0 -260
  139. package/dist/SpreadsheetView/models/Spreadsheet.js +0 -174
  140. package/dist/SpreadsheetView/models/SpreadsheetView.d.ts +0 -482
  141. package/dist/SpreadsheetView/models/SpreadsheetView.js +0 -199
  142. package/dist/SpreadsheetView/models/StaticRowSet.d.ts +0 -163
  143. package/dist/SpreadsheetView/models/StaticRowSet.js +0 -56
  144. package/esm/SpreadsheetView/components/CellData.d.ts +0 -9
  145. package/esm/SpreadsheetView/components/CellData.js +0 -9
  146. package/esm/SpreadsheetView/components/ColumnFilterControls.d.ts +0 -3
  147. package/esm/SpreadsheetView/components/ColumnFilterControls.js +0 -53
  148. package/esm/SpreadsheetView/components/ColumnMenu.d.ts +0 -16
  149. package/esm/SpreadsheetView/components/ColumnMenu.js +0 -135
  150. package/esm/SpreadsheetView/components/DataRow.d.ts +0 -12
  151. package/esm/SpreadsheetView/components/DataRow.js +0 -76
  152. package/esm/SpreadsheetView/components/DataTable.d.ts +0 -10
  153. package/esm/SpreadsheetView/components/DataTable.js +0 -37
  154. package/esm/SpreadsheetView/components/DataTableHeader.d.ts +0 -6
  155. package/esm/SpreadsheetView/components/DataTableHeader.js +0 -76
  156. package/esm/SpreadsheetView/components/GlobalFilterControls.d.ts +0 -5
  157. package/esm/SpreadsheetView/components/GlobalFilterControls.js +0 -40
  158. package/esm/SpreadsheetView/components/RowCountMessage.d.ts +0 -6
  159. package/esm/SpreadsheetView/components/RowCountMessage.js +0 -28
  160. package/esm/SpreadsheetView/components/RowMenu.d.ts +0 -9
  161. package/esm/SpreadsheetView/components/RowMenu.js +0 -34
  162. package/esm/SpreadsheetView/components/SortIndicator.d.ts +0 -6
  163. package/esm/SpreadsheetView/components/SortIndicator.js +0 -21
  164. package/esm/SpreadsheetView/components/Spreadsheet.d.ts +0 -11
  165. package/esm/SpreadsheetView/components/Spreadsheet.js +0 -20
  166. package/esm/SpreadsheetView/components/StatusBar.d.ts +0 -11
  167. package/esm/SpreadsheetView/components/StatusBar.js +0 -39
  168. package/esm/SpreadsheetView/importAdapters/ImportUtils.d.ts +0 -42
  169. package/esm/SpreadsheetView/importAdapters/ImportUtils.js +0 -95
  170. package/esm/SpreadsheetView/models/ColumnDataTypes/LocEnd.d.ts +0 -12
  171. package/esm/SpreadsheetView/models/ColumnDataTypes/LocEnd.js +0 -15
  172. package/esm/SpreadsheetView/models/ColumnDataTypes/LocRef.d.ts +0 -12
  173. package/esm/SpreadsheetView/models/ColumnDataTypes/LocRef.js +0 -15
  174. package/esm/SpreadsheetView/models/ColumnDataTypes/LocStart.d.ts +0 -12
  175. package/esm/SpreadsheetView/models/ColumnDataTypes/LocStart.js +0 -15
  176. package/esm/SpreadsheetView/models/ColumnDataTypes/LocString.d.ts +0 -13
  177. package/esm/SpreadsheetView/models/ColumnDataTypes/LocString.js +0 -178
  178. package/esm/SpreadsheetView/models/ColumnDataTypes/MakeSpreadsheetColumnType.d.ts +0 -19
  179. package/esm/SpreadsheetView/models/ColumnDataTypes/MakeSpreadsheetColumnType.js +0 -20
  180. package/esm/SpreadsheetView/models/ColumnDataTypes/Number.d.ts +0 -30
  181. package/esm/SpreadsheetView/models/ColumnDataTypes/Number.js +0 -119
  182. package/esm/SpreadsheetView/models/ColumnDataTypes/Text.d.ts +0 -28
  183. package/esm/SpreadsheetView/models/ColumnDataTypes/Text.js +0 -122
  184. package/esm/SpreadsheetView/models/ColumnDataTypes/index.d.ts +0 -71
  185. package/esm/SpreadsheetView/models/ColumnDataTypes/index.js +0 -29
  186. package/esm/SpreadsheetView/models/FilterControls.d.ts +0 -26
  187. package/esm/SpreadsheetView/models/FilterControls.js +0 -83
  188. package/esm/SpreadsheetView/models/ImportWizard.d.ts +0 -31
  189. package/esm/SpreadsheetView/models/ImportWizard.js +0 -161
  190. package/esm/SpreadsheetView/models/Row.d.ts +0 -17
  191. package/esm/SpreadsheetView/models/Row.js +0 -41
  192. package/esm/SpreadsheetView/models/Spreadsheet.d.ts +0 -260
  193. package/esm/SpreadsheetView/models/Spreadsheet.js +0 -169
  194. package/esm/SpreadsheetView/models/SpreadsheetView.d.ts +0 -482
  195. package/esm/SpreadsheetView/models/SpreadsheetView.js +0 -194
  196. package/esm/SpreadsheetView/models/StaticRowSet.d.ts +0 -163
  197. package/esm/SpreadsheetView/models/StaticRowSet.js +0 -51
@@ -0,0 +1,299 @@
1
+ import type { SpreadsheetModel } from './SpreadsheetModel';
2
+ import type { MenuItem } from '@jbrowse/core/ui';
3
+ import type { Instance } from 'mobx-state-tree';
4
+ export default function stateModelFactory(): import("mobx-state-tree").IModelType<{
5
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
6
+ displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
7
+ minimized: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
8
+ } & {
9
+ type: import("mobx-state-tree").ISimpleType<"SpreadsheetView">;
10
+ offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
11
+ height: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
12
+ hideVerticalResizeHandle: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
13
+ hideFilterControls: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
14
+ importWizard: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IModelType<{
15
+ fileType: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
16
+ hasColumnNameLine: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
17
+ columnNameLineNumber: import("mobx-state-tree").IType<number | undefined, number, number>;
18
+ selectedAssemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
19
+ cachedFileLocation: import("mobx-state-tree").IType<import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined>;
20
+ }, {
21
+ fileTypes: string[];
22
+ fileSource: any;
23
+ error: unknown;
24
+ loading: boolean;
25
+ } & {
26
+ readonly isReadyToOpen: any;
27
+ readonly fileName: any;
28
+ readonly requiresUnzip: any;
29
+ isValidRefName(refName: string, assemblyName?: string): boolean;
30
+ tracksForAssembly(selectedAssembly: string): {
31
+ track: {
32
+ [x: string]: any;
33
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
34
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
35
+ [x: string]: any;
36
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
37
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
38
+ [x: string]: any;
39
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
40
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
41
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>;
42
+ label: string;
43
+ assemblyNames: any;
44
+ type: string;
45
+ loc: import("@jbrowse/core/util").FileLocation;
46
+ }[];
47
+ } & {
48
+ setSelectedAssemblyName(s: string): void;
49
+ setFileSource(newSource: unknown): void;
50
+ setColumnNameLineNumber(newnumber: number): void;
51
+ setFileType(typeName: string): void;
52
+ setError(error: unknown): void;
53
+ setLoading(arg: boolean): void;
54
+ cancelButton(): void;
55
+ setCachedFileHandle(arg: import("@jbrowse/core/util").FileLocation): void;
56
+ } & {
57
+ import(assemblyName: string): Promise<void>;
58
+ } & {
59
+ afterAttach(): void;
60
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;
61
+ spreadsheet: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IModelType<{
62
+ rowSet: import("mobx-state-tree").IType<import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined>;
63
+ columns: import("mobx-state-tree").IType<{
64
+ name: string;
65
+ }[], {
66
+ name: string;
67
+ }[], {
68
+ name: string;
69
+ }[]>;
70
+ assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
71
+ visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
72
+ }, {
73
+ isLoaded: boolean;
74
+ visibleRowFlags: Record<number, boolean> | undefined;
75
+ } & {
76
+ readonly rows: {
77
+ id: number;
78
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
79
+ }[] | undefined;
80
+ readonly initialized: boolean | undefined;
81
+ } & {
82
+ readonly dataGridColumns: ({
83
+ field: string;
84
+ width: number;
85
+ } | {
86
+ field: string;
87
+ width: number;
88
+ renderCell: ({ row }: import("@mui/x-data-grid").GridRenderCellParams<{
89
+ id: number;
90
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
91
+ }, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => import("react").JSX.Element | "N/A";
92
+ valueGetter?: undefined;
93
+ valueFormatter?: undefined;
94
+ } | {
95
+ field: string;
96
+ width: number;
97
+ valueGetter: (_val: unknown, row: {
98
+ feature?: import("@jbrowse/core/util").SimpleFeatureSerialized;
99
+ }) => number | undefined;
100
+ valueFormatter: (arg: never) => string;
101
+ renderCell?: undefined;
102
+ })[] | undefined;
103
+ } & {
104
+ readonly visibleRows: {
105
+ id: number;
106
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
107
+ }[] | undefined;
108
+ } & {
109
+ setVisibleRows(arg?: Record<number, boolean>): void;
110
+ setVisibleColumns(arg: Record<string, boolean>): void;
111
+ setLoaded(flag: boolean): void;
112
+ afterAttach(): void;
113
+ }, import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<{
114
+ rowSet: import("mobx-state-tree").IType<import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined>;
115
+ columns: import("mobx-state-tree").IType<{
116
+ name: string;
117
+ }[], {
118
+ name: string;
119
+ }[], {
120
+ name: string;
121
+ }[]>;
122
+ assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
123
+ visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
124
+ }>>, import("mobx-state-tree")._NotCustomized>>;
125
+ }, {
126
+ width: number;
127
+ } & {
128
+ menuItems(): MenuItem[];
129
+ } & {
130
+ setDisplayName(name: string): void;
131
+ setWidth(newWidth: number): void;
132
+ setMinimized(flag: boolean): void;
133
+ } & {
134
+ width: number;
135
+ rowMenuItems: MenuItem[];
136
+ } & {
137
+ readonly assembly: any;
138
+ } & {
139
+ setRowMenuItems(newItems: MenuItem[]): void;
140
+ setWidth(newWidth: number): number;
141
+ setHeight(newHeight: number): number;
142
+ resizeHeight(distance: number): number;
143
+ resizeWidth(distance: number): number;
144
+ displaySpreadsheet(spreadsheet?: SpreadsheetModel): void;
145
+ } & {
146
+ menuItems(): {
147
+ label: string;
148
+ icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
149
+ muiName: string;
150
+ };
151
+ onClick: () => void;
152
+ }[];
153
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree").ModelSnapshotType<{
154
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
155
+ displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
156
+ minimized: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
157
+ } & {
158
+ type: import("mobx-state-tree").ISimpleType<"SpreadsheetView">;
159
+ offsetPx: import("mobx-state-tree").IType<number | undefined, number, number>;
160
+ height: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
161
+ hideVerticalResizeHandle: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
162
+ hideFilterControls: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
163
+ importWizard: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IModelType<{
164
+ fileType: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
165
+ hasColumnNameLine: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
166
+ columnNameLineNumber: import("mobx-state-tree").IType<number | undefined, number, number>;
167
+ selectedAssemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
168
+ cachedFileLocation: import("mobx-state-tree").IType<import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined>;
169
+ }, {
170
+ fileTypes: string[];
171
+ fileSource: any;
172
+ error: unknown;
173
+ loading: boolean;
174
+ } & {
175
+ readonly isReadyToOpen: any;
176
+ readonly fileName: any;
177
+ readonly requiresUnzip: any;
178
+ isValidRefName(refName: string, assemblyName?: string): boolean;
179
+ tracksForAssembly(selectedAssembly: string): {
180
+ track: {
181
+ [x: string]: any;
182
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
183
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
184
+ [x: string]: any;
185
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
186
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
187
+ [x: string]: any;
188
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
189
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
190
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>;
191
+ label: string;
192
+ assemblyNames: any;
193
+ type: string;
194
+ loc: import("@jbrowse/core/util").FileLocation;
195
+ }[];
196
+ } & {
197
+ setSelectedAssemblyName(s: string): void;
198
+ setFileSource(newSource: unknown): void;
199
+ setColumnNameLineNumber(newnumber: number): void;
200
+ setFileType(typeName: string): void;
201
+ setError(error: unknown): void;
202
+ setLoading(arg: boolean): void;
203
+ cancelButton(): void;
204
+ setCachedFileHandle(arg: import("@jbrowse/core/util").FileLocation): void;
205
+ } & {
206
+ import(assemblyName: string): Promise<void>;
207
+ } & {
208
+ afterAttach(): void;
209
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;
210
+ spreadsheet: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IModelType<{
211
+ rowSet: import("mobx-state-tree").IType<import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined>;
212
+ columns: import("mobx-state-tree").IType<{
213
+ name: string;
214
+ }[], {
215
+ name: string;
216
+ }[], {
217
+ name: string;
218
+ }[]>;
219
+ assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
220
+ visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
221
+ }, {
222
+ isLoaded: boolean;
223
+ visibleRowFlags: Record<number, boolean> | undefined;
224
+ } & {
225
+ readonly rows: {
226
+ id: number;
227
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
228
+ }[] | undefined;
229
+ readonly initialized: boolean | undefined;
230
+ } & {
231
+ readonly dataGridColumns: ({
232
+ field: string;
233
+ width: number;
234
+ } | {
235
+ field: string;
236
+ width: number;
237
+ renderCell: ({ row }: import("@mui/x-data-grid").GridRenderCellParams<{
238
+ id: number;
239
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
240
+ }, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => import("react").JSX.Element | "N/A";
241
+ valueGetter?: undefined;
242
+ valueFormatter?: undefined;
243
+ } | {
244
+ field: string;
245
+ width: number;
246
+ valueGetter: (_val: unknown, row: {
247
+ feature?: import("@jbrowse/core/util").SimpleFeatureSerialized;
248
+ }) => number | undefined;
249
+ valueFormatter: (arg: never) => string;
250
+ renderCell?: undefined;
251
+ })[] | undefined;
252
+ } & {
253
+ readonly visibleRows: {
254
+ id: number;
255
+ feature: import("@jbrowse/core/util").SimpleFeatureSerialized | undefined;
256
+ }[] | undefined;
257
+ } & {
258
+ setVisibleRows(arg?: Record<number, boolean>): void;
259
+ setVisibleColumns(arg: Record<string, boolean>): void;
260
+ setLoaded(flag: boolean): void;
261
+ afterAttach(): void;
262
+ }, import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<{
263
+ rowSet: import("mobx-state-tree").IType<import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined, import("./SpreadsheetModel").RowSet | undefined>;
264
+ columns: import("mobx-state-tree").IType<{
265
+ name: string;
266
+ }[], {
267
+ name: string;
268
+ }[], {
269
+ name: string;
270
+ }[]>;
271
+ assemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
272
+ visibleColumns: import("mobx-state-tree").IType<Record<string, boolean>, Record<string, boolean>, Record<string, boolean>>;
273
+ }>>, import("mobx-state-tree")._NotCustomized>>;
274
+ }> | {
275
+ spreadsheet: {
276
+ columns: {
277
+ name: string;
278
+ }[];
279
+ assemblyName: string | undefined;
280
+ visibleColumns: Record<string, boolean>;
281
+ };
282
+ id: string;
283
+ type: "SpreadsheetView";
284
+ height: number;
285
+ displayName: string | undefined;
286
+ minimized: boolean;
287
+ hideVerticalResizeHandle: boolean;
288
+ offsetPx: number;
289
+ hideFilterControls: boolean;
290
+ importWizard: import("mobx-state-tree").ModelSnapshotType<{
291
+ fileType: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
292
+ hasColumnNameLine: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
293
+ columnNameLineNumber: import("mobx-state-tree").IType<number | undefined, number, number>;
294
+ selectedAssemblyName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
295
+ cachedFileLocation: import("mobx-state-tree").IType<import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined, import("@jbrowse/core/util").FileLocation | undefined>;
296
+ }>;
297
+ }>;
298
+ export type SpreadsheetViewStateModel = ReturnType<typeof stateModelFactory>;
299
+ export type SpreadsheetViewModel = Instance<SpreadsheetViewStateModel>;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = stateModelFactory;
7
+ const models_1 = require("@jbrowse/core/pluggableElementTypes/models");
8
+ const util_1 = require("@jbrowse/core/util");
9
+ const FolderOpen_1 = __importDefault(require("@mui/icons-material/FolderOpen"));
10
+ const mobx_state_tree_1 = require("mobx-state-tree");
11
+ const ImportWizard_1 = __importDefault(require("./ImportWizard"));
12
+ const SpreadsheetModel_1 = __importDefault(require("./SpreadsheetModel"));
13
+ const minHeight = 40;
14
+ const defaultHeight = 440;
15
+ function x() { }
16
+ function stateModelFactory() {
17
+ const ImportWizardModel = (0, ImportWizard_1.default)();
18
+ return mobx_state_tree_1.types
19
+ .compose(models_1.BaseViewModel, mobx_state_tree_1.types
20
+ .model('SpreadsheetView', {
21
+ type: mobx_state_tree_1.types.literal('SpreadsheetView'),
22
+ offsetPx: 0,
23
+ height: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.number, defaultHeight),
24
+ hideVerticalResizeHandle: false,
25
+ hideFilterControls: false,
26
+ importWizard: mobx_state_tree_1.types.optional(ImportWizardModel, () => ImportWizardModel.create()),
27
+ spreadsheet: mobx_state_tree_1.types.maybe((0, SpreadsheetModel_1.default)()),
28
+ })
29
+ .volatile(() => ({
30
+ width: 400,
31
+ rowMenuItems: [],
32
+ }))
33
+ .views(self => ({
34
+ get assembly() {
35
+ var _a, _b;
36
+ const name = (_a = self.spreadsheet) === null || _a === void 0 ? void 0 : _a.assemblyName;
37
+ return name
38
+ ? (_b = (0, util_1.getSession)(self).assemblyManager.get(name)) === null || _b === void 0 ? void 0 : _b.configuration
39
+ : undefined;
40
+ },
41
+ }))
42
+ .actions(self => ({
43
+ setRowMenuItems(newItems) {
44
+ self.rowMenuItems = newItems;
45
+ },
46
+ setWidth(newWidth) {
47
+ self.width = newWidth;
48
+ return self.width;
49
+ },
50
+ setHeight(newHeight) {
51
+ self.height = Math.max(newHeight, minHeight);
52
+ return self.height;
53
+ },
54
+ resizeHeight(distance) {
55
+ const oldHeight = self.height;
56
+ const newHeight = this.setHeight(self.height + distance);
57
+ return newHeight - oldHeight;
58
+ },
59
+ resizeWidth(distance) {
60
+ const oldWidth = self.width;
61
+ const newWidth = this.setWidth(self.width + distance);
62
+ return newWidth - oldWidth;
63
+ },
64
+ displaySpreadsheet(spreadsheet) {
65
+ self.spreadsheet = (0, mobx_state_tree_1.cast)(spreadsheet);
66
+ },
67
+ }))
68
+ .views(self => ({
69
+ menuItems() {
70
+ return [
71
+ {
72
+ label: 'Return to import form',
73
+ icon: FolderOpen_1.default,
74
+ onClick: () => {
75
+ self.displaySpreadsheet(undefined);
76
+ },
77
+ },
78
+ ];
79
+ },
80
+ })))
81
+ .postProcessSnapshot(snap => {
82
+ const { importWizard, spreadsheet } = snap;
83
+ if (importWizard.cachedFileLocation && spreadsheet) {
84
+ const { rowSet, ...rest } = spreadsheet;
85
+ return {
86
+ ...snap,
87
+ spreadsheet: rest,
88
+ };
89
+ }
90
+ else {
91
+ return snap;
92
+ }
93
+ });
94
+ }
@@ -0,0 +1 @@
1
+ export { BreakendMultiLevelOptionDialog as default } from '@jbrowse/sv-core';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = void 0;
4
+ var sv_core_1 = require("@jbrowse/sv-core");
5
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return sv_core_1.BreakendMultiLevelOptionDialog; } });
@@ -0,0 +1 @@
1
+ export { BreakendSingleLevelOptionDialog as default } from '@jbrowse/sv-core';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = void 0;
4
+ var sv_core_1 = require("@jbrowse/sv-core");
5
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return sv_core_1.BreakendSingleLevelOptionDialog; } });
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import type { AbstractSessionModel, SimpleFeatureSerialized } from '@jbrowse/core/util';
3
+ export default function FeatureMenu({ assemblyName, session, spreadsheetViewId, feature, }: {
4
+ spreadsheetViewId: string;
5
+ assemblyName: string;
6
+ session: AbstractSessionModel;
7
+ feature: SimpleFeatureSerialized;
8
+ }): React.JSX.Element;
@@ -0,0 +1,95 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.default = FeatureMenu;
30
+ const react_1 = __importStar(require("react"));
31
+ const CascadingMenuButton_1 = __importDefault(require("@jbrowse/core/ui/CascadingMenuButton"));
32
+ const util_1 = require("@jbrowse/core/util");
33
+ const ArrowDropDown_1 = __importDefault(require("@mui/icons-material/ArrowDropDown"));
34
+ const mobx_state_tree_1 = require("mobx-state-tree");
35
+ const util_2 = require("../util");
36
+ const BreakendMultiLevelOptionDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./BreakendMultiLevelOptionDialog'))));
37
+ const BreakendSingleLevelOptionDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./BreakendSingleLevelOptionDialog'))));
38
+ function FeatureMenu({ assemblyName, session, spreadsheetViewId, feature, }) {
39
+ return (react_1.default.createElement(CascadingMenuButton_1.default, { menuItems: [
40
+ {
41
+ label: 'Open in linear genome view',
42
+ onClick: async () => {
43
+ try {
44
+ await (0, util_2.locationLinkClick)({
45
+ spreadsheetViewId,
46
+ assemblyName,
47
+ session,
48
+ locString: (0, util_1.assembleLocStringFast)(feature),
49
+ });
50
+ }
51
+ catch (e) {
52
+ console.error(e);
53
+ session.notifyError(`${e}`, e);
54
+ }
55
+ },
56
+ },
57
+ {
58
+ label: 'Open in single-level split view',
59
+ onClick: async () => {
60
+ const { pluginManager } = (0, mobx_state_tree_1.getEnv)(session);
61
+ const viewType = pluginManager.getViewType('BreakpointSplitView');
62
+ session.queueDialog(handleClose => [
63
+ BreakendSingleLevelOptionDialog,
64
+ {
65
+ handleClose,
66
+ session,
67
+ stableViewId: `${spreadsheetViewId}_${assemblyName}_breakpointsplitview_singlelevel`,
68
+ feature: new util_1.SimpleFeature(feature),
69
+ viewType,
70
+ assemblyName,
71
+ },
72
+ ]);
73
+ },
74
+ },
75
+ {
76
+ label: 'Open in multi-level split view',
77
+ onClick: async () => {
78
+ const { pluginManager } = (0, mobx_state_tree_1.getEnv)(session);
79
+ const viewType = pluginManager.getViewType('BreakpointSplitView');
80
+ session.queueDialog(handleClose => [
81
+ BreakendMultiLevelOptionDialog,
82
+ {
83
+ handleClose,
84
+ session,
85
+ stableViewId: `${spreadsheetViewId}_${assemblyName}_breakpointsplitview_multilevel`,
86
+ feature: new util_1.SimpleFeature(feature),
87
+ viewType,
88
+ assemblyName,
89
+ },
90
+ ]);
91
+ },
92
+ },
93
+ ] },
94
+ react_1.default.createElement(ArrowDropDown_1.default, null)));
95
+ }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { ImportWizardModel } from '../models/ImportWizard';
3
- declare const ImportWizard: ({ model }: {
2
+ import type { ImportWizardModel } from '../ImportWizard';
3
+ declare const ImportWizard: ({ model, }: {
4
4
  model: ImportWizardModel;
5
5
  }) => React.JSX.Element;
6
6
  export default ImportWizard;
@@ -27,64 +27,61 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  const react_1 = __importStar(require("react"));
30
+ const ui_1 = require("@jbrowse/core/ui");
31
+ const util_1 = require("@jbrowse/core/util");
30
32
  const material_1 = require("@mui/material");
31
33
  const mobx_react_1 = require("mobx-react");
32
34
  const mobx_state_tree_1 = require("mobx-state-tree");
33
- const util_1 = require("@jbrowse/core/util");
34
- const ui_1 = require("@jbrowse/core/ui");
35
- const NumberEditor_1 = __importDefault(require("./NumberEditor"));
36
35
  const mui_1 = require("tss-react/mui");
36
+ const TrackSelector_1 = __importDefault(require("./TrackSelector"));
37
37
  const useStyles = (0, mui_1.makeStyles)()({
38
38
  container: {
39
39
  margin: '0 auto',
40
- maxWidth: '25em',
40
+ maxWidth: '40em',
41
41
  padding: 20,
42
42
  },
43
43
  });
44
- const ImportWizard = (0, mobx_react_1.observer)(({ model }) => {
44
+ const ImportWizard = (0, mobx_react_1.observer)(function ({ model, }) {
45
45
  var _a;
46
46
  const session = (0, util_1.getSession)(model);
47
47
  const { classes } = useStyles();
48
48
  const { assemblyNames, assemblyManager } = session;
49
- const { fileType, canCancel, fileSource, isReadyToOpen, fileTypes, hasColumnNameLine, error, } = model;
50
- const [selected, setSelected] = (0, react_1.useState)(assemblyNames[0]);
51
- const err = ((_a = assemblyManager.get(selected)) === null || _a === void 0 ? void 0 : _a.error) || error;
52
- const showRowControls = fileType === 'CSV' || fileType === 'TSV';
49
+ const { loading, fileType, fileSource, isReadyToOpen, fileTypes, error } = model;
50
+ const [selectedAssembly, setSelectedAssembly] = (0, react_1.useState)(assemblyNames[0]);
51
+ const [selectorType, setSelectorType] = (0, react_1.useState)('custom');
52
+ const err = ((_a = assemblyManager.get(selectedAssembly)) === null || _a === void 0 ? void 0 : _a.error) || error;
53
53
  const rootModel = (0, mobx_state_tree_1.getRoot)(model);
54
- return (react_1.default.createElement("div", { className: classes.container },
54
+ return (react_1.default.createElement("div", null,
55
55
  err ? react_1.default.createElement(ui_1.ErrorMessage, { error: err }) : null,
56
- react_1.default.createElement("div", null,
57
- react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
58
- react_1.default.createElement(material_1.FormLabel, { component: "legend" }, "Tabular file"),
59
- react_1.default.createElement(material_1.FormGroup, null,
60
- react_1.default.createElement(ui_1.FileSelector, { location: fileSource, setLocation: arg => {
61
- model.setFileSource(arg);
62
- }, rootModel: rootModel })))),
63
- react_1.default.createElement("div", null,
64
- react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
65
- react_1.default.createElement(material_1.FormLabel, { component: "legend" }, "File Type"),
66
- react_1.default.createElement(material_1.RadioGroup, { row: true, "aria-label": "file type", name: "type", value: fileType }, fileTypes.map(fileTypeName => (react_1.default.createElement(material_1.FormControlLabel, { key: fileTypeName, checked: fileType === fileTypeName, value: fileTypeName, onClick: () => {
67
- model.setFileType(fileTypeName);
68
- }, control: react_1.default.createElement(material_1.Radio, null), label: fileTypeName })))))),
69
- showRowControls ? (react_1.default.createElement("div", null,
70
- react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
71
- react_1.default.createElement(material_1.FormLabel, { component: "legend" }, "Column Names"),
72
- react_1.default.createElement(material_1.FormControlLabel, { disabled: !showRowControls, label: "has column names on line", labelPlacement: "end", control: react_1.default.createElement(material_1.Checkbox, { checked: hasColumnNameLine, onClick: () => {
73
- model.toggleHasColumnNameLine();
74
- } }) }),
75
- react_1.default.createElement(NumberEditor_1.default, { model: model, disabled: !hasColumnNameLine, modelPropName: "columnNameLineNumber", modelSetterName: "setColumnNameLineNumber" })))) : null,
76
- react_1.default.createElement("div", null,
77
- react_1.default.createElement(ui_1.AssemblySelector, { session: session, selected: selected, onChange: val => {
78
- setSelected(val);
79
- } })),
80
- react_1.default.createElement("div", null,
81
- canCancel ? (react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", onClick: () => {
82
- model.cancelButton();
83
- }, disabled: !canCancel }, "Cancel")) : null,
84
- ' ',
85
- react_1.default.createElement(material_1.Button, { disabled: !isReadyToOpen || !!err, variant: "contained", "data-testid": "open_spreadsheet", color: "primary", onClick: () => {
86
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
87
- model.import(selected);
88
- } }, "Open"))));
56
+ react_1.default.createElement(material_1.Paper, { className: classes.container },
57
+ loading ? react_1.default.createElement(ui_1.LoadingEllipses, { variant: "h6" }) : null,
58
+ react_1.default.createElement("div", null,
59
+ react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
60
+ react_1.default.createElement(material_1.RadioGroup, { row: true, "aria-label": "file type", name: "type", value: fileType, onChange: event => {
61
+ setSelectorType(event.target.value);
62
+ } }, Object.entries({
63
+ custom: 'Open file from URL or local computer',
64
+ existing: 'Open from track',
65
+ }).map(([key, val]) => (react_1.default.createElement(material_1.FormControlLabel, { key: key, checked: selectorType === key, value: key, control: react_1.default.createElement(material_1.Radio, null), label: val })))))),
66
+ selectorType === 'custom' ? (react_1.default.createElement("div", null,
67
+ react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
68
+ react_1.default.createElement(material_1.FormGroup, null,
69
+ react_1.default.createElement(ui_1.FileSelector, { inline: true, location: fileSource, rootModel: rootModel, setLocation: arg => {
70
+ model.setFileSource(arg);
71
+ } }))))) : selectedAssembly ? (react_1.default.createElement(TrackSelector_1.default, { model: model, selectedAssembly: selectedAssembly })) : (react_1.default.createElement("div", null, "Select assembly")),
72
+ react_1.default.createElement("div", null,
73
+ react_1.default.createElement(material_1.FormControl, { component: "fieldset" },
74
+ react_1.default.createElement(material_1.FormLabel, { component: "legend" }, "File Type"),
75
+ react_1.default.createElement(material_1.RadioGroup, { row: true, "aria-label": "file type", name: "type", value: fileType, onChange: event => {
76
+ model.setFileType(event.target.value);
77
+ } }, fileTypes.map(fileTypeName => (react_1.default.createElement(material_1.FormControlLabel, { key: fileTypeName, checked: fileType === fileTypeName, value: fileTypeName, control: react_1.default.createElement(material_1.Radio, null), label: fileTypeName })))))),
78
+ react_1.default.createElement("div", null,
79
+ react_1.default.createElement(ui_1.AssemblySelector, { session: session, selected: selectedAssembly, onChange: val => {
80
+ setSelectedAssembly(val);
81
+ } })),
82
+ react_1.default.createElement("div", null,
83
+ react_1.default.createElement(material_1.Button, { disabled: !isReadyToOpen || !!err, variant: "contained", "data-testid": "open_spreadsheet", color: "primary", onClick: () => {
84
+ model.import(selectedAssembly);
85
+ } }, "Open")))));
89
86
  });
90
87
  exports.default = ImportWizard;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
3
+ export default function LocationCell({ model, feature, }: {
4
+ model: {
5
+ assemblyName?: string;
6
+ };
7
+ feature: SimpleFeatureSerialized;
8
+ }): React.JSX.Element;