@datagrok/bio 2.15.3 → 2.15.6

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 (69) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/detectors.js +9 -2
  3. package/dist/284.js +1 -1
  4. package/dist/284.js.map +1 -1
  5. package/dist/455.js +2 -0
  6. package/dist/455.js.map +1 -0
  7. package/dist/980.js +1 -1
  8. package/dist/980.js.map +1 -1
  9. package/dist/package-test.js +3 -3
  10. package/dist/package-test.js.map +1 -1
  11. package/dist/package.js +2 -2
  12. package/dist/package.js.map +1 -1
  13. package/files/monomer-libraries/polytool-lib.json +52 -0
  14. package/files/tests/to-atomic-level-msa-fasta-output.csv +683 -683
  15. package/files/tests/to-atomic-level-msa-separator-output.csv +104 -104
  16. package/package.json +9 -9
  17. package/src/analysis/sequence-activity-cliffs.ts +3 -1
  18. package/src/calculations/monomerLevelMols.ts +2 -1
  19. package/src/demo/bio03-atomic-level.ts +1 -1
  20. package/src/package-test.ts +2 -1
  21. package/src/package.ts +151 -38
  22. package/src/tests/WebLogo-positions-test.ts +1 -1
  23. package/src/tests/activity-cliffs-tests.ts +2 -3
  24. package/src/tests/bio-tests.ts +1 -1
  25. package/src/tests/detectors-custom-notation-tests.ts +37 -0
  26. package/src/tests/detectors-tests.ts +20 -69
  27. package/src/tests/detectors-weak-and-likely-tests.ts +2 -2
  28. package/src/tests/monomer-libraries-tests.ts +31 -6
  29. package/src/tests/pepsea-tests.ts +1 -1
  30. package/src/tests/renderers-monomer-placer-tests.ts +2 -4
  31. package/src/tests/scoring.ts +2 -3
  32. package/src/tests/seq-handler-get-helm-tests.ts +2 -4
  33. package/src/tests/seq-handler-splitted-tests.ts +6 -2
  34. package/src/tests/splitters-test.ts +6 -6
  35. package/src/tests/substructure-filters-tests.ts +2 -3
  36. package/src/tests/to-atomic-level-tests.ts +22 -17
  37. package/src/tests/to-atomic-level-ui-tests.ts +76 -38
  38. package/src/tests/types.ts +0 -2
  39. package/src/tests/utils/detectors-utils.ts +63 -0
  40. package/src/tests/utils.ts +2 -2
  41. package/src/utils/cell-renderer-custom.ts +62 -0
  42. package/src/utils/cell-renderer.ts +58 -126
  43. package/src/utils/cyclized.ts +28 -14
  44. package/src/utils/dimerized.ts +0 -2
  45. package/src/utils/helm-to-molfile/converter/converter.ts +75 -54
  46. package/src/utils/helm-to-molfile/converter/monomer-wrapper.ts +2 -2
  47. package/src/utils/helm-to-molfile/converter/polymer.ts +23 -16
  48. package/src/utils/helm-to-molfile/converter/types.ts +0 -10
  49. package/src/utils/helm-to-molfile/utils.ts +10 -7
  50. package/src/utils/monomer-lib/consts.ts +18 -0
  51. package/src/utils/monomer-lib/lib-manager.ts +13 -3
  52. package/src/utils/monomer-lib/library-file-manager/file-manager.ts +1 -2
  53. package/src/utils/monomer-lib/monomer-colors.ts +68 -0
  54. package/src/utils/monomer-lib/monomer-lib-base.ts +165 -0
  55. package/src/utils/monomer-lib/monomer-lib.ts +44 -72
  56. package/src/utils/monomer-lib/monomer-manager/monomer-manager.ts +1 -1
  57. package/src/utils/monomer-lib/web-editor-monomer-dummy.ts +121 -0
  58. package/src/utils/monomer-lib/web-editor-monomer-of-library.ts +102 -0
  59. package/src/utils/pepsea.ts +1 -1
  60. package/src/utils/save-as-fasta.ts +1 -1
  61. package/src/utils/seq-helper/seq-helper.ts +20 -49
  62. package/src/utils/sequence-to-mol.ts +24 -28
  63. package/src/viewers/web-logo-viewer.ts +2 -1
  64. package/src/widgets/composition-analysis-widget.ts +4 -3
  65. package/src/widgets/representations.ts +8 -10
  66. package/dist/248.js +0 -2
  67. package/dist/248.js.map +0 -1
  68. package/src/utils/cell-renderer-consts.ts +0 -31
  69. package/src/utils/monomer-lib/library-file-manager/consts.ts +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,45 @@
