@complat/react-spectra-editor 1.0.0-rc2 → 1.0.0-rc20.patch-1

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 (202) hide show
  1. package/README.md +16 -0
  2. package/dist/__tests__/fixtures/aif_jcamp_1.js +136 -0
  3. package/dist/__tests__/fixtures/aif_jcamp_2.js +122 -0
  4. package/dist/__tests__/fixtures/backup/nmr1h_a.js +3518 -0
  5. package/dist/__tests__/fixtures/backup/xrd_jcamp_1.js +10705 -0
  6. package/dist/__tests__/fixtures/cds_jcamp.js +861 -0
  7. package/dist/__tests__/fixtures/compare_ir_1_jcamp.js +585 -0
  8. package/dist/__tests__/fixtures/compare_ir_2_jcamp.js +515 -0
  9. package/dist/__tests__/fixtures/compare_uv_vis_jcamp.js +640 -0
  10. package/dist/__tests__/fixtures/cyclic_voltammetry_1.js +778 -0
  11. package/dist/__tests__/fixtures/cyclic_voltammetry_2.js +758 -0
  12. package/dist/__tests__/fixtures/cyclic_voltammetry_3.js +759 -0
  13. package/dist/__tests__/fixtures/dls_acf_jcamp.js +148 -0
  14. package/dist/__tests__/fixtures/dls_intensity_jcamp.js +151 -0
  15. package/dist/__tests__/fixtures/emissions_jcamp.js +883 -0
  16. package/dist/__tests__/fixtures/hplc_uvvis_jcamp.js +638 -0
  17. package/dist/__tests__/fixtures/hplc_uvvis_jcamp_2.js +221 -0
  18. package/dist/__tests__/fixtures/ir_jcamp.js +148 -0
  19. package/dist/__tests__/fixtures/ir_result.js +46 -0
  20. package/dist/__tests__/fixtures/ir_svg.js +8 -0
  21. package/dist/__tests__/fixtures/ms_jcamp.js +64 -0
  22. package/dist/__tests__/fixtures/nmr13c_dept_jcamp.js +3543 -0
  23. package/dist/__tests__/fixtures/nmr13c_jcamp.js +1229 -0
  24. package/dist/__tests__/fixtures/nmr15n_jcamp.js +7177 -0
  25. package/dist/__tests__/fixtures/nmr19f_jcamp.js +6560 -0
  26. package/dist/__tests__/fixtures/nmr1h_2_jcamp.js +2005 -0
  27. package/dist/__tests__/fixtures/nmr1h_jcamp.js +4516 -0
  28. package/dist/__tests__/fixtures/nmr29si_jcamp.js +3029 -0
  29. package/dist/__tests__/fixtures/nmr31p_jcamp.js +3418 -0
  30. package/dist/__tests__/fixtures/nmr_result.js +68 -0
  31. package/dist/__tests__/fixtures/nmr_svg.js +8 -0
  32. package/dist/__tests__/fixtures/phenylalanin.js +142 -0
  33. package/dist/__tests__/fixtures/qDescValue.js +65 -0
  34. package/dist/__tests__/fixtures/raman_jcamp.js +410 -0
  35. package/dist/__tests__/fixtures/sec_1_jcamp.js +425 -0
  36. package/dist/__tests__/fixtures/sec_2_jcamp.js +407 -0
  37. package/dist/__tests__/fixtures/sec_3_jcamp.js +408 -0
  38. package/dist/__tests__/fixtures/sec_4_jcamp.js +407 -0
  39. package/dist/__tests__/fixtures/tga_jcamp.js +4157 -0
  40. package/dist/__tests__/fixtures/uv_vis_jcamp.js +249 -0
  41. package/dist/__tests__/fixtures/xrd_jcamp_1.js +436 -0
  42. package/dist/__tests__/fixtures/xrd_jcamp_2.js +955 -0
  43. package/dist/__tests__/fixtures/xrd_jcamp_3.js +1871 -0
  44. package/dist/__tests__/units/components/panel/graph_selection.test.js +72 -0
  45. package/dist/__tests__/units/components/panel/peaks.test.js +87 -0
  46. package/dist/actions/curve.js +15 -14
  47. package/dist/actions/cyclic_voltammetry.js +40 -60
  48. package/dist/actions/edit_peak.js +8 -12
  49. package/dist/actions/forecast.js +16 -24
  50. package/dist/actions/integration.js +12 -18
  51. package/dist/actions/jcamp.js +16 -24
  52. package/dist/actions/layout.js +4 -6
  53. package/dist/actions/manager.js +20 -30
  54. package/dist/actions/meta.js +4 -6
  55. package/dist/actions/multiplicity.js +24 -36
  56. package/dist/actions/scan.js +12 -18
  57. package/dist/actions/shift.js +8 -12
  58. package/dist/actions/status.js +12 -18
  59. package/dist/actions/submit.js +16 -24
  60. package/dist/actions/threshold.js +20 -30
  61. package/dist/actions/ui.js +25 -31
  62. package/dist/actions/wavelength.js +4 -6
  63. package/dist/app.js +25 -23
  64. package/dist/components/cmd_bar/01_viewer.js +24 -34
  65. package/dist/components/cmd_bar/02_zoom.js +18 -28
  66. package/dist/components/cmd_bar/03_peak.js +50 -66
  67. package/dist/components/cmd_bar/04_integration.js +70 -84
  68. package/dist/components/cmd_bar/05_multiplicity.js +42 -56
  69. package/dist/components/cmd_bar/06_undo_redo.js +22 -36
  70. package/dist/components/cmd_bar/07_pecker.js +24 -34
  71. package/dist/components/cmd_bar/common.js +11 -7
  72. package/dist/components/cmd_bar/index.js +17 -23
  73. package/dist/components/cmd_bar/r01_layout.js +79 -56
  74. package/dist/components/cmd_bar/r02_scan.js +70 -87
  75. package/dist/components/cmd_bar/r03_threshold.js +54 -68
  76. package/dist/components/cmd_bar/r04_submit.js +71 -83
  77. package/dist/components/cmd_bar/r05_submit_btn.js +64 -72
  78. package/dist/components/cmd_bar/r06_predict_btn.js +142 -152
  79. package/dist/components/cmd_bar/r07_wavelength_btn.js +28 -36
  80. package/dist/components/cmd_bar/tri_btn.js +91 -113
  81. package/dist/components/common/chem.js +2 -3
  82. package/dist/components/common/comps.js +2 -2
  83. package/dist/components/common/draw.js +30 -11
  84. package/dist/components/d3_line/index.js +154 -176
  85. package/dist/components/d3_line/line_focus.js +595 -739
  86. package/dist/components/d3_multi/index.js +153 -174
  87. package/dist/components/d3_multi/multi_focus.js +725 -850
  88. package/dist/components/d3_rect/index.js +112 -134
  89. package/dist/components/d3_rect/rect_focus.js +163 -208
  90. package/dist/components/forecast/comps.js +60 -68
  91. package/dist/components/forecast/ir_comps.js +49 -56
  92. package/dist/components/forecast/ir_viewer.js +61 -68
  93. package/dist/components/forecast/nmr_comps.js +62 -72
  94. package/dist/components/forecast/nmr_viewer.js +59 -68
  95. package/dist/components/forecast/section_loading.js +39 -63
  96. package/dist/components/forecast_viewer.js +109 -119
  97. package/dist/components/multi_jcamps_viewer.js +97 -113
  98. package/dist/components/panel/compare.js +183 -192
  99. package/dist/components/panel/cyclic_voltamery_data.js +149 -165
  100. package/dist/components/panel/graph_selection.js +143 -132
  101. package/dist/components/panel/index.js +112 -144
  102. package/dist/components/panel/info.js +125 -132
  103. package/dist/components/panel/multiplicity.js +215 -223
  104. package/dist/components/panel/multiplicity_coupling.js +108 -136
  105. package/dist/components/panel/multiplicity_select.js +43 -51
  106. package/dist/components/panel/peaks.js +130 -132
  107. package/dist/constants/action_type.js +23 -39
  108. package/dist/constants/list_layout.js +7 -4
  109. package/dist/constants/list_shift.js +117 -103
  110. package/dist/constants/list_ui.js +3 -6
  111. package/dist/constants/list_wavelength.js +7 -8
  112. package/dist/fn.js +2 -3
  113. package/dist/helpers/brush.js +49 -65
  114. package/dist/helpers/calc.js +2 -4
  115. package/dist/helpers/carbonFeatures.js +22 -20
  116. package/dist/helpers/cfg.js +49 -67
  117. package/dist/helpers/chem.js +450 -393
  118. package/dist/helpers/compass.js +92 -83
  119. package/dist/helpers/converter.js +52 -65
  120. package/dist/helpers/extractParams.js +60 -52
  121. package/dist/helpers/extractPeaksEdit.js +29 -25
  122. package/dist/helpers/focus.js +2 -6
  123. package/dist/helpers/format.js +416 -361
  124. package/dist/helpers/init.js +41 -37
  125. package/dist/helpers/integration.js +18 -21
  126. package/dist/helpers/mount.js +57 -61
  127. package/dist/helpers/multiplicity.js +19 -24
  128. package/dist/helpers/multiplicity_calc.js +39 -50
  129. package/dist/helpers/multiplicity_complat.js +21 -47
  130. package/dist/helpers/multiplicity_manual.js +49 -55
  131. package/dist/helpers/multiplicity_verify_basic.js +108 -111
  132. package/dist/helpers/shift.js +15 -23
  133. package/dist/helpers/zoom.js +7 -11
  134. package/dist/index.js +680 -630
  135. package/dist/layer_content.js +40 -43
  136. package/dist/layer_init.js +162 -184
  137. package/dist/layer_prism.js +38 -41
  138. package/dist/reducers/index.js +2 -3
  139. package/dist/reducers/reducer_curve.js +35 -26
  140. package/dist/reducers/reducer_edit_peak.js +122 -98
  141. package/dist/reducers/reducer_forecast.js +57 -44
  142. package/dist/reducers/reducer_integration.js +135 -103
  143. package/dist/reducers/reducer_jcamp.js +49 -44
  144. package/dist/reducers/reducer_layout.js +5 -6
  145. package/dist/reducers/reducer_manager.js +5 -6
  146. package/dist/reducers/reducer_meta.js +5 -6
  147. package/dist/reducers/reducer_multiplicity.js +100 -77
  148. package/dist/reducers/reducer_scan.js +17 -20
  149. package/dist/reducers/reducer_shift.js +115 -70
  150. package/dist/reducers/reducer_simulation.js +7 -8
  151. package/dist/reducers/reducer_status.js +5 -6
  152. package/dist/reducers/reducer_submit.js +12 -15
  153. package/dist/reducers/reducer_threshold.js +5 -6
  154. package/dist/reducers/reducer_ui.js +5 -6
  155. package/dist/reducers/reducer_voltammetry.js +156 -96
  156. package/dist/reducers/reducer_wavelength.js +5 -6
  157. package/dist/reducers/undo_redo_config.js +3 -5
  158. package/dist/sagas/index.js +2 -15
  159. package/dist/sagas/saga_edit_peak.js +54 -68
  160. package/dist/sagas/saga_manager.js +86 -130
  161. package/dist/sagas/saga_meta.js +25 -31
  162. package/dist/sagas/saga_multi_entities.js +40 -103
  163. package/dist/sagas/saga_multiplicity.js +336 -406
  164. package/dist/sagas/saga_ui.js +296 -475
  165. package/dist/setupTests.js +8 -0
  166. package/dist/third_party/jAnalyzer.js +66 -67
  167. package/dist/third_party/peakInterval.js +34 -34
  168. package/package.json +14 -14
  169. package/dist/components/cmd_bar/03_peak_bk.js +0 -139
  170. package/dist/components/cmd_bar/04_integration_bk.js +0 -180
  171. package/dist/components/cmd_bar/05_multiplicity_bk.js +0 -131
  172. package/dist/components/cmd_bar/r01_layout_bk.js +0 -186
  173. package/dist/components/cmd_bar/r06_predict_btn_bk.js +0 -220
  174. package/dist/components/d3_line/line_focus_bk.js +0 -825
  175. package/dist/components/d3_multi/index_bk.js +0 -210
  176. package/dist/components/d3_multi/multi_focus_bk.js +0 -533
  177. package/dist/components/panel/compare_bk.js +0 -256
  178. package/dist/components/panel/cyclic_voltamery_data_bk.js +0 -292
  179. package/dist/components/panel/index_bk.js +0 -178
  180. package/dist/components/panel/info_bk.js +0 -235
  181. package/dist/components/panel/multiplicity_bk.js +0 -280
  182. package/dist/helpers/carbonFeatures_bk.js +0 -45
  183. package/dist/helpers/cfg_bk.js +0 -80
  184. package/dist/helpers/chem_bk.js +0 -787
  185. package/dist/helpers/compass_bk.js +0 -149
  186. package/dist/helpers/converter_bk.js +0 -96
  187. package/dist/helpers/extractPeaksEdit_bk.js +0 -53
  188. package/dist/helpers/format_bk.js +0 -497
  189. package/dist/index_bk.js +0 -640
  190. package/dist/layer_content_bk.js +0 -105
  191. package/dist/layer_init_bk.js +0 -235
  192. package/dist/layer_prism_bk.js +0 -133
  193. package/dist/reducers/reducer_edit_peak_bk.js +0 -108
  194. package/dist/reducers/reducer_integration_bk.js +0 -134
  195. package/dist/reducers/reducer_jcamp_bk.js +0 -71
  196. package/dist/reducers/reducer_multiplicity_bk.js +0 -126
  197. package/dist/reducers/reducer_shift_bk.js +0 -88
  198. package/dist/reducers/reducer_voltammetry_bk.js +0 -287
  199. package/dist/sagas/saga_edit_peak_bk.js +0 -73
  200. package/dist/sagas/saga_multi_entities_bk.js +0 -106
  201. package/dist/sagas/saga_multiplicity_bk.js +0 -351
  202. package/dist/sagas/saga_ui_bk.js +0 -453
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
8
  var _react = _interopRequireDefault(require("react"));
