@jbrowse/plugin-data-management 2.13.0 → 2.14.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 (101) hide show
  1. package/dist/AddConnectionWidget/components/AddConnectionWidget.js +3 -1
  2. package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +3 -1
  3. package/dist/AddTrackWidget/components/AddTrackWidget.js +3 -1
  4. package/dist/AddTrackWidget/components/ConfirmTrack.js +10 -6
  5. package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +2 -3
  6. package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +6 -2
  7. package/dist/AddTrackWidget/components/TextIndexingConfig.js +16 -8
  8. package/dist/AddTrackWidget/components/TrackAdapterSelector.js +3 -1
  9. package/dist/AddTrackWidget/components/TrackTypeSelector.js +3 -1
  10. package/dist/AddTrackWidget/model.js +1 -1
  11. package/dist/AssemblyManager/AssemblyAddForm.d.ts +3 -2
  12. package/dist/AssemblyManager/AssemblyAddForm.js +38 -18
  13. package/dist/AssemblyManager/AssemblyManager.js +15 -5
  14. package/dist/AssemblyManager/AssemblyTable.js +3 -1
  15. package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +6 -2
  16. package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +13 -2
  17. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +7 -7
  18. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +4 -4
  19. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +6 -2
  20. package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +4 -2
  21. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +12 -4
  22. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +24 -8
  23. package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +8 -4
  24. package/dist/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +6 -2
  25. package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +36 -12
  26. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +9 -3
  27. package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -1
  28. package/dist/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +6 -2
  29. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +3 -1
  30. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +4 -2
  31. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +12 -4
  32. package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +3 -1
  33. package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +1 -1
  34. package/dist/HierarchicalTrackSelectorWidget/components/util.js +1 -1
  35. package/dist/HierarchicalTrackSelectorWidget/facetedModel.d.ts +1 -1
  36. package/dist/HierarchicalTrackSelectorWidget/facetedModel.js +1 -0
  37. package/dist/HierarchicalTrackSelectorWidget/model.d.ts +28 -1
  38. package/dist/HierarchicalTrackSelectorWidget/model.js +28 -1
  39. package/dist/PluginStoreWidget/components/AddCustomPluginDialog.js +15 -5
  40. package/dist/PluginStoreWidget/components/DeletePluginDialog.js +3 -1
  41. package/dist/PluginStoreWidget/components/InstalledPlugin.js +4 -3
  42. package/dist/PluginStoreWidget/components/PluginCard.js +1 -1
  43. package/dist/PluginStoreWidget/components/PluginStoreWidget.js +12 -4
  44. package/dist/PluginStoreWidget/model.d.ts +6 -0
  45. package/dist/PluginStoreWidget/model.js +18 -0
  46. package/dist/ucsc-trackhub/doConnect.d.ts +5 -1
  47. package/dist/ucsc-trackhub/doConnect.js +0 -1
  48. package/dist/ucsc-trackhub/model.d.ts +23 -3
  49. package/dist/ucsc-trackhub/ucscTrackHub.d.ts +7 -7
  50. package/dist/ucsc-trackhub/ucscTrackHub.js +8 -10
  51. package/esm/AddConnectionWidget/components/AddConnectionWidget.js +3 -1
  52. package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +3 -1
  53. package/esm/AddTrackWidget/components/AddTrackWidget.js +3 -1
  54. package/esm/AddTrackWidget/components/ConfirmTrack.js +10 -6
  55. package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +2 -3
  56. package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +6 -2
  57. package/esm/AddTrackWidget/components/TextIndexingConfig.js +16 -8
  58. package/esm/AddTrackWidget/components/TrackAdapterSelector.js +3 -1
  59. package/esm/AddTrackWidget/components/TrackTypeSelector.js +3 -1
  60. package/esm/AddTrackWidget/model.js +1 -1
  61. package/esm/AssemblyManager/AssemblyAddForm.d.ts +3 -2
  62. package/esm/AssemblyManager/AssemblyAddForm.js +38 -18
  63. package/esm/AssemblyManager/AssemblyManager.js +15 -5
  64. package/esm/AssemblyManager/AssemblyTable.js +3 -1
  65. package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +6 -2
  66. package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +13 -2
  67. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +7 -7
  68. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +4 -4
  69. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +6 -2
  70. package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +4 -2
  71. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +12 -4
  72. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +24 -8
  73. package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +8 -4
  74. package/esm/HierarchicalTrackSelectorWidget/components/tree/FavoriteTracks.js +6 -2
  75. package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +36 -12
  76. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +9 -3
  77. package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -1
  78. package/esm/HierarchicalTrackSelectorWidget/components/tree/RecentlyUsedTracks.js +6 -2
  79. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +3 -1
  80. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +4 -2
  81. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabelMenu.js +12 -4
  82. package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackListNode.js +3 -1
  83. package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +1 -1
  84. package/esm/HierarchicalTrackSelectorWidget/components/util.js +1 -1
  85. package/esm/HierarchicalTrackSelectorWidget/facetedModel.d.ts +1 -1
  86. package/esm/HierarchicalTrackSelectorWidget/facetedModel.js +1 -0
  87. package/esm/HierarchicalTrackSelectorWidget/model.d.ts +28 -1
  88. package/esm/HierarchicalTrackSelectorWidget/model.js +28 -1
  89. package/esm/PluginStoreWidget/components/AddCustomPluginDialog.js +15 -5
  90. package/esm/PluginStoreWidget/components/DeletePluginDialog.js +3 -1
  91. package/esm/PluginStoreWidget/components/InstalledPlugin.js +4 -3
  92. package/esm/PluginStoreWidget/components/PluginCard.js +1 -1
  93. package/esm/PluginStoreWidget/components/PluginStoreWidget.js +12 -4
  94. package/esm/PluginStoreWidget/model.d.ts +6 -0
  95. package/esm/PluginStoreWidget/model.js +18 -0
  96. package/esm/ucsc-trackhub/doConnect.d.ts +5 -1
  97. package/esm/ucsc-trackhub/doConnect.js +0 -1
  98. package/esm/ucsc-trackhub/model.d.ts +23 -3
  99. package/esm/ucsc-trackhub/ucscTrackHub.d.ts +7 -7
  100. package/esm/ucsc-trackhub/ucscTrackHub.js +8 -10
  101. package/package.json +3 -3
