higlass 1.12.2 → 1.12.4

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 (55) hide show
  1. package/app/scripts/BedLikeTrack.js +1 -1
  2. package/app/scripts/CenterTrack.jsx +1 -4
  3. package/app/scripts/ConfigViewMenu.jsx +2 -1
  4. package/app/scripts/HeatmapTiledPixiTrack.js +5 -3
  5. package/app/scripts/HorizontalGeneAnnotationsTrack.js +2 -1
  6. package/app/scripts/HorizontalTiledPlot.jsx +1 -4
  7. package/app/scripts/SeriesListMenu.jsx +2 -1
  8. package/app/scripts/TiledPixiTrack.js +1 -1
  9. package/app/scripts/TrackRenderer.jsx +6 -7
  10. package/app/scripts/VerticalTiledPlot.jsx +1 -4
  11. package/app/scripts/configs/README.md +3 -0
  12. package/app/scripts/configs/available-track-types.js +1 -1
  13. package/app/scripts/configs/datatype-to-track-type.js +1 -1
  14. package/app/scripts/configs/index.js +4 -3
  15. package/app/scripts/configs/positions-by-datatype.js +1 -1
  16. package/app/scripts/configs/tracks-info-by-type.js +1 -1
  17. package/app/scripts/{DataFetcher.js → data-fetchers/DataFetcher.js} +4 -5
  18. package/app/scripts/data-fetchers/README.md +3 -0
  19. package/app/scripts/data-fetchers/index.js +3 -0
  20. package/app/scripts/data-fetchers/local-tile-fetcher.js +1 -1
  21. package/app/scripts/hglib.jsx +3 -2
  22. package/app/scripts/hocs/with-modal.jsx +1 -1
  23. package/app/scripts/hocs/with-pub-sub.jsx +1 -1
  24. package/app/scripts/hocs/with-theme.jsx +1 -1
  25. package/app/scripts/{configs/options-info.js → options-info.js} +6 -2
  26. package/app/scripts/plugins/README.md +3 -0
  27. package/app/scripts/{configs → plugins}/available-for-plugins.js +21 -11
  28. package/app/scripts/{data-fetchers → plugins}/get-data-fetcher.js +7 -4
  29. package/app/scripts/plugins/index.js +2 -0
  30. package/app/scripts/services/README.md +1 -0
  31. package/app/scripts/services/element-resize-listener.js +1 -1
  32. package/app/scripts/services/index.js +1 -0
  33. package/app/scripts/services/tile-proxy.js +1 -1
  34. package/app/scripts/{worker.js → services/worker.js} +6 -4
  35. package/app/scripts/test-helpers/README.md +3 -0
  36. package/app/scripts/test-helpers/index.js +9 -0
  37. package/app/scripts/{utils → test-helpers}/test-helpers.jsx +1 -7
  38. package/app/scripts/{utils/track-utils.js → track-utils.js} +1 -1
  39. package/app/scripts/utils/DenseDataExtrema1D.js +1 -1
  40. package/app/scripts/utils/DenseDataExtrema2D.js +1 -1
  41. package/app/scripts/utils/README.md +3 -0
  42. package/app/scripts/utils/color-to-hex.js +1 -1
  43. package/app/scripts/utils/data-to-genomic-loci.js +1 -1
  44. package/app/scripts/utils/genome-loci-to-pixels.js +1 -1
  45. package/app/scripts/utils/get-element-dim.js +1 -1
  46. package/app/scripts/utils/index.js +8 -2
  47. package/app/scripts/{configs → utils}/is-track-range-selectable.js +1 -1
  48. package/app/scripts/utils/load-chrom-infos.js +1 -1
  49. package/app/scripts/utils/obj-vals.js +1 -1
  50. package/app/scripts/utils/show-mouse-position.js +1 -1
  51. package/dist/hglib.css +435 -435
  52. package/dist/hglib.js +25683 -25748
  53. package/dist/hglib.min.js +158 -158
  54. package/package.json +3 -3
  55. /package/app/scripts/{factories → utils}/LruCache.js +0 -0
