@datagrok/hit-triage 1.9.1 → 1.10.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/src/package.g.ts CHANGED
@@ -20,6 +20,7 @@ export async function peptiHitAppTreeBrowser(treeNode: any) : Promise<void> {
20
20
  }
21
21
 
22
22
  //name: Hit Triage
23
+ //tags: app
23
24
  //output: view result
24
25
  //meta.role: app
25
26
  //meta.browsePath: Chem
@@ -28,6 +29,7 @@ export async function hitTriageApp() : Promise<any> {
28
29
  }
29
30
 
30
31
  //name: Hit Design
32
+ //tags: app
31
33
  //output: view result
32
34
  //meta.role: app
33
35
  //meta.icon: images/icons/hit-design-icon.png
@@ -37,6 +39,7 @@ export async function hitDesignApp() : Promise<any> {
37
39
  }
38
40
 
39
41
  //name: PeptiHit
42
+ //tags: app
40
43
  //output: view result
41
44
  //meta.role: app
42
45
  //meta.icon: images/icons/pepti-hit-icon.png
@@ -45,6 +48,22 @@ export async function peptiHitApp() : Promise<any> {
45
48
  return await PackageFunctions.peptiHitApp();
46
49
  }
47
50
 
51
+ //input: dynamic treeNode
52
+ //meta.app: PepTriage
53
+ export async function pepTriageAppTreeBrowser(treeNode: any) : Promise<void> {
54
+ await PackageFunctions.pepTriageAppTreeBrowser(treeNode);
55
+ }
56
+
57
+ //name: PepTriage
58
+ //tags: app
59
+ //output: view result
60
+ //meta.role: app
61
+ //meta.icon: images/icons/hit-triage-icon.png
62
+ //meta.browsePath: Peptides
63
+ export async function pepTriageApp() : Promise<any> {
64
+ return await PackageFunctions.pepTriageApp();
65
+ }
66
+
48
67
  //name: Demo Molecules 100
49
68
  //output: dataframe result
50
69
  //meta.role: hitTriageDataSource
@@ -67,6 +86,14 @@ export async function demoFileIngest2(numberOfMolecules: number) : Promise<any>
67
86
  return await PackageFunctions.demoFileIngest2(numberOfMolecules);
68
87
  }
69
88
 
89
+ //name: Demo Peptide Sequences
90
+ //input: double peptideCount
91
+ //output: dataframe result
92
+ //meta.role: pepTriageDataSource
93
+ export async function demoPeptideSequences(peptideCount: number) : Promise<any> {
94
+ return await PackageFunctions.demoPeptideSequences(peptideCount);
95
+ }
96
+
70
97
  //name: Demo File Submit
71
98
  //input: dataframe df { description: Dataframe }
72
99
  //input: string molecules { description: Molecules column name }
@@ -98,6 +125,7 @@ export function gasteigerCellRenderer() : any {
98
125
  }
99
126
 
100
127
  //name: Hit Triage package settings editor
128
+ //tags: packageSettingsEditor
101
129
  //input: object propList
102
130
  //output: widget result
103
131
  //meta.role: packageSettingsEditor
package/src/package.ts CHANGED
@@ -9,6 +9,7 @@ import {GasteigerPngRenderer} from './pngRenderers';
9
9
  import {loadCampaigns, timeoutOneTimeEventListener} from './app/utils';
10
10
  import {AppName, CampaignsType} from './app';
11
11
  import {PeptiHitApp} from './app/pepti-hit-app';
12
+ import {PepTriageApp} from './app/pep-triage-app';
12
13
  import {CampaignJsonName, PeptiHitHelmColName} from './app/consts';
13
14
  import {htPackageSettingsEditorWidget} from './packageSettingsEditor';
14
15
  import {deobfuscateSmiles, registerAllCampaignMols} from './app/utils/molreg';
