higlass 1.11.11 → 1.12.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 (113) hide show
  1. package/README.md +19 -10
  2. package/app/scripts/{AddTrackDialog.js → AddTrackDialog.jsx} +27 -26
  3. package/app/scripts/{AddTrackPositionMenu.js → AddTrackPositionMenu.jsx} +18 -15
  4. package/app/scripts/{Autocomplete.js → Autocomplete.jsx} +1 -0
  5. package/app/scripts/{Button.js → Button.jsx} +7 -6
  6. package/app/scripts/CenterTiledPlot.jsx +7 -0
  7. package/app/scripts/{CenterTrack.js → CenterTrack.jsx} +42 -41
  8. package/app/scripts/ChromosomeGrid.js +8 -16
  9. package/app/scripts/CloseTrackMenu.jsx +27 -0
  10. package/app/scripts/CombinedTrack.js +16 -1
  11. package/app/scripts/{ConfigTrackMenu.js → ConfigTrackMenu.jsx} +12 -12
  12. package/app/scripts/{ConfigViewMenu.js → ConfigViewMenu.jsx} +35 -36
  13. package/app/scripts/{ConfigureSeriesMenu.js → ConfigureSeriesMenu.jsx} +2 -2
  14. package/app/scripts/{ContextMenuContainer.js → ContextMenuContainer.jsx} +5 -7
  15. package/app/scripts/ContextMenuItem.jsx +37 -0
  16. package/app/scripts/Cross.jsx +9 -0
  17. package/app/scripts/CustomTrackDialog.jsx +38 -0
  18. package/app/scripts/DataFetcher.js +6 -6
  19. package/app/scripts/{Dialog.js → Dialog.jsx} +40 -31
  20. package/app/scripts/{DragListeningDiv.js → DragListeningDiv.jsx} +10 -12
  21. package/app/scripts/{DraggableDiv.js → DraggableDiv.jsx} +25 -24
  22. package/app/scripts/{ExportLinkDialog.js → ExportLinkDialog.jsx} +2 -2
  23. package/app/scripts/{FixedTrack.js → FixedTrack.jsx} +0 -0
  24. package/app/scripts/{GalleryTracks.js → GalleryTracks.jsx} +10 -9
  25. package/app/scripts/{GenomePositionSearchBox.js → GenomePositionSearchBox.jsx} +14 -16
  26. package/app/scripts/{HeatmapOptions.js → HeatmapOptions.jsx} +0 -0
  27. package/app/scripts/HeatmapTiledPixiTrack.js +18 -30
  28. package/app/scripts/{HiGlassComponent.js → HiGlassComponent.jsx} +206 -85
  29. package/app/scripts/{HiGlassTrackComponent.js → HiGlassTrackComponent.jsx} +0 -0
  30. package/app/scripts/HorizontalChromosomeLabels.js +3 -6
  31. package/app/scripts/HorizontalHeatmapTrack.js +2 -6
  32. package/app/scripts/{HorizontalItem.js → HorizontalItem.jsx} +0 -0
  33. package/app/scripts/HorizontalRule.js +2 -0
  34. package/app/scripts/{HorizontalTiledPlot.js → HorizontalTiledPlot.jsx} +20 -19
  35. package/app/scripts/{HorizontalTrack.js → HorizontalTrack.jsx} +0 -0
  36. package/app/scripts/LeftTrackModifier.js +8 -0
  37. package/app/scripts/{ListWrapper.js → ListWrapper.jsx} +0 -0
  38. package/app/scripts/{Modal.js → Modal.jsx} +14 -9
  39. package/app/scripts/{MoveableTrack.js → MoveableTrack.jsx} +0 -0
  40. package/app/scripts/{NestedContextMenu.js → NestedContextMenu.jsx} +6 -7
  41. package/app/scripts/OSMTilesTrack.js +2 -6
  42. package/app/scripts/OverlayTrack.js +2 -0
  43. package/app/scripts/{PlotTypeChooser.js → PlotTypeChooser.jsx} +0 -0
  44. package/app/scripts/{PopupMenu.js → PopupMenu.jsx} +1 -1
  45. package/app/scripts/SearchField.js +5 -3
  46. package/app/scripts/{SeriesListItems.js → SeriesListItems.jsx} +6 -6
  47. package/app/scripts/{SeriesListMenu.js → SeriesListMenu.jsx} +29 -32
  48. package/app/scripts/{SeriesListSubmenuMixin.js → SeriesListSubmenuMixin.jsx} +0 -0
  49. package/app/scripts/{SketchInlinePicker.js → SketchInlinePicker.jsx} +0 -0
  50. package/app/scripts/{SortableList.js → SortableList.jsx} +0 -0
  51. package/app/scripts/Tiled1DPixiTrack.js +2 -5
  52. package/app/scripts/TiledPixiTrack.js +3 -1
  53. package/app/scripts/{TiledPlot.js → TiledPlot.jsx} +45 -17
  54. package/app/scripts/{TilesetFinder.js → TilesetFinder.jsx} +7 -7
  55. package/app/scripts/Track.js +17 -1
  56. package/app/scripts/{TrackArea.js → TrackArea.jsx} +0 -0
  57. package/app/scripts/{TrackControl.js → TrackControl.jsx} +44 -50
  58. package/app/scripts/{TrackRenderer.js → TrackRenderer.jsx} +44 -38
  59. package/app/scripts/{VerticalItem.js → VerticalItem.jsx} +0 -0
  60. package/app/scripts/VerticalRule.js +1 -0
  61. package/app/scripts/{VerticalTiledPlot.js → VerticalTiledPlot.jsx} +27 -18
  62. package/app/scripts/{VerticalTrack.js → VerticalTrack.jsx} +0 -0
  63. package/app/scripts/{ViewConfigEditor.js → ViewConfigEditor.jsx} +66 -58
  64. package/app/scripts/{ViewContextMenu.js → ViewContextMenu.jsx} +13 -13
  65. package/app/scripts/{ViewHeader.js → ViewHeader.jsx} +24 -23
  66. package/app/scripts/ViewportTracker2D.js +1 -2
  67. package/app/scripts/ViewportTrackerHorizontal.js +1 -2
  68. package/app/scripts/ViewportTrackerVertical.js +1 -2
  69. package/app/scripts/api.js +17 -10
  70. package/app/scripts/configs/available-for-plugins.js +4 -3
  71. package/app/scripts/configs/index.js +1 -47
  72. package/app/scripts/configs/positions-by-datatype.js +2 -0
  73. package/app/scripts/configs/primitives.js +47 -0
  74. package/app/scripts/configs/tracks-info.js +2 -2
  75. package/app/scripts/d3-context-menu.js +1 -0
  76. package/app/scripts/data-fetchers/get-data-fetcher.js +7 -2
  77. package/app/scripts/{hglib.js → hglib.jsx} +1 -1
  78. package/app/scripts/hocs/{with-modal.js → with-modal.jsx} +0 -0
  79. package/app/scripts/hocs/{with-pub-sub.js → with-pub-sub.jsx} +0 -0
  80. package/app/scripts/hocs/{with-theme.js → with-theme.jsx} +0 -0
  81. package/app/scripts/{icons.js → icons.jsx} +22 -12
  82. package/app/scripts/mixwith.js +2 -0
  83. package/app/scripts/services/tile-proxy.js +1 -5
  84. package/app/scripts/utils/abs-to-chr.js +1 -1
  85. package/app/scripts/utils/dec-to-hex-str.js +1 -1
  86. package/app/scripts/utils/dict-items.js +0 -1
  87. package/app/scripts/utils/dict-keys.js +0 -1
  88. package/app/scripts/utils/dict-values.js +0 -1
  89. package/app/scripts/utils/index.js +1 -0
  90. package/app/scripts/utils/range-query-2d.js +4 -1
  91. package/app/scripts/utils/selected-items-to-size.js +2 -3
  92. package/app/scripts/utils/{test-helpers.js → test-helpers.jsx} +32 -10
  93. package/app/scripts/utils/timeout.js +4 -1
  94. package/app/scripts/utils/value-to-color.js +14 -17
  95. package/app/scripts/worker.js +8 -4
  96. package/app/styles/GenomePositionSearchBox.module.scss +13 -15
  97. package/app/styles/HiGlass.scss +5 -5
  98. package/app/styles/TilesetFinder.css +94 -74
  99. package/app/styles/TrackControl.module.scss +17 -20
  100. package/app/styles/TrackOptions.css +23 -24
  101. package/app/styles/ViewHeader.module.scss +18 -18
  102. package/dist/hglib.css +1724 -1
  103. package/dist/hglib.js +80471 -154092
  104. package/dist/hglib.min.js +382 -2
  105. package/dist/index.html +251 -250
  106. package/package.json +57 -117
  107. package/CHANGELOG.md +0 -1415
  108. package/app/index.html +0 -273
  109. package/app/scripts/CenterTiledPlot.js +0 -5
  110. package/app/scripts/CloseTrackMenu.js +0 -25
  111. package/app/scripts/ContextMenuItem.js +0 -35
  112. package/app/scripts/Cross.js +0 -7
  113. package/app/scripts/factories/index.js +0 -1
