sequenceserver 3.1.3 → 3.2.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.
- checksums.yaml +4 -4
- data/lib/sequenceserver/api_errors.rb +18 -0
- data/lib/sequenceserver/blast/hit.rb +1 -2
- data/lib/sequenceserver/blast/job.rb +15 -5
- data/lib/sequenceserver/blast/report.rb +5 -1
- data/lib/sequenceserver/database.rb +5 -1
- data/lib/sequenceserver/job.rb +26 -10
- data/lib/sequenceserver/makeblastdb.rb +2 -1
- data/lib/sequenceserver/routes.rb +37 -12
- data/lib/sequenceserver/version.rb +1 -1
- data/lib/sequenceserver/zip_file_generator.rb +1 -1
- data/public/404.html +8 -16
- data/public/css/app.css +794 -111
- data/public/css/app.min.css +1 -1
- data/public/css/sequenceserver.min.css +1 -8
- data/public/js/circos.js +103 -96
- data/public/{packages/circosJS@1.7.0.js → js/circosjs.js} +156 -778
- data/public/js/cloud_share_modal.js +55 -58
- data/public/js/collapse_preferences.js +13 -15
- data/public/js/databases.js +4 -3
- data/public/js/databases_tree.js +51 -30
- data/public/js/error_modal.js +35 -22
- data/public/js/exporter.js +2 -0
- data/public/js/form.js +43 -7
- data/public/js/grapher.js +94 -92
- data/public/js/hit.js +21 -19
- data/public/js/hits.js +45 -38
- data/public/js/hits_overview.js +8 -27
- data/public/js/hsp.js +140 -144
- data/public/js/jquery_world.js +24 -15
- data/public/js/kablammo.js +14 -10
- data/public/js/length_distribution.js +23 -37
- data/public/js/null_plugins/report_plugins.js +3 -5
- data/public/js/options.js +17 -19
- data/public/js/query.js +36 -35
- data/public/js/report/alignment_results.js +18 -0
- data/public/js/report/graphical_overview.js +38 -0
- data/public/js/report/report_header.js +28 -0
- data/public/js/report/run_summary.js +43 -0
- data/public/js/report.js +62 -102
- data/public/js/report_root.js +3 -3
- data/public/js/search.js +5 -2
- data/public/js/search_button.js +85 -78
- data/public/js/sequence.js +11 -22
- data/public/js/sequence_modal.js +38 -37
- data/public/js/share_url.js +5 -5
- data/public/js/sidebar.js +148 -86
- data/public/js/svgExporter.js +8 -3
- data/public/js/tests/form.spec.js +1 -1
- data/public/js/tests/visualisation_helpers.spec.js +28 -0
- data/public/js/visualisation_helpers.js +24 -27
- data/public/sequenceserver-report.min.js +1 -1
- data/public/sequenceserver-report.min.js.LICENSE.txt +1 -88
- data/public/sequenceserver-report.min.js.map +1 -1
- data/public/sequenceserver-search.min.js +1 -1
- data/public/sequenceserver-search.min.js.LICENSE.txt +0 -30
- data/public/sequenceserver-search.min.js.map +1 -1
- data/views/error.erb +1 -1
- data/views/layout.erb +123 -130
- data/views/report.erb +3 -2
- data/views/search.erb +10 -14
- metadata +13 -26
- data/public/css/fonts.css +0 -31
- data/public/css/grapher.css +0 -670
- data/public/css/sequenceserver.css +0 -509
- data/public/vendor/github/mbostock/d3@3.5.6/d3.js +0 -9506
- data/public/vendor/github/mbostock/d3@3.5.6.js +0 -1
- data/views/search_layout.erb +0 -153
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import _ from 'underscore';
|
|
2
|
-
import d3 from 'd3';
|
|
2
|
+
import * as d3 from 'd3';
|
|
3
3
|
export function get_colors_for_evalue(evalue, hits) {
|
|
4
|
-
var colors = d3.
|
|
5
|
-
.log()
|
|
4
|
+
var colors = d3.scaleLog()
|
|
6
5
|
.domain([
|
|
7
6
|
d3.min([1e-5, d3.min(hits.map(function (d) {
|
|
8
7
|
if (parseFloat(d.evalue) === 0.0) return undefined;
|
|
@@ -24,40 +23,38 @@ export function toLetters(num) {
|
|
|
24
23
|
return pow ? toLetters(pow) + out : out;
|
|
25
24
|
}
|
|
26
25
|
|
|
26
|
+
export function getPrefix(str) {
|
|
27
|
+
if (str.length === 0) return '';
|
|
28
|
+
|
|
29
|
+
var lastChar = str.charAt(str.length - 1);
|
|
30
|
+
return /[a-zA-Z]/.test(lastChar) ? lastChar : '';
|
|
31
|
+
}
|
|
32
|
+
|
|
27
33
|
/**
|
|
28
|
-
|
|
34
|
+
* Defines how ticks will be formatted.
|
|
29
35
|
*
|
|
30
36
|
* Examples: 200 aa, 2.4 kbp, 7.6 Mbp.
|
|
31
37
|
*
|
|
32
38
|
* Borrowed from Kablammo. Modified by Priyam based on https://github.com/mbostock/d3/issues/1722.
|
|
33
39
|
*/
|
|
34
40
|
export function tick_formatter(scale, seq_type) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
var suffixes = {amino_acid: 'aa', nucleic_acid: 'bp'};
|
|
41
|
+
const prefix = d3.format('~s')
|
|
42
|
+
const suffixes = {amino_acid: 'aa', nucleic_acid: 'bp'};
|
|
38
43
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
var _ticks;
|
|
44
|
+
return function (d) {
|
|
45
|
+
const formatted = prefix(d);
|
|
42
46
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return format(prefix.scale(d));
|
|
47
|
-
});
|
|
48
|
-
digits++;
|
|
47
|
+
return `${formatNumberUnits(formatted)}${suffixes[seq_type]}`;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
export function formatNumberUnits(number) {
|
|
52
|
+
const suffix = number.replace(/[0-9.]/g, '');
|
|
53
|
+
const numericPart = parseFloat(number).toFixed(2);
|
|
54
|
+
// Round to 1 decimal place
|
|
55
|
+
const rounded = Math.round(numericPart * 10) / 10;
|
|
51
56
|
|
|
52
|
-
return
|
|
53
|
-
if (!prefix.symbol || d === scale.domain()[0]) {
|
|
54
|
-
return (d + ' ' + suffixes[seq_type]);
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
return (format(prefix.scale(d)) +
|
|
58
|
-
' ' + prefix.symbol + suffixes[seq_type]);
|
|
59
|
-
}
|
|
60
|
-
};
|
|
57
|
+
return `${rounded % 1 === 0 ? rounded.toFixed(0) : rounded} ${suffix}`;
|
|
61
58
|
}
|
|
62
59
|
|
|
63
60
|
export function get_seq_type(algorithm) {
|
|
@@ -103,4 +100,4 @@ export function prettify_evalue(evalue) {
|
|
|
103
100
|
else
|
|
104
101
|
return base;
|
|
105
102
|
}
|
|
106
|
-
}
|
|
103
|
+
}
|