@datagrok/bio 2.25.9 → 2.25.10

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 (97) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/CLAUDE.md +380 -0
  3. package/detectors.js +9 -1
  4. package/dist/111.js +1 -1
  5. package/dist/111.js.map +1 -1
  6. package/dist/234.js +1 -1
  7. package/dist/234.js.map +1 -1
  8. package/dist/242.js +1 -1
  9. package/dist/242.js.map +1 -1
  10. package/dist/284.js +1 -1
  11. package/dist/284.js.map +1 -1
  12. package/dist/455.js +1 -1
  13. package/dist/455.js.map +1 -1
  14. package/dist/589.js +1 -1
  15. package/dist/589.js.map +1 -1
  16. package/dist/603.js +1 -1
  17. package/dist/603.js.map +1 -1
  18. package/dist/682.js +1 -1
  19. package/dist/682.js.map +1 -1
  20. package/dist/705.js +1 -1
  21. package/dist/705.js.map +1 -1
  22. package/dist/731.js +1 -1
  23. package/dist/731.js.map +1 -1
  24. package/dist/778.js +1 -1
  25. package/dist/778.js.map +1 -1
  26. package/dist/793.js +1 -1
  27. package/dist/793.js.map +1 -1
  28. package/dist/810.js +1 -1
  29. package/dist/810.js.map +1 -1
  30. package/dist/950.js +1 -1
  31. package/dist/950.js.map +1 -1
  32. package/dist/980.js +1 -1
  33. package/dist/980.js.map +1 -1
  34. package/dist/package-test.js +5 -5
  35. package/dist/package-test.js.map +1 -1
  36. package/dist/package.js +3 -3
  37. package/dist/package.js.map +1 -1
  38. package/package.json +11 -4
  39. package/scripts/read-tree-pkl.py +1 -1
  40. package/src/demo/bio03-atomic-level.ts +1 -1
  41. package/src/package-test.ts +4 -2
  42. package/src/package.g.ts +49 -13
  43. package/src/package.ts +63 -36
  44. package/src/substructure-search/substructure-search.ts +1 -1
  45. package/src/tests/Palettes-test.ts +1 -1
  46. package/src/tests/WebLogo-layout-tests.ts +1 -1
  47. package/src/tests/WebLogo-positions-test.ts +1 -1
  48. package/src/tests/WebLogo-project-tests.ts +1 -1
  49. package/src/tests/_first-tests.ts +1 -1
  50. package/src/tests/activity-cliffs-tests.ts +1 -1
  51. package/src/tests/activity-cliffs-utils.ts +1 -1
  52. package/src/tests/biln-tests.ts +1 -1
  53. package/src/tests/bio-tests.ts +1 -1
  54. package/src/tests/checkInputColumn-tests.ts +1 -1
  55. package/src/tests/converters-test.ts +1 -1
  56. package/src/tests/detectors-benchmark-tests.ts +1 -1
  57. package/src/tests/detectors-tests.ts +1 -1
  58. package/src/tests/detectors-weak-and-likely-tests.ts +1 -1
  59. package/src/tests/fasta-export-tests.ts +1 -1
  60. package/src/tests/fasta-handler-test.ts +1 -1
  61. package/src/tests/helm-tests.ts +1 -1
  62. package/src/tests/lib-tests.ts +1 -1
  63. package/src/tests/mm-distance-tests.ts +1 -1
  64. package/src/tests/monomer-libraries-tests.ts +1 -1
  65. package/src/tests/msa-tests.ts +1 -1
  66. package/src/tests/pepsea-tests.ts +1 -1
  67. package/src/tests/renderers-monomer-placer-tests.ts +1 -1
  68. package/src/tests/renderers-test.ts +1 -1
  69. package/src/tests/scoring.ts +1 -1
  70. package/src/tests/seq-handler-get-helm-tests.ts +1 -1
  71. package/src/tests/seq-handler-get-region-tests.ts +1 -1
  72. package/src/tests/seq-handler-splitted-tests.ts +1 -1
  73. package/src/tests/seq-handler-tests.ts +1 -1
  74. package/src/tests/sequence-space-test.ts +1 -1
  75. package/src/tests/sequence-space-utils.ts +1 -1
  76. package/src/tests/similarity-diversity-tests.ts +1 -1
  77. package/src/tests/splitters-test.ts +1 -1
  78. package/src/tests/substructure-filters-tests.ts +1 -1
  79. package/src/tests/to-atomic-level-tests.ts +1 -1
  80. package/src/tests/to-atomic-level-ui-tests.ts +1 -1
  81. package/src/tests/utils/detectors-utils.ts +1 -1
  82. package/src/tests/utils/sequences-generators.ts +1 -1
  83. package/src/tests/utils.ts +1 -1
  84. package/src/tests/viewers.ts +1 -1
  85. package/src/utils/detect-macromolecule-probe.ts +1 -1
  86. package/src/utils/monomer-lib/lib-manager.ts +2 -2
  87. package/src/utils/monomer-lib/monomer-lib-base.ts +7 -3
  88. package/src/utils/multiple-sequence-alignment-ui.ts +1 -1
  89. package/src/utils/seq-helper/seq-handler.ts +22 -10
  90. package/src/utils/split-to-monomers.ts +1 -1
  91. package/src/viewers/vd-regions-viewer.ts +1 -1
  92. package/src/viewers/web-logo-viewer.ts +1 -1
  93. package/src/widgets/bio-substructure-filter-helm.ts +1 -1
  94. package/src/widgets/bio-substructure-filter.ts +1 -1
  95. package/src/widgets/to-atomic-level-widget.ts +1 -7
  96. package/test-console-output-1.log +1279 -3049
  97. package/test-record-1.mp4 +0 -0
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "name": "Davit Rizhinashvili",
6
6
  "email": "drizhinashvili@datagrok.ai"
