@datagrok-libraries/bio 5.40.8 → 5.41.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 +16 -0
- package/package.json +5 -5
- package/src/helm/helm-helper.d.ts +3 -2
- package/src/helm/helm-helper.d.ts.map +1 -1
- package/src/helm/helm-helper.js.map +1 -1
- package/src/helm/types.d.ts +3 -24
- package/src/helm/types.d.ts.map +1 -1
- package/src/helm/types.js +1 -1
- package/src/helm/types.js.map +1 -1
- package/src/types/dojo.d.ts +4 -0
- package/src/types/dojo.d.ts.map +1 -0
- package/src/types/dojo.js +2 -0
- package/src/types/dojo.js.map +1 -0
- package/src/types/helm.d.ts +83 -0
- package/src/types/helm.d.ts.map +1 -0
- package/src/types/helm.js +2 -0
- package/src/types/helm.js.map +1 -0
- package/src/types/index.d.ts +2 -0
- package/src/types/index.d.ts.map +1 -1
- package/src/types/index.js.map +1 -1
- package/src/types/jsdraw2.d.ts +44 -0
- package/src/types/jsdraw2.d.ts.map +1 -0
- package/src/types/jsdraw2.js +2 -0
- package/src/types/jsdraw2.js.map +1 -0
- package/src/utils/cell-renderer-async-base.d.ts +94 -0
- package/src/utils/cell-renderer-async-base.d.ts.map +1 -0
- package/src/utils/cell-renderer-async-base.js +406 -0
- package/src/utils/cell-renderer-async-base.js.map +1 -0
- package/src/utils/cell-renderer-back-base.d.ts +26 -0
- package/src/utils/cell-renderer-back-base.d.ts.map +1 -0
- package/src/utils/cell-renderer-back-base.js +80 -0
- package/src/utils/cell-renderer-back-base.js.map +1 -0
- package/src/utils/cell-renderer-monomer-placer.d.ts +5 -7
- package/src/utils/cell-renderer-monomer-placer.d.ts.map +1 -1
- package/src/utils/cell-renderer-monomer-placer.js +25 -57
- package/src/utils/cell-renderer-monomer-placer.js.map +1 -1
- package/src/viewers/helm-service.d.ts +17 -0
- package/src/viewers/helm-service.d.ts.map +1 -0
- package/src/viewers/helm-service.js +19 -0
- package/src/viewers/helm-service.js.map +1 -0
- package/src/viewers/ngl-gl-service.d.ts +7 -27
- package/src/viewers/ngl-gl-service.d.ts.map +1 -1
- package/src/viewers/ngl-gl-service.js +8 -1
- package/src/viewers/ngl-gl-service.js.map +1 -1
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import * as grok from 'datagrok-api/grok';
|
|
2
1
|
import * as DG from 'datagrok-api/dg';
|
|
3
2
|
import wu from 'wu';
|
|
4
3
|
import { SeqHandler } from './seq-handler';
|
|
5
|
-
|
|
4
|
+
import { CellRendererBackBase } from './cell-renderer-back-base';
|
|
5
|
+
export class MonomerPlacer extends CellRendererBackBase {
|
|
6
6
|
get updated() { return this._updated; }
|
|
7
7
|
/** View is required to subscribe and handle for data frame changes */
|
|
8
|
-
constructor(
|
|
9
|
-
|
|
10
|
-
this.col = col;
|
|
8
|
+
constructor(gridCol, tableCol, logger, propsProvider) {
|
|
9
|
+
super(gridCol, tableCol, logger);
|
|
11
10
|
this.propsProvider = propsProvider;
|
|
12
11
|
this._monomerLengthList = null;
|
|
13
12
|
// width of separator symbol
|
|
@@ -15,51 +14,19 @@ export class MonomerPlacer {
|
|
|
15
14
|
this._updated = false;
|
|
16
15
|
this._monomerLengthMap = {}; // caches the lengths to save time on g.measureText
|
|
17
16
|
this._monomerStructureMap = {}; // caches the atomic structures of monomers
|
|
18
|
-
this.subs = [];
|
|
19
|
-
this.destroyed = false;
|
|
20
17
|
this.props = this.propsProvider();
|
|
21
|
-
this._rowsProcessed = DG.BitSet.create(this.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
try {
|
|
26
|
-
this.props = this.propsProvider();
|
|
27
|
-
this._monomerLengthList = null;
|
|
28
|
-
this._rowsProcessed = DG.BitSet.create(this.col.length);
|
|
29
|
-
}
|
|
30
|
-
catch (err) {
|
|
31
|
-
console.error(err);
|
|
32
|
-
}
|
|
33
|
-
}));
|
|
34
|
-
this.subs.push(this.props.monomerLib.onChanged.subscribe(() => {
|
|
35
|
-
this._monomerStructureMap = {};
|
|
36
|
-
}));
|
|
37
|
-
this.subs.push(grok.events.onViewRemoving.subscribe((eventData) => {
|
|
38
|
-
try {
|
|
39
|
-
const eventView = eventData.args.view;
|
|
40
|
-
if (this.grid?.dart && this.grid.view?.id === eventView.id && !this.destroyed)
|
|
41
|
-
this.destroy();
|
|
42
|
-
}
|
|
43
|
-
catch (err) {
|
|
44
|
-
console.error(err);
|
|
45
|
-
}
|
|
46
|
-
}));
|
|
47
|
-
this.subs.push(grok.events.onTableRemoved.subscribe((eventData) => {
|
|
48
|
-
try {
|
|
49
|
-
const eventDf = eventData.args.dataFrame;
|
|
50
|
-
if (this.col.dataFrame?.dart && this.col.dataFrame.id === eventDf.id && !this.destroyed)
|
|
51
|
-
this.destroy();
|
|
52
|
-
}
|
|
53
|
-
catch (err) {
|
|
54
|
-
console.error(err);
|
|
55
|
-
}
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
18
|
+
this._rowsProcessed = DG.BitSet.create(this.tableCol.length);
|
|
19
|
+
this.subs.push(this.props.monomerLib.onChanged.subscribe(() => {
|
|
20
|
+
this.reset();
|
|
21
|
+
}));
|
|
58
22
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
this.
|
|
23
|
+
reset() {
|
|
24
|
+
if (this.propsProvider)
|
|
25
|
+
this.props = this.propsProvider();
|
|
26
|
+
this._rowsProcessed = DG.BitSet.create(this.tableCol.length);
|
|
27
|
+
this._monomerLengthList = null;
|
|
28
|
+
this._monomerLengthMap = {};
|
|
29
|
+
this._monomerStructureMap = {};
|
|
63
30
|
}
|
|
64
31
|
/** Returns monomers lengths of the {@link rowIdx} and cumulative sums for borders, monomer places */
|
|
65
32
|
getCellMonomerLengths(rowIdx) {
|
|
@@ -73,12 +40,12 @@ export class MonomerPlacer {
|
|
|
73
40
|
}
|
|
74
41
|
getCellMonomerLengthsForSeq(rowIdx) {
|
|
75
42
|
if (this._monomerLengthList === null) {
|
|
76
|
-
this._monomerLengthList = new Array(this.
|
|
43
|
+
this._monomerLengthList = new Array(this.tableCol.length).fill(null);
|
|
77
44
|
this._updated = true;
|
|
78
45
|
}
|
|
79
46
|
let res = this._monomerLengthList[rowIdx];
|
|
80
47
|
if (res === null) {
|
|
81
|
-
const seqMonList = SeqHandler.forColumn(this.
|
|
48
|
+
const seqMonList = SeqHandler.forColumn(this.tableCol).getSplitted(rowIdx).originals;
|
|
82
49
|
res = this._monomerLengthList[rowIdx] = new Array(seqMonList.length);
|
|
83
50
|
for (const [seqMonLabel, seqMonI] of wu.enumerate(seqMonList)) {
|
|
84
51
|
const shortMon = this.props.monomerToShort(seqMonLabel, this.props.monomerLengthLimit);
|
|
@@ -102,23 +69,24 @@ export class MonomerPlacer {
|
|
|
102
69
|
// const endIdx = Math.min(Math.ceil((this.grid?.vertScroll.max ?? 0) + 10), this.col.length);
|
|
103
70
|
const { startIdx, endIdx } = (() => {
|
|
104
71
|
try {
|
|
105
|
-
|
|
72
|
+
const grid = this.gridCol && this.gridCol.dart ? this.gridCol.grid : null;
|
|
73
|
+
if (grid && grid.dart) {
|
|
106
74
|
return {
|
|
107
|
-
startIdx: Math.max(Math.floor((
|
|
108
|
-
endIdx: Math.min(Math.ceil((
|
|
75
|
+
startIdx: Math.max(Math.floor((grid?.vertScroll.min ?? 0) - 10), 0),
|
|
76
|
+
endIdx: Math.min(Math.ceil((grid?.vertScroll.max ?? 0) + 10), this.tableCol.length)
|
|
109
77
|
};
|
|
110
78
|
}
|
|
111
79
|
else
|
|
112
|
-
return { startIdx: 0, endIdx: Math.min(this.
|
|
80
|
+
return { startIdx: 0, endIdx: Math.min(this.tableCol.length, 10) };
|
|
113
81
|
}
|
|
114
82
|
catch (_e) {
|
|
115
|
-
return { startIdx: 0, endIdx: Math.min(this.
|
|
83
|
+
return { startIdx: 0, endIdx: Math.min(this.tableCol.length, 10) };
|
|
116
84
|
}
|
|
117
85
|
})();
|
|
118
86
|
for (let seqIdx = startIdx; seqIdx < endIdx; seqIdx++) {
|
|
119
87
|
if (this._rowsProcessed.get(seqIdx))
|
|
120
88
|
continue;
|
|
121
|
-
const seqMonList = SeqHandler.forColumn(this.
|
|
89
|
+
const seqMonList = SeqHandler.forColumn(this.tableCol).getSplitted(seqIdx).originals;
|
|
122
90
|
if (seqMonList.length > res.length)
|
|
123
91
|
res.push(...new Array(seqMonList.length - res.length).fill(0));
|
|
124
92
|
for (const [seqMonLabel, seqMonI] of wu.enumerate(seqMonList)) {
|
|
@@ -133,7 +101,7 @@ export class MonomerPlacer {
|
|
|
133
101
|
/** Returns seq position for pointer x */
|
|
134
102
|
getPosition(rowIdx, x) {
|
|
135
103
|
const [_monomerMaxLengthList, monomerMaxLengthSumList] = this.getCellMonomerLengths(rowIdx);
|
|
136
|
-
const sh = SeqHandler.forColumn(this.
|
|
104
|
+
const sh = SeqHandler.forColumn(this.tableCol);
|
|
137
105
|
const seqMonList = wu(sh.getSplitted(rowIdx).originals).toArray();
|
|
138
106
|
if (seqMonList.length === 0)
|
|
139
107
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell-renderer-monomer-placer.js","sourceRoot":"","sources":["cell-renderer-monomer-placer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cell-renderer-monomer-placer.js","sourceRoot":"","sources":["cell-renderer-monomer-placer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as DG from 'datagrok-api/dg';
|
|
2
|
+
import '../types/jsdraw2';
|
|
3
|
+
import * as JSDraw2 from 'JSDraw2';
|
|
4
|
+
import { PropsBase, RenderServiceBase } from '../utils/cell-renderer-async-base';
|
|
5
|
+
export declare class HelmProps extends PropsBase {
|
|
6
|
+
readonly helm: string;
|
|
7
|
+
constructor(helm: string, backColor: number, width: number, height: number);
|
|
8
|
+
}
|
|
9
|
+
export type HelmAux = {
|
|
10
|
+
/** The molecule made of atoms (monomers) and bonds */ mol: JSDraw2.IEditorMol;
|
|
11
|
+
/** SVG bounding box */ bBox: DG.Rect;
|
|
12
|
+
/** Cell box {0, 0, w, h} */ cBox: DG.Rect;
|
|
13
|
+
};
|
|
14
|
+
export declare abstract class HelmServiceBase extends RenderServiceBase<HelmProps, HelmAux> {
|
|
15
|
+
}
|
|
16
|
+
export declare function getHelmService(): Promise<HelmServiceBase>;
|
|
17
|
+
//# sourceMappingURL=helm-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helm-service.d.ts","sourceRoot":"","sources":["helm-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAE/E,qBAAa,SAAU,SAAQ,SAAS;aAEpB,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM,EAC5B,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAInD;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,sDAAsD,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC;IAC/E,uBAAuB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;IACtC,4BAA4B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;CAC5C,CAAA;AAED,8BAAsB,eAAgB,SAAQ,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC;CAAG;AAEtF,wBAAsB,cAAc,IAAI,OAAO,CAAC,eAAe,CAAC,CAO/D"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as DG from 'datagrok-api/dg';
|
|
2
|
+
import '../types/jsdraw2';
|
|
3
|
+
import { PropsBase, RenderServiceBase } from '../utils/cell-renderer-async-base';
|
|
4
|
+
export class HelmProps extends PropsBase {
|
|
5
|
+
constructor(helm, backColor, width, height) {
|
|
6
|
+
super(backColor, width, height);
|
|
7
|
+
this.helm = helm;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export class HelmServiceBase extends RenderServiceBase {
|
|
11
|
+
}
|
|
12
|
+
export async function getHelmService() {
|
|
13
|
+
const funcList = DG.Func.find({ package: 'Helm', name: 'getHelmService' });
|
|
14
|
+
if (funcList.length === 0)
|
|
15
|
+
throw new Error('Package "Helm" must be installed for Helm services.');
|
|
16
|
+
const svc = (await funcList[0].prepare().call()).getOutputParamValue();
|
|
17
|
+
return svc;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=helm-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helm-service.js","sourceRoot":"","sources":["helm-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAE/E,MAAM,OAAO,SAAU,SAAQ,SAAS;IACtC,YACkB,IAAY,EAC5B,SAAiB,EAAE,KAAa,EAAE,MAAc;QAEhD,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAHhB,SAAI,GAAJ,IAAI,CAAQ;IAI9B,CAAC;CACF;AAQD,MAAM,OAAgB,eAAgB,SAAQ,iBAAqC;CAAG;AAEtF,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAC,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAEzE,MAAM,GAAG,GAAoB,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAqB,CAAC;IAC3G,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,30 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
backColor: number;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
} & {
|
|
9
|
-
[propName: string]: any;
|
|
10
|
-
};
|
|
11
|
-
onAfterRender: (canvas: HTMLCanvasElement) => void;
|
|
12
|
-
};
|
|
13
|
-
export declare abstract class NglGlServiceBase {
|
|
14
|
-
abstract get errorCount(): number;
|
|
15
|
-
/** Disposes MolstarViewer to free WebGL context */
|
|
16
|
-
abstract reset(): Promise<void>;
|
|
17
|
-
/** Queues NglGl render task
|
|
18
|
-
* @param key Specify to skip previously queued tasks with the same key
|
|
19
|
-
*/
|
|
20
|
-
abstract render(args: NglGlTask, key?: keyof any): void;
|
|
21
|
-
/** Default implementation of rendering tree on grid cell
|
|
22
|
-
* @param gCtx Context to draw on grid
|
|
23
|
-
* @param bd Bound rect to clip drawing on task moment
|
|
24
|
-
* @param gCell Grid cell to draw
|
|
25
|
-
* @param canvas Image of the tree rendered
|
|
26
|
-
*/
|
|
27
|
-
abstract renderOnGridCell(gCtx: CanvasRenderingContext2D, bd: DG.Rect, gCell: DG.GridCell, canvas: CanvasImageSource): void;
|
|
1
|
+
import { PropsBase, RenderServiceBase } from '../utils/cell-renderer-async-base';
|
|
2
|
+
export declare class NglGlProps extends PropsBase {
|
|
3
|
+
readonly pdb: string;
|
|
4
|
+
constructor(pdb: string, backColor: number, width: number, height: number);
|
|
5
|
+
}
|
|
6
|
+
export type NglGlAux = void;
|
|
7
|
+
export declare abstract class NglGlServiceBase extends RenderServiceBase<NglGlProps, void> {
|
|
28
8
|
}
|
|
29
9
|
export declare function getNglGlService(): Promise<NglGlServiceBase>;
|
|
30
10
|
//# sourceMappingURL=ngl-gl-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngl-gl-service.d.ts","sourceRoot":"","sources":["ngl-gl-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ngl-gl-service.d.ts","sourceRoot":"","sources":["ngl-gl-service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAE/E,qBAAa,UAAW,SAAQ,SAAS;aAErB,GAAG,EAAE,MAAM;gBAAX,GAAG,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAInD;AAED,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC;AAE5B,8BAAsB,gBAAiB,SAAQ,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC;CAAG;AAGrF,wBAAsB,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAOjE"}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import * as DG from 'datagrok-api/dg';
|
|
2
|
-
|
|
2
|
+
import { PropsBase, RenderServiceBase } from '../utils/cell-renderer-async-base';
|
|
3
|
+
export class NglGlProps extends PropsBase {
|
|
4
|
+
constructor(pdb, backColor, width, height) {
|
|
5
|
+
super(backColor, width, height);
|
|
6
|
+
this.pdb = pdb;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export class NglGlServiceBase extends RenderServiceBase {
|
|
3
10
|
}
|
|
4
11
|
export async function getNglGlService() {
|
|
5
12
|
const funcList = DG.Func.find({ package: 'BiostructureViewer', name: 'getNglGlService' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngl-gl-service.js","sourceRoot":"","sources":["ngl-gl-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ngl-gl-service.js","sourceRoot":"","sources":["ngl-gl-service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAE/E,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,YACkB,GAAW,EAC3B,SAAiB,EAAE,KAAa,EAAE,MAAc;QAEhD,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAHhB,QAAG,GAAH,GAAG,CAAQ;IAI7B,CAAC;CACF;AAID,MAAM,OAAgB,gBAAiB,SAAQ,iBAAmC;CAAG;AAGrF,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,iBAAiB,EAAC,CAAC,CAAC;IACxF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAExF,MAAM,GAAG,GAAqB,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAsB,CAAC;IAC7G,OAAO,GAAG,CAAC;AACb,CAAC"}
|