@@ -19,13 +19,12 @@ function LockedPlugin() {
19
19
  React.createElement(LockIcon, null)));
20
20
  }
21
21
  const InstalledPlugin = observer(function ({ plugin, model, }) {
22
- var _a;
23
22
  const [dialogPlugin, setDialogPlugin] = useState();
24
23
  const { pluginManager } = getEnv(model);
25
24
  const session = getSession(model);
26
25
  const { jbrowse, adminMode } = session;
27
26
  const isSessionPlugin = isSessionWithSessionPlugins(session)
28
- ? (_a = session.sessionPlugins) === null || _a === void 0 ? void 0 : _a.some(p => pluginManager.pluginMetadata[plugin.name].url === p.url)
27
+ ? session.sessionPlugins.some(p => { var _a; return ((_a = pluginManager.pluginMetadata[plugin.name]) === null || _a === void 0 ? void 0 : _a.url) === p.url; })
29
28
  : false;
30
29
  return (React.createElement(React.Fragment, null,
31
30
  dialogPlugin ? (React.createElement(Suspense, { fallback: null },
@@ -42,7 +41,9 @@ const InstalledPlugin = observer(function ({ plugin, model, }) {
42
41
  setDialogPlugin(undefined);
43
42
  } }))) : null,
44
43
  React.createElement(ListItem, { key: plugin.name },
45
- adminMode || isSessionPlugin ? (React.createElement(IconButton, { "data-testid": `removePlugin-${plugin.name}`, onClick: () => setDialogPlugin(plugin.name) },
44
+ adminMode || isSessionPlugin ? (React.createElement(IconButton, { "data-testid": `removePlugin-${plugin.name}`, onClick: () => {
45
+ setDialogPlugin(plugin.name);
46
+ } },
46
47
  React.createElement(CloseIcon, null))) : (React.createElement(LockedPlugin, null)),
47
48
  React.createElement(Typography, null, plugin.name))));
48
49
  });
@@ -30,10 +30,10 @@ const PluginCard = observer(function PluginCard({ plugin, model, adminMode, }) {
30
30
  const session = getSession(model);
31
31
  const { pluginManager } = getEnv(model);
32
32
  const { runtimePluginDefinitions } = pluginManager;
33
+ // @ts-expect-error
33
34
  const isInstalled = runtimePluginDefinitions.some(d => d.url === plugin.url);
34
35
  const [tempDisabled, setTempDisabled] = useState(false);
35
36
  const disableButton = isInstalled || tempDisabled;
36
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
37
37
  const rootModel = getParent(model, 3);
38
38
  const { jbrowse } = rootModel;
39
39
  return (React.createElement(Card, { variant: "outlined", key: plugin.name, className: classes.card },
@@ -45,12 +45,20 @@ const PluginStoreWidget = observer(function ({ model, }) {
45
45
  "You are using the ",
46
46
  React.createElement("code", null, "admin-server"),
47
47
  ". Any changes you make will be saved to your configuration file. You also have the ability to add custom plugins that are not in the store."))),
48
- React.createElement(Button, { className: classes.customPluginButton, variant: "contained", onClick: () => setOpen(true) }, "Add custom plugin"),
48
+ React.createElement(Button, { className: classes.customPluginButton, variant: "contained", onClick: () => {
49
+ setOpen(true);
50
+ } }, "Add custom plugin"),
49
51
  open ? (React.createElement(Suspense, { fallback: null },
50
- React.createElement(AddCustomPluginDialog, { onClose: () => setOpen(false), model: model }))) : null)),
51
- React.createElement(TextField, { label: "Filter plugins", value: model.filterText, onChange: event => model.setFilterText(event.target.value), fullWidth: true, InputProps: {
52
+ React.createElement(AddCustomPluginDialog, { onClose: () => {
53
+ setOpen(false);
54
+ }, model: model }))) : null)),
55
+ React.createElement(TextField, { label: "Filter plugins", value: model.filterText, onChange: event => {
56
+ model.setFilterText(event.target.value);
57
+ }, fullWidth: true, InputProps: {
52
58
  endAdornment: (React.createElement(InputAdornment, { position: "end" },
53
- React.createElement(IconButton, { onClick: () => model.clearFilterText() },
59
+ React.createElement(IconButton, { onClick: () => {
60
+ model.clearFilterText();
61
+ } },
54
62
  React.createElement(ClearIcon, null)))),
55
63
  } }),
56
64
  React.createElement(Accordion, { defaultExpanded: true },
@@ -6,7 +6,13 @@ export default function stateModelFactory(pluginManager: PluginManager): import(
6
6
  filterText: import("mobx-state-tree").IType<string | undefined, string, string>;
7
7
  view: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IReferenceType<import("mobx-state-tree").IAnyType>>;
8
8
  }, {
9
+ /**
10
+ * #action
11
+ */
9
12
  clearFilterText(): void;
13
+ /**
14
+ * #action
15
+ */
10
16
  setFilterText(newText: string): void;
11
17
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
12
18
  export type PluginStoreStateModel = ReturnType<typeof stateModelFactory>;
@@ -3,15 +3,33 @@ import { ElementId } from '@jbrowse/core/util/types/mst';
3
3
  export default function stateModelFactory(pluginManager) {
4
4
  return types
5
5
  .model('PluginStoreModel', {
6
+ /**
7
+ * #property
8
+ */
6
9
  id: ElementId,
10
+ /**
11
+ * #property
12
+ */
7
13
  type: types.literal('PluginStoreWidget'),
14
+ /**
15
+ * #property
16
+ */
8
17
  filterText: '',
18
+ /**
19
+ * #property
20
+ */
9
21
  view: types.safeReference(pluginManager.pluggableMstType('view', 'stateModel')),
10
22
  })
11
23
  .actions(self => ({
24
+ /**
25
+ * #action
26
+ */
12
27
  clearFilterText() {
13
28
  self.filterText = '';
14
29
  },
30
+ /**
31
+ * #action
32
+ */
15
33
  setFilterText(newText) {
16
34
  self.filterText = newText;
17
35
  },
@@ -1 +1,5 @@
1
- export declare function doConnect(self: any): Promise<void>;
1
+ import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ export declare function doConnect(self: {
3
+ configuration: AnyConfigurationModel;
4
+ addTrackConfs: (arg: Record<string, unknown>[]) => void;
5
+ }): Promise<void>;
@@ -7,7 +7,6 @@ import { nanoid } from '@jbrowse/core/util/nanoid';
7
7
  function resolve(uri, baseUri) {
8
8
  return new URL(uri, baseUri).href;
9
9
  }
10
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
10
  export async function doConnect(self) {
12
11
  var _a;
13
12
  const session = getSession(self);
@@ -56,9 +56,29 @@ export default function UCSCTrackHubConnection(pluginManager: PluginManager): im
56
56
  connect(_arg: import("@jbrowse/core/configuration").AnyConfigurationModel): void;
57
57
  } & {
58
58
  afterAttach(): void;
59
- addTrackConf(trackConf: import("@jbrowse/core/configuration").AnyConfigurationModel): any;
60
- addTrackConfs(trackConfs: import("@jbrowse/core/configuration").AnyConfigurationModel[]): any[];
61
- setTrackConfs(trackConfs: import("@jbrowse/core/configuration").AnyConfigurationModel[]): import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>>;
59
+ addTrackConf(trackConf: ({
60
+ [x: string]: any;
61
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
62
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
63
+ [x: string]: any;
64
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
65
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
66
+ [x: string]: any;
67
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
68
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
69
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>) | Record<string, unknown>): any;
70
+ addTrackConfs(trackConfs: (({
71
+ [x: string]: any;
72
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
73
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
74
+ [x: string]: any;
75
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
76
+ setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
77
+ [x: string]: any;
78
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
79
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
80
+ } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>) | Record<string, unknown>)[]): void;
81
+ setTrackConfs(trackConfs: import("@jbrowse/core/configuration").AnyConfigurationModel[]): void;
62
82
  clear(): void;
63
83
  } & {
64
84
  /**
@@ -35,8 +35,8 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
35
35
  trackId: string;
36
36
  assemblyNames: string[];
37
37
  type: string;
38
- name: string;
39
- description: string;
38
+ name: string | undefined;
39
+ description: string | undefined;
40
40
  category: string[];
41
41
  adapter: {
42
42
  type: string;
@@ -63,7 +63,7 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
63
63
  assemblyNames: string[];
64
64
  type: string;
65
65
  name: string;
66
- description: string;
66
+ description: string | undefined;
67
67
  category: string[];
68
68
  adapter: {
69
69
  type: string;
@@ -88,7 +88,7 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
88
88
  assemblyNames: string[];
89
89
  type: string;
90
90
  name: string;
91
- description: string;
91
+ description: string | undefined;
92
92
  category: string[];
93
93
  adapter: {
94
94
  type: string;
@@ -110,7 +110,7 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
110
110
  assemblyNames: string[];
111
111
  type: string;
112
112
  name: string;
113
- description: string;
113
+ description: string | undefined;
114
114
  category: string[];
115
115
  adapter: {
116
116
  type: string;
@@ -132,7 +132,7 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
132
132
  assemblyNames: string[];
133
133
  type: string;
134
134
  name: string;
135
- description: string;
135
+ description: string | undefined;
136
136
  category: string[];
137
137
  adapter: {
138
138
  type: string;
@@ -159,7 +159,7 @@ export declare function generateTracks({ trackDb, trackDbLoc, assemblyName, sequ
159
159
  assemblyNames: string[];
160
160
  type: string;
161
161
  name: string;
162
- description: string;
162
+ description: string | undefined;
163
163
  category: string[];
164
164
  adapter: {
165
165
  type: string;
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
1
  import { isUriLocation, notEmpty, objectHash, } from '@jbrowse/core/util';
3
2
  import { openLocation } from '@jbrowse/core/util/io';
4
3
  import { generateUnknownTrackConf } from '@jbrowse/core/util/tracks';
@@ -50,8 +49,7 @@ export function generateTracks({ trackDb, trackDbLoc, assemblyName, sequenceAdap
50
49
  do {
51
50
  currentTrackName = ((_a = trackDb.data[currentTrackName]) === null || _a === void 0 ? void 0 : _a.data.parent) || '';
52
51
  if (currentTrackName) {
53
- ;
54
- [currentTrackName] = currentTrackName.split(' ');
52
+ currentTrackName = currentTrackName.split(' ')[0];
55
53
  parentTracks.push(trackDb.data[currentTrackName]);
56
54
  }
57
55
  } while (currentTrackName);
@@ -81,7 +79,7 @@ function makeTrackConfig({ track, categories, trackDbLoc, trackDb, sequenceAdapt
81
79
  const bigDataUrl = track.data.bigDataUrl || '';
82
80
  const bigDataIdx = track.data.bigDataIndex || '';
83
81
  const isUri = isUriLocation(trackDbLoc);
84
- let baseTrackType = (trackType === null || trackType === void 0 ? void 0 : trackType.split(' ')[0]) || '';
82
+ let baseTrackType = trackType.split(' ')[0] || '';
85
83
  if (baseTrackType === 'bam' && bigDataUrl.toLowerCase().endsWith('cram')) {
86
84
  baseTrackType = 'cram';
87
85
  }
@@ -100,8 +98,8 @@ function makeTrackConfig({ track, categories, trackDbLoc, trackDb, sequenceAdapt
100
98
  bamLocation: bigDataLocation,
101
99
  index: {
102
100
  location: isUri
103
- ? makeLocAlt(bigDataIdx, bigDataUrl + '.bai', trackDbLoc)
104
- : makeLoc2(bigDataIdx, bigDataUrl + '.bai'),
101
+ ? makeLocAlt(bigDataIdx, `${bigDataUrl}.bai`, trackDbLoc)
102
+ : makeLoc2(bigDataIdx, `${bigDataUrl}.bai`),
105
103
  },
106
104
  },
107
105
  };
@@ -115,8 +113,8 @@ function makeTrackConfig({ track, categories, trackDbLoc, trackDb, sequenceAdapt
115
113
  type: 'CramAdapter',
116
114
  cramLocation: bigDataLocation,
117
115
  craiLocation: isUri
118
- ? makeLocAlt(bigDataIdx, bigDataUrl + '.crai', trackDbLoc)
119
- : makeLoc2(bigDataIdx, bigDataUrl + '.crai'),
116
+ ? makeLocAlt(bigDataIdx, `${bigDataUrl}.crai`, trackDbLoc)
117
+ : makeLoc2(bigDataIdx, `${bigDataUrl}.crai`),
120
118
  sequenceAdapter,
121
119
  },
122
120
  };
@@ -160,8 +158,8 @@ function makeTrackConfig({ track, categories, trackDbLoc, trackDb, sequenceAdapt
160
158
  vcfGzLocation: bigDataLocation,
161
159
  index: {
162
160
  location: isUri
163
- ? makeLocAlt(bigDataIdx, bigDataUrl + '.tbi', trackDbLoc)
164
- : makeLoc2(bigDataIdx, bigDataUrl + '.tbi'),
161
+ ? makeLocAlt(bigDataIdx, `${bigDataUrl}.tbi`, trackDbLoc)
162
+ : makeLoc2(bigDataIdx, `${bigDataUrl}.tbi`),
165
163
  },
166
164
  },
167
165
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-data-management",
3
- "version": "2.13.0",
3
+ "version": "2.14.0",
4
4
  "description": "JBrowse 2 linear genome view",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -24,7 +24,7 @@
24
24
  ],
25
25
  "scripts": {
26
26
  "build": "npm-run-all build:*",
27
- "test": "cd ../..; jest plugins/data-management",
27
+ "test": "cd ../..; jest --passWithNoTests plugins/data-management",
28
28
  "prepublishOnly": "yarn test",
29
29
  "prepack": "yarn build && yarn useDist",
30
30
  "postpack": "yarn useSrc",
@@ -60,5 +60,5 @@
60
60
  "distModule": "esm/index.js",
61
61
  "srcModule": "src/index.ts",
62
62
  "module": "esm/index.js",
63
- "gitHead": "efe02fb9616e20e929cceeed46eb96420c1b6923"
63
+ "gitHead": "9fb8231d932db40adf0a283081765431756c66ff"
64
64
  }