nmr-processing 10.0.5 → 10.0.7

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 (67) hide show
  1. package/lib/datum/FiltersManager.js +1 -0
  2. package/lib/datum/FiltersManager.js.map +1 -1
  3. package/lib/prediction/predict.js +14 -25
  4. package/lib/prediction/predict.js.map +1 -1
  5. package/lib/prediction/predictCOSY.d.ts +2 -20
  6. package/lib/prediction/predictCOSY.js +2 -2
  7. package/lib/prediction/predictCOSY.js.map +1 -1
  8. package/lib/prediction/predictCarbon.d.ts +2 -15
  9. package/lib/prediction/predictCarbon.js +14 -16
  10. package/lib/prediction/predictCarbon.js.map +1 -1
  11. package/lib/prediction/predictHMBC.d.ts +2 -12
  12. package/lib/prediction/predictHMBC.js +2 -2
  13. package/lib/prediction/predictHMBC.js.map +1 -1
  14. package/lib/prediction/predictHSQC.d.ts +2 -12
  15. package/lib/prediction/predictHSQC.js +2 -2
  16. package/lib/prediction/predictHSQC.js.map +1 -1
  17. package/lib/prediction/predictProton.d.ts +2 -9
  18. package/lib/prediction/predictProton.js +9 -10
  19. package/lib/prediction/predictProton.js.map +1 -1
  20. package/lib/prediction/predictSpectra.d.ts +3 -2
  21. package/lib/prediction/predictSpectra.js +12 -7
  22. package/lib/prediction/predictSpectra.js.map +1 -1
  23. package/lib/prediction/utils/predict2D.d.ts +2 -12
  24. package/lib/prediction/utils/predict2D.js +9 -9
  25. package/lib/prediction/utils/predict2D.js.map +1 -1
  26. package/lib/prediction/utils/queryByHOSE.d.ts +2 -1
  27. package/lib/prediction/utils/queryByHOSE.js +29 -27
  28. package/lib/prediction/utils/queryByHOSE.js.map +1 -1
  29. package/lib/ranges/rangesToACS.js.map +1 -1
  30. package/lib/xyz/xyzAutoSignalsPicking.js +1 -1
  31. package/lib/xyz/xyzAutoSignalsPicking.js.map +1 -1
  32. package/lib-esm/datum/FiltersManager.js +1 -0
  33. package/lib-esm/datum/FiltersManager.js.map +1 -1
  34. package/lib-esm/prediction/predict.js +15 -26
  35. package/lib-esm/prediction/predict.js.map +1 -1
  36. package/lib-esm/prediction/predictCOSY.js +2 -2
  37. package/lib-esm/prediction/predictCOSY.js.map +1 -1
  38. package/lib-esm/prediction/predictCarbon.js +16 -18
  39. package/lib-esm/prediction/predictCarbon.js.map +1 -1
  40. package/lib-esm/prediction/predictHMBC.js +2 -2
  41. package/lib-esm/prediction/predictHMBC.js.map +1 -1
  42. package/lib-esm/prediction/predictHSQC.js +2 -2
  43. package/lib-esm/prediction/predictHSQC.js.map +1 -1
  44. package/lib-esm/prediction/predictProton.js +9 -10
  45. package/lib-esm/prediction/predictProton.js.map +1 -1
  46. package/lib-esm/prediction/predictSpectra.js +10 -5
  47. package/lib-esm/prediction/predictSpectra.js.map +1 -1
  48. package/lib-esm/prediction/utils/predict2D.js +9 -9
  49. package/lib-esm/prediction/utils/predict2D.js.map +1 -1
  50. package/lib-esm/prediction/utils/queryByHOSE.js +29 -27
  51. package/lib-esm/prediction/utils/queryByHOSE.js.map +1 -1
  52. package/lib-esm/ranges/rangesToACS.js.map +1 -1
  53. package/lib-esm/xyz/xyzAutoSignalsPicking.js +1 -1
  54. package/lib-esm/xyz/xyzAutoSignalsPicking.js.map +1 -1
  55. package/package.json +3 -3
  56. package/src/datum/FiltersManager.ts +1 -0
  57. package/src/prediction/predict.ts +15 -40
  58. package/src/prediction/predictCOSY.ts +3 -19
  59. package/src/prediction/predictCarbon.ts +19 -33
  60. package/src/prediction/predictHMBC.ts +3 -13
  61. package/src/prediction/predictHSQC.ts +3 -13
  62. package/src/prediction/predictProton.ts +11 -19
  63. package/src/prediction/predictSpectra.ts +14 -6
  64. package/src/prediction/utils/predict2D.ts +13 -29
  65. package/src/prediction/utils/queryByHOSE.ts +31 -30
  66. package/src/ranges/rangesToACS.ts +1 -0
  67. package/src/xyz/xyzAutoSignalsPicking.ts +1 -1