10
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
10
  var _reactRedux = require("react-redux");
@@ -27,28 +26,26 @@ var _chem = require("../../helpers/chem");
27
26
  max-len, react/function-component-definition,
28
27
  function-call-argument-newline, react/require-default-props */
29
28
 
30
- var styles = function styles() {
31
- return Object.assign({}, _common.commonStyle, {
32
- tTxt: {
33
- fontSize: '0.8rem',
34
- fontFamily: 'Helvetica',
35
- marginRight: 5
36
- },
37
- btnWidthUnknown: {
38
- minWidth: 30,
39
- width: 30
40
- },
41
- btnWidthIr: {
42
- minWidth: 30,
43
- width: 30
44
- },
45
- btnWidthNmr: {
46
- minWidth: 80,
47
- width: 80
48
- }
49
- });
50
- };
51
- var MuPredictButton = (0, _styles.withStyles)({
29
+ const styles = () => Object.assign({}, _common.commonStyle, {
30
+ tTxt: {
31
+ fontSize: '0.8rem',
32
+ fontFamily: 'Helvetica',
33
+ marginRight: 5
34
+ },
35
+ btnWidthUnknown: {
36
+ minWidth: 30,
37
+ width: 30
38
+ },
39
+ btnWidthIr: {
40
+ minWidth: 30,
41
+ width: 30
42
+ },
43
+ btnWidthNmr: {
44
+ minWidth: 80,
45
+ width: 80
46
+ }
47
+ });
48
+ const MuPredictButton = (0, _styles.withStyles)({
52
49
  root: {
53
50
  border: '1px solid #ccc',
54
51
  borderRadius: 4,
@@ -59,162 +56,156 @@ var MuPredictButton = (0, _styles.withStyles)({
59
56
  padding: 0
60
57
  }
61
58
  })(_Button.default);
62
- var onClickFail = function onClickFail(layoutSt, simuCount, realCount) {
63
- var feature = _format.default.is13CLayout(layoutSt) ? 'peak' : 'multiplet';
64
- return function () {
65
- return alert("Selected ".concat(feature, " count (").concat(realCount, ") must be larger than 0, and must be eqal or less than simulated count (").concat(simuCount, ")."));
66
- }; // eslint-disable-line
59
+ const onClickFail = (layoutSt, simuCount, realCount) => {
60
+ const feature = _format.default.is13CLayout(layoutSt) ? 'peak' : 'multiplet';
61
+ return () => alert(`Selected ${feature} count (${realCount}) must be larger than 0, and must be eqal or less than simulated count (${simuCount}).`); // eslint-disable-line
67
62
  };
68
63
 
69
- var onClickReady = function onClickReady(forecast, peaksEdit, layoutSt, scan, shiftSt, thres, analysis, integrationSt, multiplicitySt, setUiViewerTypeAct) {
70
- var btnCb = forecast.btnCb;
64
+ const onClickReady = (forecast, peaksEdit, layoutSt, scan, shiftSt, thres, analysis, integrationSt, multiplicitySt, setUiViewerTypeAct, curveSt) => {
65
+ const {
66
+ btnCb
67
+ } = forecast;
71
68
  if (!btnCb) {
72
- return function () {
73
- return alert('[Developer Warning] You need to implement btnCb in forecast!');
74
- }; // eslint-disable-line
69
+ return () => alert('[Developer Warning] You need to implement btnCb in forecast!'); // eslint-disable-line
75
70
  }
76
71
 
77
- return function () {
72
+ return () => {
78
73
  setUiViewerTypeAct(_list_ui.LIST_UI_VIEWER_TYPE.ANALYSIS);
79
74
  return btnCb({
80
75
  peaks: peaksEdit,
81
76
  layout: layoutSt,
82
- scan: scan,
83
- thres: thres,
84
- analysis: analysis,
77
+ scan,
78
+ thres,
79
+ analysis,
85
80
  integration: integrationSt,
86
81
  multiplicity: multiplicitySt,
87
- shift: shiftSt
82
+ shift: shiftSt,
83
+ curveSt
88
84
  });
89
85
  };
90
86
  };
91
- var onClicUnknown = function onClicUnknown(feature, forecast, peaksEdit, layoutSt, scan, shiftSt, thres, analysis, integrationSt, multiplicitySt, curveSt) {
92
- var refreshCb = forecast.refreshCb;
87
+ const onClicUnknown = (feature, forecast, peaksEdit, layoutSt, scan, shiftSt, thres, analysis, integrationSt, multiplicitySt, curveSt) => {
88
+ const {
89
+ refreshCb
90
+ } = forecast;
93
91
  if (!refreshCb) {
94
- return function () {
95
- return alert('[Developer Warning] You need to implement refreshCb in forecast!');
96
- }; // eslint-disable-line
92
+ return () => alert('[Developer Warning] You need to implement refreshCb in forecast!'); // eslint-disable-line
97
93
  }
98
94
 
99
- return function () {
100
- return refreshCb({
101
- peaks: peaksEdit,
102
- layout: layoutSt,
103
- scan: scan,
104
- shift: shiftSt,
105
- thres: thres,
106
- analysis: analysis,
107
- integration: integrationSt,
108
- multiplicity: multiplicitySt,
109
- curveSt: curveSt
110
- });
111
- };
112
- };
113
- var counterText = function counterText(classes, isIr, realCount, uniqCount, simuCount) {
114
- return isIr ? null : /*#__PURE__*/_react.default.createElement("span", {
115
- className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt')
116
- }, "".concat(realCount, "/").concat(uniqCount, "/").concat(simuCount));
117
- };
118
- var renderBtnPredict = function renderBtnPredict(classes, isIr, realCount, uniqCount, simuCount, color, btnWidthCls, onClick) {
119
- return /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
120
- title: /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
121
- className: "txt-sv-tp"
122
- }, "Predict"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
123
- className: "txt-sv-tp"
124
- }, "- Selected features must be eqal or less than simulated features."))
125
- }, /*#__PURE__*/_react.default.createElement(MuPredictButton, {
126
- className: (0, _classnames.default)('btn-sv-bar-submit', btnWidthCls),
127
- style: {
128
- color: color
129
- },
130
- onClick: onClick
131
- }, counterText(classes, isIr, realCount, uniqCount, simuCount), /*#__PURE__*/_react.default.createElement(_GpsFixedOutlined.default, {
132
- className: classes.icon
133
- })));
134
- };
135
- var renderBtnUnknown = function renderBtnUnknown(classes, onClick) {
136
- return /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
137
- title: /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
138
- className: "txt-sv-tp"
139
- }, "Refresh Simulation"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
140
- className: "txt-sv-tp"
141
- }, "- Simulation must be refreshed before making a prediction."), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
142
- className: "txt-sv-tp"
143
- }, "- If you continue to see this button after clicking it, the server is not ready. Please wait for a while."))
144
- }, /*#__PURE__*/_react.default.createElement(MuPredictButton, {
145
- className: (0, _classnames.default)('btn-sv-bar-submit', classes.btnWidthUnknown),
146
- style: {
147
- color: 'orange'
148
- },
149
- onClick: onClick
150
- }, /*#__PURE__*/_react.default.createElement(_HelpOutlineOutlined.default, {
151
- className: classes.icon
152
- })));
95
+ return () => refreshCb({
96
+ peaks: peaksEdit,
97
+ layout: layoutSt,
98
+ scan,
99
+ shift: shiftSt,
100
+ thres,
101
+ analysis,
102
+ integration: integrationSt,
103
+ multiplicity: multiplicitySt,
104
+ curveSt
105
+ });
153
106
  };