7
7
  },
8
- "version": "2.25.9",
8
+ "version": "2.25.10",
9
9
  "description": "Bioinformatics support (import/export of sequences, conversion, visualization, analysis). [See more](https://github.com/datagrok-ai/public/blob/master/packages/Bio/README.md) for details.",
10
10
  "repository": {
11
11
  "type": "git",
@@ -48,6 +48,7 @@
48
48
  "@datagrok-libraries/chem-meta": "^1.2.9",
49
49
  "@datagrok-libraries/math": "^1.2.6",
50
50
  "@datagrok-libraries/ml": "^6.10.7",
51
+ "@datagrok-libraries/test": "^1.1.0",
51
52
  "@datagrok-libraries/tutorials": "^1.7.4",
52
53
  "@datagrok-libraries/utils": "^4.6.9",
53
54
  "@webgpu/types": "^0.1.40",
@@ -55,7 +56,7 @@
55
56
  "ajv-errors": "^3.0.0",
56
57
  "cash-dom": "^8.0.0",
57
58
  "css-loader": "^6.7.3",
58
- "datagrok-api": "^1.25.2",
59
+ "datagrok-api": "^1.26.3",
59
60
  "dayjs": "^1.11.4",
60
61
  "fastest-levenshtein": "^1.0.16",
61
62
  "openchemlib": "^7.2.3",
@@ -69,18 +70,21 @@
69
70
  "@datagrok-libraries/js-draw-lite": "^0.0.10",
70
71
  "@datagrok/chem": "^1.15.0",
71
72
  "@datagrok/dendrogram": "^1.2.33",
73
+ "@datagrok/eda": "^1.4.13",
74
+ "@datagrok/helm": "^2.13.1",
75
+ "@datagrok/peptides": "^1.27.4",
72
76
  "@types/node": "^17.0.24",
73
77
  "@types/wu": "^2.1.44",
74
78
  "@typescript-eslint/eslint-plugin": "^8.8.1",
75
79
  "@typescript-eslint/parser": "^8.8.1",
76
- "datagrok-tools": "^4.14.57",
80
+ "datagrok-tools": "^5.1.5",
77
81
  "eslint": "^8.57.1",
78
82
  "eslint-config-google": "^0.14.0",
79
83
  "eslint-plugin-rxjs": "^5.0.3",
80
84
  "source-map-loader": "^5.0.0",
81
85
  "ts-loader": "^9.5.1",
82
86
  "typescript": "^5.5.3",
83
- "webpack": "^5.92.1",
87
+ "webpack": "^5.105.2",
84
88
  "webpack-bundle-analyzer": "^4.10.2",
85
89
  "webpack-cli": "^5.1.4"
86
90
  },
@@ -158,5 +162,8 @@
158
162
  }
159
163
  }
160
164
  }
165
+ },
166
+ "overrides": {
167
+ "datagrok-api": "$datagrok-api"
161
168
  }
162
169
  }
@@ -1,4 +1,4 @@
1
- # coding: utf-8
1
+ # This script uses UTF-8 encoding
2
2
 
3
3
  import ete3