@@ -124,6 +124,7 @@ function enableFilter(datum, id, checked, filters) {
124
124
  }
125
125
  }
126
126
  }
127
+ updateData(datum);
127
128
  }
128
129
  exports.enableFilter = enableFilter;
129
130
  function deleteFilter(datum, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"FiltersManager.js","sourceRoot":"","sources":["../../src/datum/FiltersManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FiltersManager.js","sourceRoot":"","sources":["../../src/datum/FiltersManager.ts"],"names":[],"mappings":"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"}
@@ -37,27 +37,17 @@ async function predict(molecule, options = {}) {
37
37
  hmbc: {},
38
38
  cosy: {},
39
39
  }, } = options;
40
- const hoseCodesAndInfo = (0, openchemlib_utils_1.getHoseCodesAndInfo)(molecule, {
41
- maxSphereSize: predictOptions?.C?.maxSphereSize,
42
- });
43
- const { diaIDs = [], moleculeWithHydrogens, hoses, molfileWithH, distanceMatrix, } = hoseCodesAndInfo;
44
- const groupedDiaIDs = (0, openchemlib_utils_1.groupDiastereotopicAtomIDs)(diaIDs, moleculeWithHydrogens);
40
+ const topicMolecule = new openchemlib_utils_1.TopicMolecule(molecule);
45
41
  const protonPrediction = (0, shouldPredict_1.shouldPredict)('H', predictOptions)