154
- var BtnPredict = function BtnPredict(_ref) {
155
- var classes = _ref.classes,
156
- feature = _ref.feature,
157
- forecast = _ref.forecast,
158
- layoutSt = _ref.layoutSt,
159
- simulationSt = _ref.simulationSt,
160
- editPeakSt = _ref.editPeakSt,
161
- scanSt = _ref.scanSt,
162
- shiftSt = _ref.shiftSt,
163
- thresSt = _ref.thresSt,
164
- integrationSt = _ref.integrationSt,
165
- multiplicitySt = _ref.multiplicitySt,
166
- setUiViewerTypeAct = _ref.setUiViewerTypeAct,
167
- curveSt = _ref.curveSt;
168
- var is13Cor1H = _format.default.is13CLayout(layoutSt) || _format.default.is1HLayout(layoutSt);
169
- var isIr = _format.default.isIrLayout(layoutSt);
107
+ const counterText = (classes, isIr, realCount, uniqCount, simuCount) => isIr ? null : /*#__PURE__*/_react.default.createElement("span", {
108
+ className: (0, _classnames.default)(classes.tTxt, 'txt-sv-panel-txt')
109
+ }, `${realCount}/${uniqCount}/${simuCount}`);
110
+ const renderBtnPredict = (classes, isIr, realCount, uniqCount, simuCount, color, btnWidthCls, onClick) => /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
111
+ title: /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
112
+ className: "txt-sv-tp"
113
+ }, "Predict"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
114
+ className: "txt-sv-tp"
115
+ }, "- Selected features must be eqal or less than simulated features."))
116
+ }, /*#__PURE__*/_react.default.createElement(MuPredictButton, {
117
+ className: (0, _classnames.default)('btn-sv-bar-submit', btnWidthCls),
118
+ style: {
119
+ color
120
+ },
121
+ onClick: onClick
122
+ }, counterText(classes, isIr, realCount, uniqCount, simuCount), /*#__PURE__*/_react.default.createElement(_GpsFixedOutlined.default, {
123
+ className: classes.icon
124
+ })));
125
+ const renderBtnUnknown = (classes, onClick) => /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
126
+ title: /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
127
+ className: "txt-sv-tp"
128
+ }, "Refresh Simulation"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
129
+ className: "txt-sv-tp"
130
+ }, "- Simulation must be refreshed before making a prediction."), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("span", {
131
+ className: "txt-sv-tp"
132
+ }, "- If you continue to see this button after clicking it, the server is not ready. Please wait for a while."))
133
+ }, /*#__PURE__*/_react.default.createElement(MuPredictButton, {
134
+ className: (0, _classnames.default)('btn-sv-bar-submit', classes.btnWidthUnknown),
135
+ style: {
136
+ color: 'orange'
137
+ },
138
+ onClick: onClick
139
+ }, /*#__PURE__*/_react.default.createElement(_HelpOutlineOutlined.default, {
140
+ className: classes.icon
141
+ })));
142
+ const BtnPredict = _ref => {
143
+ let {
144
+ classes,
145
+ feature,
146
+ forecast,
147
+ layoutSt,
148
+ simulationSt,
149
+ editPeakSt,
150
+ scanSt,
151
+ shiftSt,
152
+ thresSt,
153
+ integrationSt,
154
+ multiplicitySt,
155
+ setUiViewerTypeAct,
156
+ curveSt
157
+ } = _ref;
158
+ const is13Cor1H = _format.default.is13CLayout(layoutSt) || _format.default.is1HLayout(layoutSt);
159
+ const isIr = _format.default.isIrLayout(layoutSt);
170
160
  if (!(is13Cor1H || isIr)) return null;
171
- var oriPeaksEdit = (0, _extractPeaksEdit.extractPeaksEdit)(feature, editPeakSt, thresSt, shiftSt, layoutSt);
172
- var peaksEdit = _format.default.rmShiftFromPeaks(oriPeaksEdit, shiftSt);
173
- var scan = (0, _chem.Convert2Scan)(feature, scanSt);
174
- var thres = (0, _chem.Convert2Thres)(feature, thresSt);
175
- var simuCount = simulationSt.nmrSimPeaks.length;
176
- var uniqCount = (0, _toConsumableArray2.default)(new Set(simulationSt.nmrSimPeaks)).length;
177
- var realCount = 0;
161
+ const oriPeaksEdit = (0, _extractPeaksEdit.extractPeaksEdit)(feature, editPeakSt, thresSt, shiftSt, layoutSt);
162
+ const peaksEdit = _format.default.rmShiftFromPeaks(oriPeaksEdit, shiftSt);
163
+ const scan = (0, _chem.Convert2Scan)(feature, scanSt);
164
+ const thres = (0, _chem.Convert2Thres)(feature, thresSt);
165
+ const simuCount = simulationSt.nmrSimPeaks.length;
166
+ const uniqCount = [...new Set(simulationSt.nmrSimPeaks)].length;
167
+ let realCount = 0;
178
168
  if (_format.default.is13CLayout(layoutSt)) {
179
169
  realCount = (0, _carbonFeatures.carbonFeatures)(peaksEdit, multiplicitySt).length;
180
170
  } else {
181
- var selectedIdx = multiplicitySt.selectedIdx,
182
- multiplicities = multiplicitySt.multiplicities;
183
- var selectedMultiplicity = multiplicities[selectedIdx];
184
- var stack = selectedMultiplicity.stack;
171
+ const {
172
+ curveIdx
173
+ } = curveSt;
174
+ const {
175
+ multiplicities
176
+ } = multiplicitySt;
177
+ const selectedMultiplicity = multiplicities[curveIdx];
178
+ const {
179
+ stack
180
+ } = selectedMultiplicity;
185
181
  realCount = stack.length;
186
182
  }
187
183
  if (is13Cor1H && simuCount === 0) {
188
- var onClickUnknownCb = onClicUnknown(feature, forecast, peaksEdit, layoutSt, scan, shiftSt, thres, forecast.predictions, integrationSt, multiplicitySt, curveSt);
184
+ const onClickUnknownCb = onClicUnknown(feature, forecast, peaksEdit, layoutSt, scan, shiftSt, thres, forecast.predictions, integrationSt, multiplicitySt, curveSt);
189
185
  return renderBtnUnknown(classes, onClickUnknownCb);
190
186
  }
191
- var predictable = isIr || simuCount >= realCount && realCount > 0;
192
- var color = predictable ? 'green' : 'red';
193
- var onClick = predictable ? onClickReady(forecast, peaksEdit, layoutSt, scan, shiftSt, thres, forecast.predictions, integrationSt, multiplicitySt, setUiViewerTypeAct, curveSt) : onClickFail(layoutSt, simuCount, realCount);
194
- var btnWidthCls = isIr ? classes.btnWidthIr : classes.btnWidthNmr;
187
+ const predictable = isIr || simuCount >= realCount && realCount > 0;
188
+ const color = predictable ? 'green' : 'red';
189
+ const onClick = predictable ? onClickReady(forecast, peaksEdit, layoutSt, scan, shiftSt, thres, forecast.predictions, integrationSt, multiplicitySt, setUiViewerTypeAct, curveSt) : onClickFail(layoutSt, simuCount, realCount);
190
+ const btnWidthCls = isIr ? classes.btnWidthIr : classes.btnWidthNmr;
195
191
  return renderBtnPredict(classes, isIr, realCount, uniqCount, simuCount, color, btnWidthCls, onClick);
196
192
  };
