genoverse 3.2.0 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +93 -162
- package/.github/workflows/test.yml +9 -10
- package/.github/workflows/update-gh-pages.yml +33 -0
- package/LICENSE.TXT +2 -2
- package/README.md +174 -3
- package/{i → assets}/sort_handle.png +0 -0
- package/babel.config.js +19 -0
- package/dist/129.css +334 -0
- package/dist/129.css.map +1 -0
- package/dist/129.genoverse.js +2 -0
- package/dist/129.genoverse.js.map +1 -0
- package/dist/15d98c18221c8bcb2334.ttf +0 -0
- package/dist/166.css +2 -0
- package/dist/166.genoverse.js +1 -0
- package/dist/216.css +20 -0
- package/dist/216.css.map +1 -0
- package/dist/232.css +114 -0
- package/dist/232.css.map +1 -0
- package/dist/232.genoverse.js +2 -0
- package/dist/232.genoverse.js.map +1 -0
- package/dist/2e659e443f3e98569e9f.png +0 -0
- package/dist/394.css +114 -0
- package/dist/394.css.map +1 -0
- package/dist/394.genoverse.js +2 -0
- package/dist/394.genoverse.js.map +1 -0
- package/dist/469.css +24 -0
- package/dist/469.css.map +1 -0
- package/dist/469.genoverse.js +2 -0
- package/dist/469.genoverse.js.map +1 -0
- package/dist/4896d4b04430cc3dfb06.woff2 +0 -0
- package/dist/530.css +39 -0
- package/dist/530.css.map +1 -0
- package/dist/530.genoverse.js +2 -0
- package/dist/530.genoverse.js.map +1 -0
- package/dist/547.css +469 -0
- package/dist/547.css.map +1 -0
- package/dist/547.genoverse.js +1 -0
- package/dist/729.css +315 -0
- package/dist/729.css.map +1 -0
- package/dist/79da213423ac0def2058.ttf +0 -0
- package/dist/804.genoverse.js +2 -0
- package/dist/804.genoverse.js.map +1 -0
- package/dist/842.genoverse.js +2 -0
- package/dist/842.genoverse.js.map +1 -0
- package/dist/893.genoverse.js +2 -0
- package/dist/893.genoverse.js.map +1 -0
- package/dist/949.css +315 -0
- package/dist/949.css.map +1 -0
- package/dist/949.genoverse.js +2 -0
- package/dist/949.genoverse.js.map +1 -0
- package/dist/952.css +315 -0
- package/dist/952.css.map +1 -0
- package/dist/952.genoverse.js +2 -0
- package/dist/952.genoverse.js.map +1 -0
- package/dist/d79c2ec96ab9ff1161a2.woff2 +0 -0
- package/dist/genoverse.js +2 -0
- package/dist/genoverse.js.map +1 -0
- package/index.html +13 -14
- package/jest.config.js +5 -0
- package/jest.setup.js +13 -0
- package/package.json +29 -12
- package/{css → src/css}/controlPanel.css +0 -0
- package/{css → src/css}/fileDrop.css +0 -0
- package/src/css/fontawesome.css +3 -0
- package/{css → src/css}/fullscreen.css +0 -0
- package/{css → src/css}/genoverse.css +1 -1
- package/{css → src/css}/karyotype.css +2 -0
- package/{css → src/css}/resizer.css +0 -0
- package/{css → src/css}/tooltips.css +0 -0
- package/{css → src/css}/trackControls.css +0 -0
- package/src/js/Genoverse.js +1747 -0
- package/{js → src/js}/Track/Controller/Sequence.js +6 -4
- package/src/js/Track/Controller/Stranded.js +83 -0
- package/{js → src/js}/Track/Controller.js +201 -160
- package/src/js/Track/Model/File/BAM.js +47 -0
- package/src/js/Track/Model/File/BED.js +122 -0
- package/src/js/Track/Model/File/GFF.js +42 -0
- package/src/js/Track/Model/File/VCF.js +109 -0
- package/src/js/Track/Model/File/WIG.js +82 -0
- package/src/js/Track/Model/File.js +36 -0
- package/src/js/Track/Model/Gene/Ensembl.js +24 -0
- package/{js → src/js}/Track/Model/Gene.js +3 -1
- package/src/js/Track/Model/Sequence/Ensembl.js +6 -0
- package/{js → src/js}/Track/Model/Sequence/Fasta.js +24 -17
- package/{js → src/js}/Track/Model/Sequence.js +10 -7
- package/{js → src/js}/Track/Model/SequenceVariation.js +17 -11
- package/{js → src/js}/Track/Model/Stranded.js +11 -8
- package/src/js/Track/Model/Transcript/Ensembl.js +73 -0
- package/{js → src/js}/Track/Model/Transcript.js +3 -1
- package/{js → src/js}/Track/Model.js +125 -93
- package/{js → src/js}/Track/View/Gene/Ensembl.js +6 -4
- package/src/js/Track/View/Gene.js +8 -0
- package/{js → src/js}/Track/View/Sequence.js +18 -22
- package/src/js/Track/View/SequenceVariation.js +117 -0
- package/src/js/Track/View/Transcript/Ensembl.js +17 -0
- package/src/js/Track/View/Transcript.js +32 -0
- package/{js → src/js}/Track/View.js +200 -159
- package/{js → src/js}/Track/library/Chromosome.js +18 -13
- package/src/js/Track/library/File/BAM.js +34 -0
- package/src/js/Track/library/File/BED.js +27 -0
- package/src/js/Track/library/File/BIGBED.js +51 -0
- package/src/js/Track/library/File/BIGWIG.js +54 -0
- package/src/js/Track/library/File/GFF.js +10 -0
- package/{js → src/js}/Track/library/File/VCF.js +29 -22
- package/src/js/Track/library/File/WIG.js +8 -0
- package/{js → src/js}/Track/library/File.js +4 -2
- package/src/js/Track/library/Gene.js +44 -0
- package/src/js/Track/library/Graph/Bar.js +263 -0
- package/src/js/Track/library/Graph/Line.js +335 -0
- package/{js → src/js}/Track/library/Graph.js +137 -114
- package/{js → src/js}/Track/library/HighlightRegion.js +118 -93
- package/src/js/Track/library/Legend.js +258 -0
- package/{js → src/js}/Track/library/Scalebar.js +69 -49
- package/{js → src/js}/Track/library/Scaleline.js +29 -27
- package/src/js/Track/library/Static.js +82 -0
- package/{js → src/js}/Track/library/dbSNP.js +47 -50
- package/src/js/Track.js +651 -0
- package/{js → src/js}/genomes/grch37.js +52 -52
- package/{js → src/js}/genomes/grch38.js +52 -52
- package/src/js/lib/BWReader.js +562 -0
- package/src/js/lib/VCFReader.js +296 -0
- package/src/js/lib/dalliance/bam.js +517 -0
- package/src/js/lib/dalliance/bin.js +317 -0
- package/src/js/lib/dalliance/jszlib-inflate.js +2159 -0
- package/src/js/lib/dalliance/lh3utils.js +105 -0
- package/src/js/lib/dalliance/sha1.js +334 -0
- package/src/js/lib/import-tracks.js +42 -0
- package/{js/lib → src/js/lib/jquery-plugins}/jquery.mousehold.js +0 -0
- package/{js/lib → src/js/lib/jquery-plugins}/jquery.mousewheel.js +0 -0
- package/{js/lib → src/js/lib/jquery-plugins}/jquery.tipsy.js +0 -0
- package/src/js/lib/jquery.js +26 -0
- package/src/js/lib/polyfills.js +11 -0
- package/src/js/lib/wrap-functions.js +88 -0
- package/src/js/plugins/controlPanel.js +388 -0
- package/src/js/plugins/fileDrop.js +81 -0
- package/src/js/plugins/focusRegion.js +13 -0
- package/{js → src/js}/plugins/fullscreen.js +18 -14
- package/{js → src/js}/plugins/karyotype.js +51 -45
- package/src/js/plugins/resizer.js +52 -0
- package/{js → src/js}/plugins/tooltips.js +31 -29
- package/src/js/plugins/trackControls.js +159 -0
- package/test/View/render-legends.test.js +1 -1
- package/test/change-width.test.js +71 -0
- package/test/create-and-destroy.test.js +2 -2
- package/test/track-ordering.test.js +3 -2
- package/test/track_config/config-settings.test.js +1 -1
- package/test/utils.js +4 -2
- package/webpack.config.js +103 -34
- package/css/font-awesome.css +0 -3
- package/expanded.html +0 -120
- package/fontawesome/css/fontawesome.min.css +0 -5
- package/fontawesome/css/regular.min.css +0 -5
- package/fontawesome/css/solid.min.css +0 -5
- package/fontawesome/webfonts/fa-brands-400.ttf +0 -0
- package/fontawesome/webfonts/fa-brands-400.woff +0 -0
- package/fontawesome/webfonts/fa-brands-400.woff2 +0 -0
- package/fontawesome/webfonts/fa-regular-400.ttf +0 -0
- package/fontawesome/webfonts/fa-regular-400.woff +0 -0
- package/fontawesome/webfonts/fa-regular-400.woff2 +0 -0
- package/fontawesome/webfonts/fa-solid-900.ttf +0 -0
- package/fontawesome/webfonts/fa-solid-900.woff +0 -0
- package/fontawesome/webfonts/fa-solid-900.woff2 +0 -0
- package/help.pdf +0 -0
- package/index.js +0 -83
- package/js/Genoverse.js +0 -1681
- package/js/Track/Controller/Stranded.js +0 -73
- package/js/Track/Model/File/BAM.js +0 -44
- package/js/Track/Model/File/BED.js +0 -116
- package/js/Track/Model/File/GFF.js +0 -40
- package/js/Track/Model/File/VCF.js +0 -101
- package/js/Track/Model/File/WIG.js +0 -67
- package/js/Track/Model/File.js +0 -36
- package/js/Track/Model/Gene/Ensembl.js +0 -22
- package/js/Track/Model/Sequence/Ensembl.js +0 -4
- package/js/Track/Model/Transcript/Ensembl.js +0 -67
- package/js/Track/View/Gene.js +0 -6
- package/js/Track/View/Sequence/Variation.js +0 -115
- package/js/Track/View/Transcript/Ensembl.js +0 -12
- package/js/Track/View/Transcript.js +0 -28
- package/js/Track/library/File/BAM.js +0 -30
- package/js/Track/library/File/BED.js +0 -24
- package/js/Track/library/File/BIGBED.js +0 -47
- package/js/Track/library/File/BIGWIG.js +0 -52
- package/js/Track/library/File/GFF.js +0 -9
- package/js/Track/library/File/WIG.js +0 -5
- package/js/Track/library/Gene.js +0 -37
- package/js/Track/library/Graph/Bar.js +0 -235
- package/js/Track/library/Graph/Line.js +0 -296
- package/js/Track/library/Legend.js +0 -224
- package/js/Track/library/Static.js +0 -78
- package/js/Track.js +0 -632
- package/js/genoverse.min.js +0 -2
- package/js/genoverse.min.js.map +0 -1
- package/js/lib/BWReader.js +0 -578
- package/js/lib/Base.js +0 -145
- package/js/lib/VCFReader.js +0 -286
- package/js/lib/dalliance/js/bam.js +0 -494
- package/js/lib/dalliance/js/bin.js +0 -185
- package/js/lib/dalliance/js/das.js +0 -749
- package/js/lib/dalliance/js/utils.js +0 -370
- package/js/lib/dalliance-lib.js +0 -3594
- package/js/lib/dalliance-lib.min.js +0 -68
- package/js/lib/jDataView.js +0 -2
- package/js/lib/jParser.js +0 -192
- package/js/lib/jquery-ui.js +0 -8
- package/js/lib/jquery.js +0 -2
- package/js/lib/rtree.js +0 -1
- package/js/plugins/controlPanel.js +0 -395
- package/js/plugins/fileDrop.js +0 -62
- package/js/plugins/focusRegion.js +0 -12
- package/js/plugins/resizer.js +0 -45
- package/js/plugins/trackControls.js +0 -143
- package/utils/expandedTemplate.html +0 -46
- package/utils/git-hooks/post-commit +0 -9
- package/utils/git-hooks/pre-commit +0 -7
- package/utils/git-hooks/setup +0 -6
- package/utils/makeExpanded.js +0 -19
package/index.html
CHANGED
|
@@ -24,13 +24,12 @@
|
|
|
24
24
|
<p>Genoverse is a portable, customizable, back-end independent JavaScript and HTML5 based genome browser which allows the user to explore data interactively.</p>
|
|
25
25
|
<p>Data is visualized in the browser, meaning Genoverse can be installed on any website and show data from a wide range of online or local sources.</p>
|
|
26
26
|
<p>Genoverse works with a variety of formats, such as XML, JSON, GFF, GFF3, BED (try drag-n-drop one), and can be customized to parse and display any data source as required.</p>
|
|
27
|
-
<p>For more information on how to use Genoverse please refer to <a href="help.pdf" target="_blank">this tutorial</a>.</p>
|
|
28
27
|
|
|
29
28
|
<p class="help">If you have any questions or need help, please raise an issue at <a href="https://github.com/wtsi-web/Genoverse" target="_blank">https://github.com/wtsi-web/Genoverse</a></p>
|
|
30
29
|
</div>
|
|
31
30
|
</div>
|
|
32
31
|
|
|
33
|
-
<script
|
|
32
|
+
<script src="dist/genoverse.js"></script>
|
|
34
33
|
<script>
|
|
35
34
|
new Genoverse({
|
|
36
35
|
container : '#genoverse', // Where to inject Genoverse (css/jQuery selector/DOM element)
|
|
@@ -42,25 +41,25 @@
|
|
|
42
41
|
end : 32370557,
|
|
43
42
|
plugins : [ 'controlPanel', [ 'karyotype', { showAssembly: true }], 'trackControls', 'resizer', 'focusRegion', 'fullscreen', 'tooltips', 'fileDrop' ],
|
|
44
43
|
tracks : [
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
[ 'Scaleline', { strand: false }],
|
|
45
|
+
'Scalebar',
|
|
46
|
+
{
|
|
48
47
|
name : 'Sequence',
|
|
49
|
-
controller :
|
|
50
|
-
model :
|
|
51
|
-
view :
|
|
48
|
+
controller : 'Sequence',
|
|
49
|
+
model : 'Sequence.Ensembl',
|
|
50
|
+
view : 'Sequence',
|
|
52
51
|
100000 : false,
|
|
53
52
|
resizable : 'auto'
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
},
|
|
54
|
+
'Gene',
|
|
55
|
+
{
|
|
57
56
|
name : 'Regulatory Features',
|
|
58
57
|
url : '//rest.ensembl.org/overlap/region/human/__CHR__:__START__-__END__?feature=regulatory;content-type=application/json',
|
|
59
58
|
resizable : 'auto',
|
|
60
|
-
model :
|
|
59
|
+
model : { dataRequestLimit : 5000000 },
|
|
61
60
|
setFeatureColor : function (f) { f.color = '#AAA'; }
|
|
62
|
-
}
|
|
63
|
-
|
|
61
|
+
},
|
|
62
|
+
'dbSNP'
|
|
64
63
|
]
|
|
65
64
|
});
|
|
66
65
|
</script>
|
package/jest.config.js
CHANGED
package/jest.setup.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// webpack's require.context is not supported by Jest, but is used in index.js.
|
|
2
|
+
// This plugin adds the function global.__requireContext, which can be used instead,
|
|
3
|
+
// and its presence in babel.config's `plugins` replaces require.context with global.__requireContext
|
|
4
|
+
require('babel-plugin-require-context-hook/register')();
|
|
5
|
+
|
|
6
|
+
// A hack to make jquery-ui's use of requirejs-style imports work with Jest.
|
|
7
|
+
// babel-plugin-transform-amd-to-commonjs is used to transform calls to define() into require(),
|
|
8
|
+
// but jquery-ui wraps these calls in:
|
|
9
|
+
// if ( typeof define === "function" && define.amd ) { ... }
|
|
10
|
+
// so just using the transformation by itself is not enough - that code to be run as well.
|
|
11
|
+
// Creating a fake define function solves this problem.
|
|
12
|
+
global.define = () => {};
|
|
13
|
+
global.define.amd = {};
|
package/package.json
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "genoverse",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "Genoverse is a portable, customizable, back-end independent JavaScript and HTML5 based genome browser which allows the user to explore data in a dynamic and interactive manner.",
|
|
5
|
-
"main": "js/Genoverse.js",
|
|
5
|
+
"main": "src/js/Genoverse.js",
|
|
6
6
|
"directories": {
|
|
7
|
-
"lib": "js",
|
|
7
|
+
"lib": "src/js",
|
|
8
8
|
"test": "test"
|
|
9
9
|
},
|
|
10
10
|
"scripts": {
|
|
11
|
+
"dev": "webpack serve --mode development --env public-path=/dist/",
|
|
11
12
|
"test": "jest",
|
|
12
|
-
"build": "
|
|
13
|
+
"build": "webpack",
|
|
13
14
|
"lint": "eslint '**/*.js'",
|
|
14
15
|
"server": "node utils/devServer.js"
|
|
15
16
|
},
|
|
@@ -24,20 +25,36 @@
|
|
|
24
25
|
},
|
|
25
26
|
"homepage": "https://wtsi-web.github.io/Genoverse/",
|
|
26
27
|
"devDependencies": {
|
|
27
|
-
"@babel/core": "^7.
|
|
28
|
-
"@babel/eslint-parser": "^7.
|
|
29
|
-
"@babel/
|
|
28
|
+
"@babel/core": "^7.17.2",
|
|
29
|
+
"@babel/eslint-parser": "^7.17.0",
|
|
30
|
+
"@babel/preset-env": "^7.16.11",
|
|
31
|
+
"@babel/runtime-corejs3": "^7.17.2",
|
|
32
|
+
"babel-loader": "^8.2.3",
|
|
33
|
+
"babel-plugin-require-context-hook": "^1.0.0",
|
|
34
|
+
"babel-plugin-transform-amd-to-commonjs": "^1.4.0",
|
|
30
35
|
"canvas": "^2.8.0",
|
|
31
|
-
"
|
|
36
|
+
"clean-webpack-plugin": "^4.0.0",
|
|
37
|
+
"css-loader": "^6.7.0",
|
|
32
38
|
"eslint": "^8.6.0",
|
|
33
39
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
34
40
|
"eslint-plugin-align-assignments": "^1.1.2",
|
|
35
41
|
"eslint-plugin-es": "^4.1.0",
|
|
36
42
|
"eslint-plugin-import": "^2.25.4",
|
|
37
|
-
"jest": "^27.
|
|
43
|
+
"jest": "^27.5.1",
|
|
44
|
+
"mini-css-extract-plugin": "^2.6.0",
|
|
38
45
|
"terser-webpack-plugin": "^5.3.0",
|
|
39
|
-
"webpack": "^5.
|
|
40
|
-
"webpack-cli": "^4.9.1"
|
|
46
|
+
"webpack": "^5.70.0",
|
|
47
|
+
"webpack-cli": "^4.9.1",
|
|
48
|
+
"webpack-dev-server": "^4.7.4"
|
|
41
49
|
},
|
|
42
|
-
"dependencies": {
|
|
50
|
+
"dependencies": {
|
|
51
|
+
"@fortawesome/fontawesome-free": "^6.0.0",
|
|
52
|
+
"basejs": "^1.1.1",
|
|
53
|
+
"core-js": "^3.21.0",
|
|
54
|
+
"jParser": "^1.0.2",
|
|
55
|
+
"jquery": "^3.6.0",
|
|
56
|
+
"jquery-ui": "^1.13.0",
|
|
57
|
+
"lodash": "^4.17.21",
|
|
58
|
+
"rtree": "^1.4.2"
|
|
59
|
+
}
|
|
43
60
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -180,7 +180,7 @@
|
|
|
180
180
|
.gv-label-container li .gv-handle {
|
|
181
181
|
float: left;
|
|
182
182
|
position: relative;
|
|
183
|
-
background-image: url(
|
|
183
|
+
background-image: url(../../assets/sort_handle.png);
|
|
184
184
|
cursor: move;
|
|
185
185
|
display: inline-block;
|
|
186
186
|
height: calc(100% - 20px);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|