@complat/react-spectra-editor 1.3.5 → 1.4.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.
Files changed (95) hide show
  1. package/dist/__tests__/fixtures/nmr1h_2_jcamp.js +3199 -1944
  2. package/dist/__tests__/units/components/cmd_bar/01_viewer.test.js +21 -18
  3. package/dist/__tests__/units/components/cmd_bar/02_zoom.test.js +15 -13
  4. package/dist/__tests__/units/components/cmd_bar/03_peak.test.js +35 -26
  5. package/dist/__tests__/units/components/cmd_bar/07_pecker.test.js +17 -14
  6. package/dist/__tests__/units/components/cmd_bar/r08_change_axes.test.js +15 -13
  7. package/dist/__tests__/units/components/common/comps.test.js +9 -8
  8. package/dist/__tests__/units/components/common/draw.test.js +26 -34
  9. package/dist/__tests__/units/components/panel/graph_selection.test.js +25 -22
  10. package/dist/__tests__/units/components/panel/info.test.js +30 -25
  11. package/dist/__tests__/units/components/panel/peaks.test.js +29 -24
  12. package/dist/actions/manager.js +6 -2
  13. package/dist/actions/ui.js +13 -21
  14. package/dist/app.js +45 -45
  15. package/dist/components/cmd_bar/01_viewer.js +38 -31
  16. package/dist/components/cmd_bar/02_zoom.js +34 -27
  17. package/dist/components/cmd_bar/03_peak.js +85 -64
  18. package/dist/components/cmd_bar/04_integration.js +97 -76
  19. package/dist/components/cmd_bar/05_multiplicity.js +94 -67
  20. package/dist/components/cmd_bar/06_undo_redo.js +41 -32
  21. package/dist/components/cmd_bar/07_pecker.js +70 -47
  22. package/dist/components/cmd_bar/common.js +8 -8
  23. package/dist/components/cmd_bar/index.js +20 -21
  24. package/dist/components/cmd_bar/r01_layout.js +201 -137
  25. package/dist/components/cmd_bar/r02_scan.js +63 -51
  26. package/dist/components/cmd_bar/r03_threshold.js +95 -69
  27. package/dist/components/cmd_bar/r04_submit.js +155 -133
  28. package/dist/components/cmd_bar/r05_submit_btn.js +39 -36
  29. package/dist/components/cmd_bar/r06_predict_btn.js +66 -52
  30. package/dist/components/cmd_bar/r07_wavelength_btn.js +35 -31
  31. package/dist/components/cmd_bar/r08_change_axes.js +65 -56
  32. package/dist/components/cmd_bar/r09_detector.js +38 -33
  33. package/dist/components/cmd_bar/tri_btn.js +37 -25
  34. package/dist/components/common/comps.js +5 -6
  35. package/dist/components/d3_line/index.js +2 -1
  36. package/dist/components/d3_line/line_focus.js +32 -34
  37. package/dist/components/d3_multi/index.js +2 -1
  38. package/dist/components/d3_multi/multi_focus.js +60 -37
  39. package/dist/components/d3_rect/index.js +2 -1
  40. package/dist/components/d3_rect/rect_focus.js +18 -20
  41. package/dist/components/forecast/comps.js +169 -132
  42. package/dist/components/forecast/ir_comps.js +88 -69
  43. package/dist/components/forecast/ir_viewer.js +35 -28
  44. package/dist/components/forecast/nmr_comps.js +105 -76
  45. package/dist/components/forecast/nmr_viewer.js +36 -29
  46. package/dist/components/forecast/section_loading.js +22 -17
  47. package/dist/components/forecast_viewer.js +19 -17
  48. package/dist/components/multi_jcamps_viewer.js +44 -38
  49. package/dist/components/panel/compare.js +92 -76
  50. package/dist/components/panel/cyclic_voltamery_data.js +171 -122
  51. package/dist/components/panel/graph_selection.js +113 -90
  52. package/dist/components/panel/index.js +43 -39
  53. package/dist/components/panel/info.js +203 -156
  54. package/dist/components/panel/multiplicity.js +85 -63
  55. package/dist/components/panel/multiplicity_coupling.js +36 -29
  56. package/dist/components/panel/multiplicity_select.js +20 -19
  57. package/dist/components/panel/peaks.js +78 -56
  58. package/dist/constants/action_type.js +2 -1
  59. package/dist/helpers/cfg.js +1 -2
  60. package/dist/helpers/chem.js +5 -13
  61. package/dist/helpers/converter.js +1 -2
  62. package/dist/helpers/extractParams.js +1 -2
  63. package/dist/helpers/extractPeaksEdit.js +3 -6
  64. package/dist/helpers/format.js +27 -62
  65. package/dist/helpers/init.js +5 -9
  66. package/dist/helpers/integration.js +1 -2
  67. package/dist/helpers/mount.js +1 -2
  68. package/dist/index.js +306 -276
  69. package/dist/layer_content.js +14 -14
  70. package/dist/layer_init.js +12 -11
  71. package/dist/layer_prism.js +83 -72
  72. package/dist/reducers/reducer_axes.js +2 -5
  73. package/dist/reducers/reducer_curve.js +8 -6
  74. package/dist/reducers/reducer_detector.js +1 -3
  75. package/dist/reducers/reducer_edit_peak.js +1 -3
  76. package/dist/reducers/reducer_forecast.js +1 -3
  77. package/dist/reducers/reducer_integration.js +1 -3
  78. package/dist/reducers/reducer_jcamp.js +5 -8
  79. package/dist/reducers/reducer_layout.js +1 -3
  80. package/dist/reducers/reducer_manager.js +1 -3
  81. package/dist/reducers/reducer_meta.js +1 -3
  82. package/dist/reducers/reducer_multiplicity.js +3 -3
  83. package/dist/reducers/reducer_scan.js +1 -3
  84. package/dist/reducers/reducer_shift.js +1 -3
  85. package/dist/reducers/reducer_simulation.js +1 -3
  86. package/dist/reducers/reducer_status.js +1 -3
  87. package/dist/reducers/reducer_submit.js +1 -3
  88. package/dist/reducers/reducer_threshold.js +199 -29
  89. package/dist/reducers/reducer_ui.js +1 -3
  90. package/dist/reducers/reducer_voltammetry.js +3 -7
  91. package/dist/reducers/reducer_wavelength.js +1 -3
  92. package/dist/sagas/saga_multi_entities.js +35 -14
  93. package/dist/sagas/saga_multiplicity.js +1 -2
  94. package/dist/third_party/jAnalyzer.js +1 -1
  95. package/package.json +18 -1
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
8
  var _react = _interopRequireDefault(require("react"));
