genoverse 4.0.9 → 4.1.0-alpha
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/.github/workflows/test.yml +1 -1
- package/dist/171.genoverse.js +2 -0
- package/dist/171.genoverse.js.map +1 -0
- package/dist/2463b90d9a316e4e5294.woff2 +0 -0
- package/dist/2582b0e4bcf85eceead0.ttf +0 -0
- package/dist/298.genoverse.js +2 -0
- package/dist/298.genoverse.js.map +1 -0
- package/dist/{394.css → 347.css} +1 -1
- package/dist/{394.css.map → 347.css.map} +1 -1
- package/dist/347.genoverse.js +2 -0
- package/dist/347.genoverse.js.map +1 -0
- package/dist/{949.css → 407.css} +27 -27
- package/dist/{952.css.map → 407.css.map} +1 -1
- package/dist/{729.css → 423.css} +1 -1
- package/dist/{729.css.map → 423.css.map} +1 -1
- package/dist/423.genoverse.js +2 -0
- package/dist/423.genoverse.js.map +1 -0
- package/dist/{547.css → 47.css} +1 -1
- package/dist/47.css.map +1 -0
- package/dist/{166.genoverse.js → 47.genoverse.js} +1 -1
- package/dist/{129.css → 512.css} +1 -1
- package/dist/{129.css.map → 512.css.map} +1 -1
- package/dist/512.genoverse.js +2 -0
- package/dist/512.genoverse.js.map +1 -0
- package/dist/{232.css → 52.css} +1 -1
- package/dist/52.css.map +1 -0
- package/dist/52.genoverse.js +2 -0
- package/dist/52.genoverse.js.map +1 -0
- package/dist/758.css +23 -0
- package/dist/758.css.map +1 -0
- package/dist/840.genoverse.js +2 -0
- package/dist/840.genoverse.js.map +1 -0
- package/dist/{547.genoverse.js → 895.genoverse.js} +1 -1
- package/dist/89999bdf5d835c012025.woff2 +0 -0
- package/dist/914997e1bdfc990d0897.ttf +0 -0
- package/dist/{530.css → 943.css} +1 -1
- package/dist/{530.css.map → 943.css.map} +1 -1
- package/dist/943.genoverse.js +2 -0
- package/dist/943.genoverse.js.map +1 -0
- package/dist/{469.css → 966.css} +1 -1
- package/dist/{469.css.map → 966.css.map} +1 -1
- package/dist/966.genoverse.js +2 -0
- package/dist/966.genoverse.js.map +1 -0
- package/dist/{952.css → 984.css} +27 -27
- package/dist/{949.css.map → 984.css.map} +1 -1
- package/dist/984.genoverse.js +2 -0
- package/dist/984.genoverse.js.map +1 -0
- package/dist/genoverse.js +1 -1
- package/dist/genoverse.js.map +1 -1
- package/eslint.config.js +176 -0
- package/package.json +17 -9
- package/src/js/Genoverse.js +7 -5
- package/src/js/plugins/controlPanel.js +4 -3
- package/src/js/plugins/fileDrop.js +4 -2
- package/test/View/__snapshots__/render-bar-graph.test.js.snap +4 -4
- package/test/View/__snapshots__/render-chromosome.test.js.snap +2 -2
- package/test/View/__snapshots__/render-highlights.test.js.snap +4 -4
- package/test/View/__snapshots__/render-labels.test.js.snap +77 -77
- package/test/View/__snapshots__/render-legends.test.js.snap +3 -3
- package/test/View/__snapshots__/render-line-graph.test.js.snap +29 -29
- package/test/View/__snapshots__/render-scalebar.test.js.snap +12 -12
- package/test/View/__snapshots__/render-scaleline.test.js.snap +15 -15
- package/test/View/__snapshots__/render-sequence.test.js.snap +9 -9
- package/test/View/__snapshots__/render-transcripts.test.js.snap +58 -58
- package/test/track_config/__snapshots__/config-settings.test.js.snap +9 -9
- package/utils/devServer.js +14 -1
- package/dist/0caf4c6cf244a90efcc5.woff2 +0 -0
- package/dist/0d03b1bbd1d62c1e1284.ttf +0 -0
- package/dist/129.genoverse.js +0 -2
- package/dist/129.genoverse.js.map +0 -1
- package/dist/216.css +0 -20
- package/dist/216.css.map +0 -1
- package/dist/232.css.map +0 -1
- package/dist/232.genoverse.js +0 -2
- package/dist/232.genoverse.js.map +0 -1
- package/dist/394.genoverse.js +0 -2
- package/dist/394.genoverse.js.map +0 -1
- package/dist/469.genoverse.js +0 -2
- package/dist/469.genoverse.js.map +0 -1
- package/dist/530.genoverse.js +0 -2
- package/dist/530.genoverse.js.map +0 -1
- package/dist/547.css.map +0 -1
- package/dist/59edf72a325ac2048d60.woff2 +0 -0
- package/dist/804.genoverse.js +0 -2
- package/dist/804.genoverse.js.map +0 -1
- package/dist/842.genoverse.js +0 -2
- package/dist/842.genoverse.js.map +0 -1
- package/dist/893.genoverse.js +0 -2
- package/dist/893.genoverse.js.map +0 -1
- package/dist/949.genoverse.js +0 -2
- package/dist/949.genoverse.js.map +0 -1
- package/dist/952.genoverse.js +0 -2
- package/dist/952.genoverse.js.map +0 -1
- package/dist/e615bbcb258550973c16.ttf +0 -0
- /package/dist/{166.css → 895.css} +0 -0
package/eslint.config.js
ADDED
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
const {
|
|
2
|
+
defineConfig,
|
|
3
|
+
globalIgnores,
|
|
4
|
+
} = require("eslint/config");
|
|
5
|
+
|
|
6
|
+
const globals = require("globals");
|
|
7
|
+
const alignAssignments = require("eslint-plugin-align-assignments");
|
|
8
|
+
const babelParser = require("@babel/eslint-parser");
|
|
9
|
+
const js = require("@eslint/js");
|
|
10
|
+
|
|
11
|
+
const {
|
|
12
|
+
FlatCompat,
|
|
13
|
+
} = require("@eslint/eslintrc");
|
|
14
|
+
|
|
15
|
+
const compat = new FlatCompat({
|
|
16
|
+
baseDirectory: __dirname,
|
|
17
|
+
recommendedConfig: js.configs.recommended,
|
|
18
|
+
allConfig: js.configs.all
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
const noRestrictedProperies = require("eslint-config-airbnb-base/rules/best-practices").rules["no-restricted-properties"].filter(
|
|
22
|
+
rule => !(rule.object === "Math" && rule.property === "pow" || rule.object === "window" && rule.property === "isNaN"),
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
module.exports = defineConfig([{
|
|
26
|
+
languageOptions: {
|
|
27
|
+
globals: {
|
|
28
|
+
...globals.browser,
|
|
29
|
+
...globals.node,
|
|
30
|
+
Genoverse: true,
|
|
31
|
+
},
|
|
32
|
+
|
|
33
|
+
parser: babelParser,
|
|
34
|
+
ecmaVersion: 8,
|
|
35
|
+
sourceType: "module",
|
|
36
|
+
|
|
37
|
+
parserOptions: {
|
|
38
|
+
requireConfigFile: false,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
plugins: {
|
|
43
|
+
"align-assignments": alignAssignments,
|
|
44
|
+
},
|
|
45
|
+
|
|
46
|
+
extends: compat.extends("airbnb-base"),
|
|
47
|
+
|
|
48
|
+
rules: {
|
|
49
|
+
"align-assignments/align-assignments": "error",
|
|
50
|
+
|
|
51
|
+
"padding-line-between-statements": ["error", ...[[
|
|
52
|
+
"*",
|
|
53
|
+
["multiline-block-like", "return", "break", "export", "throw", "cjs-export"],
|
|
54
|
+
], ["*", ["cjs-import", "import", "const", "let", "var"]], [
|
|
55
|
+
["multiline-block-like", "return", "break", "export", "throw", "cjs-export"],
|
|
56
|
+
"*",
|
|
57
|
+
], [["cjs-import", "import", "const", "let", "var"], "*"], ["cjs-import", "cjs-import", "any"], ["import", "import", "any"], ["singleline-const", "const", "any"], ["singleline-let", "let", "any"], ["singleline-var", "var", "any"], ["expression", "expression", "any"]].map(([prev, next = "*", blankLine = "always"]) => ({
|
|
58
|
+
prev,
|
|
59
|
+
next,
|
|
60
|
+
blankLine,
|
|
61
|
+
}))],
|
|
62
|
+
|
|
63
|
+
"max-len": "off",
|
|
64
|
+
"no-multi-spaces": "off",
|
|
65
|
+
"no-multi-assign": "off",
|
|
66
|
+
"no-nested-ternary": "off",
|
|
67
|
+
"no-prototype-builtins": "off",
|
|
68
|
+
"no-plusplus": "off",
|
|
69
|
+
"operator-linebreak": "off",
|
|
70
|
+
"prefer-destructuring": "off",
|
|
71
|
+
"quote-props": "off",
|
|
72
|
+
"template-curly-spacing": "off",
|
|
73
|
+
"yoda": "off",
|
|
74
|
+
"no-underscore-dangle": "off",
|
|
75
|
+
"newline-per-chained-call": "off",
|
|
76
|
+
"default-param-last": "off",
|
|
77
|
+
"no-promise-executor-return": "off",
|
|
78
|
+
"no-continue": "off",
|
|
79
|
+
"no-fallthrough": "off",
|
|
80
|
+
"no-bitwise": "off",
|
|
81
|
+
"func-names": "off",
|
|
82
|
+
"no-param-reassign": "off",
|
|
83
|
+
|
|
84
|
+
"array-bracket-spacing": ["warn", "always", {
|
|
85
|
+
objectsInArrays: false,
|
|
86
|
+
arraysInArrays: false,
|
|
87
|
+
}],
|
|
88
|
+
|
|
89
|
+
"quotes": ["warn", "single", {
|
|
90
|
+
avoidEscape: true,
|
|
91
|
+
}],
|
|
92
|
+
|
|
93
|
+
"arrow-parens": ["error", "as-needed", {
|
|
94
|
+
requireForBlockBody: true,
|
|
95
|
+
}],
|
|
96
|
+
|
|
97
|
+
"function-paren-newline": ["error", "consistent"],
|
|
98
|
+
"function-call-argument-newline": ["error", "consistent"],
|
|
99
|
+
"linebreak-style": ["error", "unix"],
|
|
100
|
+
"object-shorthand": ["error", "consistent"],
|
|
101
|
+
|
|
102
|
+
"comma-dangle": ["error", {
|
|
103
|
+
arrays: "always-multiline",
|
|
104
|
+
objects: "always-multiline",
|
|
105
|
+
imports: "always-multiline",
|
|
106
|
+
exports: "always-multiline",
|
|
107
|
+
functions: "never",
|
|
108
|
+
}],
|
|
109
|
+
|
|
110
|
+
"key-spacing": ["error", {
|
|
111
|
+
singleLine: {
|
|
112
|
+
beforeColon: false,
|
|
113
|
+
afterColon: true,
|
|
114
|
+
},
|
|
115
|
+
|
|
116
|
+
multiLine: {
|
|
117
|
+
beforeColon: false,
|
|
118
|
+
afterColon: true,
|
|
119
|
+
},
|
|
120
|
+
|
|
121
|
+
align: {
|
|
122
|
+
beforeColon: true,
|
|
123
|
+
afterColon: true,
|
|
124
|
+
on: "colon",
|
|
125
|
+
},
|
|
126
|
+
}],
|
|
127
|
+
|
|
128
|
+
"object-curly-newline": ["error", {
|
|
129
|
+
ObjectExpression: {
|
|
130
|
+
multiline: true,
|
|
131
|
+
consistent: true,
|
|
132
|
+
},
|
|
133
|
+
|
|
134
|
+
ObjectPattern: {
|
|
135
|
+
multiline: true,
|
|
136
|
+
consistent: true,
|
|
137
|
+
},
|
|
138
|
+
}],
|
|
139
|
+
|
|
140
|
+
"import/no-extraneous-dependencies": ["error"],
|
|
141
|
+
|
|
142
|
+
"import/order": ["error", {
|
|
143
|
+
alphabetize: {
|
|
144
|
+
order: "asc",
|
|
145
|
+
},
|
|
146
|
+
|
|
147
|
+
groups: ["builtin", "external", "internal", "parent", "sibling"],
|
|
148
|
+
}],
|
|
149
|
+
|
|
150
|
+
"no-restricted-globals": ["error", "event", "isFinite"],
|
|
151
|
+
"no-restricted-properties": noRestrictedProperies,
|
|
152
|
+
"consistent-return": "off",
|
|
153
|
+
},
|
|
154
|
+
}, globalIgnores([
|
|
155
|
+
"**/node_modules",
|
|
156
|
+
"**/dist",
|
|
157
|
+
"**/*.min.js",
|
|
158
|
+
"src/js/lib/dalliance/*.js",
|
|
159
|
+
"src/js/lib/jquery-plugins/*.js",
|
|
160
|
+
]), {
|
|
161
|
+
files: ["test/**/*.js"],
|
|
162
|
+
|
|
163
|
+
languageOptions: {
|
|
164
|
+
globals: {
|
|
165
|
+
jest: true,
|
|
166
|
+
describe: true,
|
|
167
|
+
it: true,
|
|
168
|
+
expect: true,
|
|
169
|
+
fail: true,
|
|
170
|
+
beforeAll: true,
|
|
171
|
+
afterAll: true,
|
|
172
|
+
afterEach: true,
|
|
173
|
+
beforeEach: true,
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
}]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "genoverse",
|
|
3
|
-
"version": "4.0
|
|
3
|
+
"version": "4.1.0-alpha",
|
|
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
5
|
"main": "src/js/Genoverse.js",
|
|
6
6
|
"directories": {
|
|
@@ -29,32 +29,40 @@
|
|
|
29
29
|
"@babel/eslint-parser": "^7.17.0",
|
|
30
30
|
"@babel/preset-env": "^7.16.11",
|
|
31
31
|
"@babel/runtime-corejs3": "^7.17.2",
|
|
32
|
-
"
|
|
32
|
+
"@eslint/eslintrc": "^3.3.5",
|
|
33
|
+
"@eslint/js": "^10.0.1",
|
|
34
|
+
"babel-loader": "^10.1.1",
|
|
33
35
|
"babel-plugin-require-context-hook": "^1.0.0",
|
|
34
36
|
"babel-plugin-transform-amd-to-commonjs": "^1.4.0",
|
|
35
|
-
"canvas": "^2.
|
|
37
|
+
"canvas": "^3.2.3",
|
|
36
38
|
"clean-webpack-plugin": "^4.0.0",
|
|
37
|
-
"css-loader": "^
|
|
38
|
-
"eslint": "^
|
|
39
|
+
"css-loader": "^7.1.4",
|
|
40
|
+
"eslint": "^10.4.0",
|
|
39
41
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
40
42
|
"eslint-plugin-align-assignments": "^1.1.2",
|
|
41
43
|
"eslint-plugin-es": "^4.1.0",
|
|
42
44
|
"eslint-plugin-import": "^2.25.4",
|
|
43
|
-
"
|
|
45
|
+
"globals": "^17.6.0",
|
|
46
|
+
"jest": "^28.1.3",
|
|
47
|
+
"jest-environment-jsdom": "28",
|
|
44
48
|
"mini-css-extract-plugin": "^2.6.0",
|
|
45
49
|
"terser-webpack-plugin": "^5.3.0",
|
|
46
50
|
"webpack": "^5.70.0",
|
|
47
|
-
"webpack-cli": "^
|
|
48
|
-
"webpack-dev-server": "^
|
|
51
|
+
"webpack-cli": "^7.0.3",
|
|
52
|
+
"webpack-dev-server": "^5.2.4"
|
|
49
53
|
},
|
|
50
54
|
"dependencies": {
|
|
51
55
|
"@fortawesome/fontawesome-free": "^6.0.0",
|
|
52
56
|
"basejs": "^1.1.1",
|
|
53
57
|
"core-js": "^3.21.0",
|
|
58
|
+
"dompurify": "^3.4.6",
|
|
54
59
|
"jParser": "^1.0.2",
|
|
55
|
-
"jquery": "^3.
|
|
60
|
+
"jquery": "^3.7.1",
|
|
56
61
|
"jquery-ui": "^1.13.0",
|
|
57
62
|
"lodash": "^4.17.21",
|
|
58
63
|
"rtree": "^1.4.2"
|
|
64
|
+
},
|
|
65
|
+
"resolutions": {
|
|
66
|
+
"jquery": "3.7.1"
|
|
59
67
|
}
|
|
60
68
|
}
|
package/src/js/Genoverse.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import Base from 'basejs';
|
|
2
|
+
import DOMPurify from 'dompurify';
|
|
2
3
|
import _get from 'lodash/get';
|
|
3
4
|
import Track from './Track';
|
|
4
5
|
import HighlightRegionTrack from './Track/library/HighlightRegion';
|
|
5
6
|
import LegendTrack from './Track/library/Legend';
|
|
6
7
|
import importTracks from './lib/import-tracks';
|
|
7
8
|
import $ from './lib/jquery';
|
|
8
|
-
import wrapFunctions from './lib/wrap-functions';
|
|
9
|
+
import wrapFunctions from './lib/wrap-functions';
|
|
9
10
|
|
|
10
11
|
const Genoverse = Base.extend({
|
|
11
12
|
// Defaults
|
|
@@ -1355,7 +1356,7 @@ const Genoverse = Base.extend({
|
|
|
1355
1356
|
(track ? track.model.sortFeatures(features) : features.sort((a, b) => a.start - b.start)).forEach(
|
|
1356
1357
|
(feature) => {
|
|
1357
1358
|
const location = `${feature.chr}:${feature.start}${feature.end === feature.start ? '' : `-${feature.end}`}`;
|
|
1358
|
-
const title = feature.menuLabel || feature.name || (Array.isArray(feature.label) ? feature.label.join(' ') : feature.label) || String(feature.id);
|
|
1359
|
+
const title = DOMPurify.sanitize(feature.menuLabel || feature.name || (Array.isArray(feature.label) ? feature.label.join(' ') : feature.label) || String(feature.id));
|
|
1359
1360
|
|
|
1360
1361
|
jQuery('<a href="#">').html(title.match(location) ? title : `${location} ${title}`).on('click', (e) => {
|
|
1361
1362
|
this.makeFeatureMenu(feature, e, track);
|
|
@@ -1412,17 +1413,18 @@ const Genoverse = Base.extend({
|
|
|
1412
1413
|
const start = parseInt(typeof properties.start !== 'undefined' ? properties.start : feature.start, 10);
|
|
1413
1414
|
const end = parseInt(typeof properties.end !== 'undefined' ? properties.end : feature.end, 10);
|
|
1414
1415
|
const columns = Math.max(...Object.values(properties).map(value => (Array.isArray(value) ? value.length : 1)));
|
|
1416
|
+
const sanitizedTitle = DOMPurify.sanitize(properties.title);
|
|
1415
1417
|
|
|
1416
1418
|
let table = '';
|
|
1417
1419
|
|
|
1418
|
-
jQuery('.gv-title', el)[properties.title ? 'html' : 'remove'](
|
|
1420
|
+
jQuery('.gv-title', el)[properties.title ? 'html' : 'remove'](sanitizedTitle);
|
|
1419
1421
|
|
|
1420
1422
|
if (track && start && end && !this.isStatic) {
|
|
1421
1423
|
const linkData = {
|
|
1422
1424
|
chr : chr,
|
|
1423
1425
|
start : start,
|
|
1424
1426
|
end : Math.max(end, start),
|
|
1425
|
-
label : feature.label || (
|
|
1427
|
+
label : feature.label || (sanitizedTitle || ''),
|
|
1426
1428
|
color : feature.color,
|
|
1427
1429
|
};
|
|
1428
1430
|
|
|
@@ -1462,7 +1464,7 @@ const Genoverse = Base.extend({
|
|
|
1462
1464
|
}
|
|
1463
1465
|
);
|
|
1464
1466
|
|
|
1465
|
-
jQuery('table:not(.gv-focus-highlight)', el)[table ? 'html' : 'remove'](table);
|
|
1467
|
+
jQuery('table:not(.gv-focus-highlight)', el)[table ? 'html' : 'remove'](DOMPurify.sanitize(table));
|
|
1466
1468
|
}
|
|
1467
1469
|
);
|
|
1468
1470
|
},
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import '../../css/controlPanel.css';
|
|
2
|
+
import DOMPurify from 'dompurify';
|
|
2
3
|
import karyotype from './karyotype';
|
|
3
4
|
|
|
4
5
|
const plugin = function (pluginConf) {
|
|
@@ -236,7 +237,7 @@ const plugin = function (pluginConf) {
|
|
|
236
237
|
).forEach(
|
|
237
238
|
(track) => {
|
|
238
239
|
const el = jQuery('<div class="gv-tracks-menu-track">')
|
|
239
|
-
.append(`<span class="gv-tracks-menu-track-name" title="${track.name}">${track.defaultName}</span>`)
|
|
240
|
+
.append(DOMPurify.sanitize(`<span class="gv-tracks-menu-track-name" title="${track.name}">${track.defaultName}</span>`))
|
|
240
241
|
.appendTo(currentTracks)
|
|
241
242
|
.data('track', track)
|
|
242
243
|
.addClass(track.unsortable ? 'gv-unsortable' : '');
|
|
@@ -309,7 +310,7 @@ const plugin = function (pluginConf) {
|
|
|
309
310
|
const parentEl = (
|
|
310
311
|
allCategoryNames.length > 1
|
|
311
312
|
? jQuery('<div class="gv-tracks-library-category">').append(
|
|
312
|
-
jQuery('<div class="gv-tracks-library-category-header">').html(categoryName || 'Other')
|
|
313
|
+
jQuery('<div class="gv-tracks-library-category-header">').html(DOMPurify.sanitize(categoryName) || 'Other')
|
|
313
314
|
).appendTo(availableTracks)
|
|
314
315
|
: availableTracks
|
|
315
316
|
);
|
|
@@ -325,7 +326,7 @@ const plugin = function (pluginConf) {
|
|
|
325
326
|
|
|
326
327
|
browser.addTrack(track.extend({ id: `${track.prototype.id}${browser.tracksById[track.prototype.id] ? browser.trackIds[track.prototype.id]++ : ''}` }));
|
|
327
328
|
})
|
|
328
|
-
).append(`<span>${track.prototype.name}</span>`).appendTo(parentEl).data('track', track.prototype);
|
|
329
|
+
).append(`<span>${DOMPurify.sanitize(track.prototype.name)}</span>`).appendTo(parentEl).data('track', track.prototype);
|
|
329
330
|
}
|
|
330
331
|
);
|
|
331
332
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import '../../css/fileDrop.css';
|
|
2
|
+
import DOMPurify from 'dompurify';
|
|
2
3
|
|
|
3
4
|
const plugin = function () {
|
|
4
5
|
const jQuery = this.jQuery;
|
|
@@ -57,9 +58,10 @@ const plugin = function () {
|
|
|
57
58
|
(importer) => {
|
|
58
59
|
import(`../Track/library/File/${importer.trackType}`).then(
|
|
59
60
|
(imported) => {
|
|
61
|
+
const trackName = DOMPurify.sanitize(importer.file.name);
|
|
60
62
|
const track = imported.default.extend({
|
|
61
|
-
name :
|
|
62
|
-
info : `Local file "${
|
|
63
|
+
name : trackName,
|
|
64
|
+
info : `Local file "${trackName}", size: ${importer.file.size} bytes`,
|
|
63
65
|
isLocal : true,
|
|
64
66
|
dataFile : importer.file,
|
|
65
67
|
indexFile : importer.indexFile,
|
|
@@ -14,7 +14,7 @@ exports[`Correctly render bar graph where: scale < 1, all bins of equal size the
|
|
|
14
14
|
|
|
15
15
|
exports[`Correctly render bar graph where: scale < 1, all bins of equal size the graph has two datasets coloured red and blue 2`] = `""`;
|
|
16
16
|
|
|
17
|
-
exports[`Correctly render bar graph where: scale < 1, all bins of equal size the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+
|
|
17
|
+
exports[`Correctly render bar graph where: scale < 1, all bins of equal size the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+gvaeTAAAA7UlEQVR4nO3csQrCMBRA0df+uOmX61ARFGd7wXPIkk6ByyPQIdtt1n0+HLO2z2/8xn71AXgnSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSIwgMYLECBIjSMx+zNrWrKvPwZMJiREkRpAYQWIEiREkRpAYQWIEKbqfa83MfHuMht8xITGCxAgSI0jReam/dv7FX8iExAgSI0iMIDGCxAgSI0iMIDGCxOwzM9uMt94jTEiMIDGCxAgCAAAAAAAAAAAAAAAAAP/pAcUyDnqquoLKAAAAAElFTkSuQmCC"`;
|
|
18
18
|
|
|
19
19
|
exports[`Correctly render bar graph where: scale < 1, all bins of equal size the graph has two datasets one with globalAlpha set 2`] = `""`;
|
|
20
20
|
|
|
@@ -32,7 +32,7 @@ exports[`Correctly render bar graph where: scale < 1, final bin is small the gra
|
|
|
32
32
|
|
|
33
33
|
exports[`Correctly render bar graph where: scale < 1, final bin is small the graph has two datasets coloured red and blue 2`] = `""`;
|
|
34
34
|
|
|
35
|
-
exports[`Correctly render bar graph where: scale < 1, final bin is small the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+
|
|
35
|
+
exports[`Correctly render bar graph where: scale < 1, final bin is small the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+gvaeTAAAA6ElEQVR4nO3YwW3DQBAEwSETF5mZM5Mf8sOOgA24KoIBGnuPO1673vtx7zrGo86nB/CXIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDHntevpDfziQmIEiREkRpAYQWIEiREkRpAYQWLObbv3up8ewocLiTm33du+nh7Cx3ls13YIEuHJ6nr7hw9wITGCxAgSI0iMIDGCxAgSI0iMIDGCxAgSI0iMIDGCAAAAAAAAAAAAAAAAAMD/9A1/8QoDEa51cQAAAABJRU5ErkJggg=="`;
|
|
36
36
|
|
|
37
37
|
exports[`Correctly render bar graph where: scale < 1, final bin is small the graph has two datasets one with globalAlpha set 2`] = `""`;
|
|
38
38
|
|
|
@@ -68,7 +68,7 @@ exports[`Correctly render bar graph where: scale = 1 the graph has two datasets
|
|
|
68
68
|
|
|
69
69
|
exports[`Correctly render bar graph where: scale = 1 the graph has two datasets coloured red and blue 2`] = `""`;
|
|
70
70
|
|
|
71
|
-
exports[`Correctly render bar graph where: scale = 1 the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+
|
|
71
|
+
exports[`Correctly render bar graph where: scale = 1 the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+gvaeTAAABWUlEQVR4nO3awUrDUBBA0Unwv5N8eV1IlUq1m9pc8By6SckicJnFY96yzX6ZO47Zjm2O7et5X+69x3OtZ38AtwSJESRGkBhBYgSJESRGkBhBYtZjtuP7n/vsM7PsJ3zPv2dCYgSJESRGkBhBYgSJESRGkBhBYj6D2Jk3mJAYQWIEiREkRpAYQWIEiREkRpCYdea6Q//Zvb07f8OExAgSI0iMIDGCxAgSI0iMIDGCxKzfb7k7lZ/LhMQIEiNIjCAxgsQIEiNIjCAxgsTcBLnu1pcZN+FPYkJiBIkRJEaQGEFiBIkRJEaQGEFi1pnfT+aPbsbzXCYkRpAYQWIEiREkRpAYQWIEiREk5u3RC4sV+0uZkBhBYgSJESRGkBhBYgSJESRGkLLLx2+/feaVTEiMIDGCxAgSI0iMIDGCxAgSI0iZk/n5TEiMIDGCxAgSI0iMIDGCxAgSI0jMO25AGM0vaaiZAAAAAElFTkSuQmCC"`;
|
|
72
72
|
|
|
73
73
|
exports[`Correctly render bar graph where: scale = 1 the graph has two datasets one with globalAlpha set 2`] = `""`;
|
|
74
74
|
|
|
@@ -86,7 +86,7 @@ exports[`Correctly render bar graph where: scale > 1 the graph has two datasets
|
|
|
86
86
|
|
|
87
87
|
exports[`Correctly render bar graph where: scale > 1 the graph has two datasets coloured red and blue 2`] = `""`;
|
|
88
88
|
|
|
89
|
-
exports[`Correctly render bar graph where: scale > 1 the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+
|
|
89
|
+
exports[`Correctly render bar graph where: scale > 1 the graph has two datasets one with globalAlpha set 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAABmJLR0QA/wD/AP+gvaeTAAABi0lEQVR4nO3cQU7DUAxAQQdx76YnLxcAyYugDPTNOiqlT144+e3xmPM1b+Q5j+fmusc8H7/9Xr7zcccfzc8KgikIpiCYgmAKgikIpiCYgmCOmde5ufCuzXXrnNW/McfMsbnurjsYTQimIJiCYAqCKQimIJiCYAqCKQjm8+oXfM5Jb8K6JgRTEExBMAXBFARTEExBMAXBFASz3tS3z6xXR8vf0PbUfROCKQimIJiCYAqCKQimIJiCYAqC+Zw5div4zC2n37cb7jknfTp/qwnBFARTEExBMAXBFARTEExBMAXBXH76fWv/jH63gG+/f65rQjAFwRQEUxBMQTAFwRQEUxBMQTDrTf2/bMJXu/qOQxOCKQimIJiCYAqCKQimIJiCYAqCue2Z+n+xv4Oxu6wJwRQEUxBMQTAFwRQEUxBMQTAFwdz2nPw1s/rt92Neyx+pW3/ffmX//q79DJsQTEEwBcEUBFMQTEEwBcEUBFMQzB/Y1N/r1H0TgikIpiCYgmAKgikIpiCYgmAKgvkCi2sh1uGihQwAAAAASUVORK5CYII="`;
|
|
90
90
|
|
|
91
91
|
exports[`Correctly render bar graph where: scale > 1 the graph has two datasets one with globalAlpha set 2`] = `""`;
|
|
92
92
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
-
exports[`Correctly render a chromosome: with all band types 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAVCAYAAADVR8S+AAAABmJLR0QA/wD/AP+
|
|
3
|
+
exports[`Correctly render a chromosome: with all band types 1`] = `"data:image/png;base64,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"`;
|
|
4
4
|
|
|
5
|
-
exports[`Correctly render a chromosome: with only one band 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAVCAYAAADVR8S+AAAABmJLR0QA/wD/AP+
|
|
5
|
+
exports[`Correctly render a chromosome: with only one band 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAVCAYAAADVR8S+AAAABmJLR0QA/wD/AP+gvaeTAAAC/0lEQVR4nO3dz0ubdxzA8XceE0Y3NudCMR6KhkiunZeATOkGHYhbvLmjP447Cr3uTxC97CbbRQTPTkQPGhFK0SGTiKAgASlTMIxsdpMxSHZQ1xbWKLbpt5D36/Z8nu8D7xzD9/skMZ67A3wPfAN8gCRJkiRJapQKMAc8As4BYpc3IuAxkHthJkmSJEmSGucceAI8BKotl8Mx4FsuvqhLkiRJkqTGSwB3gV+BX652y8tAMliSJEmSJEnN6ylwLwI+BVoDx0iSJEmS1Kw+Bu5HXJx1jweOkSRJkiSpWSWALyPg69AlkiTpdmZnZzk9PaVYLP43a2lpYWtri1KpxNHREZOTk8Ri/gasJEnvsPeAzyMgHbpEkiTdzszMDIODgy/NqtUq+XyedDpNNpult7eXgYGBQIWSJOmGuuLAR6ErJEnSq6VSKdbX11lbWyOZTBJFEWNjY5ydnVEoFOju7n5pfa1W4+TkBLjYTY+iiFqtFiJdkiTd3CcR8H7oCkmSVF8mk2Fqaorh4WE2NzeZmJi49pmDgwPK5TLFYpGVlZW3UClJkl7DhxEXL6NLkqR3WKlUYn9/H4DFxUX6+/uvfSabzdLR0UEmkyGXyzU6UZIkvZ47EfBP6ApJklRfPP78D1cSicSNj6xXKhWWl5fJ5/ONSpMkSW/GeQT8FbpCkiTV19XVRV9fHwAjIyNsbGy8cm17ezudnZ0AtLW1MTQ0xN7e3lvplCRJt/ZHBPweukKSJNW3u7vL6OgoOzs7pNNppqenAZifn2d1dZVsNsvh4SHj4+O0traysLDA8fEx29vbFAoF5ubmAn8CSZJ0jd9iQAF4ELpEkiT9v1QqxdLSEj09PaFTJElS4yxGwE+hKyRJkiRJamJ/A4UYcB/4GYjXXy9JkiRJkhrgGfBZ7PKiDCQDxkiSJEmS1KyeAveiy4tHQDVgjCRJkiRJzegZ8B3A1Q56BDwGci/MJEmSJElS45wDT4CHQPVqB70KfAH8CPwZKEySJEmSpGZRAX4AvuLyRPu/12mio8TqluwAAAAASUVORK5CYII="`;
|
|
@@ -34,7 +34,7 @@ exports[`Correctly render highlights: backgrounds overlapping highlights, comple
|
|
|
34
34
|
|
|
35
35
|
exports[`Correctly render highlights: where two highlights overlap both labels are displayed 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAPCAYAAAB3CuVDAAAABmJLR0QA/wD/AP+gvaeTAAAAkUlEQVR4nO3ZsQ2AUAxDQX/E/iuHlhKJIi7uJnAV6SlnZiYAAADAqmt7AAAAACDQAQAAoIJABwAAgAICHQAAAAoIdAAAACgg0AEAAKCAQAcAAIACAh0AAAAKCHQAAAAoINABAACggEAHAACAAgIdAAAACtzbA3g5Z3sBwCcnkySZuFs1ZrYXAAA/+aADAABAgQcWlAgc5aJUWQAAAABJRU5ErkJggg=="`;
|
|
36
36
|
|
|
37
|
-
exports[`Correctly render highlights: where two highlights overlap both labels are displayed 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+
|
|
37
|
+
exports[`Correctly render highlights: where two highlights overlap both labels are displayed 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+gvaeTAAACsklEQVR4nO3csatWdRjA8e+NQI0cBGmTSJtcnFxLolU0cJdoKvwH2nJXpDloMZCmipYiIVocQkRJHQQbIhxqrKXFp+Ee4+16tbhdvRKfD7yc93nf33N4zvLAj+ecUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADw70ztmXpnu3KnPpn6deqH7akQ4IHZU7OlfvVw7hyouVzzc83dmjPbUyMAAGzR1P6tbqY3y506NnXUBh3YfrO/Zou9ZWPuHKh5bfn+0rJRP/zfawQAgC2aujD129Q3U2eX305NfT91beri1K6pfVOXp25NXZ96a7PcJf9VG3Rg+82Fmt9qvqlZes6cqvm+5lrNxZpdNfuW6fitmus1b22e+7dzX6558+leDwAArNg4BZ96Zerbqd1LfHbqzNTpqfMr6/Y+avpugw48GQ9NwV+p+bZm9xKfXb9VfU7XnF9Zt/fx0/c5XPNjzYtPrnYAgGfT8ztdAI/1evVy9eWsxy9U31WXqg+m7lefrdWVqV07VSRAK/2qpjb0q5r71We1dmV9sr6Z2besf6/Wfn8aRQMAPEts0J9tz1Vfr9W7G/+YOlodr85NfV59/LSLA1jxXPV1rT3Ur2r+6lc1j+hXs6f1XvZhrX31JAsFAIB/NLV76peV+ODUvamDS7xv6tDUgQcT86njU5c25q6cwy3uwBMwu2tWes4crLm3fqzl2fNDywvglon5HK+5tEnu8zVf1Lz/9OoHAIB/MPXR1J2pc0t8YurG1O3leGzq5NQPUzenrk4deUTup1M/Tf0xdXfq7Z28NuD/Zj6quVNzbolP1Nyoub0cj9WcXH/efG7WXK058nDuvLF+C/zcXfmc2LnrAgAAAAAAAAAAAHbOn9WUJ4s8cU3MAAAAAElFTkSuQmCC"`;
|
|
38
38
|
|
|
39
39
|
exports[`Correctly render highlights: where two highlights overlap both labels are displayed 3`] = `undefined`;
|
|
40
40
|
|
|
@@ -44,7 +44,7 @@ exports[`Correctly render highlights: where two highlights overlap both labels a
|
|
|
44
44
|
|
|
45
45
|
exports[`Correctly render highlights: where two highlights overlap second label is hidden 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAPCAYAAAB3CuVDAAAABmJLR0QA/wD/AP+gvaeTAAAAkklEQVR4nO3ZMQrAMAwEQTvk/1++tGkCghS+YqY2QqhbvJNkAQAAAEddpxcAAAAABDoAAABUEOgAAABQQKADAABAAYEOAAAABQQ6AAAAFBDoAAAAUECgAwAAQAGBDgAAAAUEOgAAABQQ6AAAAFBAoAMAAECB+/QCvOw9e7YyHpk1m8mHzG8NAADwhx90AAAAKPAAWkIIHPeu33wAAAAASUVORK5CYII="`;
|
|
46
46
|
|
|
47
|
-
exports[`Correctly render highlights: where two highlights overlap second label is hidden 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+
|
|
47
|
+
exports[`Correctly render highlights: where two highlights overlap second label is hidden 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+gvaeTAAABnElEQVR4nO3avctPcRjH8TcpD2VQVsnDbjLzDwhll0zKH+HeyR+gLJRMlEmULAZJ5GFQFoOB0WRxGfzU3R1yI7eH12s5Xeecz7frjFfXKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4PlObp07+quzU5am3U09+TYcAAADwH5ja/qPD9JeyUwen9hvQAQAAYBWmzk+9m7o1tbS4d2zq/tTDqUtTG6e2Td2eejb1aOrol7KL/F4DOgAAAKzCyi341K6pO1ObFvXS1Omp41Pnlr239WvbdwM6AADA32HDWjfANx2odlY35lO9pbpbXanOTH2orq2re1Mb16pJAAAAfp4B/c+2vrq5rk6tfDC1vzpUnZ26Xl383c0BAADAP2lq09SbZfXuqddTuxf1tqk9Uzs+b8ynDk1dWZlddoZf3AEAAGC1pi5MvZg6u6gPTz2eer64Hpw6MvVk6unUg6l9X8lenXo19X7q5dSJtfw2AAAAAAAAAAAAAIBv+wjBOIxsJGVfVgAAAABJRU5ErkJggg=="`;
|
|
48
48
|
|
|
49
49
|
exports[`Correctly render highlights: where two highlights overlap second label is hidden 3`] = `undefined`;
|
|
50
50
|
|
|
@@ -54,7 +54,7 @@ exports[`Correctly render highlights: where two highlights overlap second label
|
|
|
54
54
|
|
|
55
55
|
exports[`Correctly render highlights: with a defined color 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAPCAYAAAB3CuVDAAAABmJLR0QA/wD/AP+gvaeTAAAAh0lEQVR4nO3ZwQmAUBBDQVfsv+V4ld/ABpypINdHJkkuAAAAYNW9PQAAAAAQ6AAAAFBBoAMAAEABgQ4AAAAFBDoAAAAUEOgAAABQQKADAABAAYEOAAAABQQ6AAAAFBDoAAAAUECgAwAAQAGBDgAAAAWe7QF8zGwv4JRsLwAAAH7Cgw4AAAAFXmrNBhwSTvt8AAAAAElFTkSuQmCC"`;
|
|
56
56
|
|
|
57
|
-
exports[`Correctly render highlights: with a defined color 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+
|
|
57
|
+
exports[`Correctly render highlights: with a defined color 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+gvaeTAAABb0lEQVR4nO3ZsYvPcRzH8edJ3VGGK6vk/AEmM//AhbIbTMof4faTP0BZDDdSJlGyGCTRYfAHGKx2b4Ofuq5LcnXn9Hgsn17f7+dV7/XTuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgz0ydmLp50F0AAABgh6nTU9sH3QUAAAB2mLo39W3q2dTG4tv1qddTb6ceTi1PrU49n/o49W7q2l5dAAAA4C/s3oJPnZt6MbWyyBtTt6duTN3dce+UDToAAMDRdvywB+C3LlVnqyfzM5+sXlZb1Z2p79WjpXo1tXxYQwIAALB/Huj/tmPV06W6tfvH1MVqvdqcelw9OOjhAAAA4L80tTL1dUdem/oytbbIq1Pnp8782phPrU9t7e4CAAAA+zB1f+rz1OYiX5l6P/VpcV6eujq1PfVh6s3Uhb26AAAAAAAAAAAAAABHyw/k53EsqnWGjQAAAABJRU5ErkJggg=="`;
|
|
58
58
|
|
|
59
59
|
exports[`Correctly render highlights: with a defined color 3`] = `undefined`;
|
|
60
60
|
|
|
@@ -64,7 +64,7 @@ exports[`Correctly render highlights: with a defined color 5`] = `undefined`;
|
|
|
64
64
|
|
|
65
65
|
exports[`Correctly render highlights: with a mixture of defined colors and no colors 1`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAPCAYAAAB3CuVDAAAABmJLR0QA/wD/AP+gvaeTAAAA9ElEQVR4nO3ZsYkCQRiGYVfMBWuwBFOxASu43OQwuYs2E7ONNJFLzK3gGjgutQRrEKxgjKYD/90feZ4C3hmYYPnYppRSRgAAAMCgxkNfAAAAADDQAQAAIAUDHQAAABIw0AEAACABAx0AAAASMNABAAAgAQMdAAAAEjDQAQAAIAEDHQAAABIw0AEAACABAx0AAAASMNABAAAggcnQF3iFtm17OafrutD+Y78P7VfT3S60v/z9Du1X/+tD8AlNcL8qofXNzz20X50/Z7EHXHp6j4/Y9xj9XWP71WoRmj993UL71fY4D+2/y/cDAHgP/qADAABAAk/qBBscvfALGAAAAABJRU5ErkJggg=="`;
|
|
66
66
|
|
|
67
|
-
exports[`Correctly render highlights: with a mixture of defined colors and no colors 2`] = `"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAZCAYAAACihQTFAAAABmJLR0QA/wD/AP+
|
|
67
|
+
exports[`Correctly render highlights: with a mixture of defined colors and no colors 2`] = `"data:image/png;base64,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"`;
|
|
68
68
|
|
|
69
69
|
exports[`Correctly render highlights: with a mixture of defined colors and no colors 3`] = `undefined`;
|
|
70
70
|
|