46
- ? await (0, predictProton_1.predictProton)(molfileWithH, {
42
+ ? await (0, predictProton_1.predictProton)(topicMolecule, {
47
43
  ...predictOptions?.H,
48
- diaIDs,
49
- distanceMatrix,
50
44
  })
51
45
  : undefined;
52
46
  const carbonPrediction = (0, shouldPredict_1.shouldPredict)('C', predictOptions)
53
- ? await (0, predictCarbon_1.predictCarbon)({
54
- ...predictOptions?.C,
55
- molfile: molfileWithH,
56
- groupedDiaIDs,
57
- hoses,
58
- })
47
+ ? await (0, predictCarbon_1.predictCarbon)(topicMolecule, predictOptions?.C)
59
48
  : undefined;
60
49
  const spectra = {};
50
+ const diaIDs = topicMolecule.diaIDs;
61
51
  const predictions = {};
62
52
  if (check1DPrediction(protonPrediction, diaIDs)) {
63
53
  predictions.H = protonPrediction;
@@ -69,20 +59,14 @@ async function predict(molecule, options = {}) {
69
59
  if ('C' in predictOptions)
70
60
  spectra.carbon = carbonPrediction;
71
61
  }
72
- const optionsTwoD = {
73
- predictions,
74
- joinDistance,
75
- distanceMatrix,
76
- groupedDiaIDs,
77
- diaIDs,
78
- };
79
62
  for (const key in predictOptions) {
80
63
  if (key === 'H' || key === 'C')
81
64
  continue;
82
65
  const { predictor, required, message } = toPredict[key];
83
66
  if (required.every((key) => key in predictions)) {
84
- spectra[key] = await predictor(molecule, {
85
- ...optionsTwoD,
67
+ spectra[key] = await predictor(topicMolecule, {
68
+ predictions,
69
+ joinDistance,
86
70
  ...predictOptions[key],
87
71
  });
88
72
  }
@@ -91,8 +75,13 @@ async function predict(molecule, options = {}) {
91
75
  }
92
76
  }
93
77
  return {
94
- ...hoseCodesAndInfo,
95
- groupedDiaIDs,
78
+ diaIDs: topicMolecule.diaIDs,
79
+ hoses: topicMolecule.hoseCodes,
80
+ distanceMatrix: topicMolecule.distanceMatrix,
81
+ moleculeWithHydrogens: topicMolecule.moleculeWithH,
82
+ groupedDiaIDs: topicMolecule.getGroupedDiastereotopicAtomIDs(),
83
+ molfile: topicMolecule.toMolfile(),
84
+ molfileWithH: topicMolecule.toMolfileWithH(),
96
85
  spectra,
97
86
  };
98
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/prediction/predict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/prediction/predict.ts"],"names":[],"mappings":";;;AAEA,yDAAkD;AAIlD,+CAAgE;AAChE,mDAAsE;AACtE,+CAAgE;AAChE,+CAAgE;AAChE,mDAAsE;AACtE,yDAAsD;AA4BtD,MAAM,SAAS,GAAc;IAC3B,IAAI,EAAE;QACJ,SAAS,EAAE,yBAAW;QACtB,QAAQ,EAAE,CAAC,GAAG,CAAC;QACf,OAAO,EAAE,8DAA8D;KACxE;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,yBAAW;QACtB,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACpB,OAAO,EACL,8EAA8E;KACjF;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,yBAAW;QACtB,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACpB,OAAO,EACL,8EAA8E;KACjF;CACF,CAAC;AAoCF;;;GAGG;AACI,KAAK,UAAU,OAAO,CAC3B,QAAkB,EAClB,UAA6B,EAAE;IAE/B,MAAM,EACJ,MAAM,EACN,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,cAAc,GAAG;QACf,CAAC,EAAE,EAAE;QACL,CAAC,EAAE,EAAE;QACL,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;KACwB,GACnC,GAAG,OAAO,CAAC;IAEZ,MAAM,aAAa,GAAG,IAAI,iCAAa,CAAC,QAAQ,CAAC,CAAC;IAElD,MAAM,gBAAgB,GAAG,IAAA,6BAAa,EAAC,GAAG,EAAE,cAAc,CAAC;QACzD,CAAC,CAAC,MAAM,IAAA,6BAAa,EAAC,aAAa,EAAE;YACjC,GAAG,cAAc,EAAE,CAAC;SACrB,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,gBAAgB,GAAG,IAAA,6BAAa,EAAC,GAAG,EAAE,cAAc,CAAC;QACzD,CAAC,CAAC,MAAM,IAAA,6BAAa,EAAC,aAAa,EAAE,cAAc,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IACpC,MAAM,WAAW,GAAqC,EAAE,CAAC;IACzD,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,CAAC,EAAE;QAC/C,WAAW,CAAC,CAAC,GAAG,gBAAgB,CAAC;QACjC,IAAI,GAAG,IAAI,cAAc;YAAE,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC;KAC9D;IACD,IAAI,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,CAAC,EAAE;QAC/C,WAAW,CAAC,CAAC,GAAG,gBAAgB,CAAC;QACjC,IAAI,GAAG,IAAI,cAAc;YAAE,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC;KAC9D;IAED,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE;QAChC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG;YAAE,SAAS;QACzC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,GAAsB,CAAC,CAAC;QAC3E,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,WAAW,CAAC,EAAE;YAC/C,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,SAAS,CAAC,aAAa,EAAE;gBAC5C,WAAW;gBACX,YAAY;gBACZ,GAAG,cAAc,CAAC,GAA0C,CAAC;aAC9D,CAAC,CAAC;SACJ;aAAM,IAAI,MAAM,EAAE;YACjB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACtB;KACF;IAED,OAAO;QACL,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,KAAK,EAAE,aAAa,CAAC,SAAS;QAC9B,cAAc,EAAE,aAAa,CAAC,cAAc;QAC5C,qBAAqB,EAAE,aAAa,CAAC,aAAa;QAClD,aAAa,EAAE,aAAa,CAAC,+BAA+B,EAAE;QAC9D,OAAO,EAAE,aAAa,CAAC,SAAS,EAAE;QAClC,YAAY,EAAE,aAAa,CAAC,cAAc,EAAE;QAC5C,OAAO;KACR,CAAC;AACJ,CAAC;AAhED,0BAgEC;AAED,SAAS,iBAAiB,CACxB,UAA6B,EAC7B,SAAmB,EAAE;IAErB,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACjD,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;KAC9B;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,7 +1,5 @@
1
- import type { Molecule } from 'openchemlib/full';
2
- import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
1
+ import { TopicMolecule } from 'openchemlib-utils';
3
2
  import type { PredictionBase1D } from './PredictionBase1D';
4
- import { PredictProtonOptions } from './predictProton';
5
3
  export interface PredictCOSYOptions {
6
4
  /**
7
5
  * maximum number of bonds to take into account.
@@ -13,13 +11,6 @@ export interface PredictCOSYOptions {
13
11
  * @default 2
14
12
  */
15
13
  minLength?: number;
16
- /**
17
- * mono dimensional signal to generate the bidimenionals cross peaks.
18
- * The object should has properties with name equal to "H" and "C".
19
- */
20
- predictOptions?: {
21
- H?: PredictProtonOptions;
22
- };
23
14
  /**
24
15
  * signals with euclidean distance in ppm less than this it will
25
16
  * joined into a zone.
@@ -43,18 +34,9 @@ export interface PredictCOSYOptions {
43
34
  * @default true
44
35
  */
45
36
  includeDiagonal?: boolean;
46
- /**
47
- * diastereotopic atom ids of the molecule.
48
- */
49
- diaIDs: string[];
50
- /**
51
- * grouped diastereotopic atom ids of the molecule.
52
- */
53
- groupedDiaIDs: GroupDiastereotopicAtomIDs[];
54
- distanceMatrix: number[][];
55
37
  }
56
38
  /**
57
39
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
58
40
  * @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
59
41
  */
60
- export declare function predictCOSY(molecule: Molecule, options: PredictCOSYOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
42
+ export declare function predictCOSY(topicMolecule: TopicMolecule, options: PredictCOSYOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
@@ -6,9 +6,9 @@ const predict2D_1 = require("./utils/predict2D");
6
6
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
7
7
  * @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
8
8
  */
9
- async function predictCOSY(molecule, options) {
9
+ async function predictCOSY(topicMolecule, options) {
10
10
  const { minLength = 2, maxLength = 3, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = true, } = options;
11
- return (0, predict2D_1.predict2D)(molecule, {
11
+ return (0, predict2D_1.predict2D)(topicMolecule, {
12
12
  ...options,
13
13
  from: 'H',
14
14
  to: 'H',
@@ -1 +1 @@
1
- {"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":";;;AAKA,iDAA8C;AAgD9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,eAAe,GAAG,IAAI,GACvB,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,QAAQ,EAAE;QACzB,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;AACL,CAAC;AApBD,kCAoBC"}
1
+ {"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AAkC9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,eAAe,GAAG,IAAI,GACvB,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;AACL,CAAC;AApBD,kCAoBC"}
@@ -1,6 +1,6 @@
1
+ import { TopicMolecule } from 'openchemlib-utils';
1
2
  import { PredictionBase1D } from './PredictionBase1D';
2
3
  import type { DataBaseStructure } from './dataStructure';
3
- import { GroupedDiaID } from 'openchemlib-utils';
4
4
  export interface PredictCarbonOptions {
5
5
  /**
6
6
  * custom database, each entry in the levels should has
@@ -17,23 +17,10 @@ export interface PredictCarbonOptions {
17
17
  * @default 'maximum level in the database'
18
18
  */
19
19
  maxSphereSize?: number;
20
- /**
21
- * diastereotopic atom ids.
22
- */
23
- groupedDiaIDs: GroupedDiaID[];
24
- /**
25
- * hoses code of the molecule.
26
- */
27
- hoses: Array<any[] | undefined>;
28
- /**
29
- * molfile of the molecule, it could be used if there is not a database provided.
30
- * so the prediction will be fetched to the web service (webserviceURL)
31
- */
32
- molfile?: string;
33
20
  }
34
21
  export type PredictCarbon = typeof predictCarbon;
35
22
  /**
36
23
  * Make a query to a hose code based database to predict carbon chemical shift
37
24
  * @returns {Promise<object>} - object with molfile, diaIDs, signals, joined signals by diaIDs and ranges.
38
25
  */
39
- export declare function predictCarbon(options: PredictCarbonOptions): Promise<PredictionBase1D>;
26
+ export declare function predictCarbon(topicMolecule: TopicMolecule, options?: PredictCarbonOptions): Promise<PredictionBase1D>;
@@ -5,8 +5,6 @@ const uuid_1 = require("@lukeed/uuid");
5
5
  const setIDs_1 = require("../peaks/util/setIDs");
6
6
  const signalsToRanges_1 = require("../signals/signalsToRanges");
7
7
  const fetchPrediction_1 = require("./utils/fetchPrediction");
8
- const getFilteredIDiaIDs_1 = require("./utils/getFilteredIDiaIDs");
9
- const isMolfileNotEmpty_1 = require("./utils/isMolfileNotEmpty");
10
8
  const queryByHOSE_1 = require("./utils/queryByHOSE");
11
9
  function checkFromPrediction(signal) {
12
10
  if (!signal.atoms)
@@ -20,12 +18,9 @@ function checkFromPrediction(signal) {
20
18
  * Make a query to a hose code based database to predict carbon chemical shift
21
19
  * @returns {Promise<object>} - object with molfile, diaIDs, signals, joined signals by diaIDs and ranges.
22
20
  */
23
- async function predictCarbon(options) {
24
- const { hoses, molfile, database, webserviceURL = 'https://nmr-prediction.service.zakodium.com/v1/predict/carbon', groupedDiaIDs, } = options;
25
- if (!database && (0, isMolfileNotEmpty_1.isMolfileNotEmpty)(molfile)) {
26
- return (0, fetchPrediction_1.fetchPrediction)(molfile, { webserviceURL });
27
- }
28
- else if (!(0, isMolfileNotEmpty_1.isMolfileNotEmpty)(molfile)) {
21
+ async function predictCarbon(topicMolecule, options = {}) {
22
+ const { database, webserviceURL = 'https://nmr-prediction.service.zakodium.com/v1/predict/carbon', } = options;
23
+ if (topicMolecule.molecule.getAllAtoms() === 0) {
29
24
  return {
30
25
  nucleus: '13C',
31
26
  joinedSignals: [],
@@ -34,18 +29,21 @@ async function predictCarbon(options) {
34
29
  };
35
30
  }
36
31
  if (!database) {
37
- throw new Error('There is not a database');
32
+ const molfile = topicMolecule.toMolfile();
33
+ return (0, fetchPrediction_1.fetchPrediction)(molfile, { webserviceURL });
38
34
  }
39
35
  const maxLevel = database.length - 1;
40
36
  let { maxSphereSize = maxLevel } = options;
41
37
  if (maxSphereSize > maxLevel)
42
38
  maxSphereSize = maxLevel;
43
- const carbonDiaIDs = (0, getFilteredIDiaIDs_1.getFilteredIDiaIDs)({
44
- groupedDiaIDs,
45
- hoses,
46
- });
47
- const predictions = (0, queryByHOSE_1.queryByHose)(carbonDiaIDs, database, {
39
+ const hoseCodes = topicMolecule.hoseCodes;
40
+ const diaIDsWithInfo = topicMolecule.diaIDsAndInfo.map((entry, index) => ({
41
+ ...entry,
42
+ hoses: hoseCodes[index],
43
+ }));
44
+ const predictions = (0, queryByHOSE_1.queryByHose)(diaIDsWithInfo, database, {
48
45
  maxSphereSize,
46
+ atomLabel: 'C',
49
47
  });
50
48
  const signals = formatSignals(predictions);
51
49
  const joinedSignals = joinSignalByDiaID(signals);
@@ -60,10 +58,10 @@ exports.predictCarbon = predictCarbon;
60
58
  function formatSignals(predictions) {
61
59
  const signals = [];
62
60
  for (const prediction of predictions) {
63
- const { atoms, nbAtoms, delta, diaIDs, statistic } = prediction;
61
+ const { nbAtoms, atoms, delta, diaIDs, statistic } = prediction;
64
62
  const signal = {
65
63
  id: (0, uuid_1.v4)(),
66
- delta: delta || NaN,
64
+ delta: delta ?? NaN,
67
65
  atoms,
68
66
  diaIDs,
69
67
  multiplicity: 's',
@@ -1 +1 @@
1
- {"version":3,"file":"predictCarbon.js","sourceRoot":"","sources":["../../src/prediction/predictCarbon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"predictCarbon.js","sourceRoot":"","sources":["../../src/prediction/predictCarbon.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import type { Molecule } from 'openchemlib/full';
2
- import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
1
+ import { TopicMolecule } from 'openchemlib-utils';
3
2
  import { PredictionBase1D } from './PredictionBase1D';
4
3
  /**
5
4
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
@@ -35,14 +34,5 @@ export interface PredictHMBCOptions {
35
34
  H?: PredictionBase1D;
36
35
  C?: PredictionBase1D;
37
36
  };
38
- /**
39
- * diastereotopic atom ids of the molecule.
40
- */
41
- diaIDs: string[];
42
- /**
43
- * grouped diastereotopic atom ids of the molecule.
44
- */
45
- groupedDiaIDs: GroupDiastereotopicAtomIDs[];
46
- distanceMatrix: number[][];
47
37
  }
48
- export declare function predictHMBC(molecule: Molecule, options: PredictHMBCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
38
+ export declare function predictHMBC(topicMolecule: TopicMolecule, options: PredictHMBCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.predictHMBC = void 0;
4
4
  const predict2D_1 = require("./utils/predict2D");
5
- async function predictHMBC(molecule, options) {
5
+ async function predictHMBC(topicMolecule, options) {
6
6
  const { minLength = 2, maxLength = 3, joinDistance = { H: 0.05, C: 0.5 }, } = options;
7
- return (0, predict2D_1.predict2D)(molecule, {
7
+ return (0, predict2D_1.predict2D)(topicMolecule, {
8
8
  ...options,
9
9
  from: 'H',
10
10
  to: 'C',
@@ -1 +1 @@
1
- {"version":3,"file":"predictHMBC.js","sourceRoot":"","sources":["../../src/prediction/predictHMBC.ts"],"names":[],"mappings":";;;AAIA,iDAA8C;AA6CvC,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,QAAQ,EAAE;QACzB,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
1
+ {"version":3,"file":"predictHMBC.js","sourceRoot":"","sources":["../../src/prediction/predictHMBC.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AAoCvC,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
@@ -1,5 +1,4 @@
1
- import type { Molecule } from 'openchemlib/full';
2
- import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
1
+ import { TopicMolecule } from 'openchemlib-utils';
3
2
  import { PredictionBase1D } from './PredictionBase1D';
4
3
  export interface PredictHSQCOptions {
5
4
  /**
@@ -31,18 +30,9 @@ export interface PredictHSQCOptions {
31
30
  H?: PredictionBase1D;
32
31
  C?: PredictionBase1D;
33
32
  };
34
- /**
35
- * diastereotopic atom ids of the molecule.
36
- */
37
- diaIDs: string[];
38
- /**
39
- * grouped diastereotopic atom ids of the molecule.
40
- */
41
- groupedDiaIDs: GroupDiastereotopicAtomIDs[];
42
- distanceMatrix: number[][];
43
33
  }
44
34
  /**
45
35
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
46
36
  * @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
47
37
  */
48
- export declare function predictHSQC(molecule: Molecule, options: PredictHSQCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
38
+ export declare function predictHSQC(topicMolecule: TopicMolecule, options: PredictHSQCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
@@ -6,9 +6,9 @@ const predict2D_1 = require("./utils/predict2D");
6
6
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
7
7
  * @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
8
8
  */
9
- async function predictHSQC(molecule, options) {
9
+ async function predictHSQC(topicMolecule, options) {
10
10
  const { minLength = 1, maxLength = 1, joinDistance = { H: 0.05, C: 0.5 }, } = options;
11
- return (0, predict2D_1.predict2D)(molecule, {
11
+ return (0, predict2D_1.predict2D)(topicMolecule, {
12
12
  ...options,
13
13
  from: 'H',
14
14
  to: 'C',
@@ -1 +1 @@
1
- {"version":3,"file":"predictHSQC.js","sourceRoot":"","sources":["../../src/prediction/predictHSQC.ts"],"names":[],"mappings":";;;AAIA,iDAA8C;AAuC9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,QAAQ,EAAE;QACzB,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
1
+ {"version":3,"file":"predictHSQC.js","sourceRoot":"","sources":["../../src/prediction/predictHSQC.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AA8B9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
@@ -1,3 +1,4 @@
1
+ import { TopicMolecule } from 'openchemlib-utils';
1
2
  import { PredictionBase1D } from './PredictionBase1D';
2
3
  /**
3
4
  * Makes a prediction using proton.
@@ -8,14 +9,6 @@ export interface PredictProtonOptions {
8
9
  * A callback receiving a molfile and the result
9
10
  */
10
11
  cache?: (molfile: string, result?: string) => void | string | undefined;
11
- /**
12
- * diastereotopic atom ids.
13
- */
14
- diaIDs: string[];
15
- /**
16
- * distance matrix
17
- */
18
- distanceMatrix: number[][];
19
12
  }
20
13
  export type PredictProton = typeof predictProton;
21
- export declare function predictProton(molfile: string, options: PredictProtonOptions): Promise<PredictionBase1D>;
14
+ export declare function predictProton(topicMolecule: TopicMolecule, options?: PredictProtonOptions): Promise<PredictionBase1D>;
@@ -9,9 +9,8 @@ const cross_fetch_1 = __importDefault(require("cross-fetch"));
9
9
  const form_data_1 = __importDefault(require("form-data"));
10
10
  const signalsJoin_1 = require("../signals/signalsJoin");
11
11
  const signalsToRanges_1 = require("../signals/signalsToRanges");
12
- const isMolfileNotEmpty_1 = require("./utils/isMolfileNotEmpty");
13
- async function predictProton(molfile, options) {
14
- if (!(0, isMolfileNotEmpty_1.isMolfileNotEmpty)(molfile)) {
12
+ async function predictProton(topicMolecule, options = {}) {
13
+ if (topicMolecule.molecule.getAllAtoms() === 0) {
15
14
  return {
16
15
  nucleus: '1H',
17
16
  joinedSignals: [],
@@ -22,11 +21,11 @@ async function predictProton(molfile, options) {
22
21
  const { cache } = options;
23
22
  let result;
24
23
  if (cache) {
25
- result = cache(molfile);
24
+ result = cache(topicMolecule.idCode);
26
25
  }
27
26
  if (result === undefined) {
28
27
  const formData = new form_data_1.default();
29
- formData.append('molfile', molfile);
28
+ formData.append('molfile', topicMolecule.toMolfile());
30
29
  const response = await (0, cross_fetch_1.default)('https://www.nmrdb.org/service/predictor', {
31
30
  method: 'POST',
32
31
  // @ts-expect-error RequestInit type does not include FormData.
@@ -34,11 +33,10 @@ async function predictProton(molfile, options) {
34
33
  });
35
34
  result = await response.text();
36
35
  if (cache) {
37
- cache(molfile, result);
36
+ cache(topicMolecule.idCode, result);
38
37
  }
39
38
  }
40
- const { diaIDs, distanceMatrix } = options;
41
- const signals = protonParser(result, { diaIDs, distanceMatrix });
39
+ const signals = protonParser(result, topicMolecule);
42
40
  const joinedSignals = (0, signalsJoin_1.signalsJoin)(signals);
43
41
  return {
44
42
  nucleus: '1H',
@@ -48,11 +46,12 @@ async function predictProton(molfile, options) {
48
46
  };
49
47
  }
50
48
  exports.predictProton = predictProton;
51
- function protonParser(result, options) {
49
+ function protonParser(result, topicMolecule) {
52
50
  if (result.includes('ERR')) {
53
51
  throw Error(`Spinus optimization: ${result}`);
54
52
  }
55
- const { diaIDs, distanceMatrix } = options;
53
+ const diaIDs = topicMolecule.diaIDs;
54
+ const distanceMatrix = topicMolecule.distanceMatrix;
56
55
  const lines = result.split('\n').filter((line) => line);
57
56
  const signals = [];
58
57
  for (const line of lines) {
@@ -1 +1 @@
1
- {"version":3,"file":"predictProton.js","sourceRoot":"","sources":["../../src/prediction/predictProton.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"predictProton.js","sourceRoot":"","sources":["../../src/prediction/predictProton.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAgD;AAChD,8DAAgC;AAChC,0DAAiC;AAIjC,wDAAqD;AACrD,gEAA6D;AAkBtD,KAAK,UAAU,aAAa,CACjC,aAA4B,EAC5B,UAAgC,EAAE;IAElC,IAAI,aAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE;QAC9C,OAAO;YACL,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;SACX,CAAC;KACH;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE1B,IAAI,MAAM,CAAC;IACX,IAAI,KAAK,EAAE;QACT,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KACtC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;QAChC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAK,EAAC,yCAAyC,EAAE;YACtE,MAAM,EAAE,MAAM;YACd,+DAA+D;YAC/D,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SACrC;KACF;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,IAAA,yBAAW,EAAC,OAAO,CAAC,CAAC;IAC3C,OAAO;QACL,OAAO,EAAE,IAAI;QACb,aAAa;QACb,OAAO;QACP,MAAM,EAAE,IAAA,iCAAe,EAAC,aAAa,CAAC;KACvC,CAAC;AACJ,CAAC;AAxCD,sCAwCC;AAED,SAAS,YAAY,CACnB,MAAc,EACd,aAA4B;IAE5B,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QAC1B,MAAM,KAAK,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;KAC/C;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IACpC,MAAM,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,MAAM,GAAa,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,MAAM,GAAgB;YAC1B,EAAE,EAAE,IAAA,SAAU,GAAE;YAChB,KAAK,EAAE,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,EAAE,EAAE,EAAE;SACP,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;SACvD;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;gBACb,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClC,KAAK,EAAE,CAAC,MAAM,CAAC;gBACf,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxB,YAAY,EAAE,GAAG;gBACjB,UAAU,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;aACzC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;SACnD;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FromTo, PointXY } from 'cheminfo-types';
1
+ import { FromTo, Logger, PointXY } from 'cheminfo-types';
2
2
  import type { Molecule } from 'openchemlib/full';
3
3
  import { PredictAllOptions } from './predict';
4
4
  /**
@@ -24,10 +24,11 @@ interface SimulationOptions {
24
24
  twoD?: Partial<TwoDOptions>;
25
25
  }
26
26
  interface PredictAllSpectraOptions {
27
+ logger?: Logger;
27
28
  prediction?: PredictAllOptions;
28
29
  simulation?: SimulationOptions;
29
30
  }
30
- export declare function predictAllSpectra(molecule: Molecule, options?: PredictAllSpectraOptions): Promise<{
31
+ export declare function predictSpectra(molecule: Molecule, options?: PredictAllSpectraOptions): Promise<{
31
32
  spectra: any[];
32
33
  molecules: {
33
34
  molfile: string;
@@ -1,18 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.predictAllSpectra = void 0;
3
+ exports.predictSpectra = void 0;
4
4
  const signals2DToZ_1 = require("../signals/signals2DToZ");
5
5
  const signalsToXY_1 = require("../signals/signalsToXY");
6
6
  const getFrequency_1 = require("../utilities/getFrequency");
7
7
  const predict_1 = require("./predict");
8
- async function predictAllSpectra(molecule, options = {}) {
9
- const { simulation: simulationOptions = { oneD: {}, twoD: {} }, prediction: predictionOptions = {}, } = options;
10
- const { spectra } = await (0, predict_1.predict)(molecule, predictionOptions);
8
+ async function predictSpectra(molecule, options = {}) {
9
+ const { logger, simulation: simulationOptions = { oneD: {}, twoD: {} }, prediction: predictOptions = {}, } = options;
10
+ const { spectra } = await (0, predict_1.predict)(molecule, { logger, ...predictOptions });
11
11
  const oneDOptions = {
12
12
  ...{
13
13
  proton: { from: 0, to: 14 },
14
14
  carbon: { from: 0, to: 200 },
15
15
  nbPoints: 65536,
16
+ frequency: 400,
16
17
  lineWidth: 1,
17
18
  },
18
19
  ...(simulationOptions.oneD || {}),
@@ -25,6 +26,10 @@ async function predictAllSpectra(molecule, options = {}) {
25
26
  },
26
27
  ...(simulationOptions.twoD || {}),
27
28
  };
29
+ if (!('frequency' in simulationOptions) && logger) {
30
+ logger.warn(`Frequency is settled to 400 MHz`);
31
+ }
32
+ const { frequency = 400 } = simulationOptions;
28
33
  const newSpectra = [];
29
34
  for (const experiment in spectra) {
30
35
  switch (experiment) {
@@ -35,7 +40,7 @@ async function predictAllSpectra(molecule, options = {}) {
35
40
  lineWidth: oneDOptions.lineWidth,
36
41
  ...oneDOptions[experiment],
37
42
  experiment,
38
- frequency: simulationOptions.frequency,
43
+ frequency,
39
44
  }));
40
45
  break;
41
46
  }
@@ -45,7 +50,7 @@ async function predictAllSpectra(molecule, options = {}) {
45
50
  newSpectra.push(get2DSpectrum(spectra[experiment], {
46
51
  ...twoDOptions,
47
52
  experiment,
48
- frequency: simulationOptions.frequency,
53
+ frequency,
49
54
  }));
50
55
  break;
51
56
  }
@@ -58,7 +63,7 @@ async function predictAllSpectra(molecule, options = {}) {
58
63
  molecules: [{ molfile: molecule.toMolfile() }],
59
64
  };
60
65
  }
61
- exports.predictAllSpectra = predictAllSpectra;
66
+ exports.predictSpectra = predictSpectra;
62
67
  function get2DSpectrum(prediction, options) {
63
68
  const { signals, zones, nuclei } = prediction;
64
69
  const { frequency: baseFrequency, experiment } = options;
@@ -1 +1 @@
1
- {"version":3,"file":"predictSpectra.js","sourceRoot":"","sources":["../../src/prediction/predictSpectra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"predictSpectra.js","sourceRoot":"","sources":["../../src/prediction/predictSpectra.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import { Molecule } from 'openchemlib/full';
2
- import { GroupDiastereotopicAtomIDs } from '../GroupDiastereotopicAtomIDs';
1
+ import { TopicMolecule } from 'openchemlib-utils';
3
2
  import { PredictionBase1D } from '../PredictionBase1D';
4
3
  import { PredictionBase2D } from '../PredictionBase2D';
5
4
  import type { PredictCarbon, PredictCarbonOptions } from '../predictCarbon';
@@ -54,15 +53,6 @@ export interface Predict2DOptions {
54
53
  * @default false
55
54
  */
56
55
  includeDiagonal?: boolean;
57
- /**
58
- * diastereotopic atom ids of the molecule.
59
- */
60
- diaIDs: string[];
61
- /**
62
- * grouped diastereotopic atom ids of the molecule.
63
- */
64
- groupedDiaIDs: GroupDiastereotopicAtomIDs[];
65
- distanceMatrix: number[][];
66
56
  }
67
57
  export interface PredictOptions {
68
58
  [key: string]: PredictProtonOptions | PredictCarbonOptions | undefined;
@@ -70,5 +60,5 @@ export interface PredictOptions {
70
60
  C?: PredictCarbonOptions;
71
61
  }
72
62
  export type Predictions = Record<string, PredictionBase1D | undefined>;
73
- export declare function predict2D(molecule: Molecule, options: Predict2DOptions): Promise<PredictionBase2D>;
63
+ export declare function predict2D(topicMolecule: TopicMolecule, options: Predict2DOptions): Promise<PredictionBase2D>;
74
64
  export {};