10
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
10
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -20,6 +19,7 @@ var _VisibilityOffOutlined = _interopRequireDefault(require("@mui/icons-material
20
19
  var _styles = require("@mui/styles");
21
20
  var _format = _interopRequireDefault(require("../../helpers/format"));
22
21
  var _jcamp = require("../../actions/jcamp");
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
23
  /* eslint-disable function-paren-newline, react/jsx-props-no-spreading,
24
24
  react/function-component-definition */
25
25
 
@@ -112,19 +112,24 @@ const styles = theme => ({
112
112
  }
113
113
  });
114
114
  const msgDefault = 'Add spectra to compare.';
115
- const tpHint = classes => /*#__PURE__*/_react.default.createElement("span", {
116
- className: (0, _classnames.default)(classes.tpCard)
117
- }, /*#__PURE__*/_react.default.createElement("p", {
118
- className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp')
119
- }, "- Accept *.dx, *.jdx, *.JCAMP,"), /*#__PURE__*/_react.default.createElement("p", {
120
- className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp')
121
- }, "- Max 5 spectra."));
122
- const content = (classes, desc) => /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
115
+ const tpHint = classes => /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
116
+ className: (0, _classnames.default)(classes.tpCard),
117
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
118
+ className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp'),
119
+ children: "- Accept *.dx, *.jdx, *.JCAMP,"
120
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
121
+ className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp'),
122
+ children: "- Max 5 spectra."
123
+ })]
124
+ });
125
+ const content = (classes, desc) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
123
126
  title: tpHint(classes),
