@datagrok/sequence-translator 1.10.13 → 1.10.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/detectors.js +30 -2
  3. package/dist/455.js +1 -1
  4. package/dist/455.js.map +1 -1
  5. package/dist/package-test.js +1 -1
  6. package/dist/package-test.js.map +1 -1
  7. package/dist/package.js +1 -1
  8. package/dist/package.js.map +1 -1
  9. package/files/samples/sirna-demo.csv +38 -0
  10. package/files/tests/chem_enum_cores.csv +5 -0
  11. package/files/tests/chem_enum_rgroups.csv +5 -0
  12. package/package.json +2 -2
  13. package/src/apps/structure/view/ui.ts +1 -1
  14. package/src/apps/translator/view/ui.ts +1 -1
  15. package/src/oligo-renderer/canvas-renderer.ts +500 -0
  16. package/src/oligo-renderer/cell-renderer.ts +105 -0
  17. package/src/oligo-renderer/converters.ts +77 -0
  18. package/src/oligo-renderer/helm-parser.ts +154 -0
  19. package/src/oligo-renderer/legend-panel.ts +154 -0
  20. package/src/oligo-renderer/structures-panel.ts +96 -0
  21. package/src/oligo-renderer/tooltip.ts +223 -0
  22. package/src/oligo-renderer/types.ts +221 -0
  23. package/src/package-api.ts +43 -1
  24. package/src/package-test.ts +2 -0
  25. package/src/package.g.ts +56 -3
  26. package/src/package.ts +92 -5
  27. package/src/polytool/const.ts +1 -1
  28. package/src/polytool/pt-chem-enum-dialog.ts +940 -0
  29. package/src/polytool/pt-chem-enum.ts +553 -0
  30. package/src/polytool/pt-dialog.ts +4 -125
  31. package/src/polytool/pt-enumerate-seq-dialog.ts +3 -3
  32. package/src/tests/oligo-renderer-tests.ts +299 -0
  33. package/src/tests/polytool-enumerate-chem-tests.ts +408 -0
  34. package/test-console-output-1.log +303 -97
  35. package/test-record-1.mp4 +0 -0
  36. package/src/polytool/pt-enumeration-chem.ts +0 -100
package/test-record-1.mp4 CHANGED
Binary file
@@ -1,100 +0,0 @@
1
- import * as ui from 'datagrok-api/ui';
2
- import * as grok from 'datagrok-api/grok';
3
- import * as DG from 'datagrok-api/dg';
4
-
5
- import {getAvailableMonomers, getAvailableMonomerMols} from './utils';
6
- import {RDModule, RDMol} from '@datagrok-libraries/chem-meta/src/rdkit-api';
7
-
8
- export const PT_CHEM_EXAMPLE = `
9
-
10
-
11
- 22 24 0 0 0 0 0 0 0 0999 V2000
12
- 0.3128 -0.7509 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
13
- 0.3128 0.0740 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
14
- -0.4054 -1.1623 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
15
- -1.1081 -0.7509 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
16
- -0.4054 0.4877 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
17
- -1.1081 0.0740 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
18
- -1.8175 -1.1623 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
19
- 1.0222 0.4877 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
20
- -1.8175 0.4877 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
21
- -2.5292 -0.7509 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
22
- 1.0222 1.3127 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
23
- 1.7227 1.7263 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
24
- -0.4054 -1.9896 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
25
- -2.5292 0.0740 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
26
- 2.4544 1.3127 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
27
- 1.7406 0.0740 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
28
- 1.0222 -1.1623 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
29
- 2.4544 0.4877 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
30
- -1.8175 -1.9896 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
31
- -3.2453 0.4877 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
32
- 3.1670 1.7285 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
33
- 1.7149 2.5513 0.0000 R# 0 0 0 0 0 0 0 0 0 0 0 0
34
- 2 1 2 0 0 0 0
35
- 3 1 1 0 0 0 0
36
- 4 3 1 0 0 0 0
37
- 5 2 1 0 0 0 0
38
- 6 5 1 0 0 0 0
39
- 7 4 1 0 0 0 0
40
- 8 2 1 0 0 0 0
41
- 9 6 1 0 0 0 0
42
- 10 7 2 0 0 0 0
43
- 11 8 2 0 0 0 0
44
- 12 11 1 0 0 0 0
45
- 13 3 2 0 0 0 0
46
- 14 9 2 0 0 0 0
47
- 15 18 1 0 0 0 0
48
- 16 8 1 0 0 0 0
49
- 17 1 1 0 0 0 0
50
- 18 16 2 0 0 0 0
51
- 19 7 1 0 0 0 0
52
- 20 14 1 0 0 0 0
53
- 6 4 2 0 0 0 0
54
- 15 12 2 0 0 0 0
55
- 14 10 1 0 0 0 0
56
- 15 21 1 0 0 0 0
57
- 12 22 1 0 0 0 0
58
- M RGP 1 22 1
59
- M END`;
60
-
61
- export async function getEnumerationChem(molString: string, screenLibrary: string):
62
- Promise<string[]> {
63
- const variableMonomers = await getAvailableMonomers(screenLibrary);
64
- const variableMols = await getAvailableMonomerMols(screenLibrary);
65
- const enumerations = new Array<string>(variableMonomers.length);
66
-
67
- const rdkitModule: RDModule = await grok.functions.call('Chem:getRdKitModule');
68
- const molScaffold: RDMol = rdkitModule.get_mol(molString);
69
- const smiScaffold = molScaffold.get_smiles();
70
- molScaffold.delete();
71
-
72
- const smilesSubsts = new Array<string>(variableMonomers.length);
73
-
74
- for (let i = 0; i < variableMonomers.length; i++) {
75
- const name = variableMonomers[i];
76
- const molBlock = variableMols[name];
77
- const molSubst: RDMol = rdkitModule.get_mol(molBlock);
78
- smilesSubsts[i] = molSubst.get_smiles();
79
- molSubst.delete();
80
- }
81
-
82
- for (let i = 0; i < variableMonomers.length; i++) {
83
- let molRes: RDMol | null = null;
84
- try {
85
- //TODO: use RDKit linking function when exposed
86
- const smiResRaw = `${smiScaffold}.${smilesSubsts[i]}`.replaceAll('[1*]C', 'C([1*])').replaceAll('[1*]c', 'c([1*])').replaceAll('[1*]O', 'O([1*])').replaceAll('[1*]N', 'N([1*])');
87
- const smiRes = `${smiResRaw}`.replaceAll('([1*])', '9').replaceAll('[1*]', '9');
88
- molRes = rdkitModule.get_mol(smiRes, JSON.stringify({mappedDummiesAreRGroups: true}));
89
- const molV3 = molRes.get_v3Kmolblock();
90
- enumerations[i] = molV3;
91
- } catch (err:any) {
92
- enumerations[i] = '';
93
- } finally {
94
- molRes?.delete();
95
- }
96
- }
97
-
98
-
99
- return enumerations;
100
- }