jcampconverter 8.2.3 → 8.3.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/lib/convert.d.ts CHANGED
@@ -29,9 +29,19 @@
29
29
  * @property {number[]} [max]
30
30
  * @property {string[]} [nucleus]
31
31
  */
32
+ /**
33
+ * @typedef { Record<string, any> } Spectrum
34
+ * @property {Record<string, number[]>} [data]
35
+ * @property {number} [firstX]
36
+ * @property {number} [lastX]
37
+ * @property {number} [deltaX]
38
+ * @property {number} [yFactor]
39
+ * @property {number} [xFactor]
40
+ * @property {number} [nbPoints]
41
+ */
32
42
  /**
33
43
  *
34
- * @typedef { object } Entry
44
+ * @typedef {object} Entry
35
45
  * @property {Spectrum[]} spectra
36
46
  * @property {Ntuples} ntuples
37
47
  * @property {object} meta
@@ -117,6 +127,7 @@ export type Ntuples = {
117
127
  max?: number[] | undefined;
118
128
  nucleus?: string[] | undefined;
119
129
  };
130
+ export type Spectrum = Record<string, any>;
120
131
  export type Entry = {
121
132
  spectra: Spectrum[];
122
133
  ntuples: Ntuples;
@@ -133,7 +144,4 @@ export type ConvertResult = {
133
144
  entries: object[];
134
145
  flatten: Entry[];
135
146
  };
136
- declare class Spectrum {
137
- }
138
- export {};
139
147
  //# sourceMappingURL=convert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"AAgCA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;GAOG;AAEH;;;;;;GAMG;AAEH,+BALW,MAAM,GAAC,WAAW,GAAC,UAAU,yCAE3B,aAAa,CA+RzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAvTa,QAAQ,EAAE;aACV,OAAO;UACP,MAAM;SACN,MAAM;;;;;;;eAUL,MAAM,EAAE,GAAG,OAAO;UAClB,MAAM,EAAE;aACR,MAAM,EAAE;aACR,KAAK,EAAE;;AApEtB;CAAiB"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"AA8BA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;GAOG;AAEH;;;;;;GAMG;AAEH,+BALW,MAAM,GAAC,WAAW,GAAC,UAAU,yCAE3B,aAAa,CAmSzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAxUa,OAAO,MAAM,EAAE,GAAG,CAAC;;aAanB,QAAQ,EAAE;aACV,OAAO;UACP,MAAM;SACN,MAAM;;;;;;;eAUL,MAAM,EAAE,GAAG,OAAO;UAClB,MAAM,EAAE;aACR,MAAM,EAAE;aACR,KAAK,EAAE"}
package/lib/convert.js CHANGED
@@ -17,8 +17,6 @@ const prepareSpectrum_1 = __importDefault(require("./prepareSpectrum"));
17
17
  const profiling_1 = __importDefault(require("./profiling"));
18
18
  // the following RegExp can only be used for XYdata, some peakTables have values with a "E-5" ...
19
19
  const ntuplesSeparatorRegExp = /[ \t]*,[ \t]*/;
20
- class Spectrum {
21
- }
22
20
  const defaultOptions = {
23
21
  keepRecordsRegExp: /^$/,
24
22
  canonicDataLabels: true,
@@ -63,9 +61,19 @@ const defaultOptions = {
63
61
  * @property {number[]} [max]
64
62
  * @property {string[]} [nucleus]
65
63
  */
64
+ /**
65
+ * @typedef { Record<string, any> } Spectrum
66
+ * @property {Record<string, number[]>} [data]
67
+ * @property {number} [firstX]
68
+ * @property {number} [lastX]
69
+ * @property {number} [deltaX]
70
+ * @property {number} [yFactor]
71
+ * @property {number} [xFactor]
72
+ * @property {number} [nbPoints]
73
+ */
66
74
  /**
67
75
  *
68
- * @typedef { object } Entry
76
+ * @typedef {object} Entry
69
77
  * @property {Spectrum[]} spectra
70
78
  * @property {Ntuples} ntuples
71
79
  * @property {object} meta
@@ -104,7 +112,7 @@ function convert(jcamp, options = {}) {
104
112
  let tmpResult = { children: [] };
105
113
  let currentEntry = tmpResult;
106
114
  let parentsStack = [];
107
- let spectrum = new Spectrum();
115
+ let spectrum = {};
108
116
  if (typeof jcamp !== 'string') {
109
117
  throw new TypeError('the JCAMP should be a string');
110
118
  }
@@ -135,8 +143,10 @@ function convert(jcamp, options = {}) {
135
143
  else if (infos[1] &&
136
144
  (infos[1].indexOf('XYDATA') || infos[0].indexOf('++') > 0)) {
137
145
  canonicDataLabel = 'XYDATA';
138
- spectrum.deltaX =
139
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
146
+ if (spectrum.nbPoints) {
147
+ spectrum.deltaX =
148
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
149
+ }
140
150
  }
141
151
  }
142
152
  }
@@ -146,15 +156,17 @@ function convert(jcamp, options = {}) {
146
156
  // well apparently we should still consider it is a PEAK TABLE if there are no '++' after
147
157
  if (dataValue.match(/.*\+\+.*/)) {
148
158
  // ex: (X++(Y..Y))
149
- spectrum.deltaX =
150
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
159
+ if (spectrum.nbPoints) {
160
+ spectrum.deltaX =
161
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
162
+ }
151
163
  (0, fastParseXYData_1.default)(spectrum, dataValue, result);
152
164
  }