124
- placement: "bottom"
125
- }, /*#__PURE__*/_react.default.createElement("span", {
126
- className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp')
127
- }, desc));
127
+ placement: "bottom",
128
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
129
+ className: (0, _classnames.default)(classes.tpLabel, 'txt-sv-tp'),
130
+ children: desc
131
+ })
132
+ });
128
133
  const inputOthers = (classes, jcampSt) => {
129
134
  const {
130
135
  selectedIdx,
@@ -142,17 +147,19 @@ const inputOthers = (classes, jcampSt) => {
142
147
  jcamps: jcampFiles
143
148
  });
144
149
  };
145
- return /*#__PURE__*/_react.default.createElement(_reactDropzone.default, {
150
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactDropzone.default, {
146
151
  className: "dropbox",
147
- onDrop: onDrop
148
- }, _ref => {
149
- let {
152
+ onDrop: onDrop,
153
+ children: ({
150
154
  getRootProps,
151
155
  getInputProps
152
- } = _ref;
153
- return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, getRootProps(), {
154
- className: (0, _classnames.default)(classes.baseDD)
155
- }), /*#__PURE__*/_react.default.createElement("input", getInputProps()), content(classes, desc));
156
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
157
+ ...getRootProps(),
158
+ className: (0, _classnames.default)(classes.baseDD),
159
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
160
+ ...getInputProps()
161
+ }), content(classes, desc)]
162
+ })
156
163
  });
157
164
  };
158
165
  const compareList = (classes, jcampSt, rmOthersOneAct, toggleShowAct) => {
@@ -172,62 +179,71 @@ const compareList = (classes, jcampSt, rmOthersOneAct, toggleShowAct) => {
172
179
  isShow: o.show,
173
180
  toggleShowCb: () => toggleShowAct(idx)
174
181
  }));
175
- return /*#__PURE__*/_react.default.createElement(_material.Table, {
176
- className: classes.table
177
- }, /*#__PURE__*/_react.default.createElement(_material.TableBody, null, rows.map(row => /*#__PURE__*/_react.default.createElement(_material.TableRow, {
178
- key: row.idx,
179
- className: classes.tRow,
180
- hover: true
181
- }, /*#__PURE__*/_react.default.createElement(_material.TableCell, {
182
- align: "right",
183
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
184
- style: {
185
- backgroundColor: row.color
186
- }
187
- }, row.idx + 1), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
188
- align: "right",
189
- className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt', row.isShow ? null : classes.tTxtHide)
190
- }, row.title), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
191
- align: "right",
192
- className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt')
193
- }, row.isShow ? /*#__PURE__*/_react.default.createElement(_VisibilityOutlined.default, {
194
- onClick: row.toggleShowCb,
195
- className: classes.showBtn
196
- }) : /*#__PURE__*/_react.default.createElement(_VisibilityOffOutlined.default, {
197
- onClick: row.toggleShowCb,
198
- className: classes.hideBtn
199
- }), /*#__PURE__*/_react.default.createElement(_HighlightOff.default, {
200
- onClick: row.rmCb,
201
- className: classes.rmBtn
202
- }))))));
203
- };
204
- const ComparePanel = _ref2 => {
205
- let {
206
- classes,
207
- expand,
208
- onExapnd,
209
- jcampSt,
210
- rmOthersOneAct,
211
- toggleShowAct
212
- } = _ref2;
213
- return /*#__PURE__*/_react.default.createElement(_material.Accordion, {
214
- expanded: expand,
215
- onChange: onExapnd,
216
- className: (0, _classnames.default)(classes.panel),
217
- TransitionProps: {
218
- unmountOnExit: true
219
- } // increase Accordion performance
220
- }, /*#__PURE__*/_react.default.createElement(_material.AccordionSummary, {
221
- expandIcon: /*#__PURE__*/_react.default.createElement(_ExpandMore.default, null),
222
- className: (0, _classnames.default)(classes.panelSummary)
223
- }, /*#__PURE__*/_react.default.createElement(_material.Typography, {
224
- className: "txt-panel-header"
225
- }, /*#__PURE__*/_react.default.createElement("span", {
226
- className: (0, _classnames.default)(classes.txtBadge, 'txt-sv-panel-title')
227
- }, "Spectra Comparisons"))), /*#__PURE__*/_react.default.createElement(_material.Divider, null), inputOthers(classes, jcampSt), /*#__PURE__*/_react.default.createElement("div", {
228
- className: (0, _classnames.default)(classes.panelDetail)
229
- }, compareList(classes, jcampSt, rmOthersOneAct, toggleShowAct)));
182
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Table, {
183
+ className: classes.table,
184
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableBody, {
185
+ children: rows.map(row => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableRow, {
186
+ className: classes.tRow,
187
+ hover: true,
188
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
189
+ align: "right",
190
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
191
+ style: {
192
+ backgroundColor: row.color
193
+ },
194
+ children: row.idx + 1
195
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
196
+ align: "right",
197
+ className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt', row.isShow ? null : classes.tTxtHide),
198
+ children: row.title
199
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableCell, {
200
+ align: "right",
201
+ className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt'),
202
+ children: [row.isShow ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_VisibilityOutlined.default, {
203
+ onClick: row.toggleShowCb,
204
+ className: classes.showBtn
205
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_VisibilityOffOutlined.default, {
206
+ onClick: row.toggleShowCb,
207
+ className: classes.hideBtn
208
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_HighlightOff.default, {
209
+ onClick: row.rmCb,
210
+ className: classes.rmBtn
211
+ })]
212
+ })]
213
+ }, row.idx))
214
+ })
215
+ });
230
216
  };