@@ -152,6 +153,7 @@ export class PackageFunctions {
152
153
  @grok.decorators.app({
153
154
  browsePath: 'Chem',
154
155
  name: 'Hit Triage',
156
+ tags: ['app'],
155
157
  })
156
158
  static async hitTriageApp(): Promise<DG.ViewBase> {
157
159
  const c = grok.functions.getCurrentCall();
@@ -163,6 +165,7 @@ export class PackageFunctions {
163
165
  icon: 'images/icons/hit-design-icon.png',
164
166
  browsePath: 'Chem',
165
167
  name: 'Hit Design',
168
+ tags: ['app'],
166
169
  })
167
170
  static async hitDesignApp(): Promise<DG.ViewBase> {
168
171
  const c = grok.functions.getCurrentCall();
@@ -174,6 +177,7 @@ export class PackageFunctions {
174
177
  icon: 'images/icons/pepti-hit-icon.png',
175
178
  browsePath: 'Peptides',
176
179
  name: 'PeptiHit',
180
+ tags: ['app'],
177
181
  })
178
182
  static async peptiHitApp(): Promise<DG.ViewBase> {
179
183
  const c = grok.functions.getCurrentCall();
@@ -182,6 +186,25 @@ export class PackageFunctions {
182
186
  }
183
187
 
184
188
 
189
+ @grok.decorators.treeBrowser({meta: {app: 'PepTriage'}})
190
+ static async pepTriageAppTreeBrowser(treeNode: DG.TreeViewGroup) {
191
+ await hitAppTB(treeNode, 'PepTriage');
192
+ }
193
+
194
+
195
+ @grok.decorators.app({
196
+ icon: 'images/icons/hit-triage-icon.png',
197
+ browsePath: 'Peptides',
198
+ name: 'PepTriage',
199
+ tags: ['app'],
200
+ })
201
+ static async pepTriageApp(): Promise<DG.ViewBase> {
202
+ const c = grok.functions.getCurrentCall();
203
+ await grok.functions.call('Bio:initBio', {});
204
+ return new PepTriageApp(c).multiView;
205
+ }
206
+
207
+
185
208
  @grok.decorators.func({
186
209
  name: 'Demo Molecules 100',
187
210
  meta: {role: 'hitTriageDataSource'},
@@ -217,6 +240,48 @@ export class PackageFunctions {
217
240
  }
218
241
 
219
242
 
243
+ @grok.decorators.func({
244
+ name: 'Demo Peptide Sequences',
245
+ meta: {role: 'pepTriageDataSource'},
246
+ })
247
+ static async demoPeptideSequences(peptideCount: number): Promise<DG.DataFrame> {
248
+ const sequences = [
249
+ 'PEPTIDE1{A.G.L.V.K}$$$$V2.0',
250
+ 'PEPTIDE1{G.A.V.L.I.P}$$$$V2.0',
251
+ 'PEPTIDE1{F.W.Y.H.K.R}$$$$V2.0',
252
+ 'PEPTIDE1{D.E.N.Q.S.T}$$$$V2.0',
253
+ 'PEPTIDE1{A.R.N.D.C.E}$$$$V2.0',
254
+ 'PEPTIDE1{G.H.I.L.K.M}$$$$V2.0',
255
+ 'PEPTIDE1{F.P.S.T.W.Y}$$$$V2.0',
256
+ 'PEPTIDE1{V.A.G.L.I}$$$$V2.0',
257
+ 'PEPTIDE1{K.R.H.D.E}$$$$V2.0',
258
+ 'PEPTIDE1{N.Q.S.T.C.M}$$$$V2.0',
259
+ 'PEPTIDE1{A.V.L.I.P.F}$$$$V2.0',
260
+ 'PEPTIDE1{W.Y.G.A.R}$$$$V2.0',
261
+ 'PEPTIDE1{K.H.D.E.N.Q}$$$$V2.0',
262
+ 'PEPTIDE1{S.T.C.M.F.W}$$$$V2.0',
263
+ 'PEPTIDE1{Y.A.G.V.L.I}$$$$V2.0',
264
+ 'PEPTIDE1{P.K.R.H.D}$$$$V2.0',
265
+ 'PEPTIDE1{E.N.Q.S.T.C}$$$$V2.0',
266
+ 'PEPTIDE1{M.F.W.Y.A.G}$$$$V2.0',
267
+ 'PEPTIDE1{V.L.I.P.K.R}$$$$V2.0',
268
+ 'PEPTIDE1{H.D.E.N.Q.S}$$$$V2.0',
269
+ ];
270
+ const extendedSequences = [];
271
+ for (let i = 0; i < peptideCount; i++)
272
+ extendedSequences.push(sequences[i % sequences.length]);
273
+
274
+
275
+ const col = DG.Column.fromStrings('Helm', extendedSequences);
276
+ col.semType = DG.SEMTYPE.MACROMOLECULE;
277
+ col.setTag('units', 'helm');
278
+ col.setTag('.alphabetIsMultichar', 'true');
279
+ const df = DG.DataFrame.fromColumns([col]);
280
+ df.name = 'Demo Peptide Sequences';
281
+ return df;
282
+ }
283
+
284
+
220
285
  @grok.decorators.func({
221
286
  name: 'Demo File Submit',
222
287
  meta: {role: 'hitTriageSubmitFunction'},
@@ -285,6 +350,7 @@ export class PackageFunctions {
285
350
  @grok.decorators.func({
286
351
  name: 'Hit Triage package settings editor',
287
352
  meta: {role: 'packageSettingsEditor'},
353
+ tags: ['packageSettingsEditor'],
288
354
  })
289
355
  static async htPackageSettingEditor(
290
356
  @grok.decorators.param({'name': 'propList', 'type': 'object'}) properties: DG.Property[]) : Promise<DG.Widget> {