153
165
  else {
154
166
  (0, parsePeakTable_1.default)(spectrum, dataValue, result);
155
167
  }
156
168
  currentEntry.spectra.push(spectrum);
157
- spectrum = new Spectrum();
169
+ spectrum = {};
158
170
  }
159
171
  continue;
160
172
  }
@@ -163,7 +175,7 @@ function convert(jcamp, options = {}) {
163
175
  (0, prepareSpectrum_1.default)(spectrum);
164
176
  (0, parsePeakTable_1.default)(spectrum, dataValue, result);
165
177
  currentEntry.spectra.push(spectrum);
166
- spectrum = new Spectrum();
178
+ spectrum = {};
167
179
  }
168
180
  continue;
169
181
  }
@@ -174,7 +186,7 @@ function convert(jcamp, options = {}) {
174
186
  (0, parseXYA_1.default)(spectrum, dataValue);
175
187
  }
176
188
  currentEntry.spectra.push(spectrum);
177
- spectrum = new Spectrum();
189
+ spectrum = {};
178
190
  }
179
191
  continue;
180
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"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"}
@@ -29,9 +29,19 @@
29
29
  * @property {number[]} [max]
30
30
  * @property {string[]} [nucleus]
31
31
  */
32
+ /**
33
+ * @typedef { Record<string, any> } Spectrum
34
+ * @property {Record<string, number[]>} [data]
35
+ * @property {number} [firstX]
36
+ * @property {number} [lastX]
37
+ * @property {number} [deltaX]
38
+ * @property {number} [yFactor]
39
+ * @property {number} [xFactor]
40
+ * @property {number} [nbPoints]
41
+ */
32
42
  /**
33
43
  *
34
- * @typedef { object } Entry
44
+ * @typedef {object} Entry
35
45
  * @property {Spectrum[]} spectra
36
46
  * @property {Ntuples} ntuples
37
47
  * @property {object} meta
@@ -117,6 +127,7 @@ export type Ntuples = {
117
127
  max?: number[] | undefined;
118
128
  nucleus?: string[] | undefined;
119
129
  };
130
+ export type Spectrum = Record<string, any>;
120
131
  export type Entry = {
121
132
  spectra: Spectrum[];
122
133
  ntuples: Ntuples;
@@ -133,7 +144,4 @@ export type ConvertResult = {
133
144
  entries: object[];
134
145
  flatten: Entry[];
135
146
  };
136
- declare class Spectrum {
137
- }
138
- export {};
139
147
  //# sourceMappingURL=convert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"AAgCA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;GAOG;AAEH;;;;;;GAMG;AAEH,+BALW,MAAM,GAAC,WAAW,GAAC,UAAU,yCAE3B,aAAa,CA+RzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAvTa,QAAQ,EAAE;aACV,OAAO;UACP,MAAM;SACN,MAAM;;;;;;;eAUL,MAAM,EAAE,GAAG,OAAO;UAClB,MAAM,EAAE;aACR,MAAM,EAAE;aACR,KAAK,EAAE;;AApEtB;CAAiB"}
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"AA8BA;;;;;;;;;;;;;;GAcG;AAEH;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;GASG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;;GAOG;AAEH;;;;;;GAMG;AAEH,+BALW,MAAM,GAAC,WAAW,GAAC,UAAU,yCAE3B,aAAa,CAmSzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAxUa,OAAO,MAAM,EAAE,GAAG,CAAC;;aAanB,QAAQ,EAAE;aACV,OAAO;UACP,MAAM;SACN,MAAM;;;;;;;eAUL,MAAM,EAAE,GAAG,OAAO;UAClB,MAAM,EAAE;aACR,MAAM,EAAE;aACR,KAAK,EAAE"}
@@ -11,8 +11,6 @@ import prepareSpectrum from './prepareSpectrum';
11
11
  import profiling from './profiling';
12
12
  // the following RegExp can only be used for XYdata, some peakTables have values with a "E-5" ...
13
13
  const ntuplesSeparatorRegExp = /[ \t]*,[ \t]*/;