1
1
  # Bio changelog
2
2
 
3
+ ## 2.15.6 (2024-09-27)
4
+
5
+ ### Bug fixes
6
+
7
+ * Fix detectMacromolecule forbidding monomers '2,...', add test
8
+ * Fix using IMonomerLibHelper.loadMonomerLibForTests
9
+ * Fix cell renderer to reset reference sequence on reset current row
10
+ * GROK-16699: Fix PepSeA container return meaningful error messages, unskip test
11
+ * Fix test data monomers add aG, azG
12
+ * Fix unskip toAtomicLevel tests depending on HelmHelper
13
+ * Fix detectMacromolecule for harmonized sequences, add test
14
+
15
+ ## 2.15.5 (2024-09-25)
16
+
17
+ ### New features
18
+
19
+ * Add custom notation, fix tests
20
+ * Add overriding monomer library for toAtomicLevel
21
+
22
+ ### Bug fixes
23
+
24
+ * Fix skipping tests depending on new Helm
25
+
26
+ ## 2.15.4 (2024-09-24)
27
+
28
+ ### New features
29
+
30
+ * Add monomer hover handling for substruct
31
+ * Add highlight param for toAtomicLevel
32
+ * Add HelmHelper parse and removeGaps methods
33
+ * Add naturalMonomerColors for monomers of MonomerLib
34
+ * Add MonomerLib.getWebEditorMonomer (for color)
35
+ * Add function Identity for Add new Column
36
+
37
+ ### Bug fixes
38
+
39
+ * Fix toAtomicLevel for sequences with gaps
40
+ * Fix ISeqSplitted remove .canonicals and .originals
41
+ * Fix toAtomicLevel tests for linear with gaps
42
+
3
43
  ## 2.15.3 (2024-09-22)
4
44
 
5
45
  Add monomer background coloring
package/detectors.js CHANGED
@@ -183,6 +183,7 @@ class BioPackageDetectors extends DG.Package {
183
183
  // col.setTag(SeqHandler.TAGS.alphabetSize, alphabetSize.toString());
184
184
  col.setTag(SeqHandler.TAGS.alphabetIsMultichar, alphabetIsMultichar ? 'true' : 'false');
185
185
 
186
+ col.setTag(DG.TAGS.CELL_RENDERER, 'helm');
186
187
  return DG.SEMTYPE.MACROMOLECULE;
187
188
  }
188
189
 
@@ -262,6 +263,7 @@ class BioPackageDetectors extends DG.Package {
262
263
  const alphabetIsMultichar = Object.keys(stats.freq).some((m) => m.length > 1);
263
264
  col.setTag(SeqHandler.TAGS.alphabetIsMultichar, alphabetIsMultichar ? 'true' : 'false');
264
265
  }
266
+ col.setTag(DG.TAGS.CELL_RENDERER, 'sequence');
265
267
  return DG.SEMTYPE.MACROMOLECULE;
266
268
  } else {
267
269
  const stats = this.getStats(categoriesSample, seqMinLength, splitter);
@@ -300,7 +302,7 @@ class BioPackageDetectors extends DG.Package {
300
302
  }
301
303
 
302
304
  refineSeqSplitter(col, stats, separator).then(() => { });
303
-
305
+ col.setTag(DG.TAGS.CELL_RENDERER, 'sequence');
304
306
  return DG.SEMTYPE.MACROMOLECULE;
305
307
  }
306
308
  } catch (err) {
@@ -383,7 +385,8 @@ class BioPackageDetectors extends DG.Package {
383
385
  */
384
386
  checkBadMultichar(freq) /* : string | null */ {
385
387
  for (const symbol of Object.keys(freq)) {
386
- if (symbol && !isNaN(symbol)) return symbol; // performance evaluated better with RegExp
388
+ if (symbol && !isNaN(symbol))
389
+ return symbol; // performance evaluated better with RegExp
387
390
 
388
391
  const symbolLen = symbol.length;
389
392
  if (this.forbiddenMulticharFirst.includes(symbol[0]))
@@ -395,6 +398,10 @@ class BioPackageDetectors extends DG.Package {
395
398
  if (this.forbiddenMulticharMiddle.includes(c))
396
399
  return symbol;
397
400
  }
401
+ if (symbol.match(/^\d+\W+.*/))
402
+ // symbols like '2,...' are forbidden
403
+ // we require an alphabet character just after the leading digit(s)
404
+ return symbol;
398
405
  }
399
406
  return null;
400
407
  }