package/app/index.html DELETED
@@ -1,273 +0,0 @@
1
- <!DOCTYPE html>
2
- <head>
3
- <meta charset="utf-8">
4
- <meta name="viewport" content="width=device-width,initial-scale=1">
5
- <title>HiGlass</title>
6
- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
7
- <link rel="stylesheet" href="hglib.css">
8
-
9
- <style type="text/css">
10
- #demo {
11
- position: absolute;
12
- left: 1rem;
13
- top: 1rem;
14
- bottom: 1rem;
15
- right: 1rem;
16
- overflow: hidden;
17
- }
18
- </style>
19
-
20
- <script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
21
- <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
22
- <script crossorigin src="https://unpkg.com/pixi.js-legacy@5/dist/pixi-legacy.js"></script>
23
- <script src="https://cdnjs.cloudflare.com/ajax/libs/react-bootstrap/0.32.1/react-bootstrap.min.js"></script>
24
- </head>
25
- <body>
26
- <div id="demo"></div>
27
- </body>
28
- <script src='hglib.js'></script>
29
- <script>
30
- const viewConfig = {
31
- zoomFixed: false,
32
- views: [
33
- {
34
- layout: {
35
- w: 12,
36
- h: 7,
37
- x: 0,
38
- y: 0
39
- },
40
- uid: 'aa',
41
- initialYDomain: [
42
- 2534823997.9776945,
43
- 2547598956.834603
44
- ],
45
- initialXDomain: [
46
- 2521015726.4619913,
47
- 2558682921.8435397
48
- ],
49
- tracks: {
50
- left: [],
51
- top: [
52
- {
53
- uid: 'genes',
54
- tilesetUid: 'OHJakQICQD6gTD7skx4EWA',
55
- server: 'http://higlass.io/api/v1',
56
- type: 'horizontal-gene-annotations',
57
- height: 48,
58
- options: {
59
- labelColor: 'black',
60
- plusStrandColor: 'black',
61
- labelPosition: 'hidden',
62
- minusStrandColor: 'black',
63
- fontSize: 11,
64
- trackBorderWidth: 0,
65
- trackBorderColor: 'black',
66
- showMousePosition: true,
67
- mousePositionColor: '#000000',
68
- geneAnnotationHeight: 10,
69
- geneLabelPosition: 'outside',
70
- geneStrandSpacing: 4
71
- },
72
- },
73
- {
74
- uid: 'line1',
75
- tilesetUid: 'PjIJKXGbSNCalUZO21e_HQ',
76
- height: 20,
77
- server: 'http://higlass.io/api/v1',
78
- type: 'horizontal-line',
79
- options: {
80
- valueScaling: 'linear',
81
- lineStrokeWidth: 2,
82
- lineStrokeColor: '#4a35fc',
83
- labelPosition: 'topLeft',
84
- labelColor: 'black',
85
- axisPositionHorizontal: 'right',
86
- trackBorderWidth: 0,
87
- trackBorderColor: 'black',
88
- labelTextOpacity: 0.4,
89
- showMousePosition: true,
90
- mousePositionColor: '#000000',
91
- showTooltip: false
92
- }
93
- },
94
- {
95
- uid: 'line2',
96
- tilesetUid: 'PdAaSdibTLK34hCw7ubqKA',
97
- height: 20,
98
- server: 'http://higlass.io/api/v1',
99
- type: 'horizontal-line',
100
- options: {
101
- valueScaling: 'linear',
102
- lineStrokeWidth: 2,
103
- lineStrokeColor: '#d104fa',
104
- labelPosition: 'topLeft',
105
- labelColor: 'black',
106
- axisPositionHorizontal: 'right',
107
- trackBorderWidth: 0,
108
- trackBorderColor: 'black',
109
- labelTextOpacity: 0.4,
110
- showMousePosition: true,
111
- mousePositionColor: '#000000',
112
- showTooltip: false
113
- },
114
- },
115
- {
116
- uid: 'line3',
117
- tilesetUid: 'e0DYtZBSTqiMLHoaimsSpg',
118
- height: 20,
119
- server: 'http://higlass.io/api/v1',
120
- type: 'horizontal-line',
121
- options: {
122
- valueScaling: 'linear',
123
- lineStrokeWidth: 2,
124
- lineStrokeColor: '#ff0000',
125
- labelPosition: 'topLeft',
126
- labelColor: 'black',
127
- axisPositionHorizontal: 'right',
128
- trackBorderWidth: 0,
129
- trackBorderColor: 'black',
130
- labelTextOpacity: 0.4,
131
- showMousePosition: true,
132
- mousePositionColor: '#000000',
133
- showTooltip: false
134
- },
135
- },
136
- {
137
- uid: 'line4',
138
- tilesetUid: 'cE0nGyd0Q_yVYSyBUe89Ww',
139
- height: 20,
140
- server: 'http://higlass.io/api/v1',
141
- type: 'horizontal-line',
142
- options: {
143
- valueScaling: 'linear',
144
- lineStrokeWidth: 2,
145
- lineStrokeColor: 'orange',
146
- labelPosition: 'topLeft',
147
- labelColor: 'black',
148
- axisPositionHorizontal: 'right',
149
- trackBorderWidth: 0,
150
- trackBorderColor: 'black',
151
- labelTextOpacity: 0.4,
152
- showMousePosition: true,
153
- mousePositionColor: '#000000',
154
- showTooltip: false
155
- },
156
- },
157
- {
158
- uid: 'chroms',
159
- height: 18,
160
- chromInfoPath: '//s3.amazonaws.com/pkerp/data/hg19/chromSizes.tsv',
161
- type: 'horizontal-chromosome-labels',
162
- options: {
163
- color: '#777777',
164
- stroke: '#FFFFFF',
165
- fontSize: 11,
166
- fontIsLeftAligned: true,
167
- showMousePosition: true,
168
- mousePositionColor: '#000000'
169
- },
170
- }
171
- ],
172
- right: [],
173
- center: [
174
- {
175
- uid: 'center',
176
- type: 'combined',
177
- contents: [
178
- {
179
- server: 'http://higlass.io/api/v1',
180
- tilesetUid: 'dVBREuC2SvO01uXYMUh2aQ',
181
- type: 'heatmap',
182
- uid: 'Yqetzqw6Qfy-hREAJhAXEA',
183
- options: {
184
- backgroundColor: '#eeeeee',
185
- labelPosition: 'topLeft',
186
- labelTextOpacity: 0.4,
187
- colorRange: [
188
- 'white',
189
- 'rgba(245,166,35,1.0)',
190
- 'rgba(208,2,27,1.0)',
191
- 'black'
192
- ],
193
- maxZoom: null,
194
- colorbarPosition: 'topRight',
195
- trackBorderWidth: 0,
196
- trackBorderColor: 'black',
197
- heatmapValueScaling: 'log',
198
- showMousePosition: true,
199
- mousePositionColor: '#000000',
200
- showTooltip: true,
201
- scaleStartPercent: '0.00000',
202
- scaleEndPercent: '1.00000',
203
- showMousePositionGlobally: true,
204
- },
205
- }
206
- ],
207
- }
208
- ],
209
- bottom: [],
210
- whole: [],
211
- gallery: []
212
- },
213
- chromInfoPath: '//s3.amazonaws.com/pkerp/data/hg19/chromSizes.tsv',
214
- genomePositionSearchBox: {
215
- visible: true,
216
- chromInfoServer: 'http://higlass.io/api/v1',
217
- chromInfoId: 'hg19',
218
- autocompleteServer: 'http://higlass.io/api/v1',
219
- autocompleteId: 'OHJakQICQD6gTD7skx4EWA'
220
- }
221
- }
222
- ],
223
- editable: true,
224
- viewEditable: true,
225
- tracksEditable: true,
226
- exportViewUrl: '/api/v1/viewconfs',
227
- zoomLocks: {
228
- locksByViewUid: {},
229
- locksDict: {}
230
- },
231
- trackSourceServers: [
232
- 'http://higlass.io/api/v1'
233
- ],
234
- locationLocks: {
235
- locksByViewUid: {
236
- aa: 'PkNgAl3mSIqttnSsCewngw',
237
- ewZvJwlDSei_dbpIAkGMlg: 'PkNgAl3mSIqttnSsCewngw'
238
- },
239
- locksDict: {
240
- PkNgAl3mSIqttnSsCewngw: {
241
- aa: [
242
- 1550000000,
243
- 1550000000,
244
- 3380588.876772046
245
- ],
246
- ewZvJwlDSei_dbpIAkGMlg: [
247
- 1550000000.0000002,
248
- 1549999999.9999993,
249
- 3380588.876772046
250
- ],
251
- uid: 'PkNgAl3mSIqttnSsCewngw'
252
- }
253
- }
254
- },
255
- valueScaleLocks: {
256
- locksByViewUid: {},
257
- locksDict: {}
258
- }
259
- };
260
-
261
- const hgApi = hglib.viewer(
262
- document.getElementById('demo'),
263
- viewConfig,
264
- { bounded: true },
265
- );
266
-
267
- hgApi.setBroadcastMousePositionGlobally(true);
268
-
269
- hgApi.on('viewConfig', () => {
270
- console.log('View Config changed');
271
- });
272
- </script>
273
- </html>
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
-
3
- const CenterTiledPlot = () => <div className="center-plot" />;
4
-
5
- export default CenterTiledPlot;
@@ -1,25 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
-
4
- import ContextMenuItem from './ContextMenuItem';
5
- import { getSeriesItems } from './SeriesListItems';
6
-
7
- // Styles
8
- import '../styles/ContextMenu.module.scss';
9
-
10
- const CloseTrackMenu = (props) => (
11
- <div>
12
- {getSeriesItems(props.tracks, null, null, props.onCloseTrack)}
13
- <hr styleName="context-menu-hr" />
14
- <ContextMenuItem onClick={() => props.onCloseTrack(props.tracks[0].uid)}>
15
- {'Close all series'}
16
- </ContextMenuItem>
17
- </div>
18
- );
19
-
20
- CloseTrackMenu.propTypes = {
21
- onCloseTrack: PropTypes.func.isRequired,
22
- tracks: PropTypes.array.isRequired,
23
- };
24
-
25
- export default CloseTrackMenu;
@@ -1,35 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
-
4
- // Styles
5
- import '../styles/ContextMenu.module.scss';
6
-
7
- const ContextMenuItem = (props) => (
8
- <div
9
- data-menu-item-for={
10
- typeof props.children === 'string' ? props.children : null
11
- }
12
- onClick={(e) => props.onClick(e)}
13
- onMouseEnter={(e) => props.onMouseEnter(e)}
14
- onMouseLeave={(e) => props.onMouseLeave(e)}
15
- role="button"
16
- styleName="context-menu-item"
17
- tabIndex={0}
18
- >
19
- <span styleName="context-menu-span">{props.children}</span>
20
- </div>
21
- );
22
-
23
- ContextMenuItem.defaultProps = {
24
- onMouseEnter: () => undefined,
25
- onMouseLeave: () => undefined,
26
- };
27
-
28
- ContextMenuItem.propTypes = {
29
- children: PropTypes.node.isRequired,
30
- onClick: PropTypes.func.isRequired,
31
- onMouseEnter: PropTypes.func,
32
- onMouseLeave: PropTypes.func,
33
- };
34
-
35
- export default ContextMenuItem;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
-
3
- import '../styles/Cross.module.scss';
4
-
5
- const Cross = () => <div styleName="cross" />;
6
-
7
- export default Cross;
@@ -1 +0,0 @@
1
- export { default } from './LruCache';