14
- class Spectrum {
15
- }
16
14
  const defaultOptions = {
17
15
  keepRecordsRegExp: /^$/,
18
16
  canonicDataLabels: true,
@@ -57,9 +55,19 @@ const defaultOptions = {
57
55
  * @property {number[]} [max]
58
56
  * @property {string[]} [nucleus]
59
57
  */
58
+ /**
59
+ * @typedef { Record<string, any> } Spectrum
60
+ * @property {Record<string, number[]>} [data]
61
+ * @property {number} [firstX]
62
+ * @property {number} [lastX]
63
+ * @property {number} [deltaX]
64
+ * @property {number} [yFactor]
65
+ * @property {number} [xFactor]
66
+ * @property {number} [nbPoints]
67
+ */
60
68
  /**
61
69
  *
62
- * @typedef { object } Entry
70
+ * @typedef {object} Entry
63
71
  * @property {Spectrum[]} spectra
64
72
  * @property {Ntuples} ntuples
65
73
  * @property {object} meta
@@ -98,7 +106,7 @@ export function convert(jcamp, options = {}) {
98
106
  let tmpResult = { children: [] };
99
107
  let currentEntry = tmpResult;
100
108
  let parentsStack = [];
101
- let spectrum = new Spectrum();
109
+ let spectrum = {};
102
110
  if (typeof jcamp !== 'string') {
103
111
  throw new TypeError('the JCAMP should be a string');
104
112
  }
@@ -129,8 +137,10 @@ export function convert(jcamp, options = {}) {
129
137
  else if (infos[1] &&
130
138
  (infos[1].indexOf('XYDATA') || infos[0].indexOf('++') > 0)) {
131
139
  canonicDataLabel = 'XYDATA';
132
- spectrum.deltaX =
133
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
140
+ if (spectrum.nbPoints) {
141
+ spectrum.deltaX =
142
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
143
+ }
134
144
  }
135
145
  }
136
146
  }
@@ -140,15 +150,17 @@ export function convert(jcamp, options = {}) {
140
150
  // well apparently we should still consider it is a PEAK TABLE if there are no '++' after
141
151
  if (dataValue.match(/.*\+\+.*/)) {
142
152
  // ex: (X++(Y..Y))
143
- spectrum.deltaX =
144
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
153
+ if (spectrum.nbPoints) {
154
+ spectrum.deltaX =
155
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
156
+ }
145
157
  fastParseXYData(spectrum, dataValue, result);
146
158
  }
147
159
  else {
148
160
  parsePeakTable(spectrum, dataValue, result);
149
161
  }
150
162
  currentEntry.spectra.push(spectrum);
151
- spectrum = new Spectrum();
163
+ spectrum = {};
152
164
  }
153
165
  continue;
154
166
  }
@@ -157,7 +169,7 @@ export function convert(jcamp, options = {}) {
157
169
  prepareSpectrum(spectrum);
158
170
  parsePeakTable(spectrum, dataValue, result);
159
171
  currentEntry.spectra.push(spectrum);
160
- spectrum = new Spectrum();
172
+ spectrum = {};
161
173
  }
162
174
  continue;
163
175
  }
@@ -168,7 +180,7 @@ export function convert(jcamp, options = {}) {
168
180
  parseXYA(spectrum, dataValue);
169
181
  }
170
182
  currentEntry.spectra.push(spectrum);
171
- spectrum = new Spectrum();
183
+ spectrum = {};
172
184
  }
173
185
  continue;
174
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jcampconverter",
3
- "version": "8.2.3",
3
+ "version": "8.3.0",
4
4
  "description": "Parse and convert JCAMP data",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -52,24 +52,24 @@
52
52
  },
53
53
  "homepage": "https://github.com/cheminfo/jcampconverter#readme",
54
54
  "devDependencies": {
55
- "@types/jest": "^27.0.3",
55
+ "@types/jest": "^27.4.1",
56
56
  "benchmark": "^2.1.4",
57
57
  "cheminfo-build": "^1.1.11",
58
- "eslint": "^8.4.1",
59
- "eslint-config-cheminfo-typescript": "^10.2.4",
58
+ "eslint": "^8.11.0",
59
+ "eslint-config-cheminfo-typescript": "^10.4.0",
60
60
  "esm": "^3.2.25",
61
- "jest": "^27.4.5",
61
+ "jest": "^27.5.1",
62
62
  "jest-matcher-deep-close-to": "^3.0.2",
63
- "jscpd": "^3.4.2",
64
- "prettier": "^2.5.1",
63
+ "jscpd": "^3.4.5",
64
+ "prettier": "^2.6.0",
65
65
  "rimraf": "^3.0.2",
66
- "ts-jest": "^27.1.1",
67
- "typescript": "^4.5.4"
66
+ "ts-jest": "^27.1.3",
67
+ "typescript": "^4.6.2"
68
68
  },
