@datagrok-libraries/bio 5.43.1 → 5.44.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/CHANGELOG.md +20 -3
- package/package.json +4 -3
- package/src/helm/helm-helper.d.ts +17 -2
- package/src/helm/helm-helper.d.ts.map +1 -1
- package/src/helm/helm-helper.js +22 -0
- package/src/helm/helm-helper.js.map +1 -1
- package/src/helm/types.d.ts +4 -2
- package/src/helm/types.d.ts.map +1 -1
- package/src/monomer-works/consts.d.ts +13 -3
- package/src/monomer-works/consts.d.ts.map +1 -1
- package/src/monomer-works/consts.js +3 -3
- package/src/monomer-works/consts.js.map +1 -1
- package/src/monomer-works/monomer-hover.d.ts +10 -0
- package/src/monomer-works/monomer-hover.d.ts.map +1 -0
- package/src/monomer-works/monomer-hover.js +123 -0
- package/src/monomer-works/monomer-hover.js.map +1 -0
- package/src/monomer-works/monomer-utils.d.ts.map +1 -1
- package/src/monomer-works/monomer-utils.js +3 -2
- package/src/monomer-works/monomer-utils.js.map +1 -1
- package/src/monomer-works/seq-to-molfile-worker.js +5 -5
- package/src/monomer-works/seq-to-molfile-worker.js.map +1 -1
- package/src/monomer-works/seq-to-molfile.d.ts +14 -5
- package/src/monomer-works/seq-to-molfile.d.ts.map +1 -1
- package/src/monomer-works/seq-to-molfile.js +56 -12
- package/src/monomer-works/seq-to-molfile.js.map +1 -1
- package/src/monomer-works/to-atomic-level-utils.d.ts +7 -7
- package/src/monomer-works/to-atomic-level-utils.d.ts.map +1 -1
- package/src/monomer-works/to-atomic-level-utils.js +50 -25
- package/src/monomer-works/to-atomic-level-utils.js.map +1 -1
- package/src/monomer-works/to-atomic-level.d.ts +8 -9
- package/src/monomer-works/to-atomic-level.d.ts.map +1 -1
- package/src/monomer-works/to-atomic-level.js +40 -47
- package/src/monomer-works/to-atomic-level.js.map +1 -1
- package/src/monomer-works/types.d.ts +44 -0
- package/src/monomer-works/types.d.ts.map +1 -1
- package/src/monomer-works/types.js +25 -1
- package/src/monomer-works/types.js.map +1 -1
- package/src/monomer-works/utils.d.ts +15 -0
- package/src/monomer-works/utils.d.ts.map +1 -0
- package/src/monomer-works/utils.js +34 -0
- package/src/monomer-works/utils.js.map +1 -0
- package/src/types/index.d.ts +10 -10
- package/src/types/index.d.ts.map +1 -1
- package/src/types/index.js +1 -7
- package/src/types/index.js.map +1 -1
- package/src/utils/cell-renderer-back-base.d.ts +1 -1
- package/src/utils/cell-renderer-back-base.d.ts.map +1 -1
- package/src/utils/cell-renderer-back-base.js +1 -1
- package/src/utils/cell-renderer-back-base.js.map +1 -1
- package/src/utils/cell-renderer-monomer-placer.js +10 -11
- package/src/utils/cell-renderer-monomer-placer.js.map +1 -1
- package/src/utils/generator.d.ts.map +1 -1
- package/src/utils/generator.js +2 -1
- package/src/utils/generator.js.map +1 -1
- package/src/utils/macromolecule/alignment.d.ts.map +1 -1
- package/src/utils/macromolecule/alignment.js +6 -6
- package/src/utils/macromolecule/alignment.js.map +1 -1
- package/src/utils/macromolecule/consts.d.ts +5 -0
- package/src/utils/macromolecule/consts.d.ts.map +1 -1
- package/src/utils/macromolecule/consts.js +7 -0
- package/src/utils/macromolecule/consts.js.map +1 -1
- package/src/utils/macromolecule/scoring.d.ts.map +1 -1
- package/src/utils/macromolecule/scoring.js +1 -1
- package/src/utils/macromolecule/scoring.js.map +1 -1
- package/src/utils/macromolecule/types.d.ts +0 -4
- package/src/utils/macromolecule/types.d.ts.map +1 -1
- package/src/utils/macromolecule/types.js +0 -2
- package/src/utils/macromolecule/types.js.map +1 -1
- package/src/utils/macromolecule/utils.d.ts +0 -4
- package/src/utils/macromolecule/utils.d.ts.map +1 -1
- package/src/utils/macromolecule/utils.js +11 -13
- package/src/utils/macromolecule/utils.js.map +1 -1
- package/src/utils/seq-handler.d.ts +0 -3
- package/src/utils/seq-handler.d.ts.map +1 -1
- package/src/utils/seq-handler.js +7 -10
- package/src/utils/seq-handler.js.map +1 -1
- package/src/utils/seq-helper.d.ts +4 -15
- package/src/utils/seq-helper.d.ts.map +1 -1
- package/src/utils/seq-helper.js +0 -1
- package/src/utils/seq-helper.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
# bio changelog
|
|
2
2
|
|
|
3
|
-
## 5.
|
|
3
|
+
## 5.44.0 (2024-09-24)
|
|
4
|
+
|
|
5
|
+
### New features
|
|
6
|
+
|
|
7
|
+
* Add monomer hover link
|
|
8
|
+
* Add getMolHighlight to build ISubstruct from monomer map
|
|
9
|
+
* Add HelmHelper parse and removeGaps methods
|
|
10
|
+
|
|
11
|
+
### Bug fixes
|
|
12
|
+
|
|
13
|
+
* Fix toAtomicLevel for sequences with gaps
|
|
14
|
+
* Fix toAtomicLevel for polymerType of sequence monomer
|
|
15
|
+
* Fix ISeqMonomer for biotype and add position
|
|
16
|
+
* Fix ISeqSplitted remove .canonicals and .originals
|
|
17
|
+
* Fix IMonomerLib .getTooltip for biotype of HelmType
|
|
18
|
+
* Fix toAtomicLevel linear for sequences with gaps
|
|
19
|
+
|
|
20
|
+
## 5.43.1 (2024-09-22)
|
|
4
21
|
|
|
5
22
|
Add monomer background coloring
|
|
6
23
|
|
|
7
|
-
## 5.43.0
|
|
24
|
+
## 5.43.0 (2024-09-18)
|
|
8
25
|
|
|
9
|
-
Add coloring from monomer library to
|
|
26
|
+
Add coloring from monomer library to separator/fasta renderer
|
|
10
27
|
|
|
11
28
|
## 5.42.15 (2024-09-10)
|
|
12
29
|
|
package/package.json
CHANGED
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
"access": "public"
|
|
9
9
|
},
|
|
10
10
|
"friendlyName": "Datagrok bio library",
|
|
11
|
-
"version": "5.
|
|
11
|
+
"version": "5.44.0",
|
|
12
12
|
"description": "Bio utilities, types supporting Macromolecule, Molecule3D data",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@datagrok-libraries/chem-meta": "^1.2.
|
|
14
|
+
"@datagrok-libraries/chem-meta": "^1.2.7",
|
|
15
15
|
"@datagrok-libraries/gridext": "^1.3.71",
|
|
16
16
|
"@datagrok-libraries/ml": "^6.7.1",
|
|
17
17
|
"@datagrok-libraries/utils": "^4.3.0",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"dayjs": "latest",
|
|
22
22
|
"fastest-levenshtein": "^1.0.16",
|
|
23
23
|
"js-base64": "^3.7.5",
|
|
24
|
+
"lru-cache": "^11.0.1",
|
|
24
25
|
"mjolnir.js": "^2.7.0",
|
|
25
26
|
"rxjs": "^6.5.5",
|
|
26
27
|
"uuid": "^9.0.1",
|
|
@@ -52,4 +53,4 @@
|
|
|
52
53
|
"lint": "eslint \"./src/**/*.ts\"",
|
|
53
54
|
"lint-fix": "eslint \"./src/**/*.ts\" --fix"
|
|
54
55
|
}
|
|
55
|
-
}
|
|
56
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as ui from 'datagrok-api/ui';
|
|
2
2
|
import * as DG from 'datagrok-api/dg';
|
|
3
|
-
import
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import type { Point, App, HelmType } from './types';
|
|
4
5
|
import { MonomersFuncs, HelmMol, HelmString, IHelmWebEditor, HelmAtom, IHelmDrawOptions } from './types';
|
|
5
6
|
import { IMonomerLib } from '../types/index';
|
|
6
|
-
import { Observable } from 'rxjs';
|
|
7
7
|
export type IHelmInputInitOptions = ui.input.IInputInitOptions<HelmString | HelmMol> & {
|
|
8
8
|
editable: boolean;
|
|
9
9
|
};
|
|
@@ -15,6 +15,17 @@ export declare abstract class HelmInputBase extends DG.JsInputBase<HelmString> {
|
|
|
15
15
|
abstract redraw(): void;
|
|
16
16
|
abstract showTooltip(content: HTMLElement | string, a: HelmAtom): void;
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* @property {Map<number, number>} monomerMap srcPosIdx -> resPosIdx
|
|
20
|
+
*/
|
|
21
|
+
export type HelmConvertRes = {
|
|
22
|
+
srcHelm: string;
|
|
23
|
+
resHelm: string;
|
|
24
|
+
monomerMap: Map<number, number> | null;
|
|
25
|
+
};
|
|
26
|
+
export declare class HelmNotSupportedError extends Error {
|
|
27
|
+
constructor(message?: string);
|
|
28
|
+
}
|
|
18
29
|
export interface IHelmHelper {
|
|
19
30
|
createHelmInput(name: string, options?: IHelmInputInitOptions): HelmInputBase;
|
|
20
31
|
createHelmWebEditor(host?: HTMLElement, drawOptions?: Partial<IHelmDrawOptions>): IHelmWebEditor;
|
|
@@ -26,6 +37,8 @@ export interface IHelmHelper {
|
|
|
26
37
|
getHoveredAtom(x: number, y: number, mol: HelmMol, height: number): HelmAtom | null;
|
|
27
38
|
/** Gets pseudo molfiles with monomers as atoms */
|
|
28
39
|
getMolfiles(helmStrList: string[]): string[];
|
|
40
|
+
parse(helm: string, origin?: Point): HelmMol;
|
|
41
|
+
removeGaps(helm: string): HelmConvertRes;
|
|
29
42
|
}
|
|
30
43
|
export declare function getHelmHelper(): Promise<IHelmHelper>;
|
|
31
44
|
declare module 'datagrok-api/ui' {
|
|
@@ -36,4 +49,6 @@ declare module 'datagrok-api/ui' {
|
|
|
36
49
|
function helmAsync(name: string, options?: IHelmInputInitOptions): Promise<HelmInputBase>;
|
|
37
50
|
}
|
|
38
51
|
}
|
|
52
|
+
/** Inputs logic */
|
|
53
|
+
export declare function getMonomerHandleArgs(a: HelmAtom | HelmType, name?: string): [ /** biotype *//** biotype */ HelmType, /** elem */ string];
|
|
39
54
|
//# sourceMappingURL=helm-helper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helm-helper.d.ts","sourceRoot":"","sources":["helm-helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGtC,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"helm-helper.d.ts","sourceRoot":"","sources":["helm-helper.ts"],"names":[],"mappings":"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"}
|
package/src/helm/helm-helper.js
CHANGED
|
@@ -2,6 +2,11 @@ import * as ui from 'datagrok-api/ui';
|
|
|
2
2
|
import * as DG from 'datagrok-api/dg';
|
|
3
3
|
export class HelmInputBase extends DG.JsInputBase {
|
|
4
4
|
}
|
|
5
|
+
export class HelmNotSupportedError extends Error {
|
|
6
|
+
constructor(message) {
|
|
7
|
+
super(message);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
5
10
|
export async function getHelmHelper() {
|
|
6
11
|
const packageName = 'Helm';
|
|
7
12
|
const funcList = DG.Func.find({ package: packageName, name: `getHelmHelper` });
|
|
@@ -13,4 +18,21 @@ export async function getHelmHelper() {
|
|
|
13
18
|
ui.input.helmAsync = async function (name, options) {
|
|
14
19
|
return (await getHelmHelper()).createHelmInput(name, options);
|
|
15
20
|
};
|
|
21
|
+
/** Inputs logic */
|
|
22
|
+
export function getMonomerHandleArgs(a, name) {
|
|
23
|
+
if (!a)
|
|
24
|
+
throw new Error(`Argument 'a' of type Atom or HelmType is mandatory.`);
|
|
25
|
+
let biotype;
|
|
26
|
+
let elem;
|
|
27
|
+
const aa = a;
|
|
28
|
+
if (aa.T === 'ATOM') {
|
|
29
|
+
biotype = aa.biotype();
|
|
30
|
+
elem = aa.elem;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
biotype = a;
|
|
34
|
+
elem = name;
|
|
35
|
+
}
|
|
36
|
+
return [biotype, elem];
|
|
37
|
+
}
|
|
16
38
|
//# sourceMappingURL=helm-helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helm-helper.js","sourceRoot":"","sources":["helm-helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"helm-helper.js","sourceRoot":"","sources":["helm-helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAetC,MAAM,OAAgB,aAAc,SAAQ,EAAE,CAAC,WAAuB;CAWrE;AAWD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AAyBD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,WAAW,GAAG,MAAM,CAAC;IAC3B,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAC,CAAC,CAAC;IAC7E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,qCAAqC,CAAC,CAAC;IAChF,MAAM,GAAG,GAAG,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAiB,CAAC;IACtF,OAAO,GAAG,CAAC;AACb,CAAC;AAWD,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,WACxB,IAAY,EAAE,OAA+B;IAC7C,OAAO,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,mBAAmB;AACnB,MAAM,UAAU,oBAAoB,CAClC,CAAsB,EAAE,IAAa;IAErC,IAAI,CAAC,CAAC;QACJ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,IAAI,OAAiB,CAAC;IACtB,IAAI,IAAY,CAAC;IACjB,MAAM,EAAE,GAAG,CAAa,CAAC;IACzB,IAAI,EAAE,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,GAAG,EAAE,CAAC,OAAO,EAAG,CAAC;QACxB,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAa,CAAC;QACxB,IAAI,GAAG,IAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzB,CAAC"}
|
package/src/helm/types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { HelmType, PolymerType, MonomerType, IWebEditorMonomer, WebEditorRGroups, IMonomerColors, MonomerSetType } from '@datagrok-libraries/js-draw-lite/src/types/org';
|
|
2
|
+
import type { Point } from '@datagrok-libraries/js-draw-lite/src/Point';
|
|
2
3
|
import type { Atom } from '@datagrok-libraries/js-draw-lite/src/Atom';
|
|
3
4
|
import type { IJsAtom } from '@datagrok-libraries/js-draw-lite/src/types/jsdraw2';
|
|
4
5
|
import type { Bond } from '@datagrok-libraries/js-draw-lite/src/Bond';
|
|
@@ -14,13 +15,14 @@ import type { OrgType } from '@datagrok-libraries/helm-web-editor/src/types/org-
|
|
|
14
15
|
import type { Monomers } from '@datagrok-libraries/helm-web-editor/helm/Monomers';
|
|
15
16
|
import type { DojoType, DojoxType } from '@datagrok-libraries/js-draw-lite/src/types/dojo';
|
|
16
17
|
export { HelmType, PolymerType, MonomerType, WebEditorRGroups };
|
|
17
|
-
export { Atom, IJsAtom, Bond, Mol, Editor, MonomerExplorer };
|
|
18
|
+
export { Point, Atom, IJsAtom, Bond, Mol, Editor, MonomerExplorer };
|
|
18
19
|
export { HelmAtom, HelmBond, HelmMol, HelmEditor, HelmString };
|
|
19
20
|
export { IWebEditorMonomer, IMonomerColors, IOrgHelmWebEditor, IOrgHelmMonomers, IHelmDrawOptions, App, Monomers, GetMonomerFunc, GetMonomerResType };
|
|
20
21
|
export { DojoType, DojoxType };
|
|
21
22
|
export { HweWindow, ScilModuleType, JSDraw2ModuleType, OrgType };
|
|
22
23
|
export interface ISeqMonomer {
|
|
23
|
-
|
|
24
|
+
position: number;
|
|
25
|
+
biotype: HelmType;
|
|
24
26
|
symbol: string;
|
|
25
27
|
}
|
|
26
28
|
export interface IHelmWebEditor {
|
package/src/helm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EACxG,MAAM,gDAAgD,CAAC;AAExD,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,2CAA2C,CAAC;AACpE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oDAAoD,CAAC;AAChF,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,2CAA2C,CAAC;AACpE,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,0CAA0C,CAAC;AAClE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAE/E,OAAO,KAAK,EACV,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EACnD,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EACrF,gBAAgB,EACjB,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,+CAA+C,CAAC;AAC7E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,0DAA0D,CAAC;AAC9F,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,8CAA8C,CAAC;AAGtE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,2CAA2C,CAAC;AAC3E,OAAO,KAAK,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,4CAA4C,CAAC;AAClG,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,wDAAwD,CAAC;AACpF,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,mDAAmD,CAAC;AAChF,OAAO,KAAK,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAC,CAAC;AAC9D,OAAO,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,EAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EACxG,MAAM,gDAAgD,CAAC;AAExD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,4CAA4C,CAAC;AACtE,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,2CAA2C,CAAC;AACpE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oDAAoD,CAAC;AAChF,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,2CAA2C,CAAC;AACpE,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,0CAA0C,CAAC;AAClE,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAE/E,OAAO,KAAK,EACV,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EACnD,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EACrF,gBAAgB,EACjB,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,+CAA+C,CAAC;AAC7E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,0DAA0D,CAAC;AAC9F,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,8CAA8C,CAAC;AAGtE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,2CAA2C,CAAC;AAC3E,OAAO,KAAK,EAAC,iBAAiB,EAAE,cAAc,EAAC,MAAM,4CAA4C,CAAC;AAClG,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,wDAAwD,CAAC;AACpF,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,mDAAmD,CAAC;AAChF,OAAO,KAAK,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,iDAAiD,CAAC;AAEzF,OAAO,EAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAC,CAAC;AAC9D,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,EAAC,CAAC;AAElE,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;AAE7D,OAAO,EACL,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EACxF,GAAG,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EACjD,CAAC;AAEF,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,CAAC;AAC7B,OAAO,EAAC,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAE,OAAO,EAAC,CAAC;AAG/D,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,MAAM,IAAI,UAAU,CAAC;IACzB,IAAI,IAAI,IAAI,cAAc,CAAC;IAE3B,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACnD;AAED,OAAO,EAAC,cAAc,EAAE,aAAa,EAAE,WAAW,EAAC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PolymerTypes } from '../helm/consts';
|
|
1
2
|
export declare const monomerWorksConsts: {
|
|
2
3
|
readonly V2K_RGP_SHIFT: 8;
|
|
3
4
|
readonly V2K_RGP_LINE: "M RGP";
|
|
@@ -18,9 +19,18 @@ export declare const monomerWorksConsts: {
|
|
|
18
19
|
readonly V3K_BEGIN_DATA_LINE: "M V30 ";
|
|
19
20
|
readonly V3K_END: "M END";
|
|
20
21
|
readonly PRECISION_FACTOR: 10000;
|
|
21
|
-
readonly DEOXYRIBOSE:
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
readonly DEOXYRIBOSE: {
|
|
23
|
+
readonly polymerType: PolymerTypes.RNA;
|
|
24
|
+
readonly symbol: "d";
|
|
25
|
+
};
|
|
26
|
+
readonly RIBOSE: {
|
|
27
|
+
readonly polymerType: PolymerTypes.RNA;
|
|
28
|
+
readonly symbol: "r";
|
|
29
|
+
};
|
|
30
|
+
readonly PHOSPHATE: {
|
|
31
|
+
readonly polymerType: PolymerTypes.RNA;
|
|
32
|
+
readonly symbol: "p";
|
|
33
|
+
};
|
|
24
34
|
readonly OXYGEN: "O";
|
|
25
35
|
readonly HYDROGEN: "H";
|
|
26
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BrB,CAAC"}
|
|
@@ -21,9 +21,9 @@ export const monomerWorksConsts = {
|
|
|
21
21
|
V3K_END: 'M END',
|
|
22
22
|
PRECISION_FACTOR: 10000, // HELMCoreLibrary has 4 significant digits after decimal point in atom coordinates
|
|
23
23
|
// symbols for the corresponding monomers in HELM library
|
|
24
|
-
DEOXYRIBOSE: 'd',
|
|
25
|
-
RIBOSE: 'r',
|
|
26
|
-
PHOSPHATE: 'p',
|
|
24
|
+
DEOXYRIBOSE: { polymerType: "RNA" /* PolymerTypes.RNA */, symbol: 'd' },
|
|
25
|
+
RIBOSE: { polymerType: "RNA" /* PolymerTypes.RNA */, symbol: 'r' },
|
|
26
|
+
PHOSPHATE: { polymerType: "RNA" /* PolymerTypes.RNA */, symbol: 'p' },
|
|
27
27
|
OXYGEN: 'O',
|
|
28
28
|
HYDROGEN: 'H',
|
|
29
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["consts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["consts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAClC,sCAAsC;IACpC,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,QAAQ;IACtB,UAAU,EAAE,KAAK;IACjB,wDAAwD;IACxD,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,CAAC;IAChB,qBAAqB,EAAE,sCAAsC;IAC7D,sBAAsB,EAAE,2CAA2C;IACnE,oBAAoB,EAAE,qBAAqB;IAC3C,kBAAkB,EAAE,mBAAmB;IACvC,qBAAqB,EAAE,gBAAgB;IACvC,sBAAsB,EAAE,UAAU;IAClC,oBAAoB,EAAE,qBAAqB;IAC3C,kBAAkB,EAAE,mBAAmB;IACvC,oBAAoB,EAAE,qBAAqB;IAC3C,kBAAkB,EAAE,mBAAmB;IACvC,eAAe,EAAE,OAAO;IACxB,mBAAmB,EAAE,SAAS;IAC9B,OAAO,EAAE,QAAQ;IACjB,gBAAgB,EAAE,KAAM,EAAE,mFAAmF;IAC7G,yDAAyD;IAEzD,WAAW,EAAE,EAAC,WAAW,8BAAkB,EAAE,MAAM,EAAE,GAAG,EAAC;IACzD,MAAM,EAAE,EAAC,WAAW,8BAAkB,EAAE,MAAM,EAAE,GAAG,EAAC;IACpD,SAAS,EAAE,EAAC,WAAW,8BAAkB,EAAE,MAAM,EAAE,GAAG,EAAC;IAEvD,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,GAAG;CACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as DG from 'datagrok-api/dg';
|
|
2
|
+
import { RDModule } from '@datagrok-libraries/chem-meta/src/rdkit-api';
|
|
3
|
+
import { IMonomerLib } from '../types/index';
|
|
4
|
+
import { ISeqMonomer } from '../helm/types';
|
|
5
|
+
import { MonomerHoverLink } from './utils';
|
|
6
|
+
export declare const MonomerHoverLinksTemp = "MonomerHoverLinks";
|
|
7
|
+
export declare function buildMonomerHoverLink(seqCol: DG.Column<string>, molCol: DG.Column<string>, monomerLib: IMonomerLib, rdKitModule: RDModule): MonomerHoverLink;
|
|
8
|
+
export declare function execMonomerHoverLinks(seqGridCell: DG.GridCell, seqMonomer: ISeqMonomer | null): void;
|
|
9
|
+
export declare function getMonomerHoverLinks(seqCol: DG.Column<string>): MonomerHoverLink[];
|
|
10
|
+
//# sourceMappingURL=monomer-hover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monomer-hover.d.ts","sourceRoot":"","sources":["monomer-hover.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAMtC,OAAO,EAAC,QAAQ,EAAC,MAAM,6CAA6C,CAAC;AAIrE,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAO1C,OAAO,EAAkB,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAI1D,eAAO,MAAM,qBAAqB,sBAAsB,CAAC;AAUzD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,GACnG,gBAAgB,CAgGlB;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,GAAG,IAAI,GACvD,IAAI,CAcN;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,gBAAgB,EAAE,CAElF"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import wu from 'wu';
|
|
2
|
+
import { LRUCache } from 'lru-cache';
|
|
3
|
+
import { addSubstructProvider, getMonomerHover, setMonomerHover } from '@datagrok-libraries/chem-meta/src/types';
|
|
4
|
+
import { HelmTypes } from '../helm/consts';
|
|
5
|
+
import { SeqHandler } from '../utils/seq-handler';
|
|
6
|
+
import { ALPHABET } from '../utils/macromolecule';
|
|
7
|
+
import { getMonomersDictFromLib } from './to-atomic-level';
|
|
8
|
+
import { monomerSeqToMolfile } from './to-atomic-level-utils';
|
|
9
|
+
import { getMolHighlight } from './seq-to-molfile';
|
|
10
|
+
export const MonomerHoverLinksTemp = 'MonomerHoverLinks';
|
|
11
|
+
function addMonomerHoverLink(seqColTemp, resLink) {
|
|
12
|
+
let mhhList = seqColTemp[MonomerHoverLinksTemp];
|
|
13
|
+
if (!mhhList)
|
|
14
|
+
mhhList = seqColTemp[MonomerHoverLinksTemp] = [];
|
|
15
|
+
mhhList.push(resLink);
|
|
16
|
+
seqColTemp[MonomerHoverLinksTemp] = mhhList;
|
|
17
|
+
}
|
|
18
|
+
export function buildMonomerHoverLink(seqCol, molCol, monomerLib, rdKitModule) {
|
|
19
|
+
function buildMonomerMap(seqCol, tableRowIdx) {
|
|
20
|
+
const seqSH = SeqHandler.forColumn(seqCol);
|
|
21
|
+
const seqSS = seqSH.getSplitted(tableRowIdx);
|
|
22
|
+
const biotype = seqSH.alphabet == ALPHABET.RNA || seqSH.alphabet == ALPHABET.DNA ? HelmTypes.NUCLEOTIDE : HelmTypes.AA;
|
|
23
|
+
const seqMList = wu.count(0).take(seqSS.length)
|
|
24
|
+
.map((posIdx) => { return { position: posIdx, symbol: seqSS.getCanonical(posIdx), biotype: biotype }; })
|
|
25
|
+
.toArray();
|
|
26
|
+
const alphabet = seqSH.alphabet;
|
|
27
|
+
const polymerType = alphabet == ALPHABET.RNA || alphabet == ALPHABET.DNA ? "RNA" /* PolymerTypes.RNA */ : "PEPTIDE" /* PolymerTypes.PEPTIDE */;
|
|
28
|
+
const monomersDict = getMonomersDictFromLib([seqMList], polymerType, alphabet, monomerLib, rdKitModule);
|
|
29
|
+
// Call seq-to-molfile worker core directly
|
|
30
|
+
const molWM = monomerSeqToMolfile(seqMList, monomersDict, alphabet, polymerType);
|
|
31
|
+
return molWM.monomers;
|
|
32
|
+
}
|
|
33
|
+
const monomerMapLruCache = new LRUCache({ max: 100 });
|
|
34
|
+
function getMonomerMap(seqCol, tableRowIdx) {
|
|
35
|
+
const seq = seqCol.get(tableRowIdx);
|
|
36
|
+
if (seq == null)
|
|
37
|
+
return null;
|
|
38
|
+
let resMonomerMap = monomerMapLruCache.get(seq);
|
|
39
|
+
if (!resMonomerMap) {
|
|
40
|
+
monomerMapLruCache.set(seq, resMonomerMap = buildMonomerMap(seqCol, tableRowIdx));
|
|
41
|
+
}
|
|
42
|
+
return resMonomerMap;
|
|
43
|
+
}
|
|
44
|
+
const resLink = {
|
|
45
|
+
targetCol: molCol,
|
|
46
|
+
handler: (seqGridCell, seqMonomer, targetGridCol) => {
|
|
47
|
+
const grid = targetGridCol.grid;
|
|
48
|
+
const tableRowIdx = seqGridCell.tableRowIndex;
|
|
49
|
+
const gridRowIdx = seqGridCell.gridRow;
|
|
50
|
+
const targetGridCell = grid.cell(targetGridCol.name, gridRowIdx);
|
|
51
|
+
const prev = getMonomerHover();
|
|
52
|
+
if (!prev || (prev && (prev.dataFrameId != seqCol.dataFrame.id || prev.gridRowIdx != gridRowIdx ||
|
|
53
|
+
prev.seqColName != seqCol.name || prev.seqPosition != seqMonomer?.position))) {
|
|
54
|
+
if (prev) {
|
|
55
|
+
setMonomerHover(null);
|
|
56
|
+
prev.gridCell.grid?.invalidate();
|
|
57
|
+
}
|
|
58
|
+
if (!seqMonomer) {
|
|
59
|
+
setMonomerHover(null);
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
setMonomerHover({
|
|
63
|
+
gridCell: targetGridCell,
|
|
64
|
+
dataFrameId: seqCol.dataFrame.id,
|
|
65
|
+
gridRowIdx: gridRowIdx,
|
|
66
|
+
seqColName: seqCol.name,
|
|
67
|
+
seqPosition: seqMonomer ? seqMonomer.position : -1,
|
|
68
|
+
getSubstruct: () => {
|
|
69
|
+
if (!seqMonomer || seqMonomer.symbol === '*')
|
|
70
|
+
return undefined;
|
|
71
|
+
const molMonomerMap = getMonomerMap(seqCol, tableRowIdx);
|
|
72
|
+
if (!molMonomerMap)
|
|
73
|
+
return undefined;
|
|
74
|
+
const monomerMap = molMonomerMap.get(seqMonomer.position); // single monomer
|
|
75
|
+
if (!monomerMap)
|
|
76
|
+
return { atoms: [], bonds: [], highlightAtomColors: [], highlightBondColors: [] };
|
|
77
|
+
const res = getMolHighlight([monomerMap], monomerLib);
|
|
78
|
+
return res;
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
// TODO: Invalidate targetGridCell
|
|
82
|
+
grid.invalidate();
|
|
83
|
+
}
|
|
84
|
+
return true;
|
|
85
|
+
},
|
|
86
|
+
/* ISubstructProvider.*/ getSubstruct: (tableRowIdx) => {
|
|
87
|
+
if (molCol.getTag(".sequence-src-highlight-monomers" /* ChemTags.SEQUENCE_SRC_HL_MONOMERS */) != 'true')
|
|
88
|
+
return undefined;
|
|
89
|
+
if (tableRowIdx == null)
|
|
90
|
+
return undefined;
|
|
91
|
+
const seq = seqCol.get(tableRowIdx);
|
|
92
|
+
if (!seq)
|
|
93
|
+
return undefined;
|
|
94
|
+
const molMonomerMap = getMonomerMap(seqCol, tableRowIdx);
|
|
95
|
+
if (!molMonomerMap)
|
|
96
|
+
return undefined;
|
|
97
|
+
const res = getMolHighlight(molMonomerMap.values(), monomerLib);
|
|
98
|
+
return res;
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
addMonomerHoverLink(seqCol.temp, resLink);
|
|
102
|
+
addSubstructProvider(molCol.temp, resLink);
|
|
103
|
+
return resLink;
|
|
104
|
+
}
|
|
105
|
+
export function execMonomerHoverLinks(seqGridCell, seqMonomer) {
|
|
106
|
+
const seqCol = seqGridCell.tableColumn;
|
|
107
|
+
if (!seqCol)
|
|
108
|
+
return;
|
|
109
|
+
const mhlList = getMonomerHoverLinks(seqCol);
|
|
110
|
+
for (let mhlI = mhlList.length - 1; mhlI >= 0; --mhlI) {
|
|
111
|
+
const mhl = mhlList[mhlI];
|
|
112
|
+
const molGridCol = seqGridCell.grid.col(mhl.targetCol.name);
|
|
113
|
+
if (molGridCol) {
|
|
114
|
+
const handlerRes = mhl.handler(seqGridCell, seqMonomer, molGridCol);
|
|
115
|
+
if (!handlerRes)
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
export function getMonomerHoverLinks(seqCol) {
|
|
121
|
+
return seqCol.temp[MonomerHoverLinksTemp] ?? [];
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=monomer-hover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monomer-hover.js","sourceRoot":"","sources":["monomer-hover.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monomer-utils.d.ts","sourceRoot":"","sources":["monomer-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGtC,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAShC,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,gBAAgB,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"monomer-utils.d.ts","sourceRoot":"","sources":["monomer-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGtC,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAShC,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAK1D,wBAAgB,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,GAAG,IAAI,CAwB/D;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,IAAI,CAsB3F;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,IAAI,CAkBhG;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,CAAA;CAAE,CAYjF;AAGD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,GAAG,GAAG,CAoCpE;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,wBAAwB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,0BAA0B,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,IAAI,0BAA0B,IAAI,UAAU,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhE,4BAA4B,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;CAC9E;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,YAAY,IAAI,2BAA2B,CAAC;IAEhD,oBAAoB,IAAI,MAAM,EAAE,CAAC;IACjC,kCAAkC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAExD,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,YAAY,IAAI,2BAA2B,CAAC;IAEhD,yEAAyE;IACzE,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,+DAA+D;IAC/D,aAAa,IAAI,WAAW,CAAC;IAE7B,6CAA6C;IAC7C,SAAS,IAAI,WAAW,CAAC;IAEzB,2DAA2D;IAC3D,cAAc,IAAI,WAAW,CAAC;IAE9B,cAAc,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAElD;;OAEG;IACH,cAAc,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,6CAA6C;IAC7C,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C;;OAEG;IACH,eAAe,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjD,6DAA6D;IAC7D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACnE;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAOtE;AAED;;;;;0EAK0E;AAG1E,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,iBAAiB,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1I,wBAAsB,sBAAsB,CAAC,eAAe,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,iBAAiB,EAAE,YAAY,GAAG,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAgEhJ;;+KAE+K;AAC/K,wBAAsB,0BAA0B,CAAC,UAAU,EAAE,MAAM,EAAE,GAClE,OAAO,CAAC;IAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,eAAe,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAqB1F;AAED,wBAAsB,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,eAAe,GAAE,MAAiB,GACxG,OAAO,CAAC;IAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,eAAe,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAqC1F"}
|
|
@@ -3,9 +3,9 @@ import * as DG from 'datagrok-api/dg';
|
|
|
3
3
|
import * as grok from 'datagrok-api/grok';
|
|
4
4
|
import { tanimotoSimilarity } from '@datagrok-libraries/ml/src/distance-metrics-methods';
|
|
5
5
|
import { HELM_CORE_FIELDS, jsonSdfMonomerLibDict, MONOMER_ENCODE_MAX, MONOMER_ENCODE_MIN, SDF_MONOMER_NAME, } from '../utils/const';
|
|
6
|
-
import { GAP_SYMBOL } from '../utils/macromolecule/types';
|
|
7
6
|
import { SeqHandler } from '../utils/seq-handler';
|
|
8
7
|
import { splitAlignedSequences } from '../utils/splitter';
|
|
8
|
+
import { GAP_SYMBOL } from '../utils/macromolecule/consts';
|
|
9
9
|
export function encodeMonomers(col) {
|
|
10
10
|
let encodeSymbol = MONOMER_ENCODE_MIN;
|
|
11
11
|
const monomerSymbolDict = {};
|
|
@@ -15,7 +15,8 @@ export function encodeMonomers(col) {
|
|
|
15
15
|
for (let rowIdx = 0; rowIdx < rowCount; ++rowIdx) {
|
|
16
16
|
let encodedMonomerStr = '';
|
|
17
17
|
const monomers = sh.getSplitted(rowIdx);
|
|
18
|
-
for (
|
|
18
|
+
for (let posIdx = 0; posIdx < monomers.length; ++posIdx) {
|
|
19
|
+
const cm = monomers.getCanonical(posIdx);
|
|
19
20
|
if (!monomerSymbolDict[cm]) {
|
|
20
21
|
if (encodeSymbol > MONOMER_ENCODE_MAX) {
|
|
21
22
|
grok.shell.error(`Not enough symbols to encode monomers`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monomer-utils.js","sourceRoot":"","sources":["monomer-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"monomer-utils.js","sourceRoot":"","sources":["monomer-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { monomerSeqToMolfile } from './to-atomic-level-utils';
|
|
2
2
|
onmessage = (event) => {
|
|
3
|
-
const {
|
|
4
|
-
const
|
|
3
|
+
const { seqList, monomersDict, alphabet, polymerType, start, end } = event.data;
|
|
4
|
+
const resMolList = new Array(end - start);
|
|
5
5
|
const molfileWarningList = new Array(0);
|
|
6
6
|
for (let rowI = start; rowI < end; ++rowI) {
|
|
7
7
|
try {
|
|
8
|
-
const
|
|
9
|
-
|
|
8
|
+
const seq = seqList[rowI];
|
|
9
|
+
resMolList[rowI - start] = monomerSeqToMolfile(seq, monomersDict, alphabet, polymerType);
|
|
10
10
|
}
|
|
11
11
|
catch (err) {
|
|
12
12
|
const errMsg = err instanceof Error ? err.message : err.toString();
|
|
@@ -14,6 +14,6 @@ onmessage = (event) => {
|
|
|
14
14
|
molfileWarningList.push(msg);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
postMessage({
|
|
17
|
+
postMessage({ molfiles: resMolList, warnings: molfileWarningList });
|
|
18
18
|
};
|
|
19
19
|
//# sourceMappingURL=seq-to-molfile-worker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seq-to-molfile-worker.js","sourceRoot":"","sources":["seq-to-molfile-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"seq-to-molfile-worker.js","sourceRoot":"","sources":["seq-to-molfile-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAG5D,SAAS,GAAG,CAAC,KAAK,EAAE,EAAE;IACpB,MAAM,EAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAC,GAA2B,KAAK,CAAC,IAAI,CAAC;IACtG,MAAM,UAAU,GAAqB,IAAI,KAAK,CAAiB,GAAG,GAAG,KAAK,CAAC,CAAC;IAC5E,MAAM,kBAAkB,GAAG,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC;IAChD,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,MAAM,GAAW,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC3E,MAAM,GAAG,GAAW,8BAA8B,IAAI,KAAK,MAAM,GAAG,CAAC;YACrE,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,WAAW,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB,EAA0B,CAAC,CAAC;AAC7F,CAAC,CAAC"}
|
|
@@ -1,9 +1,18 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as DG from 'datagrok-api/dg';
|
|
2
|
+
import { RDModule } from '@datagrok-libraries/chem-meta/src/rdkit-api';
|
|
2
3
|
import { ALPHABET } from '../utils/macromolecule';
|
|
3
|
-
import {
|
|
4
|
+
import { MonomerMap, MonomerMapValue, MonomerMolGraphMap } from './types';
|
|
5
|
+
import { ToAtomicLevelRes } from '../utils/seq-helper';
|
|
6
|
+
import { IMonomerLib } from '../types';
|
|
7
|
+
import { PolymerType } from '../helm/types';
|
|
8
|
+
import { ISubstruct } from '@datagrok-libraries/chem-meta/src/types';
|
|
4
9
|
export type SeqToMolfileResult = {
|
|
5
|
-
|
|
6
|
-
|
|
10
|
+
mols: {
|
|
11
|
+
molfile: string;
|
|
12
|
+
monomers: MonomerMap;
|
|
13
|
+
}[];
|
|
14
|
+
warnings: string[];
|
|
7
15
|
};
|
|
8
|
-
export declare function seqToMolFileWorker(
|
|
16
|
+
export declare function seqToMolFileWorker(seqCol: DG.Column<string>, monomersDict: MonomerMolGraphMap, alphabet: ALPHABET, polymerType: PolymerType, monomerLib: IMonomerLib, rdKitModule: RDModule): Promise<ToAtomicLevelRes>;
|
|
17
|
+
export declare function getMolHighlight(monomerMaps: Iterable<MonomerMapValue>, monomerLib: IMonomerLib): ISubstruct;
|
|
9
18
|
//# sourceMappingURL=seq-to-molfile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seq-to-molfile.d.ts","sourceRoot":"","sources":["seq-to-molfile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"seq-to-molfile.d.ts","sourceRoot":"","sources":["seq-to-molfile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,OAAO,EAAC,QAAQ,EAAC,MAAM,6CAA6C,CAAC;AAGrE,OAAO,EAAC,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAChD,OAAO,EACqB,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAC1E,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAC,WAAW,EAAC,MAAM,UAAU,CAAC;AACrC,OAAO,EAAc,WAAW,EAAC,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAC,UAAU,EAAC,MAAM,yCAAyC,CAAC;AAGnE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,UAAU,CAAA;KACrB,EAAE,CAAC;IACJ,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAAA;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,kBAAkB,EAClG,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,GAC3F,OAAO,CAAC,gBAAgB,CAAC,CAoD3B;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,WAAW,GAAG,UAAU,CAsB3G"}
|