217
+ const ComparePanel = ({
218
+ classes,
219
+ expand,
220
+ onExapnd,
221
+ jcampSt,
222
+ rmOthersOneAct,
223
+ toggleShowAct
224
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Accordion, {
225
+ expanded: expand,
226
+ onChange: onExapnd,
227
+ className: (0, _classnames.default)(classes.panel),
228
+ TransitionProps: {
229
+ unmountOnExit: true
230
+ } // increase Accordion performance
231
+ ,
232
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.AccordionSummary, {
233
+ expandIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {}),
234
+ className: (0, _classnames.default)(classes.panelSummary),
235
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
236
+ className: "txt-panel-header",
237
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
238
+ className: (0, _classnames.default)(classes.txtBadge, 'txt-sv-panel-title'),
239
+ children: "Spectra Comparisons"
240
+ })
241
+ })
242
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Divider, {}), inputOthers(classes, jcampSt), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
243
+ className: (0, _classnames.default)(classes.panelDetail),
244
+ children: compareList(classes, jcampSt, rmOthersOneAct, toggleShowAct)
245
+ })]
246
+ });
231
247
  const mapStateToProps = (state, props) => (
232
248
  // eslint-disable-line
233
249
  {
@@ -22,6 +22,7 @@ var _ui = require("../../actions/ui");
22
22
  var _list_ui = require("../../constants/list_ui");
23
23
  var _chem = require("../../helpers/chem");
24
24
  var _format = _interopRequireDefault(require("../../helpers/format"));
25
+ var _jsxRuntime = require("react/jsx-runtime");
25
26
  /* eslint-disable function-paren-newline, react/require-default-props,
26
27
  react/no-unused-prop-types, react/jsx-closing-tag-location, max-len, react/jsx-one-expression-per-line,
27
28
  react/jsx-indent, react/no-unescaped-entities, react/jsx-wrap-multilines, camelcase, no-shadow,
@@ -92,21 +93,20 @@ const styles = () => ({
92
93
  whiteSpace: 'nowrap'
93
94
  }
94
95
  });
95
- const CyclicVoltammetryPanel = _ref => {
96
- let {
97
- classes,
98
- cyclicVotaSt,
99
- feature,
100
- addNewPairPeakAct,
101
- setWorkWithMaxPeakAct,
102
- selectPairPeakAct,
103
- removePairPeakAct,
104
- selectRefPeaksAct,
105
- sweepTypeSt,
106
- setUiSweepTypeAct,
107
- jcampIdx,
108
- userManualLink
109
- } = _ref;
96
+ const CyclicVoltammetryPanel = ({
97
+ classes,
98
+ cyclicVotaSt,
99
+ feature,
100
+ addNewPairPeakAct,
101
+ setWorkWithMaxPeakAct,
102
+ selectPairPeakAct,
103
+ removePairPeakAct,
104
+ selectRefPeaksAct,
105
+ sweepTypeSt,
106
+ setUiSweepTypeAct,
107
+ jcampIdx,
108
+ userManualLink
109
+ }) => {
110
110
  const {
111
111
  spectraList
112
112
  } = cyclicVotaSt;
@@ -171,113 +171,162 @@ const CyclicVoltammetryPanel = _ref => {
171
171
  }),
172
172
  onCheckRefChanged: e => changeCheckRefPeaks(idx, e)
173
173
  }));
174
- return /*#__PURE__*/_react.default.createElement(_material.Accordion, {
175
- "data-testid": "PanelVoltammetry"
176
- }, /*#__PURE__*/_react.default.createElement(_material.AccordionSummary, {
177
- expandIcon: /*#__PURE__*/_react.default.createElement(_ExpandMore.default, null),
178
- className: (0, _classnames.default)(classes.panelSummary)
179
- }, /*#__PURE__*/_react.default.createElement(_material.Typography, {
180
- className: "txt-panel-header"
181
- }, /*#__PURE__*/_react.default.createElement("span", {
182
- className: (0, _classnames.default)(classes.txtBadge, 'txt-sv-panel-title')
183
- }, "Voltammetry data"))), /*#__PURE__*/_react.default.createElement(_material.Divider, null), /*#__PURE__*/_react.default.createElement(_material.Table, {
184
- className: classes.table
185
- }, /*#__PURE__*/_react.default.createElement(_material.TableHead, null, /*#__PURE__*/_react.default.createElement(_material.TableRow, null, /*#__PURE__*/_react.default.createElement(_material.TableCell, {
186
- align: "left",
187
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
188
- }, "Ref"), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
189
- align: "left",
190
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
191
- }, "Anodic"), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
192
- align: "left",
193
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
194
- }, "Cathodic"), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
195
- align: "left",
196
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
197
- }, "I ", /*#__PURE__*/_react.default.createElement("sub", null, "\u03BB0"), /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
198
- title: /*#__PURE__*/_react.default.createElement("p", {
199
- className: (0, _classnames.default)(classes.txtToolTip)
200
- }, "Baseline correction value for I ratio ", /*#__PURE__*/_react.default.createElement("br", null), "(a.k.a y value of pecker)")
201
- }, /*#__PURE__*/_react.default.createElement(_Info.default, {
202
- className: (0, _classnames.default)(classes.infoIcon)
203
- }))), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
204
- align: "left",
205
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
206
- }, "I ratio", /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
207
- title: /*#__PURE__*/_react.default.createElement("div", {
208
- className: (0, _classnames.default)(classes.txtToolTip)
209
- }, /*#__PURE__*/_react.default.createElement("p", null, "Nicholson's method"), /*#__PURE__*/_react.default.createElement("i", null, "NICHOLSON, Rl S. Semiempirical Procedure for Measuring with Stationary Electrode Polarography Rates of Chemical Reactions Involving the Product of Electron Transfer. Analytical Chemistry, 1966, 38. Jg., Nr. 10, S. 1406-1406. https://doi.org/10.1021/ac60242a030"))
210
- }, /*#__PURE__*/_react.default.createElement(_Info.default, {
211
- className: (0, _classnames.default)(classes.infoIcon)
212
- }))), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
213
- align: "left",
214
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
215
- }, "E", /*#__PURE__*/_react.default.createElement("sub", null, "1/2")), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
216
- align: "left",
217
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
218
- }, "\u0394E", /*#__PURE__*/_react.default.createElement("sub", null, "p"), /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
219
- title: /*#__PURE__*/_react.default.createElement("span", {
220
- className: (0, _classnames.default)(classes.txtToolTip)
221
- }, "| Epa - Epc |")
222
- }, /*#__PURE__*/_react.default.createElement(_Info.default, {
223
- className: (0, _classnames.default)(classes.infoIcon)
224
- }))), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
225
- align: "left",
226
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
227
- }, /*#__PURE__*/_react.default.createElement(_AddCircleOutline.default, {
228
- onClick: () => addNewPairPeakAct(jcampIdx),
229
- className: (0, _classnames.default)(classes.btnAddRow)
230
- })))), /*#__PURE__*/_react.default.createElement(_material.TableBody, null, rows.map(row => /*#__PURE__*/_react.default.createElement(_material.TableRow, {
231
- key: row.idx
232
- }, /*#__PURE__*/_react.default.createElement(_material.TableCell, {
233
- align: "left",
234
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
235
- }, /*#__PURE__*/_react.default.createElement(_material.Checkbox, {
236
- checked: row.isRef,
237
- onChange: row.onCheckRefChanged
238
- })), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
239
- align: "left",
240
- className: (0, _classnames.default)(classes.tTxt, classes.square, spectra.isWorkMaxPeak && spectra.selectedIdx === row.idx ? classes.cellSelected : 'txt-sv-panel-txt'),
241
- onClick: row.onClickMax
242
- }, row.max.split('\n').map((s, index) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
243
- key: index
244
- }, s, /*#__PURE__*/_react.default.createElement("br", null)))), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
245
- align: "left",
246
- className: (0, _classnames.default)(classes.tTxt, classes.square, !spectra.isWorkMaxPeak && spectra.selectedIdx === row.idx ? classes.cellSelected : 'txt-sv-panel-txt'),
247
- onClick: row.onClickMin
248
- }, row.min.split('\n').map((s, index) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
249
- key: index
250
- }, s, /*#__PURE__*/_react.default.createElement("br", null)))), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
251
- align: "left",
252
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
253
- }, row.pecker), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
254
- align: "left",
255
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
256
- }, row.ratio), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
257
- align: "left",
258
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
259
- }, row.e12), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
260
- align: "left",
261
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
262
- }, row.delta), /*#__PURE__*/_react.default.createElement(_material.TableCell, {
263
- align: "left",
264
- className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt')
265
- }, /*#__PURE__*/_react.default.createElement(_RemoveCircle.default, {
266
- className: (0, _classnames.default)(classes.btnRemove),
267
- onClick: row.remove
268
- })))))), /*#__PURE__*/_react.default.createElement("div", {
269
- className: (0, _classnames.default)(classes.rowRoot, classes.rowEven)
270
- }, /*#__PURE__*/_react.default.createElement(_material.Tooltip, {
271
- title: /*#__PURE__*/_react.default.createElement("span", {
272
- className: (0, _classnames.default)(classes.txtToolTip)
273
- }, "Click here to open the User manual document")
274
- }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement("a", {
275
- target: "_blank",
276
- rel: "noopener noreferrer",
277
- href: userManualLink
278
- }, "How-To "), /*#__PURE__*/_react.default.createElement(_Help.default, {
279
- className: (0, _classnames.default)(classes.infoIcon)
280
- })))));
174
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Accordion, {
175
+ "data-testid": "PanelVoltammetry",
176
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.AccordionSummary, {
177
+ expandIcon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExpandMore.default, {}),
178
+ className: (0, _classnames.default)(classes.panelSummary),
179
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Typography, {
180
+ className: "txt-panel-header",
181
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
182
+ className: (0, _classnames.default)(classes.txtBadge, 'txt-sv-panel-title'),
183
+ children: "Voltammetry data"
184
+ })
185
+ })
186
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Divider, {}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Table, {
187
+ className: classes.table,
188
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableHead, {
189
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableRow, {
190
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
191
+ align: "left",
192
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
193
+ children: "Ref"
194
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
195
+ align: "left",
196
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
197
+ children: "Anodic"
198
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
199
+ align: "left",
200
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
201
+ children: "Cathodic"
202
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableCell, {
203
+ align: "left",
204
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
205
+ children: ["I ", /*#__PURE__*/(0, _jsxRuntime.jsx)("sub", {
206
+ children: "\u03BB0"
207
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
208
+ title: /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
209
+ className: (0, _classnames.default)(classes.txtToolTip),
210
+ children: ["Baseline correction value for I ratio ", /*#__PURE__*/(0, _jsxRuntime.jsx)("br", {}), "(a.k.a y value of pecker)"]
211
+ }),
212
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Info.default, {
213
+ className: (0, _classnames.default)(classes.infoIcon)
214
+ })
215
+ })]
216
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableCell, {
217
+ align: "left",
218
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
219
+ children: ["I ratio", /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
220
+ title: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
221
+ className: (0, _classnames.default)(classes.txtToolTip),
222
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
223
+ children: "Nicholson's method"
224
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("i", {
225
+ children: "NICHOLSON, Rl S. Semiempirical Procedure for Measuring with Stationary Electrode Polarography Rates of Chemical Reactions Involving the Product of Electron Transfer. Analytical Chemistry, 1966, 38. Jg., Nr. 10, S. 1406-1406. https://doi.org/10.1021/ac60242a030"
226
+ })]
227
+ }),
228
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Info.default, {
229
+ className: (0, _classnames.default)(classes.infoIcon)
230
+ })
231
+ })]
232
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableCell, {
233
+ align: "left",
234
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
235
+ children: ["E", /*#__PURE__*/(0, _jsxRuntime.jsx)("sub", {
236
+ children: "1/2"
237
+ })]
238
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableCell, {
239
+ align: "left",
240
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
241
+ children: ["\u0394E", /*#__PURE__*/(0, _jsxRuntime.jsx)("sub", {
242
+ children: "p"
243
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
244
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
245
+ className: (0, _classnames.default)(classes.txtToolTip),
246
+ children: "| Epa - Epc |"
247
+ }),
248
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Info.default, {
249
+ className: (0, _classnames.default)(classes.infoIcon)
250
+ })
251
+ })]
252
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
253
+ align: "left",
254
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
255
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_AddCircleOutline.default, {
256
+ onClick: () => addNewPairPeakAct(jcampIdx),
257
+ className: (0, _classnames.default)(classes.btnAddRow)
258
+ })
259
+ })]
260
+ })
261
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableBody, {
262
+ children: rows.map(row => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.TableRow, {
263
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
264
+ align: "left",
265
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
266
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Checkbox, {
267
+ checked: row.isRef,
268
+ onChange: row.onCheckRefChanged
269
+ })
270
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
271
+ align: "left",
272
+ className: (0, _classnames.default)(classes.tTxt, classes.square, spectra.isWorkMaxPeak && spectra.selectedIdx === row.idx ? classes.cellSelected : 'txt-sv-panel-txt'),
273
+ onClick: row.onClickMax,
274
+ children: row.max.split('\n').map((s, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.default.Fragment, {
275
+ children: [s, /*#__PURE__*/(0, _jsxRuntime.jsx)("br", {})]
276
+ }, index))
277
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
278
+ align: "left",
279
+ className: (0, _classnames.default)(classes.tTxt, classes.square, !spectra.isWorkMaxPeak && spectra.selectedIdx === row.idx ? classes.cellSelected : 'txt-sv-panel-txt'),
280
+ onClick: row.onClickMin,
281
+ children: row.min.split('\n').map((s, index) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.default.Fragment, {
282
+ children: [s, /*#__PURE__*/(0, _jsxRuntime.jsx)("br", {})]
283
+ }, index))
284
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
285
+ align: "left",
286
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
287
+ children: row.pecker
288
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
289
+ align: "left",
290
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
291
+ children: row.ratio
292
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
293
+ align: "left",
294
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
295
+ children: row.e12
296
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
297
+ align: "left",
298
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
299
+ children: row.delta
300
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.TableCell, {
301
+ align: "left",
302
+ className: (0, _classnames.default)(classes.tTxt, classes.square, 'txt-sv-panel-txt'),
303
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_RemoveCircle.default, {
304
+ className: (0, _classnames.default)(classes.btnRemove),
305
+ onClick: row.remove
306
+ })
307
+ })]
308
+ }, row.idx))
309
+ })]
310
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
311
+ className: (0, _classnames.default)(classes.rowRoot, classes.rowEven),
312
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.Tooltip, {
313
+ title: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
314
+ className: (0, _classnames.default)(classes.txtToolTip),
315
+ children: "Click here to open the User manual document"
316
+ }),
317
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
318
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("a", {
319
+ target: "_blank",
320
+ rel: "noopener noreferrer",
321
+ href: userManualLink,
322
+ children: "How-To "
323
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Help.default, {
324
+ className: (0, _classnames.default)(classes.infoIcon)
325
+ })]
326
+ })
327
+ })
328
+ })]
329
+ });
281
330
  };
282
331
  const mapStateToProps = (state, props) => (
283
332
  // eslint-disable-line