@datagrok/helm 2.13.1 → 2.13.3
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/CHANGELOG.md +4 -0
- package/CLAUDE.md +186 -0
- package/detectors.js +1 -1
- package/dist/455.js +1 -1
- package/dist/455.js.map +1 -1
- package/dist/package-test.js +1 -1
- package/dist/package-test.js.map +1 -1
- package/dist/package.js +1 -1
- package/dist/package.js.map +1 -1
- package/package.json +11 -7
- package/src/helm-helper.ts +77 -36
- package/src/package-test.ts +1 -1
- package/src/package-utils.ts +3 -2
- package/src/package.g.ts +6 -5
- package/src/package.ts +10 -12
- package/src/tests/_first-tests.ts +1 -1
- package/src/tests/findMonomers-tests.ts +1 -1
- package/src/tests/get-molfiles-tests.ts +1 -1
- package/src/tests/get-monomer-tests.ts +1 -1
- package/src/tests/helm-activity-cliffs.ts +2 -2
- package/src/tests/helm-helper-tests.ts +1 -1
- package/src/tests/helm-input-tests.ts +1 -1
- package/src/tests/helm-service-tests.ts +1 -1
- package/src/tests/helm-substructure-filter.ts +1 -1
- package/src/tests/helm-tests.ts +1 -1
- package/src/tests/helm-web-editor-tests.ts +1 -1
- package/src/tests/parse-helm-tests.ts +1 -1
- package/src/tests/properties-widget-tests.ts +1 -1
- package/src/tests/renderers-tests.ts +1 -1
- package/src/tests/to-atomic-level-ui-non-linear.ts +1 -1
- package/src/tests/utils.ts +1 -1
- package/test-console-output-1.log +349 -2889
- package/test-record-1.mp4 +0 -0
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@datagrok/helm",
|
|
3
3
|
"friendlyName": "Helm",
|
|
4
|
-
"version": "2.13.
|
|
4
|
+
"version": "2.13.3",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Maria Dolotova",
|
|
7
7
|
"email": "mdolotova@datagrok.ai"
|
|
@@ -16,27 +16,28 @@
|
|
|
16
16
|
"css/helm.css"
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@datagrok-libraries/bio": "^5.
|
|
19
|
+
"@datagrok-libraries/bio": "^5.63.5",
|
|
20
20
|
"@datagrok-libraries/chem-meta": "^1.2.9",
|
|
21
21
|
"@datagrok-libraries/helm-web-editor": "^1.1.16",
|
|
22
22
|
"@datagrok-libraries/utils": "^4.6.9",
|
|
23
23
|
"cash-dom": "^8.1.1",
|
|
24
|
-
"datagrok-api": "^1.
|
|
24
|
+
"datagrok-api": "^1.26.0",
|
|
25
25
|
"dayjs": "^1.10.6",
|
|
26
26
|
"lru-cache": "^10.4.3",
|
|
27
27
|
"rxjs": "^6.5.5",
|
|
28
|
-
"wu": "^2.1.0"
|
|
28
|
+
"wu": "^2.1.0",
|
|
29
|
+
"@datagrok-libraries/test": "^1.1.0"
|
|
29
30
|
},
|
|
30
31
|
"devDependencies": {
|
|
31
32
|
"@datagrok-libraries/js-draw-lite": "^0.0.10",
|
|
32
33
|
"@datagrok/bio": "^2.25.1",
|
|
33
|
-
"@datagrok/chem": "^1.
|
|
34
|
+
"@datagrok/chem": "^1.17.0",
|
|
34
35
|
"@types/node": "17.0.45",
|
|
35
36
|
"@types/webpack-env": "^1.18.5",
|
|
36
37
|
"@types/wu": "^2.1.44",
|
|
37
38
|
"@typescript-eslint/eslint-plugin": "^7.16.0",
|
|
38
39
|
"@typescript-eslint/parser": "^7.16.0",
|
|
39
|
-
"datagrok-tools": "^
|
|
40
|
+
"datagrok-tools": "^5.0.0",
|
|
40
41
|
"eslint": "^8.57.1",
|
|
41
42
|
"eslint-config-google": "^0.14.0",
|
|
42
43
|
"eslint-plugin-deprecation": "^3.0.0",
|
|
@@ -79,5 +80,8 @@
|
|
|
79
80
|
"url": "https://github.com/datagrok-ai/public.git",
|
|
80
81
|
"directory": "packages/Helm"
|
|
81
82
|
},
|
|
82
|
-
"category": "Bioinformatics"
|
|
83
|
+
"category": "Bioinformatics",
|
|
84
|
+
"overrides": {
|
|
85
|
+
"datagrok-api": "$datagrok-api"
|
|
86
|
+
}
|
|
83
87
|
}
|
package/src/helm-helper.ts
CHANGED
|
@@ -387,46 +387,87 @@ export class HelmHelper implements IHelmHelper {
|
|
|
387
387
|
for (let aI: number = mol.atoms.length - 1; aI >= 0; --aI) {
|
|
388
388
|
const a = mol.atoms[aI];
|
|
389
389
|
if (a.elem === HELM_GAP_SYMBOL /* '*' - original */) {
|
|
390
|
-
|
|
391
|
-
const
|
|
390
|
+
// Collect all bonds connected to this gap atom, tracking which side the gap is on
|
|
391
|
+
const connectedBonds: { bI: number, gapSide: 1 | 2 }[] = [];
|
|
392
392
|
for (let bI: number = mol.bonds.length - 1; bI >= 0; --bI) {
|
|
393
393
|
const b = mol.bonds[bI];
|
|
394
|
-
if (b.a1
|
|
395
|
-
if (b.
|
|
394
|
+
if (b.a1 === a) connectedBonds.push({bI, gapSide: 1}); // gap is a1
|
|
395
|
+
else if (b.a2 === a) connectedBonds.push({bI, gapSide: 2}); // gap is a2
|
|
396
396
|
}
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
leftBond.apo2 = rightBond.apo2;
|
|
421
|
-
|
|
422
|
-
if (a2.bonds)
|
|
423
|
-
throw new Error('Bond list of the atom is not corrected.');
|
|
424
|
-
// a2.bonds!.splice(a2.bonds!.indexOf(rightBond), 1); // remove the right bond from links of the right atom
|
|
425
|
-
// a2.bonds!.push(leftBond); // put the left bond to links of the right atom
|
|
426
|
-
|
|
427
|
-
mol.bonds.splice(rb.bI, 1); // remove right bond
|
|
428
|
-
mol.atoms.splice(lb.aI, 1);
|
|
397
|
+
|
|
398
|
+
if (connectedBonds.length > 2) {
|
|
399
|
+
throw new HelmNotSupportedError(
|
|
400
|
+
`Removing gap monomer #${aI} with ${connectedBonds.length} bonds is unsupported (max 2).`);
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
// Separate into backbone bonds (R1/R2) and other bonds (R3+ cross-polymer)
|
|
404
|
+
// A backbone bond connects to the gap's R1 or R2 attachment point
|
|
405
|
+
let backboneR1Bond: { bI: number, gapSide: 1 | 2 } | null = null; // bond using gap's R1
|
|
406
|
+
let backboneR2Bond: { bI: number, gapSide: 1 | 2 } | null = null; // bond using gap's R2
|
|
407
|
+
const otherBonds: number[] = []; // bond indices to just remove
|
|
408
|
+
|
|
409
|
+
for (const cb of connectedBonds) {
|
|
410
|
+
const bond = mol.bonds[cb.bI];
|
|
411
|
+
// The R-group on the gap's side tells us which attachment point is used
|
|
412
|
+
const gapR = cb.gapSide === 1 ? bond.r1 : bond.r2;
|
|
413
|
+
const gapRNum = typeof gapR === 'string' ? parseInt(gapR.replace(/\D/g, '')) : gapR;
|
|
414
|
+
if (gapRNum === 1)
|
|
415
|
+
backboneR1Bond = cb;
|
|
416
|
+
else if (gapRNum === 2)
|
|
417
|
+
backboneR2Bond = cb;
|
|
418
|
+
else
|
|
419
|
+
otherBonds.push(cb.bI);
|
|
429
420
|
}
|
|
421
|
+
|
|
422
|
+
// Remove other (non-backbone) bonds first (iterate in reverse to keep indices valid)
|
|
423
|
+
otherBonds.sort((a, b) => b - a);
|
|
424
|
+
for (const bI of otherBonds)
|
|
425
|
+
mol.bonds.splice(bI, 1);
|
|
426
|
+
|
|
427
|
+
// Recalculate bond indices after splice (otherBonds were removed)
|
|
428
|
+
// We need to adjust backboneR1Bond/R2Bond indices
|
|
429
|
+
const adjustIdx = (origBi: number): number => {
|
|
430
|
+
let adj = origBi;
|
|
431
|
+
for (const removedBi of otherBonds)
|
|
432
|
+
if (removedBi < origBi) adj--;
|
|
433
|
+
return adj;
|
|
434
|
+
};
|
|
435
|
+
|
|
436
|
+
const r1 = backboneR1Bond ? {...backboneR1Bond, bI: adjustIdx(backboneR1Bond.bI)} : null;
|
|
437
|
+
const r2 = backboneR2Bond ? {...backboneR2Bond, bI: adjustIdx(backboneR2Bond.bI)} : null;
|
|
438
|
+
|
|
439
|
+
if (r1 && r2) {
|
|
440
|
+
// Re-link: the neighbor on the R1 side connects directly to the neighbor on the R2 side
|
|
441
|
+
const r1Bond = mol.bonds[r1.bI];
|
|
442
|
+
const r2Bond = mol.bonds[r2.bI];
|
|
443
|
+
// The "other" atom (not the gap) on each bond
|
|
444
|
+
const r1Neighbor = r1.gapSide === 1 ? r1Bond.a2 : r1Bond.a1;
|
|
445
|
+
const r2Neighbor = r2.gapSide === 1 ? r2Bond.a2 : r2Bond.a1;
|
|
446
|
+
const r1NeighborR = r1.gapSide === 1 ? r1Bond.r2 : r1Bond.r1;
|
|
447
|
+
const r1NeighborApo = r1.gapSide === 1 ? r1Bond.apo2 : r1Bond.apo1;
|
|
448
|
+
const r2NeighborR = r2.gapSide === 1 ? r2Bond.r2 : r2Bond.r1;
|
|
449
|
+
const r2NeighborApo = r2.gapSide === 1 ? r2Bond.apo2 : r2Bond.apo1;
|
|
450
|
+
|
|
451
|
+
// Rewrite the R1 bond to connect r1Neighbor ↔ r2Neighbor directly
|
|
452
|
+
r1Bond.a1 = r1Neighbor;
|
|
453
|
+
r1Bond.r1 = r1NeighborR;
|
|
454
|
+
r1Bond.apo1 = r1NeighborApo;
|
|
455
|
+
r1Bond.a2 = r2Neighbor;
|
|
456
|
+
r1Bond.r2 = r2NeighborR;
|
|
457
|
+
r1Bond.apo2 = r2NeighborApo;
|
|
458
|
+
|
|
459
|
+
// Remove the R2 bond (no longer needed)
|
|
460
|
+
mol.bonds.splice(r2.bI, 1);
|
|
461
|
+
} else if (r1 && !r2) {
|
|
462
|
+
// Gap at the end (only R1 bond) — just remove
|
|
463
|
+
mol.bonds.splice(r1.bI, 1);
|
|
464
|
+
} else if (!r1 && r2) {
|
|
465
|
+
// Gap at the start (only R2 bond) — just remove
|
|
466
|
+
mol.bonds.splice(r2.bI, 1);
|
|
467
|
+
}
|
|
468
|
+
// else: isolated gap, no backbone bonds — just remove atom
|
|
469
|
+
|
|
470
|
+
mol.atoms.splice(aI, 1);
|
|
430
471
|
}
|
|
431
472
|
}
|
|
432
473
|
|
package/src/package-test.ts
CHANGED
|
@@ -5,7 +5,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
5
5
|
// import {JSDraw2ModuleType} from '@datagrok/js-draw-lite/src/types/jsdraw2';
|
|
6
6
|
// import {HelmType, OrgHelmModuleType} from '@datagrok/helm-web-editor/src/types/org-helm';
|
|
7
7
|
|
|
8
|
-
import {runTests, tests, TestContext, initAutoTests as initTests} from '@datagrok-libraries/
|
|
8
|
+
import {runTests, tests, TestContext, initAutoTests as initTests} from '@datagrok-libraries/test/src/test';
|
|
9
9
|
|
|
10
10
|
import './tests/_first-tests';
|
|
11
11
|
import './tests/helm-tests';
|
package/src/package-utils.ts
CHANGED
|
@@ -5,7 +5,8 @@ import * as DG from 'datagrok-api/dg';
|
|
|
5
5
|
|
|
6
6
|
import {Unsubscribable} from 'rxjs';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import {timeout} from '@datagrok-libraries/utils/src/test';
|
|
9
|
+
|
|
9
10
|
import {errorToConsole} from '@datagrok-libraries/utils/src/to-console';
|
|
10
11
|
import {errInfo} from '@datagrok-libraries/bio/src/utils/err-info';
|
|
11
12
|
import {
|
|
@@ -152,7 +153,7 @@ export async function initHelmLoadAndPatchDojo(): Promise<void> {
|
|
|
152
153
|
`Loading Helm Web Editor ${dojoProgress}/${dojoTargetList.length}`);
|
|
153
154
|
_package.logger.debug(`${logPrefix}, dojo loading ... ` +
|
|
154
155
|
`${dojoNotReadyList.map((m) => `'${m}'`).join(',')} ...`);
|
|
155
|
-
await delay(100);
|
|
156
|
+
await DG.delay(100);
|
|
156
157
|
}
|
|
157
158
|
_package.logger.debug(`${logPrefix}, dojo ready all modules`);
|
|
158
159
|
}, 60000, 'timeout dojox.gfx.svg');
|
package/src/package.g.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {PackageFunctions} from './package';
|
|
2
2
|
import * as DG from 'datagrok-api/dg';
|
|
3
3
|
|
|
4
|
-
//
|
|
4
|
+
//meta.role: init
|
|
5
5
|
export async function initHelm() : Promise<void> {
|
|
6
6
|
await PackageFunctions.initHelm();
|
|
7
7
|
}
|
|
@@ -12,18 +12,18 @@ export async function getHelmService() : Promise<any> {
|
|
|
12
12
|
return await PackageFunctions.getHelmService();
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
//tags: cellRenderer
|
|
16
15
|
//output: grid_cell_renderer result
|
|
17
16
|
//meta.columnTags: quality=Macromolecule, units=helm
|
|
18
17
|
//meta.cellType: helm
|
|
18
|
+
//meta.role: cellRenderer
|
|
19
19
|
export function helmCellRenderer() : any {
|
|
20
20
|
return PackageFunctions.helmCellRenderer();
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
//description: Macromolecule
|
|
24
|
-
//tags: cellEditor
|
|
25
24
|
//input: grid_cell cell
|
|
26
25
|
//meta.columnTags: quality=Macromolecule, units=helm
|
|
26
|
+
//meta.role: cellEditor
|
|
27
27
|
export function editMoleculeCell(cell: any) : void {
|
|
28
28
|
PackageFunctions.editMoleculeCell(cell);
|
|
29
29
|
}
|
|
@@ -37,9 +37,10 @@ export function openEditor(mol: DG.SemanticValue) : void {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
//name: Properties
|
|
40
|
-
//tags: panel, bio, helm, widgets
|
|
41
40
|
//input: semantic_value sequence { semType: Macromolecule }
|
|
42
41
|
//output: widget result
|
|
42
|
+
//meta.role: widgets,panel
|
|
43
|
+
//meta.domain: bio
|
|
43
44
|
export function propertiesWidget(sequence: DG.SemanticValue) : any {
|
|
44
45
|
return PackageFunctions.propertiesWidget(sequence);
|
|
45
46
|
}
|
|
@@ -50,12 +51,12 @@ export function getMolfiles(col: DG.Column<any>) : any {
|
|
|
50
51
|
return PackageFunctions.getMolfiles(col);
|
|
51
52
|
}
|
|
52
53
|
|
|
53
|
-
//tags: valueEditor
|
|
54
54
|
//input: string name { optional: true }
|
|
55
55
|
//input: object options { optional: true }
|
|
56
56
|
//output: object result
|
|
57
57
|
//meta.propertyType: string
|
|
58
58
|
//meta.semType: Macromolecule
|
|
59
|
+
//meta.role: valueEditor
|
|
59
60
|
export function helmInput(name: string, options: any) : any {
|
|
60
61
|
return PackageFunctions.helmInput(name, options);
|
|
61
62
|
}
|
package/src/package.ts
CHANGED
|
@@ -142,10 +142,10 @@ export class PackageFunctions {
|
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
@grok.decorators.func({
|
|
145
|
-
'tags': ['cellRenderer'],
|
|
146
145
|
'meta': {
|
|
147
146
|
'columnTags': 'quality=Macromolecule, units=helm',
|
|
148
|
-
'cellType': 'helm'
|
|
147
|
+
'cellType': 'helm',
|
|
148
|
+
'role': 'cellRenderer'
|
|
149
149
|
},
|
|
150
150
|
'outputs': [{name: 'result', type: 'grid_cell_renderer'}]
|
|
151
151
|
})
|
|
@@ -158,8 +158,10 @@ export class PackageFunctions {
|
|
|
158
158
|
|
|
159
159
|
|
|
160
160
|
@grok.decorators.func({
|
|
161
|
-
'meta': {
|
|
162
|
-
|
|
161
|
+
'meta': {
|
|
162
|
+
'columnTags': 'quality=Macromolecule, units=helm',
|
|
163
|
+
'role': 'cellEditor'
|
|
164
|
+
},
|
|
163
165
|
'description': 'Macromolecule'
|
|
164
166
|
})
|
|
165
167
|
static editMoleculeCell(
|
|
@@ -193,12 +195,8 @@ export class PackageFunctions {
|
|
|
193
195
|
|
|
194
196
|
|
|
195
197
|
@grok.decorators.panel({
|
|
196
|
-
'
|
|
197
|
-
|
|
198
|
-
'helm',
|
|
199
|
-
'widgets'
|
|
200
|
-
],
|
|
201
|
-
'name': 'Properties'
|
|
198
|
+
'name': 'Properties',
|
|
199
|
+
'meta': {role: 'widgets', domain: 'bio'},
|
|
202
200
|
})
|
|
203
201
|
static propertiesWidget(
|
|
204
202
|
@grok.decorators.param({'options': {'semType': 'Macromolecule'}}) sequence: DG.SemanticValue): DG.Widget {
|
|
@@ -218,9 +216,9 @@ export class PackageFunctions {
|
|
|
218
216
|
@grok.decorators.func({
|
|
219
217
|
'meta': {
|
|
220
218
|
'propertyType': 'string',
|
|
221
|
-
'semType': 'Macromolecule'
|
|
219
|
+
'semType': 'Macromolecule',
|
|
220
|
+
'role': 'valueEditor'
|
|
222
221
|
},
|
|
223
|
-
'tags': ['valueEditor'],
|
|
224
222
|
'outputs': [{'type': 'object', 'name': 'result'}]
|
|
225
223
|
})
|
|
226
224
|
static helmInput(
|
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {category, test} from '@datagrok-libraries/
|
|
5
|
+
import {category, test} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
|
|
7
7
|
category('_first', () => {
|
|
8
8
|
/** The first test of the package to evaluate problems with imports. */
|
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {after, before, category, delay, expect, expectObject, test} from '@datagrok-libraries/
|
|
5
|
+
import {after, before, category, delay, expect, expectObject, test} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
import {UserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/types';
|
|
7
7
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
8
8
|
import {
|
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {after, before, category, delay, expect, test, expectArray, testEvent} from '@datagrok-libraries/
|
|
5
|
+
import {after, before, category, delay, expect, test, expectArray, testEvent} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
import {getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
7
7
|
import {
|
|
8
8
|
getUserLibSettings, setUserLibSettings,
|
|
@@ -6,7 +6,7 @@ import wu from 'wu';
|
|
|
6
6
|
|
|
7
7
|
import {
|
|
8
8
|
after, before, category, delay, expect, test, expectArray, testEvent, expectFloat, timeout
|
|
9
|
-
} from '@datagrok-libraries/
|
|
9
|
+
} from '@datagrok-libraries/test/src/test';
|
|
10
10
|
import {getHelmHelper, getMonomerHandleArgs} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
11
11
|
import {errInfo} from '@datagrok-libraries/bio/src/utils/err-info';
|
|
12
12
|
import {Atom, HelmType, IJsAtom, GetMonomerFunc, HelmAtom} from '@datagrok-libraries/bio/src/helm/types';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as grok from 'datagrok-api/grok';
|
|
2
2
|
import * as DG from 'datagrok-api/dg';
|
|
3
3
|
|
|
4
|
-
import {after, awaitCheck, before, category, test} from '@datagrok-libraries/
|
|
4
|
+
import {after, awaitCheck, before, category, test} from '@datagrok-libraries/test/src/test';
|
|
5
5
|
|
|
6
6
|
import {BitArrayMetricsNames} from '@datagrok-libraries/ml/src/typed-metrics';
|
|
7
7
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
import {UserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/types';
|
|
12
12
|
import {DimReductionMethods} from '@datagrok-libraries/ml/src/multi-column-dimensionality-reduction/types';
|
|
13
13
|
import {getHelmHelper, IHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
14
|
-
import {expect} from '@datagrok-libraries/
|
|
14
|
+
import {expect} from '@datagrok-libraries/test/src/test';
|
|
15
15
|
import {MmDistanceFunctionsNames} from '@datagrok-libraries/ml/src/macromolecule-distance-functions';
|
|
16
16
|
import {BitArrayMetrics} from '@datagrok-libraries/ml/src/typed-metrics';
|
|
17
17
|
import {BYPASS_LARGE_DATA_WARNING} from '@datagrok-libraries/ml/src/functionEditors/consts';
|
|
@@ -3,7 +3,7 @@ import * as ui from 'datagrok-api/ui';
|
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
5
|
/* eslint-disable max-len */
|
|
6
|
-
import {after, before, category, delay, expect, expectArray, test, testEvent} from '@datagrok-libraries/
|
|
6
|
+
import {after, before, category, delay, expect, expectArray, test, testEvent} from '@datagrok-libraries/test/src/test';
|
|
7
7
|
import {HelmNotSupportedError, HelmNotSupportedErrorType, IHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
8
8
|
import {getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
9
9
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
@@ -4,7 +4,7 @@ import * as DG from 'datagrok-api/dg';
|
|
|
4
4
|
|
|
5
5
|
import $ from 'cash-dom';
|
|
6
6
|
|
|
7
|
-
import {after, before, category, delay, expect, test, testEvent} from '@datagrok-libraries/
|
|
7
|
+
import {after, before, category, delay, expect, test, testEvent} from '@datagrok-libraries/test/src/test';
|
|
8
8
|
import {IHelmHelper, getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
9
9
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
10
10
|
import {
|
|
@@ -6,7 +6,7 @@ import {Subject} from 'rxjs';
|
|
|
6
6
|
|
|
7
7
|
import {
|
|
8
8
|
category, expect, test, awaitCheck, delay, testEvent, before, after
|
|
9
|
-
} from '@datagrok-libraries/
|
|
9
|
+
} from '@datagrok-libraries/test/src/test';
|
|
10
10
|
import {getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
11
11
|
import {
|
|
12
12
|
getHelmService, HelmServiceBase, HelmAux, HelmProps
|
|
@@ -4,7 +4,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
4
4
|
import * as ui from 'datagrok-api/ui';
|
|
5
5
|
import * as DG from 'datagrok-api/dg';
|
|
6
6
|
|
|
7
|
-
import {after, before, category, test, expect, delay, testEvent} from '@datagrok-libraries/
|
|
7
|
+
import {after, before, category, test, expect, delay, testEvent} from '@datagrok-libraries/test/src/test';
|
|
8
8
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
9
9
|
import {
|
|
10
10
|
getUserLibSettings, setUserLibSettings
|
package/src/tests/helm-tests.ts
CHANGED
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {after, before, category, delay, expect, test, expectArray} from '@datagrok-libraries/
|
|
5
|
+
import {after, before, category, delay, expect, test, expectArray} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
|
|
7
7
|
import {parseHelm} from '../utils';
|
|
8
8
|
import {initHelmMainPackage} from './utils';
|
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {after, before, category, delay, expect, test, expectArray} from '@datagrok-libraries/
|
|
5
|
+
import {after, before, category, delay, expect, test, expectArray} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
import {IHelmHelper, getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
7
7
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
8
8
|
import {UserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/types';
|
|
@@ -3,7 +3,7 @@ import * as ui from 'datagrok-api/ui';
|
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
import {after, before, category, delay, expect, test, expectArray, timeout} from '@datagrok-libraries/
|
|
6
|
+
import {after, before, category, delay, expect, test, expectArray, timeout} from '@datagrok-libraries/test/src/test';
|
|
7
7
|
import {HelmMol, HelmType, IHelmBio, IHelmEditorOptions, Mol, OrgType} from '@datagrok-libraries/bio/src/helm/types';
|
|
8
8
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
9
9
|
import {UserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/types';
|
|
@@ -2,7 +2,7 @@ import * as ui from 'datagrok-api/ui';
|
|
|
2
2
|
import * as DG from 'datagrok-api/dg';
|
|
3
3
|
import * as grok from 'datagrok-api/grok';
|
|
4
4
|
|
|
5
|
-
import {after, before, category, expect, expectObject, test, timeout} from '@datagrok-libraries/
|
|
5
|
+
import {after, before, category, expect, expectObject, test, timeout} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
import {ALPHABET, NOTATION, TAGS as bioTAGS} from '@datagrok-libraries/bio/src/utils/macromolecule';
|
|
7
7
|
import {
|
|
8
8
|
getUserLibSettings, setUserLibSettings
|
|
@@ -7,7 +7,7 @@ import {fromEvent} from 'rxjs';
|
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
after, before, category, test, expect, awaitCheck, delay, testEvent
|
|
10
|
-
} from '@datagrok-libraries/
|
|
10
|
+
} from '@datagrok-libraries/test/src/test';
|
|
11
11
|
import {NOTATION} from '@datagrok-libraries/bio/src/utils/macromolecule';
|
|
12
12
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
13
13
|
import {UserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/types';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as DG from 'datagrok-api/dg';
|
|
2
2
|
import * as grok from 'datagrok-api/grok';
|
|
3
3
|
|
|
4
|
-
import {after, before, category, expect, test} from '@datagrok-libraries/
|
|
4
|
+
import {after, before, category, expect, test} from '@datagrok-libraries/test/src/test';
|
|
5
5
|
import {IMonomerLib} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
6
6
|
import {getMonomerLibHelper, IMonomerLibHelper} from '@datagrok-libraries/bio/src/types/monomer-library';
|
|
7
7
|
import {getUserLibSettings, setUserLibSettings} from '@datagrok-libraries/bio/src/monomer-works/lib-settings';
|
package/src/tests/utils.ts
CHANGED
|
@@ -2,7 +2,7 @@ import * as grok from 'datagrok-api/grok';
|
|
|
2
2
|
import * as ui from 'datagrok-api/ui';
|
|
3
3
|
import * as DG from 'datagrok-api/dg';
|
|
4
4
|
|
|
5
|
-
import {delay, testEvent} from '@datagrok-libraries/
|
|
5
|
+
import {delay, testEvent} from '@datagrok-libraries/test/src/test';
|
|
6
6
|
import {getHelmHelper} from '@datagrok-libraries/bio/src/helm/helm-helper';
|
|
7
7
|
import {_package} from '../package-test';
|
|
8
8
|
|