@datagrok/sequence-translator 1.0.13 → 1.0.15

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.
@@ -1,11 +1,14 @@
1
+ import * as grok from 'datagrok-api/grok';
1
2
  import * as ui from 'datagrok-api/ui';
3
+ import * as DG from 'datagrok-api/dg';
4
+
2
5
  import {download} from '../helpers';
3
6
  import {sequenceToMolV3000} from '../structures-works/from-monomers';
4
7
  import {linkStrandsV3000} from '../structures-works/mol-transformations';
5
8
  import {getFormat} from '../structures-works/sequence-codes-tools';
6
9
 
7
- export function saveSdf(as: string, ss: string,
8
- oneEntity: boolean, useChirality: boolean,
10
+ export function saveSdf(as: string, ss: string,
11
+ oneEntity: boolean, useChirality: boolean,
9
12
  invertSS: boolean, invertAS: boolean,
10
13
  as2: string | null = null, invertAS2: boolean | null) {
11
14
  const formatAs = getFormat(as);
@@ -25,7 +28,7 @@ export function saveSdf(as: string, ss: string,
25
28
  if (oneEntity) {
26
29
  const antiStrands = molAS2 == null ? [molAS] : [molAS, molAS2];
27
30
  result = linkStrandsV3000({senseStrands: [molSS], antiStrands: antiStrands}, useChirality) + '\n$$$$\n';
28
-
31
+
29
32
  } else {
30
33
  result =
31
34
  molSS + '\n' +
@@ -1,5 +1,5 @@
1
1
 
2
- import {map, SYNTHESIZERS, TECHNOLOGIES, MODIFICATIONS, delimiter, gcrsCodesWithoutSmiles} from './map';
2
+ import {map, SYNTHESIZERS, TECHNOLOGIES, MODIFICATIONS, DELIMITER, gcrsCodesWithoutSmiles, NUCLEOTIDES} from './map';
3
3
  import {sortByStringLengthInDescendingOrder} from '../helpers';
4
4
  import {asoGapmersNucleotidesToBioSpring, asoGapmersNucleotidesToGcrs,
5
5
  asoGapmersBioSpringToNucleotides, asoGapmersBioSpringToGcrs, gcrsToMermade12, siRnaNucleotideToBioSpringSenseStrand,
@@ -20,7 +20,6 @@ export function getFormat(sequence: string): string | null {
20
20
  let outputIndex = 0;
21
21
 
22
22
  const firstUniqueCharacters = ['r', 'd'];
23
- const nucleotides = ['A', 'U', 'T', 'C', 'G'];
24
23
 
25
24
  possibleSynthesizers.forEach((synthesizer) => {
26
25
  const codes = getAllCodesOfSynthesizer(synthesizer);
@@ -32,13 +31,13 @@ export function getFormat(sequence: string): string | null {
32
31
 
33
32
  if ( // for mistake pattern 'rAA'
34
33
  outputIndex > 1 &&
35
- nucleotides.includes(sequence[outputIndex]) &&
34
+ NUCLEOTIDES.includes(sequence[outputIndex]) &&
36
35
  firstUniqueCharacters.includes(sequence[outputIndex - 2])
37
36
  ) break;
38
37
 
39
38
  if ( // for mistake pattern 'ArA'
40
39
  firstUniqueCharacters.includes(sequence[outputIndex + 1]) &&
41
- nucleotides.includes(sequence[outputIndex])
40
+ NUCLEOTIDES.includes(sequence[outputIndex])
42
41
  ) {
43
42
  outputIndex++;
44
43
  break;
@@ -69,13 +68,13 @@ export function getFormat(sequence: string): string | null {
69
68
 
70
69
  if ( // for mistake pattern 'rAA'
71
70
  outputIndex > 1 &&
72
- nucleotides.includes(sequence[outputIndex]) &&
71
+ NUCLEOTIDES.includes(sequence[outputIndex]) &&
73
72
  firstUniqueCharacters.includes(sequence[outputIndex - 2])
74
73
  ) break;
75
74
 
76
75
  if ( // for mistake pattern 'ArA'
77
76
  firstUniqueCharacters.includes(sequence[outputIndex + 1]) &&
78
- nucleotides.includes(sequence[outputIndex])
77
+ NUCLEOTIDES.includes(sequence[outputIndex])
79
78
  ) {
80
79
  outputIndex++;
81
80
  break;
@@ -116,7 +115,6 @@ export function isValidSequence(sequence: string, format: string | null): {
116
115
  const outputIndices = Array(possibleSynthesizers.length).fill(0);
117
116
 
118
117
  const firstUniqueCharacters = ['r', 'd'];
119
- const nucleotides = ['A', 'U', 'T', 'C', 'G'];
120
118
  possibleSynthesizers.forEach(function(synthesizer, i) {
121
119
  const codes = sortByStringLengthInDescendingOrder(getAllCodesOfSynthesizer(synthesizer));
122
120
  while (outputIndices[i] < sequence.length) {
@@ -127,13 +125,13 @@ export function isValidSequence(sequence: string, format: string | null): {
127
125
 
128
126
  if ( // for mistake pattern 'rAA'
129
127
  outputIndices[i] > 1 &&
130
- nucleotides.includes(sequence[outputIndices[i]]) &&
128
+ NUCLEOTIDES.includes(sequence[outputIndices[i]]) &&
131
129
  firstUniqueCharacters.includes(sequence[outputIndices[i] - 2])
132
130
  ) break;
133
131
 
134
132
  if ( // for mistake pattern 'ArA'
135
133
  firstUniqueCharacters.includes(sequence[outputIndices[i] + 1]) &&
136
- nucleotides.includes(sequence[outputIndices[i]])
134
+ NUCLEOTIDES.includes(sequence[outputIndices[i]])
137
135
  ) {
138
136
  outputIndices[i]++;
139
137
  break;
@@ -211,7 +209,7 @@ export function getAllCodesOfSynthesizer(synthesizer: string): string[] {
211
209
  let codes: string[] = [];
212
210
  for (const technology of Object.keys(map[synthesizer]))
213
211
  codes = codes.concat(Object.keys(map[synthesizer][technology]));
214
- return codes.concat(Object.keys(MODIFICATIONS)).concat(delimiter);
212
+ return codes.concat(Object.keys(MODIFICATIONS)).concat(DELIMITER);
215
213
  }
216
214
 
217
215
  function getListOfPossibleSynthesizersByFirstMatchedCode(sequence: string): string[] {
@@ -1,4 +1,4 @@
1
- <html><head><meta charset="utf-8"/><title>SequenceTranslator Test Report. Datagrok version datagrok/datagrok:latest SHA=62cc009524f3. Commit 4a9916b0.</title><style type="text/css">html,
1
+ <html><head><meta charset="utf-8"/><title>SequenceTranslator Test Report. Datagrok version datagrok/datagrok:latest SHA=91c83d8913ff. Commit f94596bc.</title><style type="text/css">html,
2
2
  body {
3
3
  font-family: Arial, Helvetica, sans-serif;
4
4
  font-size: 1rem;
@@ -229,7 +229,7 @@ header {
229
229
  font-size: 1rem;
230
230
  padding: 0 0.5rem;
231
231
  }
232
- </style></head><body><div id="jesthtml-content"><header><h1 id="title">SequenceTranslator Test Report. Datagrok version datagrok/datagrok:latest SHA=62cc009524f3. Commit 4a9916b0.</h1></header><div id="metadata-container"><div id="timestamp">Started: 2022-11-16 19:29:02</div><div id="summary"><div id="suite-summary"><div class="summary-total">Suites (1)</div><div class="summary-passed">1 passed</div><div class="summary-failed summary-empty">0 failed</div><div class="summary-pending summary-empty">0 pending</div></div><div id="test-summary"><div class="summary-total">Tests (1)</div><div class="summary-passed">1 passed</div><div class="summary-failed summary-empty">0 failed</div><div class="summary-pending summary-empty">0 pending</div></div></div></div><div id="suite-1" class="suite-container"><div class="suite-info"><div class="suite-path">/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts</div><div class="suite-time warn">15.773s</div></div><div class="suite-tests"><div class="test-result passed"><div class="test-info"><div class="test-suitename"> </div><div class="test-title">TEST</div><div class="test-status">passed</div><div class="test-duration">2.692s</div></div></div></div><div class="suite-consolelog"><div class="suite-consolelog-header">Console Log</div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at Object.&lt;anonymous&gt; (/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/test-node.ts:62:11)
232
+ </style></head><body><div id="jesthtml-content"><header><h1 id="title">SequenceTranslator Test Report. Datagrok version datagrok/datagrok:latest SHA=91c83d8913ff. Commit f94596bc.</h1></header><div id="metadata-container"><div id="timestamp">Started: 2022-11-29 11:55:21</div><div id="summary"><div id="suite-summary"><div class="summary-total">Suites (1)</div><div class="summary-passed">1 passed</div><div class="summary-failed summary-empty">0 failed</div><div class="summary-pending summary-empty">0 pending</div></div><div id="test-summary"><div class="summary-total">Tests (1)</div><div class="summary-passed">1 passed</div><div class="summary-failed summary-empty">0 failed</div><div class="summary-pending summary-empty">0 pending</div></div></div></div><div id="suite-1" class="suite-container"><div class="suite-info"><div class="suite-path">/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts</div><div class="suite-time warn">18.993s</div></div><div class="suite-tests"><div class="test-result passed"><div class="test-info"><div class="test-suitename"> </div><div class="test-title">TEST</div><div class="test-status">passed</div><div class="test-duration">5.501s</div></div></div></div><div class="suite-consolelog"><div class="suite-consolelog-header">Console Log</div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at Object.&lt;anonymous&gt; (/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/test-node.ts:62:11)
233
233
  at Generator.next (&lt;anonymous&gt;)
234
234
  at fulfilled (/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/test-node.ts:28:58)
235
235
  at processTicksAndRejections (internal/process/task_queues.js:97:5)</pre><pre class="suite-consolelog-item-message">Using web root: http://localhost:8080</pre></div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at /home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts:40:11
@@ -243,16 +243,16 @@ header {
243
243
  at Generator.next (&lt;anonymous&gt;)
244
244
  at fulfilled (/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts:28:58)
245
245
  at processTicksAndRejections (internal/process/task_queues.js:97:5)</pre><pre class="suite-consolelog-item-message">Test result : Success : 1 : SequenceTranslator.sequence-translator.usCfCfUfGfAf : OK
246
- Test result : Success : 1 : SequenceTranslator.sequence-translator.usAfsusgsgsg : OK
247
- Test result : Success : 0 : SequenceTranslator.sequence-translator.UfUfUfsCfsuacg : OK
246
+ Test result : Success : 0 : SequenceTranslator.sequence-translator.usAfsusgsgsg : OK
247
+ Test result : Success : 1 : SequenceTranslator.sequence-translator.UfUfUfsCfsuacg : OK
248
248
  Test result : Success : 0 : SequenceTranslator.sequence-translator.susususauasu : OK
249
- Test result : Success : 0 : SequenceTranslator.sequence-translator.CfGfCfsGfsCf : OK
250
- Test result : Success : 1 : SequenceTranslator.sequence-translator.acacacsacsac : OK
251
- Test result : Success : 0 : SequenceTranslator.sequence-translator.cccgggusug : OK
249
+ Test result : Success : 1 : SequenceTranslator.sequence-translator.CfGfCfsGfsCf : OK
250
+ Test result : Success : 0 : SequenceTranslator.sequence-translator.acacacsacsac : OK
251
+ Test result : Success : 1 : SequenceTranslator.sequence-translator.cccgggusug : OK
252
252
  Test result : Success : 0 : SequenceTranslator.sequence-translator.UfAfCfGfGfCfAfUf : OK
253
- Test result : Success : 0 : SequenceTranslator.sequence-translator.(invabasic)cuCfuUfsc : OK
254
- Test result : Success : 1 : SequenceTranslator.sequence-translator.(invabasic)usAfsucuCfuUfAfgcugUfgCfacususu : OK
255
- Test result : Success : 0 : SequenceTranslator.sequence-translator.(invabasic)asacgGfuGfCfAfacucuauuca : OK
253
+ Test result : Success : 1 : SequenceTranslator.sequence-translator.(invabasic)cuCfuUfsc : OK
254
+ Test result : Success : 0 : SequenceTranslator.sequence-translator.(invabasic)usAfsucuCfuUfAfgcugUfgCfacususu : OK
255
+ Test result : Success : 1 : SequenceTranslator.sequence-translator.(invabasic)asacgGfuGfCfAfacucuauuca : OK
256
256
  </pre></div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at /home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts:74:11
257
257
  at Generator.next (&lt;anonymous&gt;)
258
258
  at fulfilled (/home/runner/work/public/public/packages/SequenceTranslator/src/__jest__/remote.test.ts:28:58)