4
4
  import numpy as np
@@ -4,7 +4,7 @@ import * as DG from 'datagrok-api/dg';
4
4
  import {_package, PackageFunctions} from '../package';
5
5
  import {handleError} from './utils';
6
6
  import {DemoScript} from '@datagrok-libraries/tutorials/src/demo-script';
7
- import {delay} from '@datagrok-libraries/utils/src/test';
7
+ import {delay} from '@datagrok-libraries/test/src/test';
8
8
  import {adjustGridcolAfterRender} from '../utils/ui-utils';
9
9
 
10
10
  export async function demoToAtomicLevel(): Promise<void> {
@@ -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 {runTests, TestContext, tests, initAutoTests as initTests} from '@datagrok-libraries/utils/src/test';
5
+ import {runTests, TestContext, tests, initAutoTests as initTests} from '@datagrok-libraries/test/src/test';
6
6
 
7
7
  import './tests/_first-tests';
8
8
  import './tests/Palettes-test';
@@ -49,7 +49,9 @@ export {tests};
49
49
  //input: object testContext {optional: true}
50
50
  //input: bool stressTest {optional: true}
51
51
  //output: dataframe result
52
- export async function test(category: string, test: string, testContext: TestContext, stressTest?: boolean): Promise<DG.DataFrame> {
52
+ export async function test(
53
+ category: string, test: string, testContext: TestContext, stressTest?: boolean
54
+ ): Promise<DG.DataFrame> {
53
55
  const data = await runTests({category, test, testContext, stressTest});
54
56
  return DG.DataFrame.fromObjects(data)!;
55
57
  }
package/src/package.g.ts CHANGED
@@ -8,6 +8,7 @@ export async function getMonomerLibHelper() : Promise<any> {
8
8
  }
9
9
 
10
10
  //tags: init
11
+ //meta.role: init
11
12
  export async function initBio() : Promise<void> {
12
13
  await PackageFunctions.initBio();
13
14
  }
@@ -15,6 +16,7 @@ export async function initBio() : Promise<void> {
15
16
  //tags: tooltip
16
17
  //input: column col { semType: Macromolecule }
17
18
  //output: widget result
19
+ //meta.role: tooltip
18
20
  export function sequenceTooltip(col: DG.Column) : any {
19
21
  return PackageFunctions.sequenceTooltip(col);
20
22
  }
@@ -50,38 +52,45 @@ export function getSeqHandler(sequence: DG.Column<any>) : any {
50
52
  //tags: panel
51
53
  //input: column seqCol { semType: Macromolecule }
52
54
  //output: widget result
55
+ //meta.role: panel
53
56
  export function getRegionPanel(seqCol: DG.Column<any>) : any {
54
57
  return PackageFunctions.getRegionPanel(seqCol);
55
58
  }
56
59
 
57
60
  //name: Bioinformatics | Manage Monomer Libraries
58
- //tags: panel, exclude-actions-panel
61
+ //tags: exclude-actions-panel
59
62
  //input: column seqColumn { semType: Macromolecule }
60
63
  //output: widget result
64
+ //meta.exclude-actions-panel: true
65
+ //meta.role: panel
61
66
  export async function libraryPanel(_seqColumn: DG.Column) : Promise<any> {
62
67
  return await PackageFunctions.libraryPanel(_seqColumn);
63
68
  }
64
69
 
65
70
  //tags: editor
66
71
  //input: funccall call
72
+ //meta.role: editor
67
73
  export function GetRegionEditor(call: DG.FuncCall) : void {
68
74
  PackageFunctions.GetRegionEditor(call);
69
75
  }
70
76
 
71
77
  //tags: editor
72
78
  //input: funccall call
79
+ //meta.role: editor
73
80
  export function SplitToMonomersEditor(call: DG.FuncCall) : void {
74
81
  PackageFunctions.SplitToMonomersEditor(call);
75
82
  }
76
83
 
77
84
  //tags: editor
78
85
  //input: funccall call
86
+ //meta.role: editor
79
87
  export function SequenceSpaceEditor(call: DG.FuncCall) : void {
80
88
  PackageFunctions.SequenceSpaceEditor(call);
81
89
  }
82
90
 
83
91
  //tags: editor
84
92
  //input: funccall call
93
+ //meta.role: editor
85
94
  export function SeqActivityCliffsEditor(call: DG.FuncCall) : void {
86
95
  PackageFunctions.SeqActivityCliffsEditor(call);
87
96
  }
@@ -90,6 +99,7 @@ export function SeqActivityCliffsEditor(call: DG.FuncCall) : void {
90
99
  //output: grid_cell_renderer result
91
100
  //meta.cellType: sequence
92
101
  //meta.columnTags: quality=Macromolecule, units=custom
102
+ //meta.role: cellRenderer
93
103
  export function customSequenceCellRenderer() : any {
94
104
  return PackageFunctions.customSequenceCellRenderer();
95
105
  }
@@ -98,6 +108,7 @@ export function customSequenceCellRenderer() : any {
98
108
  //output: grid_cell_renderer result
99
109
  //meta.cellType: sequence
100
110
  //meta.columnTags: quality=Macromolecule, units=fasta
111
+ //meta.role: cellRenderer
101
112
  export function fastaSequenceCellRenderer() : any {
102
113
  return PackageFunctions.fastaSequenceCellRenderer();
103
114
  }
@@ -106,6 +117,7 @@ export function fastaSequenceCellRenderer() : any {
106
117
  //output: grid_cell_renderer result
107
118
  //meta.cellType: sequence
108
119
  //meta.columnTags: quality=Macromolecule, units=separator
120
+ //meta.role: cellRenderer
109
121
  export function separatorSequenceCellRenderer() : any {
110
122
  return PackageFunctions.separatorSequenceCellRenderer();
111
123
  }
@@ -114,6 +126,7 @@ export function separatorSequenceCellRenderer() : any {
114
126
  //output: grid_cell_renderer result
115
127
  //meta.cellType: sequence
116
128
  //meta.columnTags: quality=Macromolecule, units=biln
129
+ //meta.role: cellRenderer
117
130
  export function bilnSequenceCellRenderer() : any {
118
131
  return PackageFunctions.bilnSequenceCellRenderer();
119
132
  }
@@ -123,6 +136,7 @@ export function bilnSequenceCellRenderer() : any {
123
136
  //input: object stats
124
137
  //input: string separator { nullable: true; optional: true }
125
138
  //output: bool result
139
+ //meta.role: notationRefiner
126
140
  export function refineNotationProviderForBiln(col: DG.Column<any>, stats: any, separator: any) : boolean {
127
141
  return PackageFunctions.refineNotationProviderForBiln(col, stats, separator);
128
142
  }
@@ -131,14 +145,17 @@ export function refineNotationProviderForBiln(col: DG.Column<any>, stats: any, s
131
145
  //tags: panel
132
146
  //input: column molColumn { semType: Macromolecule }
133
147
  //output: widget result
148
+ //meta.role: panel
134
149
  export function macroMolColumnPropertyPanel(molColumn: DG.Column) : any {
135
150
  return PackageFunctions.macroMolColumnPropertyPanel(molColumn);
136
151
  }
137
152
 
138
153
  //name: Composition analysis
139
- //tags: panel, bio, widgets
154
+ //tags: bio, widgets, panel
140
155
  //input: semantic_value sequence { semType: Macromolecule }
141
156
  //output: widget result
157
+ //meta.role: widgets,panel
158
+ //meta.domain: bio
142
159
  export function compositionAnalysisWidget(sequence: DG.SemanticValue) : any {
143
160
  return PackageFunctions.compositionAnalysisWidget(sequence);
144
161
  }
@@ -148,6 +165,7 @@ export function compositionAnalysisWidget(sequence: DG.SemanticValue) : any {
148
165
  //output: grid_cell_renderer result
149
166
  //meta.cellType: MacromoleculeDifference
150
167
  //meta.columnTags: quality=MacromoleculeDifference
168
+ //meta.role: cellRenderer
151
169
  export function macromoleculeDifferenceCellRenderer() : any {
152
170
  return PackageFunctions.macromoleculeDifferenceCellRenderer();
153
171
  }
@@ -164,18 +182,20 @@ export function sequenceAlignment(alignType: string, alignTable: string, gap: nu
164
182
 
165
183
  //name: WebLogo
166
184
  //description: WebLogo
167
- //tags: panel, viewer
185
+ //tags: viewer, panel
168
186
  //output: viewer result
169
187
  //meta.icon: files/icons/weblogo-viewer.svg
188
+ //meta.role: viewer,panel
170
189
  export function webLogoViewer() {
171
190
  return PackageFunctions.webLogoViewer();
172
191
  }
173
192
 
174
193
  //name: VdRegions
175
194
  //description: V-Domain regions viewer
176
- //tags: panel, viewer
195
+ //tags: viewer
177
196
  //output: viewer result
178
197
  //meta.icon: files/icons/vdregions-viewer.svg
198
+ //meta.role: viewer,panel
179
199
  export function vdRegionsViewer() {
180
200
  return PackageFunctions.vdRegionsViewer();
181
201
  }
@@ -186,7 +206,7 @@ export function vdRegionsViewer() {
186
206
  //input: string end { optional: true }
187
207
  //input: string name { optional: true; description: Name of the column to be created }
188
208
  //output: column result
189
- export function getRegion(sequence: DG.Column<any>, start: any, end: any, name: any) : any {
209
+ export function getRegion(sequence: DG.Column<any>, start?: string, end?: string, name?: string) : any {
190
210
  return PackageFunctions.getRegion(sequence, start, end, name);
191
211
  }
192
212
 
@@ -199,7 +219,7 @@ export function getRegion(sequence: DG.Column<any>, start: any, end: any, name:
199
219
  //input: string name { optional: true; description: Region column name }
200
220
  //top-menu: Bio | Calculate | Get Region...
201
221
  //editor: Bio:GetRegionEditor
202
- export async function getRegionTopMenu(table: DG.DataFrame, sequence: DG.Column, start: any, end: any, name: any) : Promise<void> {
222
+ export async function getRegionTopMenu(table: DG.DataFrame, sequence: DG.Column, start?: string, end?: string, name?: string) : Promise<void> {
203
223
  await PackageFunctions.getRegionTopMenu(table, sequence, start, end, name);
204
224
  }
205
225
 
@@ -231,6 +251,7 @@ export async function activityCliffs(table: DG.DataFrame, molecules: DG.Column<a
231
251
  //meta.supportedSemTypes: Macromolecule
232
252
  //meta.supportedTypes: string
233
253
  //meta.supportedDistanceFunctions: Hamming,Levenshtein,Monomer chemical distance,Needlemann-Wunsch
254
+ //meta.role: dim-red-preprocessing-function
234
255
  export async function macromoleculePreprocessingFunction(col: DG.Column, metric: any, gapOpen: number, gapExtend: number, fingerprintType: string) : Promise<any> {
235
256
  return await PackageFunctions.macromoleculePreprocessingFunction(col, metric, gapOpen, gapExtend, fingerprintType);
236
257
  }
@@ -300,9 +321,11 @@ export async function toAtomicLevelAction(seqCol: DG.Column) : Promise<void> {
300
321
  }
301
322
 
302
323
  //name: Molecular Structure
303
- //tags: panel, bio, widgets
324
+ //tags: bio, widgets, panel
304
325
  //input: semantic_value sequence { semType: Macromolecule }
305
326
  //output: widget result
327
+ //meta.role: widgets,panel
328
+ //meta.domain: bio
306
329
  export async function toAtomicLevelPanel(sequence: DG.SemanticValue) : Promise<any> {
307
330
  return await PackageFunctions.toAtomicLevelPanel(sequence);
308
331
  }
@@ -316,16 +339,20 @@ export async function toAtomicLevelSingleSeq(sequence: string) : Promise<string>
316
339
  }
317
340
 
318
341
  //name: Molecular 3D Structure
319
- //tags: panel, bio, widgets
342
+ //tags: bio, widgets, panel
320
343
  //input: semantic_value sequence { semType: Macromolecule }
321
344
  //output: widget result
345
+ //meta.role: widgets,panel
346
+ //meta.domain: bio
322
347
  export async function sequence3dStructureWidget(sequence: DG.SemanticValue) : Promise<any> {
323
348
  return await PackageFunctions.sequence3dStructureWidget(sequence);
324
349
  }
325
350
 
326
351
  //name: MSA
327
352
  //description: Performs multiple sequence alignment
328
- //tags: panel, bio
353
+ //tags: bio, panel
354
+ //meta.domain: bio
355
+ //meta.role: panel
329
356
  //top-menu: Bio | Analyze | MSA...
330
357
  export function multipleSequenceAlignmentDialog() : void {
331
358
  PackageFunctions.multipleSequenceAlignmentDialog();
@@ -333,11 +360,11 @@ export function multipleSequenceAlignmentDialog() : void {
333
360
 
334
361
  //name: Multiple Sequence Alignment
335
362
  //description: Multiple sequence alignment
336
- //tags: bio
337
363
  //input: column sequenceCol { semType: Macromolecule }
338
364
  //input: column clustersCol
339
365
  //input: object options { optional: true }
340
366
  //output: column result
367
+ //meta.domain: bio
341
368
  export async function alignSequences(sequenceCol: any, clustersCol: any, options?: any) : Promise<any> {
342
369
  return await PackageFunctions.alignSequences(sequenceCol, clustersCol, options);
343
370
  }
@@ -352,18 +379,20 @@ export async function compositionAnalysis() {
352
379
  }
353
380
 
354
381
  //description: Opens FASTA file
355
- //tags: file-handler
382
+ //tags: fileHandler
356
383
  //input: string fileContent
357
384
  //output: list<dataframe> result
385
+ //meta.role: fileHandler
358
386
  //meta.ext: fasta, fna, ffn, faa, frn, fa, fst
359
387
  export function importFasta(fileContent: string) : any {
360
388
  return PackageFunctions.importFasta(fileContent);
361
389
  }
362
390
 
363
391
  //description: Opens Bam file
364
- //tags: file-handler
392
+ //tags: fileHandler
365
393
  //input: string fileContent
366
394
  //output: list<dataframe> result
395
+ //meta.role: fileHandler
367
396
  //meta.ext: bam, bai
368
397
  export function importBam(fileContent: string) : any {
369
398
  return PackageFunctions.importBam(fileContent);
@@ -385,6 +414,7 @@ export function convertColumnAction(col: DG.Column) : void {
385
414
  //output: grid_cell_renderer result
386
415
  //meta.cellType: Monomer
387
416
  //meta.columnTags: quality=Monomer
417
+ //meta.role: cellRenderer
388
418
  export function monomerCellRenderer() : any {
389
419
  return PackageFunctions.monomerCellRenderer();
390
420
  }
@@ -416,6 +446,7 @@ export function getHelmMonomers(sequence: DG.Column<any>) : string[] {
416
446
  //tags: viewer
417
447
  //output: viewer result
418
448
  //meta.icon: files/icons/sequence-similarity-viewer.svg
449
+ //meta.role: viewer
419
450
  export function similaritySearchViewer() : any {
420
451
  return PackageFunctions.similaritySearchViewer();
421
452
  }
@@ -432,6 +463,7 @@ export function similaritySearchTopMenu() {
432
463
  //tags: viewer
433
464
  //output: viewer result
434
465
  //meta.icon: files/icons/sequence-diversity-viewer.svg
466
+ //meta.role: viewer
435
467
  export function diversitySearchViewer() : any {
436
468
  return PackageFunctions.diversitySearchViewer();
437
469
  }
@@ -447,6 +479,7 @@ export function diversitySearchTopMenu() {
447
479
  //name: SearchSubsequenceEditor
448
480
  //tags: editor
449
481
  //input: funccall call
482
+ //meta.role: editor
450
483
  export function searchSubsequenceEditor(call: DG.FuncCall) : void {
451
484
  PackageFunctions.searchSubsequenceEditor(call);
452
485
  }
@@ -502,6 +535,7 @@ export async function manageMonomersView() : Promise<void> {
502
535
  //name: Manage Monomer Libraries
503
536
  //tags: app
504
537
  //output: view result
538
+ //meta.role: app
505
539
  //meta.browsePath: Peptides
506
540
  //meta.icon: files/icons/monomers.png
507
541
  export async function manageMonomerLibrariesView() : Promise<any> {
@@ -511,12 +545,13 @@ export async function manageMonomerLibrariesView() : Promise<any> {
511
545
  //name: Monomer Manager Tree Browser
512
546
  //input: dynamic treeNode
513
547
  //meta.role: appTreeBrowser
548
+ //meta.app: Manage Monomer Libraries
514
549
  export async function manageMonomerLibrariesViewTreeBrowser(treeNode: any) : Promise<void> {
515
550
  await PackageFunctions.manageMonomerLibrariesViewTreeBrowser(treeNode);
516
551
  }
517
552
 
518
553
  //description: As FASTA...
519
- //tags: fileExporter
554
+ //meta.role: fileExporter
520
555
  export function saveAsFasta() : void {
521
556
  PackageFunctions.saveAsFasta();
522
557
  }
@@ -526,6 +561,7 @@ export function saveAsFasta() : void {
526
561
  //tags: filter
527
562
  //output: filter result
528
563
  //meta.semType: Macromolecule
564
+ //meta.role: filter
529
565
  export function bioSubstructureFilter() : any {
530
566
  return PackageFunctions.bioSubstructureFilter();
531
567
  }