react-msaview 4.1.1 → 4.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.
- package/bundle/index.js +7 -7
- package/dist/components/TextTrack.d.ts +2 -1
- package/dist/components/TextTrack.js.map +1 -1
- package/dist/components/Track.js.map +1 -1
- package/dist/components/header/Header.js +6 -1
- package/dist/components/header/Header.js.map +1 -1
- package/dist/components/header/HeaderMenuExtra.js +8 -2
- package/dist/components/header/HeaderMenuExtra.js.map +1 -1
- package/dist/components/header/ZoomControls.d.ts +1 -1
- package/dist/components/header/ZoomControls.js +1 -46
- package/dist/components/header/ZoomControls.js.map +1 -1
- package/dist/components/header/ZoomMenu.d.ts +6 -0
- package/dist/components/header/ZoomMenu.js +33 -0
- package/dist/components/header/ZoomMenu.js.map +1 -0
- package/dist/components/header/ZoomStar.d.ts +6 -0
- package/dist/components/header/ZoomStar.js +40 -0
- package/dist/components/header/ZoomStar.js.map +1 -0
- package/dist/components/tree/renderTreeCanvas.js +6 -3
- package/dist/components/tree/renderTreeCanvas.js.map +1 -1
- package/dist/flatToTree.d.ts +17 -0
- package/dist/flatToTree.js +41 -0
- package/dist/flatToTree.js.map +1 -0
- package/dist/model.d.ts +19 -24
- package/dist/model.js +42 -20
- package/dist/model.js.map +1 -1
- package/dist/parseAsn1.d.ts +34 -0
- package/dist/parseAsn1.js +385 -0
- package/dist/parseAsn1.js.map +1 -0
- package/dist/parseAsn1.test.d.ts +1 -0
- package/dist/parseAsn1.test.js +8 -0
- package/dist/parseAsn1.test.js.map +1 -0
- package/dist/parsers/ClustalMSA.d.ts +1 -1
- package/dist/parsers/ClustalMSA.js.map +1 -1
- package/dist/parsers/EmfMSA.d.ts +1 -1
- package/dist/parsers/FastaMSA.d.ts +1 -1
- package/dist/parsers/StockholmMSA.d.ts +1 -1
- package/dist/parsers/StockholmMSA.js.map +1 -1
- package/dist/renderToSvg.d.ts +3 -2
- package/dist/renderToSvg.js.map +1 -1
- package/dist/reparseTree.d.ts +1 -1
- package/dist/reparseTree.js +2 -0
- package/dist/reparseTree.js.map +1 -1
- package/dist/types.d.ts +38 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/util.d.ts +6 -20
- package/dist/util.js +19 -0
- package/dist/util.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +3 -2
- package/src/__snapshots__/parseAsn1.test.ts.snap +2400 -0
- package/src/components/TextTrack.tsx +2 -1
- package/src/components/Track.tsx +0 -2
- package/src/components/header/Header.tsx +7 -1
- package/src/components/header/HeaderMenuExtra.tsx +8 -2
- package/src/components/header/ZoomControls.tsx +1 -52
- package/src/components/header/ZoomMenu.tsx +42 -0
- package/src/components/header/ZoomStar.tsx +75 -0
- package/src/components/msa/renderBoxFeatureCanvasBlock.ts +1 -1
- package/src/components/msa/renderMSABlock.ts +1 -1
- package/src/components/tree/renderTreeCanvas.ts +13 -3
- package/src/flatToTree.ts +57 -0
- package/src/model.ts +70 -49
- package/src/parseAsn1.test.ts +11 -0
- package/src/parseAsn1.ts +494 -0
- package/src/parsers/ClustalMSA.ts +2 -1
- package/src/parsers/EmfMSA.ts +1 -1
- package/src/parsers/FastaMSA.ts +1 -1
- package/src/parsers/StockholmMSA.ts +4 -1
- package/src/renderToSvg.tsx +6 -4
- package/src/reparseTree.ts +3 -1
- package/src/types.ts +44 -0
- package/src/util.ts +26 -22
- package/src/version.ts +1 -1
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NCBI ASN.1 Parser
|
|
3
|
+
* A simple hand-made parser for NCBI ASN.1 format
|
|
4
|
+
* Was too lazy to figure out how ASN.1 actually worked, and use a dedicated
|
|
5
|
+
* ASN.1 parser (you have to generally pre-defined your schema)
|
|
6
|
+
* Written with help of Claude AI
|
|
7
|
+
*/
|
|
8
|
+
// Parse the fdict section
|
|
9
|
+
const remap = {
|
|
10
|
+
$NODE_COLLAPSED: 'collapsed',
|
|
11
|
+
$NODE_COLOR: 'color',
|
|
12
|
+
$LABEL_BG_COLOR: 'color',
|
|
13
|
+
'seq-id': 'seqId',
|
|
14
|
+
'seq-title': 'seqTitle',
|
|
15
|
+
'align-index': 'alignIndex',
|
|
16
|
+
'accession-nbr': 'accessionNbr',
|
|
17
|
+
'blast-name': 'blastName',
|
|
18
|
+
'common-name': 'commonName',
|
|
19
|
+
'leaf-count': 'leafCount',
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Parse NCBI ASN.1 format string into a JavaScript object
|
|
23
|
+
* @param asnString The ASN.1 string to parse
|
|
24
|
+
* @returns Parsed BioTreeContainer object
|
|
25
|
+
*/
|
|
26
|
+
export function parseAsn1(asnString) {
|
|
27
|
+
const sections = extractSections(asnString
|
|
28
|
+
.replace(/\s+/g, ' ')
|
|
29
|
+
.replace(/\s*{\s*/g, '{')
|
|
30
|
+
.replace(/\s*}\s*/g, '}')
|
|
31
|
+
.replace(/\s*,\s*/g, ',')
|
|
32
|
+
.replace(/\s*::\s*=\s*/g, '::=')
|
|
33
|
+
.replace(/^.*?::=/, ''));
|
|
34
|
+
const dict = Object.fromEntries(parseFdict(sections.fdict).map(r => [
|
|
35
|
+
r.id,
|
|
36
|
+
remap[r.name] || r.name,
|
|
37
|
+
]));
|
|
38
|
+
return parseNodes(sections.nodes).map(node => {
|
|
39
|
+
const { features, ...rest } = node;
|
|
40
|
+
return {
|
|
41
|
+
...rest,
|
|
42
|
+
...Object.fromEntries(features.map(f => [dict[f.featureid], f.value])),
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Extract main sections from the ASN.1 string
|
|
48
|
+
* @param asnString The ASN.1 string without type definition
|
|
49
|
+
* @returns Object with extracted sections
|
|
50
|
+
*/
|
|
51
|
+
function extractSections(asnString) {
|
|
52
|
+
const sections = {};
|
|
53
|
+
// First, let's clean up the string by removing any leading/trailing whitespace
|
|
54
|
+
const cleanedString = asnString.trim();
|
|
55
|
+
// Remove the outer braces if they exist
|
|
56
|
+
const contentString = cleanedString.startsWith('{') && cleanedString.endsWith('}')
|
|
57
|
+
? cleanedString.slice(1, -1).trim()
|
|
58
|
+
: cleanedString;
|
|
59
|
+
// Now we'll manually parse the top-level sections
|
|
60
|
+
let currentPos = 0;
|
|
61
|
+
while (currentPos < contentString.length) {
|
|
62
|
+
// Skip whitespace
|
|
63
|
+
while (currentPos < contentString.length &&
|
|
64
|
+
/\s/.test(contentString[currentPos])) {
|
|
65
|
+
currentPos++;
|
|
66
|
+
}
|
|
67
|
+
if (currentPos >= contentString.length) {
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
// Read section name
|
|
71
|
+
const sectionNameStart = currentPos;
|
|
72
|
+
while (currentPos < contentString.length &&
|
|
73
|
+
/\w/.test(contentString[currentPos])) {
|
|
74
|
+
currentPos++;
|
|
75
|
+
}
|
|
76
|
+
if (currentPos >= contentString.length ||
|
|
77
|
+
(contentString[currentPos] !== ' ' && contentString[currentPos] !== '{')) {
|
|
78
|
+
// Not a valid section, skip to next comma or end
|
|
79
|
+
while (currentPos < contentString.length &&
|
|
80
|
+
contentString[currentPos] !== ',') {
|
|
81
|
+
currentPos++;
|
|
82
|
+
}
|
|
83
|
+
if (currentPos < contentString.length) {
|
|
84
|
+
currentPos++;
|
|
85
|
+
} // Skip the comma
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
const sectionName = contentString.slice(sectionNameStart, currentPos).trim();
|
|
89
|
+
// Skip whitespace
|
|
90
|
+
while (currentPos < contentString.length &&
|
|
91
|
+
/\s/.test(contentString[currentPos])) {
|
|
92
|
+
currentPos++;
|
|
93
|
+
}
|
|
94
|
+
if (currentPos >= contentString.length ||
|
|
95
|
+
contentString[currentPos] !== '{') {
|
|
96
|
+
// Not a valid section, skip to next comma or end
|
|
97
|
+
while (currentPos < contentString.length &&
|
|
98
|
+
contentString[currentPos] !== ',') {
|
|
99
|
+
currentPos++;
|
|
100
|
+
}
|
|
101
|
+
if (currentPos < contentString.length) {
|
|
102
|
+
currentPos++;
|
|
103
|
+
} // Skip the comma
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
// We found an opening brace, now we need to find the matching closing brace
|
|
107
|
+
const sectionContentStart = currentPos + 1;
|
|
108
|
+
let braceCount = 1;
|
|
109
|
+
currentPos++;
|
|
110
|
+
while (currentPos < contentString.length && braceCount > 0) {
|
|
111
|
+
if (contentString[currentPos] === '{') {
|
|
112
|
+
braceCount++;
|
|
113
|
+
}
|
|
114
|
+
else if (contentString[currentPos] === '}') {
|
|
115
|
+
braceCount--;
|
|
116
|
+
}
|
|
117
|
+
currentPos++;
|
|
118
|
+
}
|
|
119
|
+
if (braceCount === 0) {
|
|
120
|
+
// We found the matching closing brace
|
|
121
|
+
const sectionContent = contentString
|
|
122
|
+
.slice(sectionContentStart, currentPos - 1)
|
|
123
|
+
.trim();
|
|
124
|
+
sections[sectionName] = sectionContent;
|
|
125
|
+
}
|
|
126
|
+
// Skip to next comma or end
|
|
127
|
+
while (currentPos < contentString.length &&
|
|
128
|
+
contentString[currentPos] !== ',') {
|
|
129
|
+
currentPos++;
|
|
130
|
+
}
|
|
131
|
+
if (currentPos < contentString.length) {
|
|
132
|
+
currentPos++;
|
|
133
|
+
} // Skip the comma
|
|
134
|
+
}
|
|
135
|
+
return sections;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Parse the fdict section
|
|
139
|
+
* @param fdictString The fdict section content
|
|
140
|
+
* @returns Array of ASNDictEntry objects
|
|
141
|
+
*/
|
|
142
|
+
function parseFdict(fdictString) {
|
|
143
|
+
const entries = [];
|
|
144
|
+
// We need to properly handle nested braces
|
|
145
|
+
let currentPos = 0;
|
|
146
|
+
while (currentPos < fdictString.length) {
|
|
147
|
+
// Skip whitespace
|
|
148
|
+
while (currentPos < fdictString.length &&
|
|
149
|
+
/\s/.test(fdictString[currentPos])) {
|
|
150
|
+
currentPos++;
|
|
151
|
+
}
|
|
152
|
+
if (currentPos >= fdictString.length) {
|
|
153
|
+
break;
|
|
154
|
+
}
|
|
155
|
+
// Look for opening brace
|
|
156
|
+
if (fdictString[currentPos] === '{') {
|
|
157
|
+
const entryContentStart = currentPos + 1;
|
|
158
|
+
let braceCount = 1;
|
|
159
|
+
currentPos++;
|
|
160
|
+
while (currentPos < fdictString.length && braceCount > 0) {
|
|
161
|
+
if (fdictString[currentPos] === '{') {
|
|
162
|
+
braceCount++;
|
|
163
|
+
}
|
|
164
|
+
else if (fdictString[currentPos] === '}') {
|
|
165
|
+
braceCount--;
|
|
166
|
+
}
|
|
167
|
+
currentPos++;
|
|
168
|
+
}
|
|
169
|
+
if (braceCount === 0) {
|
|
170
|
+
// We found the matching closing brace
|
|
171
|
+
const entryContent = fdictString
|
|
172
|
+
.slice(entryContentStart, currentPos - 1)
|
|
173
|
+
.trim();
|
|
174
|
+
const entry = parseDictEntry(entryContent);
|
|
175
|
+
if (entry) {
|
|
176
|
+
entries.push(entry);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
// Skip to next opening brace
|
|
182
|
+
while (currentPos < fdictString.length &&
|
|
183
|
+
fdictString[currentPos] !== '{') {
|
|
184
|
+
currentPos++;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return entries;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Parse a single dictionary entry
|
|
192
|
+
* @param entryString The entry content
|
|
193
|
+
* @returns ASNDictEntry object or null if parsing fails
|
|
194
|
+
*/
|
|
195
|
+
function parseDictEntry(entryString) {
|
|
196
|
+
const idMatch = /id\s+(\d+)/.exec(entryString);
|
|
197
|
+
// Handle escaped quotes in strings
|
|
198
|
+
const nameMatch = /name\s+"((?:[^"\\]|\\.)*)"/s.exec(entryString);
|
|
199
|
+
if (idMatch && nameMatch) {
|
|
200
|
+
// Process escaped characters in the string
|
|
201
|
+
const processedName = nameMatch[1]
|
|
202
|
+
.replace(/\\"/g, '"')
|
|
203
|
+
.replace(/\\\\/g, '\\');
|
|
204
|
+
return {
|
|
205
|
+
id: parseInt(idMatch[1], 10),
|
|
206
|
+
name: processedName,
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
return null;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Parse the nodes section
|
|
213
|
+
* @param nodesString The nodes section content
|
|
214
|
+
* @returns Array of ASNNode objects
|
|
215
|
+
*/
|
|
216
|
+
function parseNodes(nodesString) {
|
|
217
|
+
const nodes = [];
|
|
218
|
+
// We need to properly handle nested braces
|
|
219
|
+
let currentPos = 0;
|
|
220
|
+
while (currentPos < nodesString.length) {
|
|
221
|
+
// Skip whitespace
|
|
222
|
+
while (currentPos < nodesString.length &&
|
|
223
|
+
/\s/.test(nodesString[currentPos])) {
|
|
224
|
+
currentPos++;
|
|
225
|
+
}
|
|
226
|
+
if (currentPos >= nodesString.length) {
|
|
227
|
+
break;
|
|
228
|
+
}
|
|
229
|
+
// Look for opening brace
|
|
230
|
+
if (nodesString[currentPos] === '{') {
|
|
231
|
+
const nodeContentStart = currentPos + 1;
|
|
232
|
+
let braceCount = 1;
|
|
233
|
+
currentPos++;
|
|
234
|
+
while (currentPos < nodesString.length && braceCount > 0) {
|
|
235
|
+
if (nodesString[currentPos] === '{') {
|
|
236
|
+
braceCount++;
|
|
237
|
+
}
|
|
238
|
+
else if (nodesString[currentPos] === '}') {
|
|
239
|
+
braceCount--;
|
|
240
|
+
}
|
|
241
|
+
currentPos++;
|
|
242
|
+
}
|
|
243
|
+
if (braceCount === 0) {
|
|
244
|
+
// We found the matching closing brace
|
|
245
|
+
const nodeContent = nodesString
|
|
246
|
+
.slice(nodeContentStart, currentPos - 1)
|
|
247
|
+
.trim();
|
|
248
|
+
const node = parseNode(nodeContent);
|
|
249
|
+
if (node) {
|
|
250
|
+
nodes.push(node);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
else {
|
|
255
|
+
// Skip to next opening brace
|
|
256
|
+
while (currentPos < nodesString.length &&
|
|
257
|
+
nodesString[currentPos] !== '{') {
|
|
258
|
+
currentPos++;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
return nodes;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Parse a single node
|
|
266
|
+
* @param nodeString The node content
|
|
267
|
+
* @returns ASNNode object or null if parsing fails
|
|
268
|
+
*/
|
|
269
|
+
function parseNode(nodeString) {
|
|
270
|
+
const idMatch = /id\s+(\d+)/.exec(nodeString);
|
|
271
|
+
const parentMatch = /parent\s+(\d+)/.exec(nodeString);
|
|
272
|
+
if (idMatch) {
|
|
273
|
+
const node = {
|
|
274
|
+
id: parseInt(idMatch[1], 10),
|
|
275
|
+
};
|
|
276
|
+
if (parentMatch) {
|
|
277
|
+
node.parent = parseInt(parentMatch[1], 10);
|
|
278
|
+
}
|
|
279
|
+
// Extract features if present
|
|
280
|
+
// First find the features section
|
|
281
|
+
const featuresIndex = nodeString.indexOf('features');
|
|
282
|
+
if (featuresIndex !== -1) {
|
|
283
|
+
// Find the opening brace after "features"
|
|
284
|
+
const openBraceIndex = nodeString.indexOf('{', featuresIndex);
|
|
285
|
+
if (openBraceIndex !== -1) {
|
|
286
|
+
// Now find the matching closing brace
|
|
287
|
+
let braceCount = 1;
|
|
288
|
+
let closeBraceIndex = openBraceIndex + 1;
|
|
289
|
+
while (closeBraceIndex < nodeString.length && braceCount > 0) {
|
|
290
|
+
if (nodeString[closeBraceIndex] === '{') {
|
|
291
|
+
braceCount++;
|
|
292
|
+
}
|
|
293
|
+
else if (nodeString[closeBraceIndex] === '}') {
|
|
294
|
+
braceCount--;
|
|
295
|
+
}
|
|
296
|
+
closeBraceIndex++;
|
|
297
|
+
}
|
|
298
|
+
if (braceCount === 0) {
|
|
299
|
+
// We found the matching closing brace
|
|
300
|
+
const featuresContent = nodeString
|
|
301
|
+
.slice(openBraceIndex + 1, closeBraceIndex - 1)
|
|
302
|
+
.trim();
|
|
303
|
+
node.features = parseFeatures(featuresContent);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
return node;
|
|
308
|
+
}
|
|
309
|
+
return null;
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Parse features section of a node
|
|
313
|
+
* @param featuresString The features section content
|
|
314
|
+
* @returns Array of ASNFeature objects
|
|
315
|
+
*/
|
|
316
|
+
function parseFeatures(featuresString) {
|
|
317
|
+
const features = [];
|
|
318
|
+
// We need to properly handle nested braces
|
|
319
|
+
let currentPos = 0;
|
|
320
|
+
while (currentPos < featuresString.length) {
|
|
321
|
+
// Skip whitespace
|
|
322
|
+
while (currentPos < featuresString.length &&
|
|
323
|
+
/\s/.test(featuresString[currentPos])) {
|
|
324
|
+
currentPos++;
|
|
325
|
+
}
|
|
326
|
+
if (currentPos >= featuresString.length) {
|
|
327
|
+
break;
|
|
328
|
+
}
|
|
329
|
+
// Look for opening brace
|
|
330
|
+
if (featuresString[currentPos] === '{') {
|
|
331
|
+
const featureContentStart = currentPos + 1;
|
|
332
|
+
let braceCount = 1;
|
|
333
|
+
currentPos++;
|
|
334
|
+
while (currentPos < featuresString.length && braceCount > 0) {
|
|
335
|
+
if (featuresString[currentPos] === '{') {
|
|
336
|
+
braceCount++;
|
|
337
|
+
}
|
|
338
|
+
else if (featuresString[currentPos] === '}') {
|
|
339
|
+
braceCount--;
|
|
340
|
+
}
|
|
341
|
+
currentPos++;
|
|
342
|
+
}
|
|
343
|
+
if (braceCount === 0) {
|
|
344
|
+
// We found the matching closing brace
|
|
345
|
+
const featureContent = featuresString
|
|
346
|
+
.slice(featureContentStart, currentPos - 1)
|
|
347
|
+
.trim();
|
|
348
|
+
const feature = parseFeature(featureContent);
|
|
349
|
+
if (feature) {
|
|
350
|
+
features.push(feature);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
else {
|
|
355
|
+
// Skip to next opening brace
|
|
356
|
+
while (currentPos < featuresString.length &&
|
|
357
|
+
featuresString[currentPos] !== '{') {
|
|
358
|
+
currentPos++;
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
return features;
|
|
363
|
+
}
|
|
364
|
+
/**
|
|
365
|
+
* Parse a single feature
|
|
366
|
+
* @param featureString The feature content
|
|
367
|
+
* @returns ASNFeature object or null if parsing fails
|
|
368
|
+
*/
|
|
369
|
+
function parseFeature(featureString) {
|
|
370
|
+
const featureidMatch = /featureid\s+(\d+)/.exec(featureString);
|
|
371
|
+
// Handle escaped quotes in strings
|
|
372
|
+
const valueMatch = /value\s+"((?:[^"\\]|\\.)*)"/s.exec(featureString);
|
|
373
|
+
if (featureidMatch && valueMatch) {
|
|
374
|
+
// Process escaped characters in the string
|
|
375
|
+
const processedValue = valueMatch[1]
|
|
376
|
+
.replace(/\\"/g, '"')
|
|
377
|
+
.replace(/\\\\/g, '\\');
|
|
378
|
+
return {
|
|
379
|
+
featureid: parseInt(featureidMatch[1], 10),
|
|
380
|
+
value: processedValue,
|
|
381
|
+
};
|
|
382
|
+
}
|
|
383
|
+
return null;
|
|
384
|
+
}
|
|
385
|
+
//# sourceMappingURL=parseAsn1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseAsn1.js","sourceRoot":"","sources":["../src/parseAsn1.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import { expect, test } from 'vitest';
|
|
3
|
+
import { parseAsn1 } from './parseAsn1';
|
|
4
|
+
const r = fs.readFileSync(require.resolve('../test/data/tree.asn'), 'utf8');
|
|
5
|
+
test('real data file', () => {
|
|
6
|
+
expect(parseAsn1(r)).toMatchSnapshot();
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=parseAsn1.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseAsn1.test.js","sourceRoot":"","sources":["../src/parseAsn1.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC,CAAA;AAE3E,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC1B,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;AACxC,CAAC,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClustalMSA.js","sourceRoot":"","sources":["../../src/parsers/ClustalMSA.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"ClustalMSA.js","sourceRoot":"","sources":["../../src/parsers/ClustalMSA.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIlC,MAAM,CAAC,OAAO,OAAO,UAAU;IACrB,GAAG,CAA0B;IAErC,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;IAC9D,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,MAAM,CAAA;IACrC,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,EAAE,EAAE,IAAI;gBACR,IAAI;gBACJ,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA;IAC3B,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
|
package/dist/parsers/EmfMSA.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StockholmMSA.js","sourceRoot":"","sources":["../../src/parsers/StockholmMSA.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAA;AAEpC,OAAO,WAAW,MAAM,gBAAgB,CAAA;AACxC,OAAO,
|
|
1
|
+
{"version":3,"file":"StockholmMSA.js","sourceRoot":"","sources":["../../src/parsers/StockholmMSA.ts"],"names":[],"mappings":"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"}
|
package/dist/renderToSvg.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { MsaViewModel } from './model';
|
|
2
2
|
import type { Theme } from '@mui/material';
|
|
3
|
-
export
|
|
3
|
+
export interface ExportSvgOptions {
|
|
4
4
|
theme: Theme;
|
|
5
5
|
includeMinimap?: boolean;
|
|
6
6
|
exportType: string;
|
|
7
|
-
}
|
|
7
|
+
}
|
|
8
|
+
export declare function renderToSvg(model: MsaViewModel, opts: ExportSvgOptions): Promise<string>;
|
package/dist/renderToSvg.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,UAAU,MAAM,iCAAiC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAA;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"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"}
|
package/dist/reparseTree.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { NodeWithIds } from './
|
|
1
|
+
import type { NodeWithIds } from './types';
|
|
2
2
|
export declare function reparseTree(tree: NodeWithIds): NodeWithIds;
|
package/dist/reparseTree.js
CHANGED
package/dist/reparseTree.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reparseTree.js","sourceRoot":"","sources":["../src/reparseTree.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,IAAiB;IAC3C,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC9B,CAAC,CAAC,QAAQ,CAAC,MAAM;YACf,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC;gBACE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACb,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,WAAW;gBACtB,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS;aACzB,CACN;KACF,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"reparseTree.js","sourceRoot":"","sources":["../src/reparseTree.ts"],"names":[],"mappings":"AAEA,wEAAwE;AACxE,WAAW;AACX,MAAM,UAAU,WAAW,CAAC,IAAiB;IAC3C,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC9B,CAAC,CAAC,QAAQ,CAAC,MAAM;YACf,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC;gBACE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACb,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,WAAW;gBACtB,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS;aACzB,CACN;KACF,CAAA;AACH,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export interface Accession {
|
|
2
|
+
accession: string;
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
}
|
|
6
|
+
export interface BasicTrackModel {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
associatedRowName?: string;
|
|
10
|
+
height: number;
|
|
11
|
+
}
|
|
12
|
+
export interface TextTrackModel extends BasicTrackModel {
|
|
13
|
+
customColorScheme?: Record<string, string>;
|
|
14
|
+
data: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ITextTrack {
|
|
17
|
+
ReactComponent: React.FC<any>;
|
|
18
|
+
model: TextTrackModel;
|
|
19
|
+
}
|
|
20
|
+
export type BasicTrack = ITextTrack;
|
|
21
|
+
export interface Node {
|
|
22
|
+
children?: Node[];
|
|
23
|
+
name?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface NodeWithIds {
|
|
26
|
+
id: string;
|
|
27
|
+
name: string;
|
|
28
|
+
children: NodeWithIds[];
|
|
29
|
+
length?: number;
|
|
30
|
+
noTree?: boolean;
|
|
31
|
+
}
|
|
32
|
+
export interface NodeWithIdsAndLength {
|
|
33
|
+
id: string;
|
|
34
|
+
name: string;
|
|
35
|
+
children: NodeWithIdsAndLength[];
|
|
36
|
+
noTree?: boolean;
|
|
37
|
+
length: number;
|
|
38
|
+
}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/dist/util.d.ts
CHANGED
|
@@ -1,27 +1,9 @@
|
|
|
1
|
+
import type { Node, NodeWithIds } from './types';
|
|
1
2
|
import type { Theme } from '@mui/material';
|
|
2
3
|
import type { HierarchyNode } from 'd3-hierarchy';
|
|
3
4
|
export declare function transform<T>(obj: Record<string, T>, cb: (arg0: [string, T]) => [string, T]): {
|
|
4
5
|
[k: string]: T;
|
|
5
6
|
};
|
|
6
|
-
interface Node {
|
|
7
|
-
children?: Node[];
|
|
8
|
-
name?: string;
|
|
9
|
-
[key: string]: unknown;
|
|
10
|
-
}
|
|
11
|
-
export interface NodeWithIds {
|
|
12
|
-
id: string;
|
|
13
|
-
name: string;
|
|
14
|
-
children: NodeWithIds[];
|
|
15
|
-
length?: number;
|
|
16
|
-
noTree?: boolean;
|
|
17
|
-
}
|
|
18
|
-
export interface NodeWithIdsAndLength {
|
|
19
|
-
id: string;
|
|
20
|
-
name: string;
|
|
21
|
-
children: NodeWithIdsAndLength[];
|
|
22
|
-
noTree?: boolean;
|
|
23
|
-
length: number;
|
|
24
|
-
}
|
|
25
7
|
export declare function generateNodeIds(tree: Node, parent?: string, depth?: number): NodeWithIds;
|
|
26
8
|
export declare function colorContrast(colorScheme: Record<string, string>, theme: Theme): {
|
|
27
9
|
[k: string]: string;
|
|
@@ -35,4 +17,8 @@ export declare function len(a: {
|
|
|
35
17
|
end: number;
|
|
36
18
|
start: number;
|
|
37
19
|
}): number;
|
|
38
|
-
export
|
|
20
|
+
export declare function localStorageGetItem(item: string): string | null | undefined;
|
|
21
|
+
export declare function localStorageGetBoolean(key: string, defaultVal: boolean): boolean;
|
|
22
|
+
export declare function localStorageSetItem(str: string, item: string): void;
|
|
23
|
+
export declare function localStorageSetBoolean(key: string, value: boolean): void;
|
|
24
|
+
export declare function isGzip(buf: Uint8Array): boolean;
|
package/dist/util.js
CHANGED
|
@@ -63,4 +63,23 @@ export function clamp(min, num, max) {
|
|
|
63
63
|
export function len(a) {
|
|
64
64
|
return a.end - a.start;
|
|
65
65
|
}
|
|
66
|
+
export function localStorageGetItem(item) {
|
|
67
|
+
return typeof localStorage !== 'undefined'
|
|
68
|
+
? localStorage.getItem(item)
|
|
69
|
+
: undefined;
|
|
70
|
+
}
|
|
71
|
+
export function localStorageGetBoolean(key, defaultVal) {
|
|
72
|
+
return Boolean(JSON.parse(localStorageGetItem(key) || JSON.stringify(defaultVal)));
|
|
73
|
+
}
|
|
74
|
+
export function localStorageSetItem(str, item) {
|
|
75
|
+
if (typeof localStorage !== 'undefined') {
|
|
76
|
+
localStorage.setItem(str, item);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
export function localStorageSetBoolean(key, value) {
|
|
80
|
+
localStorageSetItem(key, JSON.stringify(value));
|
|
81
|
+
}
|
|
82
|
+
export function isGzip(buf) {
|
|
83
|
+
return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
|
|
84
|
+
}
|
|
66
85
|
//# sourceMappingURL=util.js.map
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,WAAW,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "4.
|
|
1
|
+
export declare const version = "4.2.0";
|