@datagrok/bio 2.27.8 → 2.27.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.
- package/CLAUDE.md +77 -12
- package/dist/package-test.js +1 -1
- package/dist/package-test.js.map +1 -1
- package/dist/package.js +3 -3
- package/dist/package.js.map +1 -1
- package/files/demo-files/Antibody_HC.csv +494 -0
- package/files/demo-files/Antibody_HC.layout +516 -0
- package/files/demo-files/Atomic_Level.csv +4030 -0
- package/files/demo-files/SIRNA.csv +66018 -0
- package/files/demo-files/SIRNA.layout +2602 -0
- package/files/demo-files/bio_similarity_diversity.layout +205 -0
- package/package.json +1 -1
- package/projects/bio_demo_activity_cliffs.zip +0 -0
- package/src/demo/bio01-similarity-diversity.ts +10 -0
- package/src/demo/bio01a-hierarchical-clustering-and-sequence-space.ts +0 -1
- package/src/demo/bio01b-hierarchical-clustering-and-activity-cliffs.ts +25 -0
- package/src/demo/bio03-atomic-level.ts +0 -14
- package/src/demo/feature_demos.ts +108 -0
- package/src/package-api.ts +14 -0
- package/src/package.g.ts +16 -0
- package/src/package.ts +28 -8
- package/src/tests/to-atomic-level-tests.ts +494 -200
- package/test-console-output-1.log +525 -596
- package/test-record-1.mp4 +0 -0
package/CLAUDE.md
CHANGED
|
@@ -46,17 +46,18 @@ Other packages depend on these implementations: **Helm**, **Peptides**, **Biostr
|
|
|
46
46
|
| `Bio \| Analyze \| Activity Cliffs...` | `activityCliffs` | Detects sequence pairs with similar structure but significant activity difference |
|
|
47
47
|
| `Bio \| Analyze \| Sequence Space...` | `sequenceSpaceTopMenu` | UMAP/tSNE 2D projection of sequences by pairwise distance |
|
|
48
48
|
| `Bio \| Analyze \| MSA...` | `multipleSequenceAlignmentDialog` | Multiple sequence alignment via kalign (WASM) for canonical sequences, or dynamically discovered engines (e.g. PepSeA Docker) for non-canonical |
|
|
49
|
+
| `Bio \| Analyze \| Compare sequences...` | `compareSequencesTopMenu` | Pairs two macromolecule columns and produces an alignment-difference column |
|
|
49
50
|
| `Bio \| Analyze \| Composition` | `compositionAnalysis` | Docks a WebLogo viewer for sequence composition |
|
|
50
51
|
| `Bio \| Transform \| Convert Sequence Notation...` | `convertDialog` | FASTA ↔ SEPARATOR ↔ HELM ↔ BILN conversion |
|
|
51
52
|
| `Bio \| Transform \| To Atomic Level...` | `toAtomicLevel` | Converts sequences to V3000 molfiles |
|
|
52
53
|
| `Bio \| Transform \| Split to Monomers...` | `splitToMonomersTopMenu` | Splits aligned sequences into per-position columns |
|
|
53
54
|
| `Bio \| Transform \| Molecules to HELM...` | `moleculesToHelmTopMenu` | Converts peptide molecules to HELM via Python script |
|
|
54
|
-
| `Bio \| Calculate \|
|
|
55
|
+
| `Bio \| Calculate \| Extract Region...` | `getRegionTopMenu` | Extracts sub-region from macromolecule column |
|
|
55
56
|
| `Bio \| Calculate \| Identity...` | `sequenceIdentityScoring` | Fraction of matching monomers vs reference |
|
|
56
57
|
| `Bio \| Calculate \| Similarity...` | `sequenceSimilarityScoring` | Sum of monomer fingerprint similarities vs reference |
|
|
57
58
|
| `Bio \| Search \| Similarity Search` | `similaritySearchTopMenu` | K-nearest neighbor sequence search |
|
|
58
59
|
| `Bio \| Search \| Diversity Search` | `diversitySearchTopMenu` | Maximally diverse subset selection |
|
|
59
|
-
| `Bio \| Search \| Subsequence Search...` | `SubsequenceSearchTopMenu` | Substructure filter (regex or RDKit) |
|
|
60
|
+
| `Bio \| Search \| Subsequence Search ...` | `SubsequenceSearchTopMenu` | Substructure filter (regex or RDKit) |
|
|
60
61
|
| `Bio \| Manage \| Monomer Libraries` | `manageLibrariesView` | Full monomer library management UI |
|
|
61
62
|
| `Bio \| Manage \| Monomers` | `manageMonomersView` | Individual monomer CRUD editor |
|
|
62
63
|
| `Bio \| Manage \| Match with Monomer Library...` | `matchWithMonomerLibrary` | Matches molecules to library monomers |
|
|
@@ -88,6 +89,21 @@ Other packages depend on these implementations: **Helm**, **Peptides**, **Biostr
|
|
|
88
89
|
- `importFasta` — opens `.fasta`, `.fna`, `.fa`, etc. files
|
|
89
90
|
- `importBam` — stub for BAM files
|
|
90
91
|
|
|
92
|
+
**Property Panels (additional, undocumented above):**
|
|
93
|
+
- `Monomer` info panel — `getMonomerInfoWidget()` from `src/widgets/monomer-info-widget.ts` (renders monomer details for `Monomer` semtype cells)
|
|
94
|
+
- `Bioinformatics | Manage Monomer Libraries` — link/widget pair surfaced as a column-level panel and as `Manage Monomer Libraries` (panel) for in-place library management
|
|
95
|
+
|
|
96
|
+
**Apps & extra registrations:**
|
|
97
|
+
- `Monomer Manager Tree Browser` — tree-grouped monomer browser app
|
|
98
|
+
- `Monomer Collections` — application for managing curated monomer-set collections (backed by `src/utils/monomer-lib/monomer-collections-view.ts` + `monomer-collection-handler.ts`)
|
|
99
|
+
- `Molecule to HELM Single` — single-molecule peptide → HELM converter (single-row companion to `Molecules to HELM...`)
|
|
100
|
+
- `SDF to JSON Library` — converts an SDF table into a HELM JSON monomer library
|
|
101
|
+
- `seqIdentity` — column-vs-reference identity score function
|
|
102
|
+
|
|
103
|
+
**Transforms (DG.Func internal API for analysis pipelines):**
|
|
104
|
+
- `seqActivityCliffsTransform`, `seqActivityCliffsInitFunction` — replay-friendly wrappers around Activity Cliffs
|
|
105
|
+
- `sequenceSpaceTransform` — replay wrapper around Sequence Space
|
|
106
|
+
|
|
91
107
|
**Other:**
|
|
92
108
|
- `bioSubstructureFilter` — macromolecule substructure filter
|
|
93
109
|
- `saveAsFasta` — file exporter (As FASTA...)
|
|
@@ -152,6 +168,7 @@ Key methods: `detectSeparator()`, `detectAlphabet()`, `getAlphabetSimilarity()`,
|
|
|
152
168
|
| `representations.ts` | `getMacromoleculeColumnPropertyPanel()` — UI for renderer settings: font size, max monomer length, gap length, color coding scheme, reference sequence, multiline mode |
|
|
153
169
|
| `to-atomic-level-widget.ts` | `toAtomicLevelSingle()` (seq→molfile), `toAtomicLevelWidget()` (2D molecule drawing), `molecular3DStructureWidget()` (3D NGL viewer) |
|
|
154
170
|
| `sequence-scrolling-widget.ts` | `handleSequenceHeaderRendering()` — MSA column header with WebLogo + conservation tracks, viewport-aware lazy caching (50-position chunks), click to dock position statistics viewer |
|
|
171
|
+
| `monomer-info-widget.ts` | `getMonomerInfoWidget()` — info-panel widget for `Monomer` semtype cells; renders the monomer card with structure, library origin and R-group info |
|
|
155
172
|
| `package-settings-editor-widget.ts` | `PackageSettingsEditorWidget` — Bio package global settings form |
|
|
156
173
|
|
|
157
174
|
### Utilities (`src/utils/`)
|
|
@@ -165,13 +182,18 @@ Key methods: `detectSeparator()`, `detectAlphabet()`, `getAlphabetSimilarity()`,
|
|
|
165
182
|
| `monomer-cell-renderer-base.ts` | `MonomerCellRendererBase` — abstract base that async-loads monomer library, invalidates grid on lib change |
|
|
166
183
|
| `convert.ts` | `convert()` — dialog for notation conversion (FASTA ↔ SEPARATOR ↔ HELM ↔ BILN). `convertDo()` performs actual conversion via `ISeqHandler`. |
|
|
167
184
|
| `get-region.ts` | `getRegionDo()` — extracts positional sub-region from macromolecule column via `ISeqHandler.getRegion()` |
|
|
168
|
-
| `
|
|
185
|
+
| `get-region-func-editor.ts` | Custom function-editor UI for the `getRegion` DG function (allows interactive position-range selection) |
|
|
186
|
+
| `split-to-monomers.ts` | `splitToMonomersUI()` — splits aligned sequences into per-position `Monomer` columns using `splitAlignedSequences` |
|
|
169
187
|
| `sequence-to-mol.ts` | `sequenceToMolfile()` — converts macromolecule column to atomic-level molfile column (linear via `_toAtomicLevel`, nonlinear via HELM converter) |
|
|
170
188
|
| `calculate-scores.ts` | `calculateScoresWithEmptyValues()` — wraps `calculateIdentityScoring`/`calculateChemSimilarityScoring` from bio lib, handles empty values |
|
|
171
189
|
| `save-as-fasta.ts` | `saveAsFastaUI()` — dialog + download for FASTA export. `buildFasta()` builds the string. |
|
|
172
190
|
| `biln.ts` | `BilnNotationProvider` — notation provider for BILN sequences with splitter, HELM converter, cell renderer back-end |
|
|
191
|
+
| `compare-sequences.ts` | Backs `Bio | Analyze | Compare sequences...` — pairs two macromolecule columns (column picker + reference column), produces an alignment-difference column rendered with `MacromoleculeDifferenceCellRenderer` |
|
|
173
192
|
| `context-menu.ts` | `addCopyMenuUI()` — adds "Copy as FASTA/SEPARATOR/HELM/BILN" to cell context menu |
|
|
174
193
|
| `check-input-column.ts` | `checkInputColumnUI()` / `checkInputColumn()` — validates column has `Macromolecule` semtype |
|
|
194
|
+
| `detect-macromolecule-probe.ts` | Adjustable detector probe — exposes the macromolecule detector under a tunable threshold for development/testing |
|
|
195
|
+
| `macromolecule-column-widget.ts` | Column-level widget (panel) summarising a macromolecule column (notation, alphabet, monomer histogram, etc.) |
|
|
196
|
+
| `sequence-column-input.ts` | Wraps `createSequenceColumnInput()` from the bio library into a Bio-package-friendly DG input variant |
|
|
175
197
|
| `ui-utils.ts` | `getMacromoleculeColumns()`, `safeReplace()`, `setGridColWidth()` |
|
|
176
198
|
| `types.ts` | Shared types: `DfPair`, `ActivityCliffsData`, `MsaOptions` (kalign/pepsea params), `AARDict` |
|
|
177
199
|
| `constants.ts` | Constants: `SEM_TYPES`, `PEPSEA_VERSION`, `DEFAULT_MSA_PARAMETERS`, amino acid groupings |
|
|
@@ -225,7 +247,20 @@ See `pepseaMsa()` in `package.ts` and `alignWithPepsea()` in `pepsea.ts` for a c
|
|
|
225
247
|
| `utils/antibody-numbering/immunum-glue.js` | Browser/worker-safe port of `node_modules/immunum/immunum.js`. Byte-identical wasm-bindgen glue — only the Node-only `require('fs').readFileSync` top-level loader is replaced with an explicit `initImmunum(bytes)` entry point. |
|
|
226
248
|
| `utils/antibody-numbering/types.ts` | `ImmunumNumberingRow`, `ImmunumWorkerRequest`/`ImmunumWorkerResponse`, `IMMUNUM_SCHEMES`. |
|
|
227
249
|
|
|
228
|
-
|
|
250
|
+
#### Sequence Annotations & Liabilities (`utils/annotations/`)
|
|
251
|
+
|
|
252
|
+
| File | Purpose |
|
|
253
|
+
|---|---|
|
|
254
|
+
| `annotation-manager.ts` | `AnnotationManager` — model layer. Owns the per-column annotation list, persists to/from the column's `.annotations` tag (JSON `SeqAnnotation[]`), exposes add/update/remove + change observable for UI re-renders |
|
|
255
|
+
| `annotation-manager-ui.ts` | `showAnnotationManagerDialog()` — UI for viewing/editing the annotations on a macromolecule column (region, motif, liability entries) |
|
|
256
|
+
| `annotation-actions.ts` | Toolbar/context-menu actions that hook annotation creation off cell selection or position ranges |
|
|
257
|
+
| `liability-scanner.ts` | `scanLiabilitiesOnColumn()` — scans macromolecule sequences for sequence-liability motifs (deamidation, oxidation, glycosylation, etc.); records hits as `SeqAnnotation`s with `LiabilitySeverity` |
|
|
258
|
+
| `liability-scanner-ui.ts` | `showLiabilityScannerDialog()` — backs `Bio | Annotate | Scan Liabilities...`. Picks rule sets and writes results back via `AnnotationManager` |
|
|
259
|
+
| `numbering-ui.ts` | (described above under Antibody Numbering) |
|
|
260
|
+
|
|
261
|
+
Annotations rendered in the grid are drawn by `AnnotationRenderer` (`@datagrok-libraries/bio/src/utils/cell-renderer-annotations.ts`) on top of the standard macromolecule renderer; in the MSA scrolling header they appear via `AnnotationTrack` (`@datagrok-libraries/bio/src/utils/annotation-track.ts`).
|
|
262
|
+
|
|
263
|
+
**Expected output shape (per antpack/AntPack convention, see `utils/antibody-numbering/number-antibody.ts`):**
|
|
229
264
|
|
|
230
265
|
A `DG.DataFrame` with 5 string columns, one row per input sequence:
|
|
231
266
|
|
|
@@ -254,13 +289,24 @@ Reference implementation: `immunumAntibodyNumbering()` in `package.ts` and `numb
|
|
|
254
289
|
|
|
255
290
|
Existing engines:
|
|
256
291
|
- **Bio** — `immunumAntibodyNumbering` (WASM, in-worker, IMGT/Kabat only — advertised via the `scheme` param's `choices`)
|
|
257
|
-
- **
|
|
292
|
+
- **AntPack reference** — historical Python reference for the expected DataFrame shape (5 columns: `position_names`, `chain_type`, `annotations_json`, `numbering_detail`, `numbering_map`). Not currently shipped in `scripts/`; the same shape is asserted by `utils/antibody-numbering/number-antibody.ts` and the `antibody-numbering-tests.ts` test suite
|
|
293
|
+
|
|
294
|
+
#### Annotations — `src/utils/annotations/`
|
|
295
|
+
|
|
296
|
+
| File | Purpose |
|
|
297
|
+
|---|---|
|
|
298
|
+
| `numbering-ui.ts` | `showNumberingSchemeDialog()` — generic dialog that discovers `meta.role: 'antibodyNumbering'` engines, populates the scheme dropdown from the chosen engine's `scheme` param `choices`, runs the engine, and applies its result (annotations + aligned column). See "Adding a New Antibody Numbering Engine" |
|
|
299
|
+
| `annotation-manager.ts` | `AnnotationManager` — owns the per-column `RowAnnotationData[]`, persists to a column tag, fires events when annotations change. Backbone for the `manageAnnotations` UI |
|
|
300
|
+
| `annotation-manager-ui.ts` | UI for `Bio | Annotate | Manage Annotations...` — table + buttons for creating / editing / removing per-row annotations |
|
|
301
|
+
| `annotation-actions.ts` | Annotation actions registry — bulk operations (clear, copy from another column, etc.) and the right-click action set wired into the cell renderer |
|
|
302
|
+
| `liability-scanner.ts` | Liability rules engine — scans macromolecule sequences for chemistry liabilities (deamidation `NG`, oxidation `M`, …) and emits `SeqAnnotationHit[]` keyed by `LiabilitySeverity` |
|
|
303
|
+
| `liability-scanner-ui.ts` | `Bio | Annotate | Scan Liabilities...` dialog — selects target column, runs the scanner, writes results into the `AnnotationManager` |
|
|
258
304
|
|
|
259
305
|
#### Seq Helper — `src/utils/seq-helper/`
|
|
260
306
|
|
|
261
307
|
| File | Purpose |
|
|
262
308
|
|---|---|
|
|
263
|
-
| `seq-helper.ts` | `SeqHelper` (implements `ISeqHelper`) — central facade for sequence operations: `getSeqHandler()`, `getSeqMonomers()`, `
|
|
309
|
+
| `seq-helper.ts` | `SeqHelper` (implements `ISeqHelper`) — central facade for sequence operations: `helmToAtomicLevel()` / `helmToAtomicLevelSingle()` (HELM column / single-row → V3K molfile), `getSeqHandler()`, `getSeqMonomers()`, `setUnitsToFastaColumn()` / `setUnitsToSeparatorColumn()` / `setUnitsToHelmColumn()`, `getHelmToMolfileConverter()` |
|
|
264
310
|
| `seq-handler.ts` | `SeqHandler` (implements `ISeqHandler`) — per-column handler for splitting, notation conversion (FASTA/SEP/HELM/BILN), region extraction, stats, alphabet detection. Contains joiner functions. |
|
|
265
311
|
| `index.ts` | Barrel re-export of `SeqHelper` |
|
|
266
312
|
|
|
@@ -272,6 +318,8 @@ Existing engines:
|
|
|
272
318
|
| `monomer-lib.ts` | `MonomerLib` (extends `MonomerLibBase`, implements `IMonomerLib`) — merged library from multiple sources. Handles duplicate tracking, user duplicate preferences, summary stats. |
|
|
273
319
|
| `monomer-lib-base.ts` | `MonomerLibBase` — base implementation: monomer lookup, symbol listing, missing monomer creation, R-group extraction from SMILES, tooltip rendering, color computation with contrast logic |
|
|
274
320
|
| `monomer-colors.ts` | Static color mappings for natural monomers (nucleotide chromatogram palette, amino acid GrokGroups palette) |
|
|
321
|
+
| `monomer-collection-handler.ts` | Backs the `Monomer Collections` app — manages curated subsets of monomers (collection CRUD, persistence to AppData) |
|
|
322
|
+
| `monomer-collections-view.ts` | View for browsing / editing monomer collections; loads from `files/monomer-collections/` JSON files |
|
|
275
323
|
| `consts.ts` | Test constants: `LIB_SETTINGS_FOR_TESTS`, `LIB_MONOMER_COUNTS` |
|
|
276
324
|
| `smiles2Monomer.ts` | `smiles2Monomer()` — converts inline SMILES (CX-SMILES with R-group labels) to `Monomer` objects with auto-derived R-groups |
|
|
277
325
|
| `web-editor-monomer-dummy.ts` | Placeholder `WebEditorMonomer` implementations (inline SMILES, gap, ambiguous, missing, broken) |
|
|
@@ -282,16 +330,18 @@ Existing engines:
|
|
|
282
330
|
| File | Purpose |
|
|
283
331
|
|---|---|
|
|
284
332
|
| `ui.ts` | UI for library management: `showManageLibrariesDialog()` (checkbox per library with edit/delete), `showManageLibrariesView()` (full view with duplicate manager), `getMonomerLibraryManagerLink()` (panel widget) |
|
|
285
|
-
| `
|
|
286
|
-
| `validator` | AJV-based JSON schema validation for monomer library files |
|
|
333
|
+
| `monomers-lib-provider.ts` | `MonomerLibFromFilesProvider` — reads/writes monomer library JSON files from `System:AppData/Bio/` file shares. CRUD operations, HELM JSON schema validation |
|
|
334
|
+
| `file-validator.ts` | AJV-based JSON schema validation for monomer library files |
|
|
335
|
+
| `style.css` | Library manager styles |
|
|
287
336
|
|
|
288
337
|
##### Monomer Manager — `src/utils/monomer-lib/monomer-manager/`
|
|
289
338
|
|
|
290
339
|
| File | Purpose |
|
|
291
340
|
|---|---|
|
|
292
|
-
| `monomer-manager.ts` | `MonomerManager` — full CRUD UI for monomers within a library. Grid view with context menus, create/edit dialog with SMILES↔molfile standardization
|
|
293
|
-
| `duplicate-manager.ts` | `
|
|
294
|
-
| `
|
|
341
|
+
| `monomer-manager.ts` | `MonomerManager` — full CRUD UI for monomers within a library. Grid view with context menus, create/edit dialog with SMILES↔molfile standardization, `standardizeMonomerLibrary()` library JSON normaliser |
|
|
342
|
+
| `duplicate-monomer-manager.ts` | `DuplicateMonomerManager` — UI for resolving duplicate monomer conflicts across libraries. Monomer cards grouped by symbol, user picks preferred source |
|
|
343
|
+
| `match-molecules.ts` | `matchMoleculesWithMonomers()` — matches molecules in a column against monomers from the selected libraries by canonical SMILES (used by `Bio | Manage | Match with Monomer Library...`) |
|
|
344
|
+
| `const.ts` | Constants used by the monomer manager UI (column-name conventions, default R-group definitions) |
|
|
295
345
|
|
|
296
346
|
#### HELM to Molfile — `src/utils/helm-to-molfile/`
|
|
297
347
|
|
|
@@ -374,6 +424,11 @@ Test entry point: `src/package-test.ts` — imports all test files, exports `tes
|
|
|
374
424
|
| `biln-tests.ts` | BILN notation |
|
|
375
425
|
| `mm-distance-tests.ts` | Macromolecule distance functions |
|
|
376
426
|
| `checkInputColumn-tests.ts` | Input validation |
|
|
427
|
+
| `projects-tests.ts` | DG project save/restore round-trip for macromolecule columns |
|
|
428
|
+
| `activity-cliffs-utils.ts` | Shared helpers used by `activity-cliffs-tests.ts` (no `test()` blocks) |
|
|
429
|
+
| `sequence-space-utils.ts` | Shared helpers used by `sequence-space-test.ts` |
|
|
430
|
+
| `types.ts`, `utils.ts` | Test-suite shared types and helpers (fixture loading, dataframe builders, expectation utilities) |
|
|
431
|
+
| `utils/detectors-utils.ts`, `utils/sequences-generators.ts`, `utils/test-logger.ts` | Detector probe + synthetic-sequence generators + structured test logging |
|
|
377
432
|
|
|
378
433
|
## Initialization Flow
|
|
379
434
|
|
|
@@ -400,10 +455,12 @@ Test entry point: `src/package-test.ts` — imports all test files, exports `tes
|
|
|
400
455
|
|
|
401
456
|
- `files/monomer-libraries/` — HELM monomer library JSON files (HELMCoreLibrary, polytool-lib, sample-lib)
|
|
402
457
|
- `files/monomer-sets/` — Monomer set definitions (PEPTIDE, RNA)
|
|
458
|
+
- `files/monomer-collections/` — Curated monomer collection JSON files (consumed by `Monomer Collections` app via `monomer-collection-handler.ts`)
|
|
403
459
|
- `files/samples/` — Sample data files for all notation types (FASTA, SEPARATOR, HELM, BILN, MSA)
|
|
404
460
|
- `files/tests/` — Test data files
|
|
405
461
|
- `files/schemas/` — JSON schemas for monomer sets
|
|
406
462
|
- `files/icons/` — Viewer icons
|
|
463
|
+
- `files/cache_config.json` — Per-function cache TTL/size configuration for the package
|
|
407
464
|
|
|
408
465
|
## Quick Lookups
|
|
409
466
|
|
|
@@ -432,7 +489,9 @@ Test entry point: `src/package-test.ts` — imports all test files, exports `tes
|
|
|
432
489
|
| Antibody numbering dialog | `src/utils/annotations/numbering-ui.ts` (`showNumberingSchemeDialog`) |
|
|
433
490
|
| Antibody numbering (immunum WASM in worker) | `src/utils/antibody-numbering/` (`immunum.worker.ts`, `immunum-client.ts`, `number-antibody.ts`, `immunum-glue.js`) |
|
|
434
491
|
| Adding antibody numbering engines | See "Adding a New Antibody Numbering Engine" in Antibody Numbering section |
|
|
492
|
+
| Annotation manager + liability scanner | `src/utils/annotations/` (`annotation-manager.ts`, `annotation-manager-ui.ts`, `liability-scanner.ts`, `liability-scanner-ui.ts`) |
|
|
435
493
|
| Notation conversion | `src/utils/convert.ts` |
|
|
494
|
+
| Compare two macromolecule columns | `src/utils/compare-sequences.ts` |
|
|
436
495
|
| Seq → molfile conversion | `src/utils/sequence-to-mol.ts` |
|
|
437
496
|
| HELM → molfile pipeline | `src/utils/helm-to-molfile/converter/` |
|
|
438
497
|
| FASTA import/export | `src/utils/save-as-fasta.ts` + bio lib `FastaFileHandler` |
|
|
@@ -440,7 +499,13 @@ Test entry point: `src/package-test.ts` — imports all test files, exports `tes
|
|
|
440
499
|
| BILN notation support | `src/utils/biln.ts` |
|
|
441
500
|
| MSA header with WebLogo | `src/widgets/sequence-scrolling-widget.ts` |
|
|
442
501
|
| Atomic level widgets | `src/widgets/to-atomic-level-widget.ts` |
|
|
502
|
+
| Monomer info panel | `src/widgets/monomer-info-widget.ts` |
|
|
503
|
+
| Macromolecule column property panel | `src/utils/macromolecule-column-widget.ts` |
|
|
504
|
+
| Detector probe (tunable) | `src/utils/detect-macromolecule-probe.ts` |
|
|
505
|
+
| Monomer Collections app | `src/utils/monomer-lib/monomer-collections-view.ts` + `monomer-collection-handler.ts` |
|
|
506
|
+
| Library file provider + validator | `src/utils/monomer-lib/library-file-manager/` (`monomers-lib-provider.ts`, `file-validator.ts`, `ui.ts`) |
|
|
507
|
+
| Match molecules → monomers | `src/utils/monomer-lib/monomer-manager/match-molecules.ts` |
|
|
443
508
|
| Demo scripts | `src/demo/` |
|
|
444
509
|
| Test entry point | `src/package-test.ts` |
|
|
445
510
|
| Auto-generated wrappers | `src/package.g.ts` / `src/package-api.ts` |
|
|
446
|
-
| Python scripts | `scripts/`
|
|
511
|
+
| Python/R scripts | `scripts/` — `mol-to-helm.py`, `sequence_generator.py` (+ `sequence_generator.md`), `embed.py`, `read-tree-pkl.py`, `generate_fasta_csv_for_alphabets.R` |
|