@@ -5,6 +5,7 @@ import classifyPoint from 'robust-point-in-polygon';
5
5
  import { zoomIdentity } from 'd3-zoom';
6
6
 
7
7
  import HorizontalTiled1DPixiTrack from './HorizontalTiled1DPixiTrack';
8
+ import trackUtils from './track-utils';
8
9
 
9
10
  // Services
10
11
  import { tileProxy } from './services';
@@ -13,7 +14,6 @@ import {
13
14
  colorDomainToRgbaArray,
14
15
  colorToHex,
15
16
  segmentsToRows,
16
- trackUtils,
17
17
  valueToColor,
18
18
  } from './utils';
19
19
 
@@ -8,10 +8,7 @@ import clsx from 'clsx';
8
8
  import TrackControl from './TrackControl';
9
9
 
10
10
  // Utils
11
- import { or, resetD3BrushStyle } from './utils';
12
-
13
- // Configs
14
- import { IS_TRACK_RANGE_SELECTABLE } from './configs';
11
+ import { or, resetD3BrushStyle, IS_TRACK_RANGE_SELECTABLE } from './utils';
15
12
 
16
13
  // Styles
17
14
  import styles from '../styles/CenterTrack.module.scss'; // eslint-disable-line no-unused-vars
@@ -9,7 +9,8 @@ import NestedContextMenu from './NestedContextMenu';
9
9
  // Styles
10
10
  import classes from '../styles/ContextMenu.module.scss';
11
11
 
12
- import { OPTIONS_INFO, THEME_DARK } from './configs';
12
+ import { THEME_DARK } from './configs';
13
+ import OPTIONS_INFO from './options-info';
13
14
 
