@complat/react-spectra-editor 1.3.2 → 1.3.4

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.
@@ -156,6 +156,10 @@ const layoutSelect = (classes, layoutSt, updateLayoutAct) => {
156
156
  }, /*#__PURE__*/_react.default.createElement("span", {
157
157
  className: (0, _classnames.default)(classes.txtOpt, 'option-sv-bar-layout')
158
158
  }, "SEC")), /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
159
+ value: _list_layout.LIST_LAYOUT.GC
160
+ }, /*#__PURE__*/_react.default.createElement("span", {
161
+ className: (0, _classnames.default)(classes.txtOpt, 'option-sv-bar-layout')
162
+ }, "GC (GAS CHROMATOGRAPHY)")), /*#__PURE__*/_react.default.createElement(_material.MenuItem, {
159
163
  value: _list_layout.LIST_LAYOUT.AIF
160
164
  }, /*#__PURE__*/_react.default.createElement("span", {
161
165
  className: (0, _classnames.default)(classes.txtOpt, 'option-sv-bar-layout')
@@ -596,7 +596,7 @@ class LineFocus {
596
596
  return null;
597
597
  }
598
598
  reverseXAxis(layoutSt) {
599
- return [_list_layout.LIST_LAYOUT.UVVIS, _list_layout.LIST_LAYOUT.HPLC_UVVIS, _list_layout.LIST_LAYOUT.TGA, _list_layout.LIST_LAYOUT.DSC, _list_layout.LIST_LAYOUT.XRD, _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.CDS, _list_layout.LIST_LAYOUT.DLS_ACF, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.EMISSIONS, _list_layout.LIST_LAYOUT.DLS_INTENSITY].indexOf(layoutSt) < 0;
599
+ return [_list_layout.LIST_LAYOUT.UVVIS, _list_layout.LIST_LAYOUT.HPLC_UVVIS, _list_layout.LIST_LAYOUT.TGA, _list_layout.LIST_LAYOUT.DSC, _list_layout.LIST_LAYOUT.XRD, _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.CDS, _list_layout.LIST_LAYOUT.DLS_ACF, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.GC, _list_layout.LIST_LAYOUT.EMISSIONS, _list_layout.LIST_LAYOUT.DLS_INTENSITY].indexOf(layoutSt) < 0;
600
600
  }
601
601
  create(_ref) {
602
602
  let {
@@ -171,16 +171,17 @@ class MultiFocus {
171
171
  if (idx === jcampIdx) {
172
172
  this.data = [...currData];
173
173
  this.pathColor = color;
174
- filterSubLayoutValue = feature.xUnit;
174
+ filterSubLayoutValue = _format.default.isSECLayout(layout) ? feature.xUnit : feature.yUnit;
175
175
  } else {
176
+ const filterValue = _format.default.isSECLayout(layout) ? feature.xUnit : feature.yUnit;
176
177
  this.otherLineData.push({
177
178
  data: currData,
178
179
  color,
179
- filterSublayout: feature.xUnit
180
+ filterSublayout: filterValue
180
181
  });
181
182
  }
182
183
  });
183
- if (_format.default.isSECLayout(layout)) {
184
+ if (_format.default.isSECLayout(layout) || _format.default.isGCLayout(layout)) {
184
185
  this.otherLineData = this.otherLineData.filter(data => {
185
186
  return data.filterSublayout === filterSubLayoutValue;
186
187
  });
@@ -785,7 +786,7 @@ class MultiFocus {
785
786
  ccp.enter().append('path').attr('d', lineSymbol).attr('class', 'enter-ref').attr('fill', 'green').attr('fill-opacity', 0.8).merge(ccp).attr('transform', d => `translate(${xt(d.x)}, ${yt(d.y)})`);
786
787
  }
787
788
  reverseXAxis(layoutSt) {
788
- return [_list_layout.LIST_LAYOUT.UVVIS, _list_layout.LIST_LAYOUT.HPLC_UVVIS, _list_layout.LIST_LAYOUT.TGA, _list_layout.LIST_LAYOUT.DSC, _list_layout.LIST_LAYOUT.XRD, _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.CDS, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.AIF].indexOf(layoutSt) < 0;
789
+ return [_list_layout.LIST_LAYOUT.UVVIS, _list_layout.LIST_LAYOUT.HPLC_UVVIS, _list_layout.LIST_LAYOUT.TGA, _list_layout.LIST_LAYOUT.DSC, _list_layout.LIST_LAYOUT.XRD, _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.CDS, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.GC, _list_layout.LIST_LAYOUT.AIF].indexOf(layoutSt) < 0;
789
790
  }
790
791
  create(_ref) {
791
792
  let {
@@ -17,6 +17,7 @@ var _index3 = _interopRequireDefault(require("./d3_multi/index"));
17
17
  var _curve = require("../actions/curve");
18
18
  var _cyclic_voltammetry = require("../actions/cyclic_voltammetry");
19
19
  var _list_layout = require("../constants/list_layout");
20
+ var _format = _interopRequireDefault(require("../helpers/format"));
20
21
  /* eslint-disable react/default-props-match-prop-types,
21
22
  react/require-default-props, react/no-unused-prop-types, react/jsx-boolean-value,
22
23
  prefer-object-spread */
@@ -63,10 +64,12 @@ class MultiJcampsViewer extends _react.default.Component {
63
64
  userManualLink,
64
65
  molSvg,
65
66
  theoryMass,
66
- layoutSt
67
+ layoutSt,
68
+ integrationSt
67
69
  } = this.props;
68
70
  if (!entities || entities.length === 0) return /*#__PURE__*/_react.default.createElement("div", null);
69
- const seperatedSubLayouts = seperatingSubLayout(entities, 'xUnit', layoutSt);
71
+ const separateCondition = _format.default.isGCLayout(layoutSt) ? 'yUnit' : 'xUnit';
72
+ const seperatedSubLayouts = seperatingSubLayout(entities, separateCondition, layoutSt);
70
73
  const {
71
74
  curveIdx
72
75
  } = curveSt;
@@ -75,6 +78,10 @@ class MultiJcampsViewer extends _react.default.Component {
75
78
  feature,
76
79
  topic
77
80
  } = entity;
81
+ const {
82
+ integrations
83
+ } = integrationSt;
84
+ const currentIntegration = integrations[curveIdx];
78
85
  return /*#__PURE__*/_react.default.createElement("div", {
79
86
  className: classes.root
80
87
  }, /*#__PURE__*/_react.default.createElement(_index2.default, {
@@ -107,6 +114,7 @@ class MultiJcampsViewer extends _react.default.Component {
107
114
  molSvg: molSvg,
108
115
  theoryMass: theoryMass,
109
116
  subLayoutsInfo: seperatedSubLayouts,
117
+ integration: currentIntegration,
110
118
  descriptions: "",
111
119
  canChangeDescription: () => {},
112
120
  onDescriptionChanged: () => {}
@@ -119,7 +127,8 @@ const mapStateToProps = (state, _) => (
119
127
  curveSt: state.curve,
120
128
  cyclicVoltaSt: state.cyclicvolta,
121
129
  entities: state.curve.listCurves,
122
- layoutSt: state.layout
130
+ layoutSt: state.layout,
131
+ integrationSt: state.integration.present
123
132
  });
124
133
  const mapDispatchToProps = dispatch => (0, _redux.bindActionCreators)({
125
134
  setAllCurvesAct: _curve.setAllCurves,
@@ -143,7 +152,8 @@ MultiJcampsViewer.propTypes = {
143
152
  userManualLink: _propTypes.default.object,
144
153
  entities: _propTypes.default.array,
145
154
  layoutSt: _propTypes.default.string.isRequired,
146
- theoryMass: _propTypes.default.string
155
+ theoryMass: _propTypes.default.string,
156
+ integrationSt: _propTypes.default.object.isRequired
147
157
  };
148
158
  MultiJcampsViewer.defaultProps = {
149
159
  multiEntities: [],
@@ -61,10 +61,13 @@ const GraphSelectionPanel = _ref => {
61
61
  toggleShowAllCurveAct
62
62
  } = _ref;
63
63
  let subLayoutValues = [];
64
- if (subLayoutsInfo !== undefined && subLayoutsInfo !== null) {
64
+ if (subLayoutsInfo) {
65
65
  subLayoutValues = Object.keys(subLayoutsInfo);
66
66
  }
67
67
  const [selectedSubLayout, setSelectedSublayout] = (0, _react.useState)(subLayoutValues[0]);
68
+ (0, _react.useEffect)(() => {
69
+ setSelectedSublayout(subLayoutValues[0]);
70
+ }, subLayoutValues);
68
71
  if (!curveSt) {
69
72
  return /*#__PURE__*/_react.default.createElement("span", null);
70
73
  }
@@ -144,13 +147,19 @@ const GraphSelectionPanel = _ref => {
144
147
  onChange: onChangeTabSubLayout
145
148
  }, subLayoutValues.map((subLayout, i) => {
146
149
  let subLayoutName = '';
147
- switch (subLayout) {
150
+ switch (subLayout.toUpperCase()) {
148
151
  case 'G/MOL':
149
152
  subLayoutName = 'MWD';
150
153
  break;
151
154
  case 'MILLILITERS':
152
155
  subLayoutName = 'ELU';
153
156
  break;
157
+ case 'INTENSITY':
158
+ subLayoutName = 'Chromatogram';
159
+ break;
160
+ case 'DEGREES CELSIUS':
161
+ subLayoutName = 'Temperature';
162
+ break;
154
163
  default:
155
164
  break;
156
165
  }
@@ -26,5 +26,6 @@ const LIST_LAYOUT = exports.LIST_LAYOUT = {
26
26
  EMISSIONS: 'Emissions',
27
27
  DLS_ACF: 'DLS ACF',
28
28
  DLS_INTENSITY: 'DLS intensity',
29
- DSC: 'DIFFERENTIAL SCANNING CALORIMETRY'
29
+ DSC: 'DIFFERENTIAL SCANNING CALORIMETRY',
30
+ GC: 'GAS CHROMATOGRAPHY'
30
31
  };
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _format = _interopRequireDefault(require("./format"));
9
- const btnCmdAnaViewer = layoutSt => _format.default.isMsLayout(layoutSt) || _format.default.isRamanLayout(layoutSt) || _format.default.is19FLayout(layoutSt) || _format.default.isUvVisLayout(layoutSt) || _format.default.isHplcUvVisLayout(layoutSt) || _format.default.isTGALayout(layoutSt) || _format.default.isDSCLayout(layoutSt) || _format.default.isXRDLayout(layoutSt) || _format.default.is31PLayout(layoutSt) || _format.default.is15NLayout(layoutSt) || _format.default.is29SiLayout(layoutSt) || _format.default.isCyclicVoltaLayout(layoutSt) || _format.default.isCDSLayout(layoutSt) || _format.default.isSECLayout(layoutSt);
9
+ const btnCmdAnaViewer = layoutSt => _format.default.isMsLayout(layoutSt) || _format.default.isRamanLayout(layoutSt) || _format.default.is19FLayout(layoutSt) || _format.default.isUvVisLayout(layoutSt) || _format.default.isHplcUvVisLayout(layoutSt) || _format.default.isTGALayout(layoutSt) || _format.default.isDSCLayout(layoutSt) || _format.default.isXRDLayout(layoutSt) || _format.default.is31PLayout(layoutSt) || _format.default.is15NLayout(layoutSt) || _format.default.is29SiLayout(layoutSt) || _format.default.isCyclicVoltaLayout(layoutSt) || _format.default.isCDSLayout(layoutSt) || _format.default.isSECLayout(layoutSt) || _format.default.isGCLayout(layoutSt);
10
10
  const hideCmdAnaViewer = () => false;
11
11
  const btnCmdAddPeak = layoutSt => _format.default.isMsLayout(layoutSt);
12
12
  const btnCmdRmPeak = layoutSt => _format.default.isMsLayout(layoutSt);
@@ -368,6 +368,9 @@ const readLayout = jcamp => {
368
368
  if (dataType.includes('SIZE EXCLUSION CHROMATOGRAPHY')) {
369
369
  return _list_layout.LIST_LAYOUT.SEC;
370
370
  }
371
+ if (dataType.includes('GAS CHROMATOGRAPHY')) {
372
+ return _list_layout.LIST_LAYOUT.GC;
373
+ }
371
374
  if (dataType.includes('SORPTION-DESORPTION MEASUREMENT')) {
372
375
  return _list_layout.LIST_LAYOUT.AIF;
373
376
  }
@@ -839,7 +842,7 @@ const ExtractJcamp = source => {
839
842
  layout,
840
843
  temperature
841
844
  };
842
- } else if (_format.default.isCyclicVoltaLayout(layout) || _format.default.isSECLayout(layout) || _format.default.isAIFLayout(layout) || _format.default.isCDSLayout(layout)) {
845
+ } else if (_format.default.isCyclicVoltaLayout(layout) || _format.default.isSECLayout(layout) || _format.default.isAIFLayout(layout) || _format.default.isCDSLayout(layout) || _format.default.isGCLayout(layout)) {
843
846
  features = extrFeaturesCylicVolta(jcamp, layout, peakUp);
844
847
  } else {
845
848
  features = extrFeaturesNi(jcamp, layout, peakUp, spectra);
@@ -59,8 +59,15 @@ const extractAreaUnderCurve = (allIntegrationSt, presentIntegrationSt, layoutSt)
59
59
  if (_format.default.isHplcUvVisLayout(layoutSt) && Array.isArray(allIntegrationSt) && presentIntegrationSt) {
60
60
  const results = [];
61
61
  allIntegrationSt.forEach(inte => {
62
- const aucVal = getAUCValue(inte, layoutSt);
63
- results.push(aucVal);
62
+ const {
63
+ integrations
64
+ } = inte;
65
+ const subResults = [];
66
+ integrations.forEach(subInte => {
67
+ const aucVal = getAUCValue(subInte, layoutSt);
68
+ subResults.push(aucVal);
69
+ });
70
+ results.push(subResults);
64
71
  });
65
72
  return results;
66
73
  }
@@ -24,6 +24,7 @@ const spectraDigit = layout => {
24
24
  case _list_layout.LIST_LAYOUT.XRD:
25
25
  case _list_layout.LIST_LAYOUT.CDS:
26
26
  case _list_layout.LIST_LAYOUT.SEC:
27
+ case _list_layout.LIST_LAYOUT.GC:
27
28
  case _list_layout.LIST_LAYOUT.MS:
28
29
  return 0;
29
30
  case _list_layout.LIST_LAYOUT.C13:
@@ -135,6 +136,10 @@ const spectraOps = {
135
136
  head: 'SIZE EXCLUSION CHROMATOGRAPHY',
136
137
  tail: '.'
137
138
  },
139
+ [_list_layout.LIST_LAYOUT.GC]: {
140
+ head: 'GAS CHROMATOGRAPHY',
141
+ tail: '.'
142
+ },
138
143
  [_list_layout.LIST_LAYOUT.EMISSIONS]: {
139
144
  head: 'EMISSION',
140
145
  tail: '.'
@@ -416,7 +421,7 @@ const peaksBody = _ref => {
416
421
  if (layout === _list_layout.LIST_LAYOUT.DLS_INTENSITY) {
417
422
  return formatedDLSIntensity(ordered, maxY, decimal, isAscend, isIntensity, boundary, false);
418
423
  }
419
- if (layout === _list_layout.LIST_LAYOUT.RAMAN || layout === _list_layout.LIST_LAYOUT.TGA || layout === _list_layout.LIST_LAYOUT.DSC || layout === _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY || layout === _list_layout.LIST_LAYOUT.CDS || layout === _list_layout.LIST_LAYOUT.SEC) {
424
+ if (layout === _list_layout.LIST_LAYOUT.RAMAN || layout === _list_layout.LIST_LAYOUT.TGA || layout === _list_layout.LIST_LAYOUT.DSC || layout === _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY || layout === _list_layout.LIST_LAYOUT.CDS || layout === _list_layout.LIST_LAYOUT.SEC || layout === _list_layout.LIST_LAYOUT.GC) {
420
425
  return formatedEm(ordered, maxY, decimal, isAscend, isIntensity, boundary, false);
421
426
  }
422
427
  if (layout === _list_layout.LIST_LAYOUT.XRD) {
@@ -464,8 +469,9 @@ const isXRDLayout = layoutSt => _list_layout.LIST_LAYOUT.XRD === layoutSt;
464
469
  const isCyclicVoltaLayout = layoutSt => _list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY === layoutSt;
465
470
  const isCDSLayout = layoutSt => _list_layout.LIST_LAYOUT.CDS === layoutSt;
466
471
  const isSECLayout = layoutSt => _list_layout.LIST_LAYOUT.SEC === layoutSt;
472
+ const isGCLayout = layoutSt => _list_layout.LIST_LAYOUT.GC === layoutSt;
467
473
  const isEmWaveLayout = layoutSt => [_list_layout.LIST_LAYOUT.IR, _list_layout.LIST_LAYOUT.RAMAN, _list_layout.LIST_LAYOUT.UVVIS, _list_layout.LIST_LAYOUT.HPLC_UVVIS].indexOf(layoutSt) >= 0;
468
- const hasMultiCurves = layoutSt => [_list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.AIF].indexOf(layoutSt) >= 0;
474
+ const hasMultiCurves = layoutSt => [_list_layout.LIST_LAYOUT.CYCLIC_VOLTAMMETRY, _list_layout.LIST_LAYOUT.SEC, _list_layout.LIST_LAYOUT.GC, _list_layout.LIST_LAYOUT.AIF].indexOf(layoutSt) >= 0;
469
475
  const isAIFLayout = layoutSt => _list_layout.LIST_LAYOUT.AIF === layoutSt;
470
476
  const isEmissionsLayout = layoutSt => _list_layout.LIST_LAYOUT.EMISSIONS === layoutSt;
471
477
  const isDLSACFLayout = layoutSt => _list_layout.LIST_LAYOUT.DLS_ACF === layoutSt;
@@ -518,7 +524,7 @@ const formatPeaksByPrediction = function (peaks, layout, isAscend, decimal) {
518
524
  return body;
519
525
  };
520
526
  const compareColors = idx => ['#ABB2B9', '#EDBB99', '#ABEBC6', '#D2B4DE', '#F9E79F'][idx % 5];
521
- const mutiEntitiesColors = idx => ['#fa8231', '#f7b731', '#0fb9b1', '#2d98da', '#3867d6', '#8854d0', '#4b6584'][idx % 7];
527
+ const mutiEntitiesColors = idx => ['#d35400', '#2980b9', '#8e44ad', '#2c3e50', '#6D214F', '#182C61', '#BDC581'][idx % 7];
522
528
  const strNumberFixedDecimal = function (number) {
523
529
  let decimal = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : -1;
524
530
  if (decimal <= 0) {
@@ -660,6 +666,7 @@ const Format = {
660
666
  isEmissionsLayout,
661
667
  isDLSIntensityLayout,
662
668
  isEmWaveLayout,
669
+ isGCLayout,
663
670
  fixDigit,
664
671
  formatPeaksByPrediction,
665
672
  formatedMS,
@@ -47,7 +47,10 @@ exports.getAbsoluteArea = getAbsoluteArea;
47
47
  const calcArea = function (d, refArea, refFactor) {
48
48
  let ignoreRef = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
49
49
  if (ignoreRef) {
50
- return d.absoluteArea.toFixed(2);
50
+ const {
51
+ absoluteArea
52
+ } = d;
53
+ return !absoluteArea ? 0 : d.absoluteArea.toFixed(2);
51
54
  }
52
55
  return (d.area * refFactor / refArea).toFixed(2);
53
56
  };
package/dist/index.js CHANGED
@@ -40,6 +40,9 @@ var _sec_3_jcamp = _interopRequireDefault(require("./__tests__/fixtures/sec_3_jc
40
40
  var _sec_4_jcamp = _interopRequireDefault(require("./__tests__/fixtures/sec_4_jcamp"));
41
41
  var _aif_jcamp_ = _interopRequireDefault(require("./__tests__/fixtures/aif_jcamp_1"));
42
42
  var _aif_jcamp_2 = _interopRequireDefault(require("./__tests__/fixtures/aif_jcamp_2"));
43
+ var _gc_1_jcamp = _interopRequireDefault(require("./__tests__/fixtures/gc_1_jcamp"));
44
+ var _gc_2_jcamp = _interopRequireDefault(require("./__tests__/fixtures/gc_2_jcamp"));
45
+ var _gc_3_jcamp = _interopRequireDefault(require("./__tests__/fixtures/gc_3_jcamp"));
43
46
  var _emissions_jcamp = _interopRequireDefault(require("./__tests__/fixtures/emissions_jcamp"));
44
47
  var _dls_acf_jcamp = _interopRequireDefault(require("./__tests__/fixtures/dls_acf_jcamp"));
45
48
  var _dls_intensity_jcamp = _interopRequireDefault(require("./__tests__/fixtures/dls_intensity_jcamp"));
@@ -78,6 +81,9 @@ const secEntity3 = _app.FN.ExtractJcamp(_sec_3_jcamp.default);
78
81
  const secEntity4 = _app.FN.ExtractJcamp(_sec_4_jcamp.default);
79
82
  const aifEntity1 = _app.FN.ExtractJcamp(_aif_jcamp_.default);
80
83
  const aifEntity2 = _app.FN.ExtractJcamp(_aif_jcamp_2.default);
84
+ const gcEntity1 = _app.FN.ExtractJcamp(_gc_1_jcamp.default);
85
+ const gcEntity2 = _app.FN.ExtractJcamp(_gc_2_jcamp.default);
86
+ const gcEntity3 = _app.FN.ExtractJcamp(_gc_3_jcamp.default);
81
87
  const emissionsEntity = _app.FN.ExtractJcamp(_emissions_jcamp.default);
82
88
  const dlsAcfEntity = _app.FN.ExtractJcamp(_dls_acf_jcamp.default);
83
89
  const dlsIntensityEntity = _app.FN.ExtractJcamp(_dls_intensity_jcamp.default);
@@ -176,6 +182,8 @@ class DemoWriteIr extends _react.default.Component {
176
182
  return dlsAcfEntity;
177
183
  case 'dls intensity':
178
184
  return dlsIntensityEntity;
185
+ case 'gc':
186
+ return gcEntity1;
179
187
  case 'ms':
180
188
  default:
181
189
  return msEntity;
@@ -200,6 +208,8 @@ class DemoWriteIr extends _react.default.Component {
200
208
  return [secEntity1, secEntity2, secEntity3, secEntity4];
201
209
  case 'aif':
202
210
  return [aifEntity1, aifEntity2];
211
+ case 'gc':
212
+ return [gcEntity1, gcEntity2, gcEntity3];
203
213
  default:
204
214
  return false;
205
215
  }
@@ -235,6 +245,7 @@ class DemoWriteIr extends _react.default.Component {
235
245
  case 'emissions':
236
246
  case 'dls acf':
237
247
  case 'dls intensity':
248
+ case 'gc':
238
249
  default:
239
250
  return false;
240
251
  }
@@ -700,6 +711,13 @@ class DemoWriteIr extends _react.default.Component {
700
711
  },
701
712
  onClick: this.onClick('sec')
702
713
  }, "SEC"), /*#__PURE__*/_react.default.createElement(_material.Button, {
714
+ id: "btn-sec",
715
+ variant: "contained",
716
+ style: {
717
+ margin: '0 10px 0 10px'
718
+ },
719
+ onClick: this.onClick('gc')
720
+ }, "GC"), /*#__PURE__*/_react.default.createElement(_material.Button, {
703
721
  id: "btn-sod",
704
722
  variant: "contained",
705
723
  style: {
@@ -11,6 +11,7 @@ var _list_layout = require("../constants/list_layout");
11
11
 
12
12
  const getLayoutSt = state => state.layout;
13
13
  const getCurveSt = state => state.curve;
14
+ const getIntegrationSt = state => state.integration.present;
14
15
  function getMaxMinPeak(curve) {
15
16
  return curve.maxminPeak;
16
17
  }
@@ -105,5 +106,48 @@ function* setCyclicVoltametryRef(action) {
105
106
  }
106
107
  });
107
108
  }
108
- const multiEntitiesSagas = [(0, _effects.takeEvery)(_action_type.CURVE.SET_ALL_CURVES, setCyclicVoltametry), (0, _effects.takeEvery)(_action_type.CYCLIC_VOLTA_METRY.SET_FACTOR, setCyclicVoltametryRef)];
109
+ function* setInitIntegrations(action) {
110
+ // eslint-disable-line
111
+ const curveSt = yield (0, _effects.select)(getCurveSt);
112
+ const {
113
+ listCurves
114
+ } = curveSt;
115
+ if (listCurves) {
116
+ for (let index = 0; index < listCurves.length; index++) {
117
+ const integationSt = yield (0, _effects.select)(getIntegrationSt);
118
+ const curve = listCurves[index];
119
+ const {
120
+ integration,
121
+ simulation
122
+ } = curve;
123
+ const {
124
+ integrations
125
+ } = integationSt;
126
+ const newArrIntegration = [...integrations];
127
+ if (index < newArrIntegration.length) {
128
+ newArrIntegration[index] = integration;
129
+ } else {
130
+ newArrIntegration.push(integration);
131
+ }
132
+ const payload = Object.assign({}, integationSt, {
133
+ integrations: newArrIntegration,
134
+ selectedIdx: index
135
+ }); // eslint-disable-line
136
+
137
+ if (integration) {
138
+ yield (0, _effects.put)({
139
+ type: _action_type.INTEGRATION.RESET_ALL_RDC,
140
+ payload
141
+ });
142
+ }
143
+ if (simulation) {
144
+ yield (0, _effects.put)({
145
+ type: _action_type.SIMULATION.RESET_ALL_RDC,
146
+ payload: simulation
147
+ });
148
+ }
149
+ }
150
+ }
151
+ }
152
+ const multiEntitiesSagas = [(0, _effects.takeEvery)(_action_type.CURVE.SET_ALL_CURVES, setCyclicVoltametry), (0, _effects.takeEvery)(_action_type.CURVE.SET_ALL_CURVES, setInitIntegrations), (0, _effects.takeEvery)(_action_type.CYCLIC_VOLTA_METRY.SET_FACTOR, setCyclicVoltametryRef)];
109
153
  var _default = exports.default = multiEntitiesSagas;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@complat/react-spectra-editor",
3
- "version": "1.3.2",
4
- "description": "An editor to View and Edit Chemical Spectra data (NMR, IR, MS, CV, UIVIS, XRD, and DSC).",
3
+ "version": "1.3.4",
4
+ "description": "An editor to View and Edit Chemical Spectra data (NMR, IR, MS, CV, UIVIS, XRD, GC, and DSC).",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/ComPlat/react-spectra-editor"
@@ -16,6 +16,7 @@
16
16
  "@mui/icons-material": "^5.14.9",
17
17
  "@mui/material": "^5.14.9",
18
18
  "@mui/styles": "^5.14.9",
19
+ "@popperjs/core": "^2.11.8",
19
20
  "@types/jest": "^29.5.0",
20
21
  "@types/node": "^18.15.11",
21
22
  "@types/react": "^18.0.34",