197
- var mapStateToProps = function mapStateToProps(state, props) {
198
- return (
199
- // eslint-disable-line
200
- {
201
- layoutSt: state.layout,
202
- simulationSt: state.simulation,
203
- editPeakSt: state.editPeak.present,
204
- scanSt: state.scan,
205
- shiftSt: state.shift,
206
- thresSt: state.threshold,
207
- integrationSt: state.integration.present,
208
- multiplicitySt: state.multiplicity.present,
209
- curveSt: state.curve
210
- }
211
- );
212
- };
213
- var mapDispatchToProps = function mapDispatchToProps(dispatch) {
214
- return (0, _redux.bindActionCreators)({
215
- setUiViewerTypeAct: _ui.setUiViewerType
216
- }, dispatch);
217
- };
193
+ const mapStateToProps = (state, props) => (
194
+ // eslint-disable-line
195
+ {
196
+ layoutSt: state.layout,
197
+ simulationSt: state.simulation,
198
+ editPeakSt: state.editPeak.present,
199
+ scanSt: state.scan,
200
+ shiftSt: state.shift,
201
+ thresSt: state.threshold,
202
+ integrationSt: state.integration.present,
203
+ multiplicitySt: state.multiplicity.present,
204
+ curveSt: state.curve
205
+ });
206
+ const mapDispatchToProps = dispatch => (0, _redux.bindActionCreators)({
207
+ setUiViewerTypeAct: _ui.setUiViewerType
208
+ }, dispatch);
218
209
  BtnPredict.propTypes = {
219
210
  classes: _propTypes.default.object.isRequired,
220
211
  feature: _propTypes.default.object.isRequired,
@@ -230,5 +221,4 @@ BtnPredict.propTypes = {
230
221
  setUiViewerTypeAct: _propTypes.default.func.isRequired,
231
222
  curveSt: _propTypes.default.object
232
223
  };
233
- var _default = (0, _redux.compose)((0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps), (0, _styles.withStyles)(styles))(BtnPredict);
234
- exports.default = _default;
224
+ var _default = exports.default = (0, _redux.compose)((0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps), (0, _styles.withStyles)(styles))(BtnPredict);
@@ -19,23 +19,19 @@ var _list_wavelength = require("../../constants/list_wavelength");
19
19
  /* eslint-disable prefer-object-spread, react/jsx-one-expression-per-line,
20
20
  react/function-component-definition */
21
21
 
22
- var styles = function styles() {
23
- return Object.assign({
24
- fieldShift: {
25
- width: 160
26
- },
27
- fieldLayout: {
28
- width: 100
29
- }
30
- }, _common.commonStyle);
31
- };
32
- var wavelengthSelect = function wavelengthSelect(classes, waveLengthSt, layoutSt, updateWaveLengthAct) {
22
+ const styles = () => Object.assign({
23
+ fieldShift: {
24
+ width: 160
25
+ },
26
+ fieldLayout: {
27
+ width: 100
28
+ }
29
+ }, _common.commonStyle);
30
+ const wavelengthSelect = (classes, waveLengthSt, layoutSt, updateWaveLengthAct) => {
33
31
  if (!_format.default.isXRDLayout(layoutSt)) {
34
32
  return /*#__PURE__*/_react.default.createElement("i", null);
35
33
  }
36
- var onChange = function onChange(e) {
37
- return updateWaveLengthAct(e.target.value);
38
- };
34
+ const onChange = e => updateWaveLengthAct(e.target.value);
39
35
  return /*#__PURE__*/_react.default.createElement(_core.FormControl, {
40
36
  className: (0, _classnames.default)(classes.fieldLayout),
41
37
  variant: "outlined"
@@ -48,7 +44,7 @@ var wavelengthSelect = function wavelengthSelect(classes, waveLengthSt, layoutSt
48
44
  className: (0, _classnames.default)(classes.selectInput, 'input-sv-bar-layout'),
49
45
  labelWidth: 60
50
46
  })
51
- }, _list_wavelength.LIST_WAVE_LENGTH.map(function (item) {
47
+ }, _list_wavelength.LIST_WAVE_LENGTH.map(item => {
52
48
  // eslint-disable-line
53
49
  return /*#__PURE__*/_react.default.createElement(_core.MenuItem, {
54
50
  value: item
@@ -57,34 +53,30 @@ var wavelengthSelect = function wavelengthSelect(classes, waveLengthSt, layoutSt
57
53
  }, item.label, " (", item.value, " ", item.unit, ")"));
58
54
  })));
59
55
  };
60
- var Wavelength = function Wavelength(_ref) {
61
- var classes = _ref.classes,
62
- waveLengthSt = _ref.waveLengthSt,
63
- layoutSt = _ref.layoutSt,
64
- updateWaveLengthAct = _ref.updateWaveLengthAct;
56
+ const Wavelength = _ref => {
57
+ let {
58
+ classes,
59
+ waveLengthSt,
60
+ layoutSt,
61
+ updateWaveLengthAct
62
+ } = _ref;
65
63
  return /*#__PURE__*/_react.default.createElement("span", {
66
64
  className: classes.groupRight
67
65
  }, wavelengthSelect(classes, waveLengthSt, layoutSt, updateWaveLengthAct));
68
66
  };
69
- var mapStateToProps = function mapStateToProps(state, props) {
70
- return (
71
- // eslint-disable-line
72
- {
73
- waveLengthSt: state.wavelength,
74
- layoutSt: state.layout
75
- }
76
- );
77
- };
78
- var mapDispatchToProps = function mapDispatchToProps(dispatch) {
79
- return (0, _redux.bindActionCreators)({
80
- updateWaveLengthAct: _wavelength.updateWaveLength
81
- }, dispatch);
82
- };
67
+ const mapStateToProps = (state, props) => (
68
+ // eslint-disable-line
69
+ {
70
+ waveLengthSt: state.wavelength,
71
+ layoutSt: state.layout
72
+ });
73
+ const mapDispatchToProps = dispatch => (0, _redux.bindActionCreators)({
74
+ updateWaveLengthAct: _wavelength.updateWaveLength
75
+ }, dispatch);
83
76
  Wavelength.propTypes = {
84
77
  classes: _propTypes.default.object.isRequired,
85
78
  layoutSt: _propTypes.default.string.isRequired,
86
79
  waveLengthSt: _propTypes.default.object.isRequired,
87
80
  updateWaveLengthAct: _propTypes.default.func.isRequired
88
81
  };
89
- var _default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)((0, _styles.withStyles)(styles)(Wavelength));
90
- exports.default = _default;
82
+ var _default = exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)((0, _styles.withStyles)(styles)(Wavelength));