14
15
  class ConfigViewMenu extends ContextMenuContainer {
15
16
  constructor(props) {
@@ -23,9 +23,11 @@ import AxisPixi from './AxisPixi';
23
23
  // Services
24
24
  import { tileProxy } from './services';
25
25
 
26
- import { GLOBALS, HEATED_OBJECT_MAP } from './configs';
27
-
28
- import { NUM_PRECOMP_SUBSETS_PER_2D_TTILE } from './configs/dense-data-extrema-config';
26
+ import {
27
+ GLOBALS,
28
+ HEATED_OBJECT_MAP,
29
+ NUM_PRECOMP_SUBSETS_PER_2D_TTILE,
30
+ } from './configs';
29
31
 
30
32
  const COLORBAR_MAX_HEIGHT = 200;
31
33
  const COLORBAR_WIDTH = 10;
@@ -11,7 +11,8 @@ import HorizontalTiled1DPixiTrack from './HorizontalTiled1DPixiTrack';
11
11
  import { tileProxy } from './services';
12
12
 
13
13
  // Utils
14
- import { colorToHex, trackUtils } from './utils';
14
+ import { colorToHex } from './utils';
15
+ import trackUtils from './track-utils';
15
16
 
16
17
  // these are default values that are overwritten by the track's options
17
18
  const FONT_SIZE = 11;
@@ -10,10 +10,7 @@ import HorizontalItem from './HorizontalItem';
10
10
  import SortableList from './SortableList';
11
11
 
12
12
  // Utils
13
- import { or, resetD3BrushStyle, sum } from './utils';
14
-
15
- // Configs
16
- import { IS_TRACK_RANGE_SELECTABLE } from './configs';
13
+ import { or, resetD3BrushStyle, sum, IS_TRACK_RANGE_SELECTABLE } from './utils';
17
14
 
18
15
  // Styles
19
16
  import styles from '../styles/HorizontalTiledPlot.module.scss'; // eslint-disable-line no-unused-vars
@@ -6,7 +6,8 @@ import ContextMenuItem from './ContextMenuItem';
6
6
  import NestedContextMenu from './NestedContextMenu';
7
7
 
8
8
  // Configs
9
- import { OPTIONS_INFO, THEME_DARK, TRACKS_INFO_BY_TYPE } from './configs';
9
+ import { THEME_DARK, TRACKS_INFO_BY_TYPE } from './configs';
10
+ import OPTIONS_INFO from './options-info';
10
11
 
11
12
  // Styles
12
13
  import classes from '../styles/ContextMenu.module.scss';
@@ -2,7 +2,7 @@ import { scaleLinear, scaleLog, scaleQuantile } from 'd3-scale';
2
2
  import { median, range, ticks } from 'd3-array';
3
3
  import slugid from 'slugid';
4
4
 
5
- import DataFetcher from './DataFetcher';
5
+ import { DataFetcher } from './data-fetchers';
6
6
  import PixiTrack from './PixiTrack';
7
7
 
8
8
  // Utils
@@ -61,7 +61,6 @@ import SVGTrack from './SVGTrack';
61
61
 
62
62
  // Higher-order components
63
63
  import withPubSub from './hocs/with-pub-sub';
64
- import getDataFetcher from './data-fetchers/get-data-fetcher';
65
64
  import withTheme from './hocs/with-theme';
66
65
 
67
66
  // Utils
@@ -74,16 +73,16 @@ import {
74
73
  } from './utils';
75
74
 
76
75
  // Configs
77
- import {
78
- AVAILABLE_FOR_PLUGINS,
79
- GLOBALS,
80
- THEME_DARK,
81
- TRACKS_INFO_BY_TYPE,
82
- } from './configs';
76
+ import { GLOBALS, THEME_DARK, TRACKS_INFO_BY_TYPE } from './configs';
77
+
78
+ // Plugins
79
+ import { AVAILABLE_FOR_PLUGINS } from './plugins';
83
80
 
84
81
  // Styles
85
82
  import classes from '../styles/TrackRenderer.module.scss';
86
83
 
84
+ const { getDataFetcher } = AVAILABLE_FOR_PLUGINS.dataFetchers;
85
+
87
86
  const SCROLL_TIMEOUT = 100;
88
87
 
89
88
  class TrackRenderer extends React.Component {
@@ -12,10 +12,7 @@ import VerticalItem from './VerticalItem';
12
12
  import SortableList from './SortableList';
13
13
 
14
14
  // Utils
15
- import { or, resetD3BrushStyle, sum } from './utils';
16
-
17
- // Configs
18
- import { IS_TRACK_RANGE_SELECTABLE } from './configs';
15
+ import { or, resetD3BrushStyle, sum, IS_TRACK_RANGE_SELECTABLE } from './utils';
19
16
 
20
17
  // Styles
21
18
  import styles from '../styles/VerticalTiledPlot.module.scss'; // eslint-disable-line no-unused-vars
@@ -0,0 +1,3 @@
1
+ # configs
2
+
3
+ This folder contains constant values that determine the visual parameters and options of HiGlass tracks and views.
@@ -1,4 +1,4 @@
1
- import { DATATYPE_TO_TRACK_TYPE } from '.';
1
+ import { DATATYPE_TO_TRACK_TYPE } from './datatype-to-track-type';
2
2
 
3
3
  /**
4
4
  * Return a list of the available track types, given a set of data types
@@ -1,4 +1,4 @@
1
- import { TRACKS_INFO } from '.';
1
+ import { TRACKS_INFO } from './tracks-info';
2
2
 
3
3
  export const DATATYPE_TO_TRACK_TYPE = (orientation) => {
4
4
  const localDatatypeToTrackType = {};
@@ -11,11 +11,12 @@ export { THEME_LIGHT, THEME_DARK, THEME_DEFAULT } from './themes';
11
11
  export { default as GLOBALS } from './globals';
12
12
  export { default as DATATYPE_TO_TRACK_TYPE } from './datatype-to-track-type';
13
13
  export { default as HEATED_OBJECT_MAP } from './colormaps';
14
- export { default as IS_TRACK_RANGE_SELECTABLE } from './is-track-range-selectable';
15
- export { default as OPTIONS_INFO } from './options-info';
16
14
  export { default as TRACKS_INFO } from './tracks-info';
17
15
  export { default as TRACKS_INFO_BY_TYPE } from './tracks-info-by-type';
18
16
  export { default as POSITIONS_BY_DATATYPE } from './positions-by-datatype';
19
17
  export { default as DEFAULT_TRACKS_FOR_DATATYPE } from './default-tracks-for-datatype';
20
- export { default as AVAILABLE_FOR_PLUGINS } from './available-for-plugins';
21
18
  export { default as AVAILABLE_TRACK_TYPES } from './available-track-types';
19
+ export {
20
+ NUM_PRECOMP_SUBSETS_PER_1D_TTILE,
21
+ NUM_PRECOMP_SUBSETS_PER_2D_TTILE,
22
+ } from './dense-data-extrema-config';
@@ -1,4 +1,4 @@
1
- import { TRACKS_INFO } from '.';
1
+ import { TRACKS_INFO } from './tracks-info';
2
2
 
3
3
  export const POSITIONS_BY_DATATYPE = TRACKS_INFO.reduce(
4
4
  (positionsByDatatype, track) => {
@@ -1,4 +1,4 @@
1
- import { TRACKS_INFO } from '.';
1
+ import { TRACKS_INFO } from './tracks-info';
2
2
 
3
3
  export const TRACKS_INFO_BY_TYPE = TRACKS_INFO.reduce((tracksByType, track) => {
4
4
  tracksByType[track.type] = track;
@@ -5,13 +5,12 @@ import {
5
5
  dictValues,
6
6
  minNonZero,
7
7
  maxNonZero,
8
- } from './utils';
9
-
10
- import DenseDataExtrema1D from './utils/DenseDataExtrema1D';
11
- import DenseDataExtrema2D from './utils/DenseDataExtrema2D';
8
+ DenseDataExtrema1D,
9
+ DenseDataExtrema2D,
10
+ } from '../utils';
12
11
 
13
12
  // Services
14
- import { tileProxy } from './services';
13
+ import { tileProxy } from '../services';
15
14
 
16
15
  export default class DataFetcher {
17
16
  constructor(dataConfig, pubSub) {
@@ -0,0 +1,3 @@
1
+ # data-fetchers
2
+
3
+ This folder contains code related to HiGlass data fetchers.
@@ -0,0 +1,3 @@
1
+ export { default as DataFetcher } from './DataFetcher';
2
+ export { default as GBKDataFetcher } from './genbank-fetcher';
3
+ export { default as LocalDataFetcher } from './local-tile-fetcher';
@@ -1,4 +1,4 @@
1
- import { tileResponseToData } from '../worker';
1
+ import { tileResponseToData } from '../services';
2
2
 
3
3
  class LocalTileDataFetcher {
4
4
  constructor(dataConfig) {
@@ -29,8 +29,9 @@ export {
29
29
  waitForTilesLoaded,
30
30
  waitForTransitionsFinished,
31
31
  mountHGComponent,
32
- getTrackObjectFromHGC,
33
- } from './utils';
32
+ } from './test-helpers';
33
+
34
+ export { getTrackObjectFromHGC } from './utils';
34
35
 
35
36
  export { version } from '../../package.json';
36
37
 
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
 
3
- import toVoid from '../utils/to-void';
3
+ import { toVoid } from '../utils';
4
4
 
5
5
  const { Provider, Consumer } = React.createContext({
6
6
  close: toVoid,
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
 
3
- import toVoid from '../utils/to-void';
3
+ import { toVoid } from '../utils';
4
4
 
5
5
  const fake = {
6
6
  __fake__: true,
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
 
3
- import toVoid from '../utils/to-void';
3
+ import { toVoid } from '../utils';
4
4
 
5
5
  const { Provider, Consumer } = React.createContext({
6
6
  close: toVoid,
@@ -1,6 +1,10 @@
1
+ // A better position of this file would be under \configs,
2
+ // but this file imports HeatmapOptions that contains React
3
+ // components, so having this file near track implementations
4
+
1
5
  import { formatPrefix, precisionPrefix } from 'd3-format';
2
6
 
3
- import HeatmapOptions from '../HeatmapOptions';
7
+ import HeatmapOptions from './HeatmapOptions';
4
8
 
5
9
  const valueColumnOptions = (track) => {
6
10
  if (!track.header) return [];
@@ -59,7 +63,7 @@ const OPACITY_OPTIONS_NO_ZERO = sizesInPx([0.2, 0.4, 0.6, 0.8, 1.0], '%', 100);
59
63
 
60
64
  // these values define the options that are visible in the track config
61
65
  // menu
62
- export const OPTIONS_INFO = {
66
+ const OPTIONS_INFO = {
63
67
  axisLabelFormatting: {
64
68
  name: 'Axis Label Formatting',
65
69
  inlineOptions: {
@@ -0,0 +1,3 @@
1
+ # plugins
2
+
3
+ This folder contains code that are used by plugin tracks and data fetchers.
@@ -21,12 +21,6 @@ import * as d3Zoom from 'd3-zoom';
21
21
  import slugid from 'slugid';
22
22
  import { mix } from '../mixwith';
23
23
 
24
- // Configs
25
- import * as configs from '.';
26
-
27
- // Utils
28
- import * as utils from '../utils';
29
-
30
24
  // Tracks
31
25
  import Annotations1dTrack from '../Annotations1dTrack';
32
26
  import Annotations2dTrack from '../Annotations2dTrack';
@@ -81,8 +75,7 @@ import ViewportTrackerVertical from '../ViewportTrackerVertical';
81
75
 
82
76
  // Factories
83
77
  import ContextMenuItem from '../ContextMenuItem';
84
- import DataFetcher from '../DataFetcher';
85
- import LruCache from '../factories/LruCache';
78
+ import LruCache from '../utils/LruCache';
86
79
 
87
80
  // Services
88
81
  import * as services from '../services';
@@ -92,12 +85,29 @@ import ChromosomeInfo from '../ChromosomeInfo';
92
85
  import SearchField from '../SearchField';
93
86
 
94
87
  // Data Fetchers
95
- import GBKDataFetcher from '../data-fetchers/genbank-fetcher';
96
- import LocalDataFetcher from '../data-fetchers/local-tile-fetcher';
97
- import getDataFetcher from '../data-fetchers/get-data-fetcher';
88
+ import {
89
+ DataFetcher,
90
+ GBKDataFetcher,
91
+ LocalDataFetcher,
92
+ } from '../data-fetchers';
93
+ import getDataFetcher from './get-data-fetcher';
98
94
 
99
95
  import { version } from '../../../package.json';
100
96
 
97
+ // Utils
98
+ import * as utils from '../utils';
99
+
100
+ // Configs
101
+ import * as _configs from '../configs';
102
+
103
+ import OPTIONS_INFO from '../options-info';
104
+
105
+ const configs = {
106
+ ..._configs,
107
+ IS_TRACK_RANGE_SELECTABLE: utils.IS_TRACK_RANGE_SELECTABLE,
108
+ OPTIONS_INFO,
109
+ };
110
+
101
111
  const libraries = {
102
112
  d3Array,
103
113
  d3Axis,
@@ -1,7 +1,10 @@
1
- import GBKDataFetcher from './genbank-fetcher';
2
- import LocalDataFetcher from './local-tile-fetcher';
3
- import DataFetcher from '../DataFetcher';
4
- import { AVAILABLE_FOR_PLUGINS } from '../configs';
1
+ import {
2
+ DataFetcher,
3
+ GBKDataFetcher,
4
+ LocalDataFetcher,
5
+ } from '../data-fetchers';
6
+ // TODO: we need to address this cyclic dependency
7
+ import { AVAILABLE_FOR_PLUGINS } from '.';
5
8
 
6
9
  const getDataFetcher = (
7
10
  dataConfig,
@@ -0,0 +1,2 @@
1
+ export { default as getDataFetcher } from './get-data-fetcher';
2
+ export { default as AVAILABLE_FOR_PLUGINS } from './available-for-plugins';
@@ -0,0 +1 @@
1
+ # services
@@ -1,4 +1,4 @@
1
- import getXylofon from '../utils/get-xylofon';
1
+ import { getXylofon } from '../utils';
2
2
 
3
3
  let isInit = false;
4
4
 
@@ -8,3 +8,4 @@ export {
8
8
  getTileProxyAuthHeader,
9
9
  authHeader,
10
10
  } from './tile-proxy';
11
+ export { tileResponseToData } from './worker';
@@ -1,7 +1,7 @@
1
1
  import { range } from 'd3-array';
2
2
  import slugid from 'slugid';
3
3
 
4
- import { workerGetTiles, workerSetPix } from '../worker';
4
+ import { workerGetTiles, workerSetPix } from './worker';
5
5
 
6
6
  import { trimTrailingSlash as tts, timeout as sleep } from '../utils';
7
7
 
@@ -1,8 +1,10 @@
1
1
  import { scaleLog, scaleLinear } from 'd3-scale';
2
- import getAggregationFunction from './utils/get-aggregation-function';
3
- import selectedItemsToSize from './utils/selected-items-to-size';
4
- import DenseDataExtrema1D from './utils/DenseDataExtrema1D';
5
- import DenseDataExtrema2D from './utils/DenseDataExtrema2D';
2
+ import {
3
+ DenseDataExtrema1D,
4
+ DenseDataExtrema2D,
5
+ getAggregationFunction,
6
+ selectedItemsToSize,
7
+ } from '../utils';
6
8
 
7
9
  /*
8
10
  function countTransform(count) {
@@ -0,0 +1,3 @@
1
+ # test-helpers
2
+
3
+ Several useful methods for running tests. In this project, these methods are only used in tests, but plugin tracks also make use of them, so not really extraneous.
@@ -0,0 +1,9 @@
1
+ export {
2
+ changeOptions,
3
+ waitForJsonComplete,
4
+ waitForTilesLoaded,
5
+ waitForTransitionsFinished,
6
+ mountHGComponent,
7
+ mountHGComponentAsync,
8
+ removeHGComponent,
9
+ } from './test-helpers';
@@ -1,6 +1,3 @@
1
- // In this project, these methods are only used in tests,
2
- // but plugin tracks also make use of them... so not really extraneous.
3
-
4
1
  import React from 'react';
5
2
  import ReactDOM from 'react-dom';
6
3
 
@@ -9,10 +6,7 @@ import { mount } from 'enzyme';
9
6
 
10
7
  import { requestsInFlight } from '../services';
11
8
 
12
- import {
13
- getTrackObjectFromHGC,
14
- getTrackRenderer,
15
- } from './get-higlass-components';
9
+ import { getTrackObjectFromHGC, getTrackRenderer } from '../utils';
16
10
 
17
11
  import HiGlassComponent from '../HiGlassComponent';
18
12
 
@@ -1,5 +1,5 @@
1
1
  import { zoomIdentity } from 'd3-zoom';
2
- import AxisPixi from '../AxisPixi';
2
+ import AxisPixi from './AxisPixi';
3
3
 
4
4
  /**
5
5
  * The d3.range and python range functinons. Returns
@@ -1,4 +1,4 @@
1
- import { NUM_PRECOMP_SUBSETS_PER_1D_TTILE } from '../configs/dense-data-extrema-config';
1
+ import { NUM_PRECOMP_SUBSETS_PER_1D_TTILE } from '../configs';
2
2
 
3
3
  class DenseDataExtrema1D {
4
4
  /**
@@ -1,6 +1,6 @@
1
1
  import ndarray from 'ndarray';
2
2
 
3
- import { NUM_PRECOMP_SUBSETS_PER_2D_TTILE } from '../configs/dense-data-extrema-config';
3
+ import { NUM_PRECOMP_SUBSETS_PER_2D_TTILE } from '../configs';
4
4
 
5
5
  class DenseDataExtrema2D {
6
6
  /**
@@ -0,0 +1,3 @@
1
+ # utils
2
+
3
+ This folder contains helpful functions that are commonly used.
@@ -1,7 +1,7 @@
1
1
  import { color } from 'd3-color';
2
2
 
3
3
  // Configs
4
- import GLOBALS from '../configs/globals';
4
+ import { GLOBALS } from '../configs';
5
5
 
6
6
  /**
7
7
  * Convert a regular color value (e.g. 'red', '#FF0000', 'rgb(255,0,0)') to a
@@ -1,4 +1,4 @@
1
- import { absToChr } from '.';
1
+ import absToChr from './abs-to-chr';
2
2
 
3
3
  const dataToGenomicLoci = (x0, x1, chromInfo) => {
4
4
  const gX0 = absToChr(x0, chromInfo);
@@ -1,4 +1,4 @@
1
- import { chrToAbs } from '.';
1
+ import chrToAbs from './chr-to-abs';
2
2
 
3
3
  const genomeLociToPixels = (genomeLoci, chromInfo) => [
4
4
  chrToAbs(genomeLoci[0], genomeLoci[1], chromInfo),
@@ -1,4 +1,4 @@
1
- import ElementResizeListener from '../services/element-resize-listener';
1
+ import { ElementResizeListener } from '../services';
2
2
 
3
3
  const getElementDim = (element) => {
4
4
  ElementResizeListener.listen();
@@ -78,15 +78,20 @@ export { default as expandCombinedTracks } from './expand-combined-tracks';
78
78
  export { default as segmentsToRows } from './segments-to-rows';
79
79
  export { default as visitPositionedTracks } from './visit-positioned-tracks';
80
80
  export { default as visitTracks } from './visit-tracks';
81
- export { default as trackUtils } from './track-utils';
82
81
  export { default as DenseDataExtrema1D } from './DenseDataExtrema1D';
83
82
  export { default as DenseDataExtrema2D } from './DenseDataExtrema2D';
83
+ export { default as getAggregationFunction } from './get-aggregation-function';
84
+ export { default as selectedItemsToSize } from './selected-items-to-size';
85
+ export { default as IS_TRACK_RANGE_SELECTABLE } from './is-track-range-selectable';
84
86
 
85
87
  export {
86
88
  getTrackObjectFromHGC,
87
89
  getTrackRenderer,
88
90
  getTiledPlot,
89
91
  } from './get-higlass-components';
92
+
93
+ // We want to remove following lines eventually. However, we need these at the moment since
94
+ // available-for-plugins.js complains about uninitialized objects due to the current cyclic dependencies.
90
95
  export {
91
96
  changeOptions,
92
97
  waitForJsonComplete,
@@ -95,4 +100,5 @@ export {
95
100
  mountHGComponent,
96
101
  mountHGComponentAsync,
97
102
  removeHGComponent,
98
- } from './test-helpers';
103
+ } from '../test-helpers';
104
+ export { default as trackUtils } from '../track-utils';
@@ -1,4 +1,4 @@
1
- import { or } from '../utils';
1
+ import or from './or';
2
2
 
3
3
  export const IS_TRACK_RANGE_SELECTABLE = (track) => {
4
4
  switch (track.type) {
@@ -1,6 +1,6 @@
1
1
  import { chromInfo } from '../services';
2
2
 
3
- import { objVals } from '.';
3
+ import objVals from './obj-vals';
4
4
 
5
5
  const loadChromInfos = (views) =>
6
6
  objVals(views)
@@ -1,4 +1,4 @@
1
- import { map } from '.';
1
+ import map from './map';
2
2
 
3
3
  /**
4
4
  * Convert an object into array which entries are the prop values of the object
@@ -1,6 +1,6 @@
1
1
  import { globalPubSub } from 'pub-sub-es';
2
2
 
3
- import { hexStrToInt } from '.';
3
+ import hexStrToInt from './hex-string-to-int';
4
4
 
5
5
  // Configs
6
6
  import { GLOBALS } from '../configs';