69
69
  "dependencies": {
70
70
  "dynamic-typing": "^0.1.3",
71
71
  "ensure-string": "^1.1.0",
72
- "ml-array-median": "^1.1.5",
73
- "nmr-processing": "^6.0.2"
72
+ "ml-array-median": "^1.1.6",
73
+ "nmr-processing": "^7.1.0"
74
74
  }
75
75
  }
package/src/convert.js CHANGED
@@ -14,8 +14,6 @@ import profiling from './profiling';
14
14
  // the following RegExp can only be used for XYdata, some peakTables have values with a "E-5" ...
15
15
  const ntuplesSeparatorRegExp = /[ \t]*,[ \t]*/;
16
16
 
17
- class Spectrum {}
18
-
19
17
  const defaultOptions = {
20
18
  keepRecordsRegExp: /^$/,
21
19
  canonicDataLabels: true,
@@ -63,9 +61,20 @@ const defaultOptions = {
63
61
  * @property {string[]} [nucleus]
64
62
  */
65
63
 
64
+ /**
65
+ * @typedef { Record<string, any> } Spectrum
66
+ * @property {Record<string, number[]>} [data]
67
+ * @property {number} [firstX]
68
+ * @property {number} [lastX]
69
+ * @property {number} [deltaX]
70
+ * @property {number} [yFactor]
71
+ * @property {number} [xFactor]
72
+ * @property {number} [nbPoints]
73
+ */
74
+
66
75
  /**
67
76
  *
68
- * @typedef { object } Entry
77
+ * @typedef {object} Entry
69
78
  * @property {Spectrum[]} spectra
70
79
  * @property {Ntuples} ntuples
71
80
  * @property {object} meta
@@ -111,7 +120,7 @@ export function convert(jcamp, options = {}) {
111
120
  let currentEntry = tmpResult;
112
121
  let parentsStack = [];
113
122
 
114
- let spectrum = new Spectrum();
123
+ let spectrum = {};
115
124
 
116
125
  if (typeof jcamp !== 'string') {
117
126
  throw new TypeError('the JCAMP should be a string');
@@ -151,8 +160,10 @@ export function convert(jcamp, options = {}) {
151
160
  (infos[1].indexOf('XYDATA') || infos[0].indexOf('++') > 0)
152
161
  ) {
153
162
  canonicDataLabel = 'XYDATA';
154
- spectrum.deltaX =
155
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
163
+ if (spectrum.nbPoints) {
164
+ spectrum.deltaX =
165
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
166
+ }
156
167
  }
157
168
  }
158
169
  }
@@ -163,15 +174,17 @@ export function convert(jcamp, options = {}) {
163
174
  // well apparently we should still consider it is a PEAK TABLE if there are no '++' after
164
175
  if (dataValue.match(/.*\+\+.*/)) {
165
176
  // ex: (X++(Y..Y))
166
- spectrum.deltaX =
167
- (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
177
+ if (spectrum.nbPoints) {
178
+ spectrum.deltaX =
179
+ (spectrum.lastX - spectrum.firstX) / (spectrum.nbPoints - 1);
180
+ }
168
181
 
169
182
  fastParseXYData(spectrum, dataValue, result);
170
183
  } else {
171
184
  parsePeakTable(spectrum, dataValue, result);
172
185
  }
173
186
  currentEntry.spectra.push(spectrum);
174
- spectrum = new Spectrum();
187
+ spectrum = {};
175
188
  }
176
189
  continue;
177
190
  } else if (canonicDataLabel === 'PEAKTABLE') {
@@ -179,7 +192,7 @@ export function convert(jcamp, options = {}) {
179
192
  prepareSpectrum(spectrum);
180
193
  parsePeakTable(spectrum, dataValue, result);
181
194
  currentEntry.spectra.push(spectrum);
182
- spectrum = new Spectrum();
195
+ spectrum = {};
183
196
  }
184
197
  continue;
185
198
  }
@@ -190,7 +203,7 @@ export function convert(jcamp, options = {}) {
190
203
  parseXYA(spectrum, dataValue);
191
204
  }
192
205
  currentEntry.spectra.push(spectrum);
193
- spectrum = new Spectrum();
206
+ spectrum = {};
194
207
  }
195
208
  continue;
196
209
  }