protvista-uniprot 4.2.1 → 4.3.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.
- package/README.md +2 -2
- package/dist/protvista-uniprot.mjs +41675 -28745
- package/dist/protvista-uniprot.mjs.map +1 -1
- package/dist/types/config.d.ts +1 -1
- package/package.json +4 -4
- package/src/adapters/proteomics-adapter.ts +1 -1
- package/src/config.ts +60 -60
- package/src/protvista-uniprot.ts +8 -8
- package/src/styles/protvista-styles.ts +1 -1
- package/src/tooltips/feature-tooltip.ts +7 -11
- package/src/.vscode/settings.json +0 -3
package/dist/types/config.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type TrackType = 'nightingale-track' | 'nightingale-interpro-track' | 'nightingale-colored-sequence' | 'nightingale-variation' | 'nightingale-linegraph-track' | 'nightingale-sequence-heatmap';
|
|
1
|
+
export type TrackType = 'nightingale-track-canvas' | 'nightingale-interpro-track' | 'nightingale-colored-sequence' | 'nightingale-variation' | 'nightingale-linegraph-track' | 'nightingale-sequence-heatmap';
|
|
2
2
|
export type ProtvistaTrackConfig = {
|
|
3
3
|
name: string;
|
|
4
4
|
label?: string;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "protvista-uniprot",
|
|
3
3
|
"description": "ProtVista tool for the UniProt website",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.3.0",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
7
7
|
"src"
|
|
@@ -31,15 +31,15 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@nightingale-elements/nightingale-colored-sequence": "5.4.0",
|
|
33
33
|
"@nightingale-elements/nightingale-filter": "5.4.0",
|
|
34
|
-
"@nightingale-elements/nightingale-interpro-track": "5.
|
|
34
|
+
"@nightingale-elements/nightingale-interpro-track": "5.5.0",
|
|
35
35
|
"@nightingale-elements/nightingale-linegraph-track": "5.4.0",
|
|
36
36
|
"@nightingale-elements/nightingale-manager": "5.4.0",
|
|
37
37
|
"@nightingale-elements/nightingale-navigation": "5.4.0",
|
|
38
38
|
"@nightingale-elements/nightingale-sequence": "5.4.0",
|
|
39
39
|
"@nightingale-elements/nightingale-sequence-heatmap": "5.4.0",
|
|
40
40
|
"@nightingale-elements/nightingale-structure": "5.4.0",
|
|
41
|
-
"@nightingale-elements/nightingale-track": "5.
|
|
42
|
-
"@nightingale-elements/nightingale-variation": "5.
|
|
41
|
+
"@nightingale-elements/nightingale-track-canvas": "5.5.0",
|
|
42
|
+
"@nightingale-elements/nightingale-variation": "5.5.0",
|
|
43
43
|
"color-hash": "2.0.2",
|
|
44
44
|
"core-js": "3.13.0",
|
|
45
45
|
"lit": "3.1.3",
|
|
@@ -49,7 +49,7 @@ const transformData = (data) => {
|
|
|
49
49
|
evidences: features[0].evidences,
|
|
50
50
|
peptide: features[0].peptide,
|
|
51
51
|
unique: features[0].unique,
|
|
52
|
-
|
|
52
|
+
residuesToHighlight: features[0].ptms.map((ptm) => ({
|
|
53
53
|
name: ptm.name,
|
|
54
54
|
position: ptm.position,
|
|
55
55
|
sources: ptm.sources,
|
package/src/config.ts
CHANGED
|
@@ -16,7 +16,7 @@ const proteinsApiServices = {
|
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
export type TrackType =
|
|
19
|
-
| 'nightingale-track'
|
|
19
|
+
| 'nightingale-track-canvas'
|
|
20
20
|
| 'nightingale-interpro-track'
|
|
21
21
|
| 'nightingale-colored-sequence'
|
|
22
22
|
| 'nightingale-variation'
|
|
@@ -73,13 +73,13 @@ const config: ProtvistaConfig = {
|
|
|
73
73
|
{
|
|
74
74
|
name: 'MOLECULE_PROCESSING',
|
|
75
75
|
label: 'Molecule processing',
|
|
76
|
-
trackType: 'nightingale-track',
|
|
76
|
+
trackType: 'nightingale-track-canvas',
|
|
77
77
|
tracks: [
|
|
78
78
|
{
|
|
79
79
|
name: 'signal',
|
|
80
80
|
label: 'Signal peptide',
|
|
81
81
|
filter: 'SIGNAL',
|
|
82
|
-
trackType: 'nightingale-track',
|
|
82
|
+
trackType: 'nightingale-track-canvas',
|
|
83
83
|
data: [
|
|
84
84
|
{
|
|
85
85
|
adapter: 'feature-adapter',
|
|
@@ -92,7 +92,7 @@ const config: ProtvistaConfig = {
|
|
|
92
92
|
name: 'chain',
|
|
93
93
|
label: 'Chain',
|
|
94
94
|
filter: 'CHAIN',
|
|
95
|
-
trackType: 'nightingale-track',
|
|
95
|
+
trackType: 'nightingale-track-canvas',
|
|
96
96
|
data: [
|
|
97
97
|
{
|
|
98
98
|
adapter: 'feature-adapter',
|
|
@@ -106,7 +106,7 @@ const config: ProtvistaConfig = {
|
|
|
106
106
|
name: 'transit',
|
|
107
107
|
label: 'Transit peptide',
|
|
108
108
|
filter: 'TRANSIT',
|
|
109
|
-
trackType: 'nightingale-track',
|
|
109
|
+
trackType: 'nightingale-track-canvas',
|
|
110
110
|
data: [
|
|
111
111
|
{
|
|
112
112
|
adapter: 'feature-adapter',
|
|
@@ -119,7 +119,7 @@ const config: ProtvistaConfig = {
|
|
|
119
119
|
name: 'init_met',
|
|
120
120
|
label: 'Initiator methionine',
|
|
121
121
|
filter: 'INIT_MET',
|
|
122
|
-
trackType: 'nightingale-track',
|
|
122
|
+
trackType: 'nightingale-track-canvas',
|
|
123
123
|
data: [
|
|
124
124
|
{
|
|
125
125
|
adapter: 'feature-adapter',
|
|
@@ -134,7 +134,7 @@ const config: ProtvistaConfig = {
|
|
|
134
134
|
name: 'propep',
|
|
135
135
|
label: 'Propeptide',
|
|
136
136
|
filter: 'PROPEP',
|
|
137
|
-
trackType: 'nightingale-track',
|
|
137
|
+
trackType: 'nightingale-track-canvas',
|
|
138
138
|
data: [
|
|
139
139
|
{
|
|
140
140
|
adapter: 'feature-adapter',
|
|
@@ -148,7 +148,7 @@ const config: ProtvistaConfig = {
|
|
|
148
148
|
name: 'peptide',
|
|
149
149
|
label: 'Peptide',
|
|
150
150
|
filter: 'PEPTIDE',
|
|
151
|
-
trackType: 'nightingale-track',
|
|
151
|
+
trackType: 'nightingale-track-canvas',
|
|
152
152
|
data: [
|
|
153
153
|
{
|
|
154
154
|
adapter: 'feature-adapter',
|
|
@@ -163,13 +163,13 @@ const config: ProtvistaConfig = {
|
|
|
163
163
|
{
|
|
164
164
|
name: 'SEQUENCE_INFORMATION',
|
|
165
165
|
label: 'Sequence information',
|
|
166
|
-
trackType: 'nightingale-track',
|
|
166
|
+
trackType: 'nightingale-track-canvas',
|
|
167
167
|
tracks: [
|
|
168
168
|
{
|
|
169
169
|
name: 'compbias',
|
|
170
170
|
label: 'Compositional bias',
|
|
171
171
|
filter: 'COMPBIAS',
|
|
172
|
-
trackType: 'nightingale-track',
|
|
172
|
+
trackType: 'nightingale-track-canvas',
|
|
173
173
|
data: [
|
|
174
174
|
{
|
|
175
175
|
adapter: 'feature-adapter',
|
|
@@ -183,7 +183,7 @@ const config: ProtvistaConfig = {
|
|
|
183
183
|
name: 'conflict',
|
|
184
184
|
label: 'Sequence conflict',
|
|
185
185
|
filter: 'CONFLICT',
|
|
186
|
-
trackType: 'nightingale-track',
|
|
186
|
+
trackType: 'nightingale-track-canvas',
|
|
187
187
|
data: [
|
|
188
188
|
{
|
|
189
189
|
adapter: 'feature-adapter',
|
|
@@ -195,7 +195,7 @@ const config: ProtvistaConfig = {
|
|
|
195
195
|
{
|
|
196
196
|
name: 'non_cons',
|
|
197
197
|
filter: 'NON_CONS',
|
|
198
|
-
trackType: 'nightingale-track',
|
|
198
|
+
trackType: 'nightingale-track-canvas',
|
|
199
199
|
label: 'Non-adjacent residues',
|
|
200
200
|
data: [
|
|
201
201
|
{
|
|
@@ -209,7 +209,7 @@ const config: ProtvistaConfig = {
|
|
|
209
209
|
{
|
|
210
210
|
name: 'non_ter',
|
|
211
211
|
filter: 'NON_TER',
|
|
212
|
-
trackType: 'nightingale-track',
|
|
212
|
+
trackType: 'nightingale-track-canvas',
|
|
213
213
|
label: 'Non-terminal residue',
|
|
214
214
|
data: [
|
|
215
215
|
{
|
|
@@ -223,7 +223,7 @@ const config: ProtvistaConfig = {
|
|
|
223
223
|
{
|
|
224
224
|
name: 'unsure',
|
|
225
225
|
filter: 'UNSURE',
|
|
226
|
-
trackType: 'nightingale-track',
|
|
226
|
+
trackType: 'nightingale-track-canvas',
|
|
227
227
|
label: 'Sequence uncertainty',
|
|
228
228
|
data: [
|
|
229
229
|
{
|
|
@@ -237,7 +237,7 @@ const config: ProtvistaConfig = {
|
|
|
237
237
|
{
|
|
238
238
|
name: 'non_std',
|
|
239
239
|
filter: 'NON_STD',
|
|
240
|
-
trackType: 'nightingale-track',
|
|
240
|
+
trackType: 'nightingale-track-canvas',
|
|
241
241
|
label: 'Non-standard residue',
|
|
242
242
|
data: [
|
|
243
243
|
{
|
|
@@ -252,13 +252,13 @@ const config: ProtvistaConfig = {
|
|
|
252
252
|
{
|
|
253
253
|
name: 'TOPOLOGY',
|
|
254
254
|
label: 'Topology',
|
|
255
|
-
trackType: 'nightingale-track',
|
|
255
|
+
trackType: 'nightingale-track-canvas',
|
|
256
256
|
tracks: [
|
|
257
257
|
{
|
|
258
258
|
name: 'topo_dom',
|
|
259
259
|
label: 'Topological domain',
|
|
260
260
|
filter: 'TOPO_DOM',
|
|
261
|
-
trackType: 'nightingale-track',
|
|
261
|
+
trackType: 'nightingale-track-canvas',
|
|
262
262
|
data: [
|
|
263
263
|
{
|
|
264
264
|
adapter: 'feature-adapter',
|
|
@@ -272,7 +272,7 @@ const config: ProtvistaConfig = {
|
|
|
272
272
|
name: 'transmem',
|
|
273
273
|
label: 'Transmembrane',
|
|
274
274
|
filter: 'TRANSMEM',
|
|
275
|
-
trackType: 'nightingale-track',
|
|
275
|
+
trackType: 'nightingale-track-canvas',
|
|
276
276
|
data: [
|
|
277
277
|
{
|
|
278
278
|
adapter: 'feature-adapter',
|
|
@@ -285,7 +285,7 @@ const config: ProtvistaConfig = {
|
|
|
285
285
|
name: 'intramem',
|
|
286
286
|
label: 'Intramembrane',
|
|
287
287
|
filter: 'INTRAMEM',
|
|
288
|
-
trackType: 'nightingale-track',
|
|
288
|
+
trackType: 'nightingale-track-canvas',
|
|
289
289
|
data: [
|
|
290
290
|
{
|
|
291
291
|
adapter: 'feature-adapter',
|
|
@@ -300,13 +300,13 @@ const config: ProtvistaConfig = {
|
|
|
300
300
|
{
|
|
301
301
|
name: 'DOMAINS',
|
|
302
302
|
label: 'Domains',
|
|
303
|
-
trackType: 'nightingale-track',
|
|
303
|
+
trackType: 'nightingale-track-canvas',
|
|
304
304
|
tracks: [
|
|
305
305
|
{
|
|
306
306
|
name: 'domain',
|
|
307
307
|
label: 'Domain',
|
|
308
308
|
filter: 'DOMAIN',
|
|
309
|
-
trackType: 'nightingale-track',
|
|
309
|
+
trackType: 'nightingale-track-canvas',
|
|
310
310
|
data: [
|
|
311
311
|
{
|
|
312
312
|
adapter: 'feature-adapter',
|
|
@@ -319,7 +319,7 @@ const config: ProtvistaConfig = {
|
|
|
319
319
|
{
|
|
320
320
|
name: 'InterPro representative domain',
|
|
321
321
|
label: 'InterPro Representative Domain',
|
|
322
|
-
trackType: 'nightingale-track',
|
|
322
|
+
trackType: 'nightingale-track-canvas',
|
|
323
323
|
data: [
|
|
324
324
|
{
|
|
325
325
|
adapter: 'interpro-adapter',
|
|
@@ -332,7 +332,7 @@ const config: ProtvistaConfig = {
|
|
|
332
332
|
name: 'region',
|
|
333
333
|
label: 'Region',
|
|
334
334
|
filter: 'REGION',
|
|
335
|
-
trackType: 'nightingale-track',
|
|
335
|
+
trackType: 'nightingale-track-canvas',
|
|
336
336
|
data: [
|
|
337
337
|
{
|
|
338
338
|
adapter: 'feature-adapter',
|
|
@@ -346,7 +346,7 @@ const config: ProtvistaConfig = {
|
|
|
346
346
|
name: 'repeat',
|
|
347
347
|
label: 'Repeat',
|
|
348
348
|
filter: 'REPEAT',
|
|
349
|
-
trackType: 'nightingale-track',
|
|
349
|
+
trackType: 'nightingale-track-canvas',
|
|
350
350
|
data: [
|
|
351
351
|
{
|
|
352
352
|
adapter: 'feature-adapter',
|
|
@@ -360,7 +360,7 @@ const config: ProtvistaConfig = {
|
|
|
360
360
|
name: 'motif',
|
|
361
361
|
label: 'Motif',
|
|
362
362
|
filter: 'MOTIF',
|
|
363
|
-
trackType: 'nightingale-track',
|
|
363
|
+
trackType: 'nightingale-track-canvas',
|
|
364
364
|
data: [
|
|
365
365
|
{
|
|
366
366
|
adapter: 'feature-adapter',
|
|
@@ -373,7 +373,7 @@ const config: ProtvistaConfig = {
|
|
|
373
373
|
name: 'zn_fing',
|
|
374
374
|
label: 'Zinc finger',
|
|
375
375
|
filter: 'ZN_FING',
|
|
376
|
-
trackType: 'nightingale-track',
|
|
376
|
+
trackType: 'nightingale-track-canvas',
|
|
377
377
|
data: [
|
|
378
378
|
{
|
|
379
379
|
adapter: 'feature-adapter',
|
|
@@ -388,13 +388,13 @@ const config: ProtvistaConfig = {
|
|
|
388
388
|
{
|
|
389
389
|
name: 'SITES',
|
|
390
390
|
label: 'Sites',
|
|
391
|
-
trackType: 'nightingale-track',
|
|
391
|
+
trackType: 'nightingale-track-canvas',
|
|
392
392
|
tracks: [
|
|
393
393
|
{
|
|
394
394
|
name: 'metal',
|
|
395
395
|
label: 'Metal binding',
|
|
396
396
|
filter: 'METAL',
|
|
397
|
-
trackType: 'nightingale-track',
|
|
397
|
+
trackType: 'nightingale-track-canvas',
|
|
398
398
|
data: [
|
|
399
399
|
{
|
|
400
400
|
adapter: 'feature-adapter',
|
|
@@ -407,7 +407,7 @@ const config: ProtvistaConfig = {
|
|
|
407
407
|
name: 'site',
|
|
408
408
|
label: 'Site',
|
|
409
409
|
filter: 'SITE',
|
|
410
|
-
trackType: 'nightingale-track',
|
|
410
|
+
trackType: 'nightingale-track-canvas',
|
|
411
411
|
data: [
|
|
412
412
|
{
|
|
413
413
|
adapter: 'feature-adapter',
|
|
@@ -420,7 +420,7 @@ const config: ProtvistaConfig = {
|
|
|
420
420
|
name: 'ca_bind',
|
|
421
421
|
label: 'Calcium binding',
|
|
422
422
|
filter: 'CA_BIND',
|
|
423
|
-
trackType: 'nightingale-track',
|
|
423
|
+
trackType: 'nightingale-track-canvas',
|
|
424
424
|
data: [
|
|
425
425
|
{
|
|
426
426
|
adapter: 'feature-adapter',
|
|
@@ -433,7 +433,7 @@ const config: ProtvistaConfig = {
|
|
|
433
433
|
name: 'dna_bind',
|
|
434
434
|
label: 'DNA binding',
|
|
435
435
|
filter: 'DNA_BIND',
|
|
436
|
-
trackType: 'nightingale-track',
|
|
436
|
+
trackType: 'nightingale-track-canvas',
|
|
437
437
|
data: [
|
|
438
438
|
{
|
|
439
439
|
adapter: 'feature-adapter',
|
|
@@ -447,7 +447,7 @@ const config: ProtvistaConfig = {
|
|
|
447
447
|
name: 'np_bind',
|
|
448
448
|
label: 'Nucleotide binding',
|
|
449
449
|
filter: 'NP_BIND',
|
|
450
|
-
trackType: 'nightingale-track',
|
|
450
|
+
trackType: 'nightingale-track-canvas',
|
|
451
451
|
data: [
|
|
452
452
|
{
|
|
453
453
|
adapter: 'feature-adapter',
|
|
@@ -461,7 +461,7 @@ const config: ProtvistaConfig = {
|
|
|
461
461
|
name: 'binding',
|
|
462
462
|
label: 'Binding site',
|
|
463
463
|
filter: 'BINDING',
|
|
464
|
-
trackType: 'nightingale-track',
|
|
464
|
+
trackType: 'nightingale-track-canvas',
|
|
465
465
|
data: [
|
|
466
466
|
{
|
|
467
467
|
adapter: 'feature-adapter',
|
|
@@ -475,7 +475,7 @@ const config: ProtvistaConfig = {
|
|
|
475
475
|
name: 'act_site',
|
|
476
476
|
label: 'Active site',
|
|
477
477
|
filter: 'ACT_SITE',
|
|
478
|
-
trackType: 'nightingale-track',
|
|
478
|
+
trackType: 'nightingale-track-canvas',
|
|
479
479
|
data: [
|
|
480
480
|
{
|
|
481
481
|
adapter: 'feature-adapter',
|
|
@@ -490,13 +490,13 @@ const config: ProtvistaConfig = {
|
|
|
490
490
|
{
|
|
491
491
|
name: 'PTM',
|
|
492
492
|
label: 'PTM',
|
|
493
|
-
trackType: 'nightingale-track',
|
|
493
|
+
trackType: 'nightingale-track-canvas',
|
|
494
494
|
tracks: [
|
|
495
495
|
{
|
|
496
496
|
name: 'mod_res',
|
|
497
497
|
label: 'Modified residue',
|
|
498
498
|
filter: 'MOD_RES',
|
|
499
|
-
trackType: 'nightingale-track',
|
|
499
|
+
trackType: 'nightingale-track-canvas',
|
|
500
500
|
data: [
|
|
501
501
|
{
|
|
502
502
|
adapter: 'feature-adapter',
|
|
@@ -510,7 +510,7 @@ const config: ProtvistaConfig = {
|
|
|
510
510
|
name: 'mod_res_ls',
|
|
511
511
|
label: 'Modified residue (large scale data)',
|
|
512
512
|
filter: 'MOD_RES_LS',
|
|
513
|
-
trackType: 'nightingale-track',
|
|
513
|
+
trackType: 'nightingale-track-canvas',
|
|
514
514
|
data: [
|
|
515
515
|
{
|
|
516
516
|
adapter: 'proteomics-ptm-adapter',
|
|
@@ -523,7 +523,7 @@ const config: ProtvistaConfig = {
|
|
|
523
523
|
name: 'carbohyd',
|
|
524
524
|
label: 'Glycosylation',
|
|
525
525
|
filter: 'CARBOHYD',
|
|
526
|
-
trackType: 'nightingale-track',
|
|
526
|
+
trackType: 'nightingale-track-canvas',
|
|
527
527
|
data: [
|
|
528
528
|
{
|
|
529
529
|
adapter: 'feature-adapter',
|
|
@@ -536,7 +536,7 @@ const config: ProtvistaConfig = {
|
|
|
536
536
|
name: 'disulfid',
|
|
537
537
|
label: 'Disulfide bond',
|
|
538
538
|
filter: 'DISULFID',
|
|
539
|
-
trackType: 'nightingale-track',
|
|
539
|
+
trackType: 'nightingale-track-canvas',
|
|
540
540
|
data: [
|
|
541
541
|
{
|
|
542
542
|
adapter: 'feature-adapter',
|
|
@@ -550,7 +550,7 @@ const config: ProtvistaConfig = {
|
|
|
550
550
|
name: 'crosslnk',
|
|
551
551
|
label: 'Cross-link',
|
|
552
552
|
filter: 'CROSSLNK',
|
|
553
|
-
trackType: 'nightingale-track',
|
|
553
|
+
trackType: 'nightingale-track-canvas',
|
|
554
554
|
data: [
|
|
555
555
|
{
|
|
556
556
|
adapter: 'feature-adapter',
|
|
@@ -564,7 +564,7 @@ const config: ProtvistaConfig = {
|
|
|
564
564
|
name: 'lipid',
|
|
565
565
|
label: 'Lipidation',
|
|
566
566
|
filter: 'LIPID',
|
|
567
|
-
trackType: 'nightingale-track',
|
|
567
|
+
trackType: 'nightingale-track-canvas',
|
|
568
568
|
data: [
|
|
569
569
|
{
|
|
570
570
|
adapter: 'feature-adapter',
|
|
@@ -578,12 +578,12 @@ const config: ProtvistaConfig = {
|
|
|
578
578
|
{
|
|
579
579
|
name: 'EPITOPE',
|
|
580
580
|
label: 'Epitopes',
|
|
581
|
-
trackType: 'nightingale-track',
|
|
581
|
+
trackType: 'nightingale-track-canvas',
|
|
582
582
|
tracks: [
|
|
583
583
|
{
|
|
584
584
|
name: 'epitope',
|
|
585
585
|
label: 'Epitope',
|
|
586
|
-
trackType: 'nightingale-track',
|
|
586
|
+
trackType: 'nightingale-track-canvas',
|
|
587
587
|
data: [
|
|
588
588
|
{
|
|
589
589
|
adapter: 'feature-adapter',
|
|
@@ -597,12 +597,12 @@ const config: ProtvistaConfig = {
|
|
|
597
597
|
{
|
|
598
598
|
name: 'ANTIGEN',
|
|
599
599
|
label: 'Antigenic sequences',
|
|
600
|
-
trackType: 'nightingale-track',
|
|
600
|
+
trackType: 'nightingale-track-canvas',
|
|
601
601
|
tracks: [
|
|
602
602
|
{
|
|
603
603
|
name: 'antigen',
|
|
604
604
|
label: 'Antibody binding sequences',
|
|
605
|
-
trackType: 'nightingale-track',
|
|
605
|
+
trackType: 'nightingale-track-canvas',
|
|
606
606
|
data: [
|
|
607
607
|
{
|
|
608
608
|
adapter: 'feature-adapter',
|
|
@@ -616,13 +616,13 @@ const config: ProtvistaConfig = {
|
|
|
616
616
|
{
|
|
617
617
|
name: 'MUTAGENESIS',
|
|
618
618
|
label: 'Mutagenesis',
|
|
619
|
-
trackType: 'nightingale-track',
|
|
619
|
+
trackType: 'nightingale-track-canvas',
|
|
620
620
|
tracks: [
|
|
621
621
|
{
|
|
622
622
|
name: 'mutagen',
|
|
623
623
|
label: 'Mutagenesis',
|
|
624
624
|
filter: 'MUTAGEN',
|
|
625
|
-
trackType: 'nightingale-track',
|
|
625
|
+
trackType: 'nightingale-track-canvas',
|
|
626
626
|
data: [
|
|
627
627
|
{
|
|
628
628
|
adapter: 'feature-adapter',
|
|
@@ -634,7 +634,7 @@ const config: ProtvistaConfig = {
|
|
|
634
634
|
{
|
|
635
635
|
name: 'othermutagen',
|
|
636
636
|
label: 'Mutagenesis (large scale data)',
|
|
637
|
-
trackType: 'nightingale-track',
|
|
637
|
+
trackType: 'nightingale-track-canvas',
|
|
638
638
|
data: [
|
|
639
639
|
{
|
|
640
640
|
adapter: 'feature-adapter',
|
|
@@ -713,13 +713,13 @@ const config: ProtvistaConfig = {
|
|
|
713
713
|
{
|
|
714
714
|
name: 'PROTEOMICS',
|
|
715
715
|
label: 'Proteomics',
|
|
716
|
-
trackType: 'nightingale-track',
|
|
716
|
+
trackType: 'nightingale-track-canvas',
|
|
717
717
|
tracks: [
|
|
718
718
|
{
|
|
719
719
|
name: 'unique',
|
|
720
720
|
label: 'Unique peptide',
|
|
721
721
|
filter: 'unique',
|
|
722
|
-
trackType: 'nightingale-track',
|
|
722
|
+
trackType: 'nightingale-track-canvas',
|
|
723
723
|
data: [
|
|
724
724
|
{
|
|
725
725
|
adapter: 'proteomics-adapter',
|
|
@@ -732,7 +732,7 @@ const config: ProtvistaConfig = {
|
|
|
732
732
|
name: 'non_unique',
|
|
733
733
|
label: 'Non-unique peptide',
|
|
734
734
|
filter: 'non_unique',
|
|
735
|
-
trackType: 'nightingale-track',
|
|
735
|
+
trackType: 'nightingale-track-canvas',
|
|
736
736
|
data: [
|
|
737
737
|
{
|
|
738
738
|
adapter: 'proteomics-adapter',
|
|
@@ -744,7 +744,7 @@ const config: ProtvistaConfig = {
|
|
|
744
744
|
{
|
|
745
745
|
name: 'hpp',
|
|
746
746
|
label: 'Human proteome project',
|
|
747
|
-
trackType: 'nightingale-track',
|
|
747
|
+
trackType: 'nightingale-track-canvas',
|
|
748
748
|
data: [
|
|
749
749
|
{
|
|
750
750
|
adapter: 'proteomics-adapter',
|
|
@@ -756,7 +756,7 @@ const config: ProtvistaConfig = {
|
|
|
756
756
|
{
|
|
757
757
|
name: 'proteomics-ptm',
|
|
758
758
|
label: 'PTM-containing peptide',
|
|
759
|
-
trackType: 'nightingale-track',
|
|
759
|
+
trackType: 'nightingale-track-canvas',
|
|
760
760
|
data: [
|
|
761
761
|
{
|
|
762
762
|
adapter: 'proteomics-adapter',
|
|
@@ -770,12 +770,12 @@ const config: ProtvistaConfig = {
|
|
|
770
770
|
{
|
|
771
771
|
name: 'STRUCTURE_COVERAGE',
|
|
772
772
|
label: 'PDBe 3D structure coverage',
|
|
773
|
-
trackType: 'nightingale-track',
|
|
773
|
+
trackType: 'nightingale-track-canvas',
|
|
774
774
|
tracks: [
|
|
775
775
|
{
|
|
776
776
|
name: 'pdbe_cover',
|
|
777
777
|
label: 'PDBe coverage',
|
|
778
|
-
trackType: 'nightingale-track',
|
|
778
|
+
trackType: 'nightingale-track-canvas',
|
|
779
779
|
tooltip: 'PDBe 3D structure coverage',
|
|
780
780
|
data: [
|
|
781
781
|
{
|
|
@@ -854,13 +854,13 @@ const config: ProtvistaConfig = {
|
|
|
854
854
|
{
|
|
855
855
|
name: 'STRUCTURAL',
|
|
856
856
|
label: 'Structural features',
|
|
857
|
-
trackType: 'nightingale-track',
|
|
857
|
+
trackType: 'nightingale-track-canvas',
|
|
858
858
|
tracks: [
|
|
859
859
|
{
|
|
860
860
|
name: 'helix',
|
|
861
861
|
label: 'Helix',
|
|
862
862
|
filter: 'HELIX',
|
|
863
|
-
trackType: 'nightingale-track',
|
|
863
|
+
trackType: 'nightingale-track-canvas',
|
|
864
864
|
data: [
|
|
865
865
|
{
|
|
866
866
|
adapter: 'feature-adapter',
|
|
@@ -873,7 +873,7 @@ const config: ProtvistaConfig = {
|
|
|
873
873
|
name: 'strand',
|
|
874
874
|
label: 'Beta strand',
|
|
875
875
|
filter: 'STRAND',
|
|
876
|
-
trackType: 'nightingale-track',
|
|
876
|
+
trackType: 'nightingale-track-canvas',
|
|
877
877
|
data: [
|
|
878
878
|
{
|
|
879
879
|
adapter: 'feature-adapter',
|
|
@@ -886,7 +886,7 @@ const config: ProtvistaConfig = {
|
|
|
886
886
|
name: 'turn',
|
|
887
887
|
label: 'Turn',
|
|
888
888
|
filter: 'TURN',
|
|
889
|
-
trackType: 'nightingale-track',
|
|
889
|
+
trackType: 'nightingale-track-canvas',
|
|
890
890
|
data: [
|
|
891
891
|
{
|
|
892
892
|
adapter: 'feature-adapter',
|
|
@@ -900,7 +900,7 @@ const config: ProtvistaConfig = {
|
|
|
900
900
|
name: 'coiled',
|
|
901
901
|
label: 'Coiled coil',
|
|
902
902
|
filter: 'COILED',
|
|
903
|
-
trackType: 'nightingale-track',
|
|
903
|
+
trackType: 'nightingale-track-canvas',
|
|
904
904
|
data: [
|
|
905
905
|
{
|
|
906
906
|
adapter: 'feature-adapter',
|
package/src/protvista-uniprot.ts
CHANGED
|
@@ -9,7 +9,7 @@ import NightingaleManager from '@nightingale-elements/nightingale-manager';
|
|
|
9
9
|
import NightingaleNavigation from '@nightingale-elements/nightingale-navigation';
|
|
10
10
|
import NightingaleSequence from '@nightingale-elements/nightingale-sequence';
|
|
11
11
|
import NightingaleColoredSequence from '@nightingale-elements/nightingale-colored-sequence';
|
|
12
|
-
import
|
|
12
|
+
import NightingaleTrackCanvas from '@nightingale-elements/nightingale-track-canvas';
|
|
13
13
|
import NightingaleInterproTrack from '@nightingale-elements/nightingale-interpro-track';
|
|
14
14
|
import NightingaleVariation from '@nightingale-elements/nightingale-variation';
|
|
15
15
|
import NightingaleLinegraphTrack from '@nightingale-elements/nightingale-linegraph-track';
|
|
@@ -129,7 +129,7 @@ class ProtvistaUniprot extends LitElement {
|
|
|
129
129
|
|
|
130
130
|
registerWebComponents() {
|
|
131
131
|
loadComponent('nightingale-navigation', NightingaleNavigation);
|
|
132
|
-
loadComponent('nightingale-track',
|
|
132
|
+
loadComponent('nightingale-track-canvas', NightingaleTrackCanvas);
|
|
133
133
|
loadComponent('nightingale-colored-sequence', NightingaleColoredSequence);
|
|
134
134
|
loadComponent('nightingale-interpro-track', NightingaleInterproTrack);
|
|
135
135
|
loadComponent('nightingale-sequence', NightingaleSequence);
|
|
@@ -238,9 +238,9 @@ class ProtvistaUniprot extends LitElement {
|
|
|
238
238
|
async _loadDataInComponents() {
|
|
239
239
|
await frame();
|
|
240
240
|
Object.entries(this.data).forEach(([id, data]) => {
|
|
241
|
-
const element:
|
|
241
|
+
const element: NightingaleTrackCanvas | null = document.getElementById(
|
|
242
242
|
`track-${id}`
|
|
243
|
-
) as
|
|
243
|
+
) as NightingaleTrackCanvas;
|
|
244
244
|
// set data if it hasn't changed
|
|
245
245
|
if (element && element.data !== data) {
|
|
246
246
|
element.data = data;
|
|
@@ -268,7 +268,7 @@ class ProtvistaUniprot extends LitElement {
|
|
|
268
268
|
for (const track of currentCategory.tracks) {
|
|
269
269
|
const elementTrack = document.getElementById(
|
|
270
270
|
`track-${id}-${track.name}`
|
|
271
|
-
) as
|
|
271
|
+
) as NightingaleTrackCanvas | null;
|
|
272
272
|
if (elementTrack) {
|
|
273
273
|
elementTrack.data = this.data[`${id}-${track.name}`];
|
|
274
274
|
}
|
|
@@ -661,9 +661,9 @@ class ProtvistaUniprot extends LitElement {
|
|
|
661
661
|
// lit-html doesn't allow to have dynamic tag names, hence the switch/case
|
|
662
662
|
// with repeated code
|
|
663
663
|
switch (trackType) {
|
|
664
|
-
case 'nightingale-track':
|
|
664
|
+
case 'nightingale-track-canvas':
|
|
665
665
|
return html`
|
|
666
|
-
<nightingale-track
|
|
666
|
+
<nightingale-track-canvas
|
|
667
667
|
length="${this.sequence?.length}"
|
|
668
668
|
height="40"
|
|
669
669
|
layout="${layout}"
|
|
@@ -675,7 +675,7 @@ class ProtvistaUniprot extends LitElement {
|
|
|
675
675
|
highlight-event="onclick"
|
|
676
676
|
use-ctrl-to-zoom
|
|
677
677
|
>
|
|
678
|
-
</nightingale-track>
|
|
678
|
+
</nightingale-track-canvas>
|
|
679
679
|
`;
|
|
680
680
|
case 'nightingale-interpro-track':
|
|
681
681
|
return html`
|
|
@@ -114,15 +114,15 @@ const findModifiedResidueName = (feature, ptm) => {
|
|
|
114
114
|
const formatTooltip = (feature, taxId?: string) => {
|
|
115
115
|
const evidenceHTML =
|
|
116
116
|
feature.type === 'PROTEOMICS_PTM'
|
|
117
|
-
? getPTMEvidence(feature.
|
|
117
|
+
? getPTMEvidence(feature.residuesToHighlight, taxId)
|
|
118
118
|
: getEvidenceFromCodes(feature.evidences);
|
|
119
119
|
const ptms =
|
|
120
120
|
feature.type === 'PROTEOMICS_PTM' &&
|
|
121
|
-
feature.
|
|
121
|
+
feature.residuesToHighlight.map((ptm) => findModifiedResidueName(feature, ptm));
|
|
122
122
|
|
|
123
123
|
const dataset =
|
|
124
124
|
feature.type === 'PROTEOMICS_PTM' &&
|
|
125
|
-
feature.
|
|
125
|
+
feature.residuesToHighlight.flatMap(({ dbReferences }) =>
|
|
126
126
|
dbReferences.map((ref) => ref.id)
|
|
127
127
|
);
|
|
128
128
|
|
|
@@ -150,11 +150,6 @@ const formatTooltip = (feature, taxId?: string) => {
|
|
|
150
150
|
: ''
|
|
151
151
|
}
|
|
152
152
|
${description ? `<h5>Description</h5><p>${description}</p>` : ``}
|
|
153
|
-
${
|
|
154
|
-
feature.matchScore
|
|
155
|
-
? `<h5>Match score</h5><p>${feature.matchScore}%</p>`
|
|
156
|
-
: ``
|
|
157
|
-
}
|
|
158
153
|
${feature.ftId ? `<h5>Feature ID</h5><p>${feature.ftId}</p>` : ``}
|
|
159
154
|
${
|
|
160
155
|
feature.alternativeSequence
|
|
@@ -173,7 +168,7 @@ const formatTooltip = (feature, taxId?: string) => {
|
|
|
173
168
|
feature.peptide && feature.type === 'PROTEOMICS_PTM'
|
|
174
169
|
? `<h5 data-article-id="mod_res_large_scale#what-is-the-goldsilverbronze-criterion">Peptidoform</h5><p>${formatPTMPeptidoform(
|
|
175
170
|
feature.peptide,
|
|
176
|
-
feature.
|
|
171
|
+
feature.residuesToHighlight
|
|
177
172
|
)}</p>`
|
|
178
173
|
: ``
|
|
179
174
|
}
|
|
@@ -181,7 +176,8 @@ const formatTooltip = (feature, taxId?: string) => {
|
|
|
181
176
|
feature.peptide && feature.type !== 'PROTEOMICS_PTM'
|
|
182
177
|
? `<h5>Peptide</h5><p>${feature.peptide}</p>`
|
|
183
178
|
: ``
|
|
184
|
-
}
|
|
179
|
+
}
|
|
180
|
+
${feature.unique ? `<h5>Unique</h5><p>${feature.unique ? 'Yes' : 'No'}</p>` : ``}
|
|
185
181
|
${
|
|
186
182
|
feature.xrefs
|
|
187
183
|
? `<h5>Cross-references</h5>${formatXrefs(feature.xrefs)}`
|
|
@@ -189,7 +185,7 @@ const formatTooltip = (feature, taxId?: string) => {
|
|
|
189
185
|
}
|
|
190
186
|
${evidenceHTML ? `<h5>Evidence</h5>${evidenceHTML}` : ``}
|
|
191
187
|
${
|
|
192
|
-
feature.
|
|
188
|
+
feature.residues && dataset && !dataset.includes('Glue project')
|
|
193
189
|
? `<hr /><h5 data-article-id="mod_res_large_scale#what-is-the-goldsilverbronze-criterion">PTM statistical attributes</h5><ul class="no-bullet">${feature.ptms
|
|
194
190
|
.map((ptm) =>
|
|
195
191
|
ptm.dbReferences
|