@complat/react-spectra-editor 0.10.13-alpha.5

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 (109) hide show
  1. package/LICENSE +662 -0
  2. package/README.md +37 -0
  3. package/dist/actions/edit_peak.js +25 -0
  4. package/dist/actions/forecast.js +41 -0
  5. package/dist/actions/integration.js +33 -0
  6. package/dist/actions/jcamp.js +41 -0
  7. package/dist/actions/layout.js +17 -0
  8. package/dist/actions/manager.js +49 -0
  9. package/dist/actions/meta.js +17 -0
  10. package/dist/actions/multiplicity.js +57 -0
  11. package/dist/actions/scan.js +33 -0
  12. package/dist/actions/shift.js +25 -0
  13. package/dist/actions/status.js +33 -0
  14. package/dist/actions/submit.js +41 -0
  15. package/dist/actions/threshold.js +33 -0
  16. package/dist/actions/ui.js +50 -0
  17. package/dist/app.js +125 -0
  18. package/dist/components/cmd_bar/01_viewer.js +133 -0
  19. package/dist/components/cmd_bar/02_zoom.js +119 -0
  20. package/dist/components/cmd_bar/03_peak.js +176 -0
  21. package/dist/components/cmd_bar/04_integration.js +273 -0
  22. package/dist/components/cmd_bar/05_multiplicity.js +228 -0
  23. package/dist/components/cmd_bar/06_undo_redo.js +137 -0
  24. package/dist/components/cmd_bar/common.js +104 -0
  25. package/dist/components/cmd_bar/index.js +113 -0
  26. package/dist/components/cmd_bar/r01_layout.js +351 -0
  27. package/dist/components/cmd_bar/r02_scan.js +226 -0
  28. package/dist/components/cmd_bar/r03_threshold.js +209 -0
  29. package/dist/components/cmd_bar/r04_submit.js +349 -0
  30. package/dist/components/cmd_bar/r05_submit_btn.js +147 -0
  31. package/dist/components/cmd_bar/r06_predict_btn.js +307 -0
  32. package/dist/components/cmd_bar/tri_btn.js +202 -0
  33. package/dist/components/common/chem.js +115 -0
  34. package/dist/components/common/comps.js +29 -0
  35. package/dist/components/common/draw.js +41 -0
  36. package/dist/components/d3_line/index.js +236 -0
  37. package/dist/components/d3_line/line_focus.js +765 -0
  38. package/dist/components/d3_rect/index.js +200 -0
  39. package/dist/components/d3_rect/rect_focus.js +301 -0
  40. package/dist/components/forecast/comps.js +337 -0
  41. package/dist/components/forecast/ir_comps.js +224 -0
  42. package/dist/components/forecast/ir_viewer.js +172 -0
  43. package/dist/components/forecast/nmr_comps.js +253 -0
  44. package/dist/components/forecast/nmr_viewer.js +170 -0
  45. package/dist/components/forecast/section_loading.js +95 -0
  46. package/dist/components/forecast_viewer.js +190 -0
  47. package/dist/components/panel/compare.js +370 -0
  48. package/dist/components/panel/index.js +191 -0
  49. package/dist/components/panel/info.js +335 -0
  50. package/dist/components/panel/multiplicity.js +405 -0
  51. package/dist/components/panel/multiplicity_coupling.js +195 -0
  52. package/dist/components/panel/multiplicity_select.js +114 -0
  53. package/dist/components/panel/peaks.js +296 -0
  54. package/dist/constants/action_type.js +140 -0
  55. package/dist/constants/list_layout.js +23 -0
  56. package/dist/constants/list_shift.js +480 -0
  57. package/dist/constants/list_ui.js +33 -0
  58. package/dist/fn.js +31 -0
  59. package/dist/helpers/brush.js +109 -0
  60. package/dist/helpers/calc.js +10 -0
  61. package/dist/helpers/carbonFeatures.js +47 -0
  62. package/dist/helpers/cfg.js +89 -0
  63. package/dist/helpers/chem.js +594 -0
  64. package/dist/helpers/compass.js +91 -0
  65. package/dist/helpers/converter.js +74 -0
  66. package/dist/helpers/extractParams.js +77 -0
  67. package/dist/helpers/extractPeaksEdit.js +69 -0
  68. package/dist/helpers/focus.js +15 -0
  69. package/dist/helpers/format.js +403 -0
  70. package/dist/helpers/init.js +80 -0
  71. package/dist/helpers/integration.js +30 -0
  72. package/dist/helpers/mount.js +112 -0
  73. package/dist/helpers/multiplicity.js +44 -0
  74. package/dist/helpers/multiplicity_calc.js +117 -0
  75. package/dist/helpers/multiplicity_complat.js +126 -0
  76. package/dist/helpers/multiplicity_manual.js +94 -0
  77. package/dist/helpers/multiplicity_verify_basic.js +196 -0
  78. package/dist/helpers/shift.js +48 -0
  79. package/dist/helpers/zoom.js +32 -0
  80. package/dist/index.js +705 -0
  81. package/dist/layer_content.js +125 -0
  82. package/dist/layer_init.js +231 -0
  83. package/dist/layer_prism.js +186 -0
  84. package/dist/reducers/index.js +89 -0
  85. package/dist/reducers/reducer_edit_peak.js +111 -0
  86. package/dist/reducers/reducer_forecast.js +113 -0
  87. package/dist/reducers/reducer_integration.js +136 -0
  88. package/dist/reducers/reducer_jcamp.js +74 -0
  89. package/dist/reducers/reducer_layout.js +27 -0
  90. package/dist/reducers/reducer_manager.js +20 -0
  91. package/dist/reducers/reducer_meta.js +30 -0
  92. package/dist/reducers/reducer_multiplicity.js +131 -0
  93. package/dist/reducers/reducer_scan.js +55 -0
  94. package/dist/reducers/reducer_shift.js +99 -0
  95. package/dist/reducers/reducer_simulation.js +30 -0
  96. package/dist/reducers/reducer_status.js +41 -0
  97. package/dist/reducers/reducer_submit.js +54 -0
  98. package/dist/reducers/reducer_threshold.js +34 -0
  99. package/dist/reducers/reducer_ui.js +46 -0
  100. package/dist/reducers/undo_redo_config.js +24 -0
  101. package/dist/sagas/index.js +50 -0
  102. package/dist/sagas/saga_edit_peak.js +84 -0
  103. package/dist/sagas/saga_manager.js +116 -0
  104. package/dist/sagas/saga_meta.js +46 -0
  105. package/dist/sagas/saga_multiplicity.js +387 -0
  106. package/dist/sagas/saga_ui.js +392 -0
  107. package/dist/third_party/jAnalyzer.js +596 -0
  108. package/dist/third_party/peakInterval.js +107 -0
  109. package/package.json +77 -0
@@ -0,0 +1,115 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ /* eslint-disable */
7
+
8
+ var SmaToSvg = function SmaToSvg(sma) {
9
+ switch (sma) {
10
+ case 'C-,:O':
11
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="192.35" y="183.00">O</text> </g><line x1="86.25" y1="150.00" x2="132.70" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="132.70" y1="150.00" x2="179.16" y2="150.00" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
12
+ case 'C-,:C(=O)-,:O-,:C':
13
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="96.93" y="239.11">O</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="173.43" y="106.61">O</text> </g><line x1="35.25" y1="83.75" x2="111.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="127.92" x2="103.09" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="156.08" x2="103.09" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="120.41" y1="127.92" x2="120.41" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="156.08" x2="120.41" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="111.75" y1="127.92" x2="138.02" y2="112.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="138.02" y1="112.75" x2="164.28" y2="97.59" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="212.22" y1="97.59" x2="238.48" y2="112.75" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="238.48" y1="112.75" x2="264.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
14
+ case 'C-,:O-,:c':
15
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.60" y="151.12">O</text> </g><line x1="39.58" y1="181.87" x2="77.49" y2="159.99" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="77.49" y1="159.99" x2="115.41" y2="138.10" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="184.59" y1="138.10" x2="222.51" y2="159.99" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="222.51" y1="159.99" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
16
+ case 'c-,:[Cl]':
17
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,204,0)" x="187.79" y="183.00">Cl</text> </g><line x1="86.25" y1="150.00" x2="130.42" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="130.42" y1="150.00" x2="174.59" y2="150.00" stroke="rgb(0,204,0)" stroke-width="3"></line> </svg>';
18
+ case 'c:,-[n&H1]:,-c':
19
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="151.12">N</text> </g><line x1="39.58" y1="181.87" x2="78.26" y2="159.54" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="159.54" x2="116.94" y2="137.21" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="59.82" y1="199.06" x2="90.76" y2="181.19" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="90.76" y1="181.19" x2="121.71" y2="163.33" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="183.06" y1="137.21" x2="221.74" y2="159.54" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="159.54" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="178.29" y1="163.33" x2="209.24" y2="181.19" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="209.24" y1="181.19" x2="240.18" y2="199.06" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> </svg>';
20
+ case 'c-,:O':
21
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="192.35" y="183.00">O</text> </g><line x1="86.25" y1="150.00" x2="132.70" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="132.70" y1="150.00" x2="179.16" y2="150.00" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
22
+ case 'C-,:[Cl]':
23
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,204,0)" x="187.79" y="183.00">Cl</text> </g><line x1="86.25" y1="150.00" x2="130.42" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="130.42" y1="150.00" x2="174.59" y2="150.00" stroke="rgb(0,204,0)" stroke-width="3"></line> </svg>';
24
+ case 'C-,:C(-,:C)=O':
25
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="181.88" x2="162.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="141.22" x2="162.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="137.50" y1="181.88" x2="137.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="137.50" y1="141.22" x2="137.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
26
+ case 'c-,:[N&+](=O)-,:[O&-]':
27
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="214.88">N</text> </g> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="254.88">+</text> </g> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="239.02" y="278.62">O</text> </g><g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="178.60" y="87.37">-</text> </g> <line x1="39.58" y1="245.62" x2="78.26" y2="223.29" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="223.29" x2="116.94" y2="200.96" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="176.81" y1="211.78" x2="198.19" y2="224.13" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="198.19" y1="224.13" x2="219.57" y2="236.48" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="189.31" y1="190.13" x2="210.69" y2="202.48" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="210.69" y1="202.48" x2="232.07" y2="214.83" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="150.00" y1="135.68" x2="150.00" y2="118.12" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="150.00" y1="118.12" x2="150.00" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
28
+ case 'C-,:C=C':
29
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="39.58" y1="181.87" x2="150.00" y2="118.12" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="143.75" y1="128.95" x2="254.17" y2="192.70" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="156.25" y1="107.30" x2="266.67" y2="171.05" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
30
+ case 'c-,:[Br]':
31
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(127,76,25)" x="186.25" y="183.00">Br</text> </g><line x1="86.25" y1="150.00" x2="129.65" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="129.65" y1="150.00" x2="173.05" y2="150.00" stroke="rgb(127,76,25)" stroke-width="3"></line> </svg>';
32
+ case 'C-,:O-,:C':
33
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.60" y="151.12">O</text> </g><line x1="39.58" y1="181.87" x2="77.49" y2="159.99" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="77.49" y1="159.99" x2="115.41" y2="138.10" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="184.59" y1="138.10" x2="222.51" y2="159.99" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="222.51" y1="159.99" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
34
+ case 'C-,:[Br]':
35
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(127,76,25)" x="186.25" y="183.00">Br</text> </g><line x1="86.25" y1="150.00" x2="129.65" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="129.65" y1="150.00" x2="173.05" y2="150.00" stroke="rgb(127,76,25)" stroke-width="3"></line> </svg>';
36
+ case 'C-,:C(-,:c)=O':
37
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="181.88" x2="162.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="141.22" x2="162.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="137.50" y1="181.88" x2="137.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="137.50" y1="141.22" x2="137.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
38
+ case 'c-,:N':
39
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="193.90" y="183.00">N</text> </g><line x1="86.25" y1="150.00" x2="133.47" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="133.47" y1="150.00" x2="180.69" y2="150.00" stroke="rgb(0,0,255)" stroke-width="3"></line> </svg>';
40
+ case 'C-,:F':
41
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(51,204,204)" x="196.95" y="183.00">F</text> </g><line x1="86.25" y1="150.00" x2="135.00" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="135.00" y1="150.00" x2="183.75" y2="150.00" stroke="rgb(51,204,204)" stroke-width="3"></line> </svg>';
42
+ case 'c-,:C(=O)-,:O-,:C':
43
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="96.93" y="239.11">O</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="173.43" y="106.61">O</text> </g><line x1="35.25" y1="83.75" x2="111.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="127.92" x2="103.09" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="156.08" x2="103.09" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="120.41" y1="127.92" x2="120.41" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="156.08" x2="120.41" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="111.75" y1="127.92" x2="138.02" y2="112.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="138.02" y1="112.75" x2="164.28" y2="97.59" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="212.22" y1="97.59" x2="238.48" y2="112.75" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="238.48" y1="112.75" x2="264.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
44
+ case 'c:,-o:,-c':
45
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.60" y="151.12">O</text> </g><line x1="39.58" y1="181.87" x2="77.49" y2="159.99" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="77.49" y1="159.99" x2="115.41" y2="138.10" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="59.66" y1="199.15" x2="89.99" y2="181.64" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="89.99" y1="181.64" x2="120.32" y2="164.13" stroke="rgb(255,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="184.59" y1="138.10" x2="222.51" y2="159.99" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="222.51" y1="159.99" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.68" y1="164.13" x2="210.01" y2="181.64" stroke="rgb(255,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="210.01" y1="181.64" x2="240.34" y2="199.15" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> </svg>';
46
+ case 'C-,:C(=O)-,:O':
47
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="239.02" y="278.62">O</text> </g><g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="143.75" y1="192.70" x2="181.66" y2="214.59" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="181.66" y1="214.59" x2="219.57" y2="236.48" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="156.25" y1="171.05" x2="194.16" y2="192.94" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="194.16" y1="192.94" x2="232.07" y2="214.83" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="150.00" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="141.22" x2="150.00" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
48
+ case 'c-,:F':
49
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(51,204,204)" x="196.95" y="183.00">F</text> </g><line x1="86.25" y1="150.00" x2="135.00" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="135.00" y1="150.00" x2="183.75" y2="150.00" stroke="rgb(51,204,204)" stroke-width="3"></line> </svg>';
50
+ case 'c=O':
51
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="192.35" y="183.00">O</text> </g><line x1="86.25" y1="162.50" x2="132.70" y2="162.50" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="132.70" y1="162.50" x2="179.16" y2="162.50" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="86.25" y1="137.50" x2="132.70" y2="137.50" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="132.70" y1="137.50" x2="179.16" y2="137.50" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
52
+ case 'C-,:N-,:C':
53
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="151.12">N</text> </g><line x1="39.58" y1="181.87" x2="78.26" y2="159.54" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="159.54" x2="116.94" y2="137.21" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="183.06" y1="137.21" x2="221.74" y2="159.54" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="159.54" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
54
+ case 'C-,:N(-,:C)-,:C':
55
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="214.88">N</text> </g><line x1="39.58" y1="245.62" x2="78.26" y2="223.29" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="223.29" x2="116.94" y2="200.96" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="183.06" y1="200.96" x2="221.74" y2="223.29" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="223.29" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="135.68" x2="150.00" y2="95.02" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="150.00" y1="95.02" x2="150.00" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
56
+ case 'C-,:N':
57
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="193.90" y="183.00">N</text> </g><line x1="86.25" y1="150.00" x2="133.47" y2="150.00" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="133.47" y1="150.00" x2="180.69" y2="150.00" stroke="rgb(0,0,255)" stroke-width="3"></line> </svg>';
58
+ case 'C-,:n(-,:c):,-c':
59
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="214.88">N</text> </g><line x1="39.58" y1="245.62" x2="78.26" y2="223.29" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="223.29" x2="116.94" y2="200.96" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="183.06" y1="200.96" x2="221.74" y2="223.29" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="223.29" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="135.68" x2="150.00" y2="95.02" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="150.00" y1="95.02" x2="150.00" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="175.00" y1="127.55" x2="175.00" y2="95.03" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="175.00" y1="95.03" x2="175.00" y2="62.50" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> </svg>';
60
+ case 'c-,:C(=O)-,:O':
61
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="239.02" y="278.62">O</text> </g><g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="143.75" y1="192.70" x2="181.66" y2="214.59" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="181.66" y1="214.59" x2="219.57" y2="236.48" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="156.25" y1="171.05" x2="194.16" y2="192.94" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="194.16" y1="192.94" x2="232.07" y2="214.83" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="150.00" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="141.22" x2="150.00" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
62
+ case 'c-,:C=O':
63
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="239.02" y="214.88">O</text> </g><line x1="39.58" y1="181.87" x2="150.00" y2="118.12" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="143.75" y1="128.95" x2="181.66" y2="150.84" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="181.66" y1="150.84" x2="219.57" y2="172.73" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="156.25" y1="107.30" x2="194.16" y2="129.19" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="194.16" y1="129.19" x2="232.07" y2="151.08" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
64
+ case 'C-,:C#N':
65
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="240.56" y="214.88">N</text> </g><line x1="39.58" y1="181.87" x2="150.00" y2="118.12" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="118.12" x2="188.68" y2="140.46" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.68" y1="140.46" x2="227.36" y2="162.79" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="145.24" y1="144.24" x2="176.18" y2="162.11" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="176.18" y1="162.11" x2="207.13" y2="179.97" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="170.24" y1="100.94" x2="201.18" y2="118.81" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="201.18" y1="118.81" x2="232.13" y2="136.67" stroke="rgb(0,0,255)" stroke-width="3"></line> </svg>';
66
+ case 'C-,:C=C-,:C':
67
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="35.25" y1="157.91" x2="115.26" y2="123.87" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="115.26" y1="123.87" x2="184.74" y2="176.13" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="111.96" y1="142.72" x2="167.55" y2="184.53" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="184.74" y1="176.13" x2="264.75" y2="142.09" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
68
+ case 'C-,:C(=O)-,:N-,:C':
69
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="96.93" y="106.61">O</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(0,0,255)" x="174.49" y="239.11">N</text> </g><line x1="35.25" y1="216.25" x2="111.75" y2="172.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="172.08" x2="120.41" y2="143.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="143.92" x2="120.41" y2="115.76" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="103.09" y1="172.08" x2="103.09" y2="143.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="143.92" x2="103.09" y2="115.76" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="111.75" y1="172.08" x2="138.55" y2="187.56" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="138.55" y1="187.56" x2="165.35" y2="203.03" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="211.15" y1="203.03" x2="237.95" y2="187.56" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="237.95" y1="187.56" x2="264.75" y2="172.08" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
70
+ case 'c-,:C#N':
71
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="240.56" y="214.88">N</text> </g><line x1="39.58" y1="181.87" x2="150.00" y2="118.12" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="118.12" x2="188.68" y2="140.46" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.68" y1="140.46" x2="227.36" y2="162.79" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="145.24" y1="144.24" x2="176.18" y2="162.11" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="176.18" y1="162.11" x2="207.13" y2="179.97" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="170.24" y1="100.94" x2="201.18" y2="118.81" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="201.18" y1="118.81" x2="232.13" y2="136.67" stroke="rgb(0,0,255)" stroke-width="3"></line> </svg>';
72
+ case 'C-,:C(=O)-,:N-,:c':
73
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="96.93" y="106.61">O</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(0,0,255)" x="174.49" y="239.11">N</text> </g><line x1="35.25" y1="216.25" x2="111.75" y2="172.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="172.08" x2="120.41" y2="143.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="120.41" y1="143.92" x2="120.41" y2="115.76" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="103.09" y1="172.08" x2="103.09" y2="143.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="103.09" y1="143.92" x2="103.09" y2="115.76" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="111.75" y1="172.08" x2="138.55" y2="187.56" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="138.55" y1="187.56" x2="165.35" y2="203.03" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="211.15" y1="203.03" x2="237.95" y2="187.56" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="237.95" y1="187.56" x2="264.75" y2="172.08" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
74
+ case 'C-,:C(-,:C)=C':
75
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="181.88" x2="162.50" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="137.50" y1="181.88" x2="137.50" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
76
+ case 'c:,-s:,-c':
77
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(204,204,0)" x="131.66" y="151.12">S</text> </g><line x1="39.58" y1="181.87" x2="79.02" y2="159.11" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="79.02" y1="159.11" x2="118.46" y2="136.34" stroke="rgb(204,204,0)" stroke-width="3"></line> <line x1="59.97" y1="198.97" x2="91.52" y2="180.76" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="91.52" y1="180.76" x2="123.07" y2="162.54" stroke="rgb(204,204,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="181.54" y1="136.34" x2="220.98" y2="159.11" stroke="rgb(204,204,0)" stroke-width="3"></line> <line x1="220.98" y1="159.11" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="176.93" y1="162.54" x2="208.48" y2="180.76" stroke="rgb(204,204,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="208.48" y1="180.76" x2="240.03" y2="198.97" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> </svg>';
78
+ case 'C-,:C#C-,:C':
79
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="35.25" y1="157.91" x2="115.26" y2="123.87" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="115.26" y1="123.87" x2="184.74" y2="176.13" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="111.96" y1="142.72" x2="167.55" y2="184.53" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="132.45" y1="115.47" x2="188.04" y2="157.28" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="184.74" y1="176.13" x2="264.75" y2="142.09" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
80
+ case 'C#C-,:C':
81
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="39.58" y1="181.87" x2="150.00" y2="118.12" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="63.12" y1="197.15" x2="151.46" y2="146.15" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="38.12" y1="153.85" x2="126.46" y2="102.85" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="118.12" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
82
+ case 'c-,:C(-,:c)=O':
83
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.61" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="181.88" x2="162.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="141.22" x2="162.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="137.50" y1="181.88" x2="137.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="137.50" y1="141.22" x2="137.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
84
+ case 'C-,:C(-,:C)=C-,:C':
85
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="35.25" y1="83.75" x2="111.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="111.75" y1="127.92" x2="111.75" y2="216.25" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="111.75" y1="127.92" x2="188.25" y2="83.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="128.06" y1="138.50" x2="189.26" y2="103.17" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.25" y1="83.75" x2="264.75" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
86
+ case 'c-,:N(-,:C)-,:C':
87
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="214.88">N</text> </g><line x1="39.58" y1="245.62" x2="78.26" y2="223.29" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="223.29" x2="116.94" y2="200.96" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="183.06" y1="200.96" x2="221.74" y2="223.29" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="223.29" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="135.68" x2="150.00" y2="95.02" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="150.00" y1="95.02" x2="150.00" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
88
+ case 'C-,:N-,:c':
89
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="151.12">N</text> </g><line x1="39.58" y1="181.87" x2="78.26" y2="159.54" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="159.54" x2="116.94" y2="137.21" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="183.06" y1="137.21" x2="221.74" y2="159.54" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="159.54" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
90
+ case 'C-,:O-,:C(-,:C)=O':
91
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="96.93" y="106.61">O</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="173.43" y="239.11">O</text> </g><line x1="35.25" y1="127.92" x2="61.52" y2="112.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="61.52" y1="112.75" x2="87.78" y2="97.59" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="135.72" y1="97.59" x2="161.98" y2="112.75" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="161.98" y1="112.75" x2="188.25" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.25" y1="127.92" x2="264.75" y2="83.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="127.92" x2="179.59" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="156.08" x2="179.59" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="196.91" y1="127.92" x2="196.91" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="196.91" y1="156.08" x2="196.91" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
92
+ case 'c-,:O-,:C':
93
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.60" y="151.12">O</text> </g><line x1="39.58" y1="181.87" x2="77.49" y2="159.99" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="77.49" y1="159.99" x2="115.41" y2="138.10" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="184.59" y1="138.10" x2="222.51" y2="159.99" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="222.51" y1="159.99" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
94
+ case 'c:,-n:,-c':
95
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="151.12">N</text> </g><line x1="39.58" y1="181.87" x2="78.26" y2="159.54" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="159.54" x2="116.94" y2="137.21" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="59.82" y1="199.06" x2="90.76" y2="181.19" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="90.76" y1="181.19" x2="121.71" y2="163.33" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="183.06" y1="137.21" x2="221.74" y2="159.54" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="159.54" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="178.29" y1="163.33" x2="209.24" y2="181.19" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="209.24" y1="181.19" x2="240.18" y2="199.06" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> </svg>';
96
+ case 'C=C-,:C':
97
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="45.83" y1="192.70" x2="156.25" y2="128.95" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="33.33" y1="171.05" x2="143.75" y2="107.30" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="118.12" x2="260.42" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
98
+ case 'c-,:C(-,:C)=O':
99
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(255,0,0)" x="128.60" y="87.37">O</text> </g><line x1="39.58" y1="245.62" x2="150.00" y2="181.88" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="181.88" x2="162.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="162.50" y1="141.22" x2="162.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="137.50" y1="181.88" x2="137.50" y2="141.22" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="137.50" y1="141.22" x2="137.50" y2="100.57" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
100
+ case 'c:,-n(-,:c)-,:C':
101
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,255)" x="130.15" y="214.88">N</text> </g><line x1="39.58" y1="245.62" x2="78.26" y2="223.29" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="78.26" y1="223.29" x2="116.94" y2="200.96" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="59.82" y1="262.81" x2="90.76" y2="244.94" stroke="rgb(0,0,0)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="90.76" y1="244.94" x2="121.71" y2="227.08" stroke="rgb(0,0,255)" stroke-width="3" stroke-dasharray="4 4"></line> <line x1="183.06" y1="200.96" x2="221.74" y2="223.29" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="221.74" y1="223.29" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="135.68" x2="150.00" y2="95.02" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="150.00" y1="95.02" x2="150.00" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
102
+ case 'C-,:N-,:C(-,:C)=O':
103
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(0,0,255)" x="97.99" y="106.61">N</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="173.43" y="239.11">O</text> </g><line x1="35.25" y1="127.92" x2="62.05" y2="112.44" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="62.05" y1="112.44" x2="88.85" y2="96.97" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="134.65" y1="96.97" x2="161.45" y2="112.44" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="161.45" y1="112.44" x2="188.25" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.25" y1="127.92" x2="264.75" y2="83.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="127.92" x2="179.59" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="156.08" x2="179.59" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="196.91" y1="127.92" x2="196.91" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="196.91" y1="156.08" x2="196.91" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
104
+ case 'c-,:N-,:C(-,:C)=O':
105
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <g> <text font-family="helvetica" font-size="38.11" fill="rgb(0,0,255)" x="97.99" y="106.61">N</text> </g><g> <text font-family="helvetica" font-size="38.11" fill="rgb(255,0,0)" x="173.43" y="239.11">O</text> </g><line x1="35.25" y1="127.92" x2="62.05" y2="112.44" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="62.05" y1="112.44" x2="88.85" y2="96.97" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="134.65" y1="96.97" x2="161.45" y2="112.44" stroke="rgb(0,0,255)" stroke-width="3"></line> <line x1="161.45" y1="112.44" x2="188.25" y2="127.92" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="188.25" y1="127.92" x2="264.75" y2="83.75" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="127.92" x2="179.59" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="179.59" y1="156.08" x2="179.59" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> <line x1="196.91" y1="127.92" x2="196.91" y2="156.08" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="196.91" y1="156.08" x2="196.91" y2="184.24" stroke="rgb(255,0,0)" stroke-width="3"></line> </svg>';
106
+ case 'C=C(-,:C)-,:C':
107
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><polygon fill="rgb(255,255,255)" stroke="none" stroke-width="0" points="0.00,0.00 300.00,0.00 300.00,300.00 0.00,300.00 0.00,0.00"></polygon> <line x1="45.83" y1="256.45" x2="156.25" y2="192.70" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="33.33" y1="234.80" x2="143.75" y2="171.05" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="260.42" y2="245.63" stroke="rgb(0,0,0)" stroke-width="3"></line> <line x1="150.00" y1="181.88" x2="150.00" y2="54.37" stroke="rgb(0,0,0)" stroke-width="3"></line> </svg>';
108
+ default:
109
+ return '<svg version="1.1" baseProfile="full" viewBox="0 0 300 300"><g> <text font-family="helvetica" font-size="55.00" fill="rgb(0,0,0)" x="110.00" y="170.00">N.A.</text> </g></svg>';
110
+ }
111
+ };
112
+
113
+ /* eslint-enable */
114
+
115
+ exports.default = SmaToSvg;
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TabLabel = undefined;
7
+
8
+ var _react = require('react');
9
+
10
+ var _react2 = _interopRequireDefault(_react);
11
+
12
+ var _classnames = require('classnames');
13
+
14
+ var _classnames2 = _interopRequireDefault(_classnames);
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ var TabLabel = function TabLabel(classes, label) {
19
+ var extClsName = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'txt-tab-label';
20
+ return _react2.default.createElement(
21
+ 'span',
22
+ {
23
+ className: (0, _classnames2.default)(classes.tabLabel, extClsName)
24
+ },
25
+ label
26
+ );
27
+ };
28
+
29
+ exports.TabLabel = TabLabel;
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.drawDestroy = exports.drawDisplay = exports.drawLabel = exports.drawMain = undefined;
7
+
8
+ var _d = require('d3');
9
+
10
+ var d3 = _interopRequireWildcard(_d);
11
+
12
+ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
13
+
14
+ var drawMain = function drawMain(klass, w, h) {
15
+ d3.select(klass).append('svg').attr('class', 'd3Svg').attr('preserveAspectRatio', 'xMinYMin meet').attr('viewBox', '0 0 ' + w + ' ' + h);
16
+ };
17
+
18
+ var drawLabel = function drawLabel(klass, cLabel, xLabel, yLabel) {
19
+ d3.select(klass).selectAll('.xLabel').text(xLabel);
20
+ d3.select(klass).selectAll('.yLabel').text(yLabel);
21
+ if (cLabel) {
22
+ d3.select(klass).selectAll('.mark-text').text(cLabel);
23
+ }
24
+ };
25
+
26
+ var drawDisplay = function drawDisplay(klass, isHidden) {
27
+ if (isHidden) {
28
+ d3.select(klass).selectAll('svg').style('width', 0);
29
+ } else {
30
+ d3.select(klass).selectAll('svg').style('width', '100%');
31
+ }
32
+ };
33
+
34
+ var drawDestroy = function drawDestroy(klass) {
35
+ return d3.select(klass + ' > *').remove();
36
+ };
37
+
38
+ exports.drawMain = drawMain;
39
+ exports.drawLabel = drawLabel;
40
+ exports.drawDisplay = drawDisplay;
41
+ exports.drawDestroy = drawDestroy;
@@ -0,0 +1,236 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
8
+
9
+ var _react = require('react');
10
+
11
+ var _react2 = _interopRequireDefault(_react);
12
+
13
+ var _reactRedux = require('react-redux');
14
+
15
+ var _redux = require('redux');
16
+
17
+ var _propTypes = require('prop-types');
18
+
19
+ var _propTypes2 = _interopRequireDefault(_propTypes);
20
+
21
+ var _chem = require('../../helpers/chem');
22
+
23
+ var _manager = require('../../actions/manager');
24
+
25
+ var _ui = require('../../actions/ui');
26
+
27
+ var _line_focus = require('./line_focus');
28
+
29
+ var _line_focus2 = _interopRequireDefault(_line_focus);
30
+
31
+ var _draw = require('../common/draw');
32
+
33
+ var _list_ui = require('../../constants/list_ui');
34
+
35
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
36
+
37
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
38
+
39
+ function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
40
+
41
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
42
+
43
+ var W = Math.round(window.innerWidth * 0.90 * 9 / 12); // ROI
44
+ var H = Math.round(window.innerHeight * 0.90 * 0.85); // ROI
45
+
46
+ var ViewerLine = function (_React$Component) {
47
+ _inherits(ViewerLine, _React$Component);
48
+
49
+ function ViewerLine(props) {
50
+ _classCallCheck(this, ViewerLine);
51
+
52
+ var _this = _possibleConstructorReturn(this, (ViewerLine.__proto__ || Object.getPrototypeOf(ViewerLine)).call(this, props));
53
+
54
+ var clickUiTargetAct = props.clickUiTargetAct,
55
+ selectUiSweepAct = props.selectUiSweepAct,
56
+ scrollUiWheelAct = props.scrollUiWheelAct;
57
+
58
+ _this.rootKlass = '.d3Line';
59
+ _this.focus = new _line_focus2.default({
60
+ W: W, H: H, clickUiTargetAct: clickUiTargetAct, selectUiSweepAct: selectUiSweepAct, scrollUiWheelAct: scrollUiWheelAct
61
+ });
62
+
63
+ _this.normChange = _this.normChange.bind(_this);
64
+ return _this;
65
+ }
66
+
67
+ _createClass(ViewerLine, [{
68
+ key: 'componentDidMount',
69
+ value: function componentDidMount() {
70
+ var _props = this.props,
71
+ seed = _props.seed,
72
+ peak = _props.peak,
73
+ cLabel = _props.cLabel,
74
+ xLabel = _props.xLabel,
75
+ yLabel = _props.yLabel,
76
+ feature = _props.feature,
77
+ freq = _props.freq,
78
+ comparisons = _props.comparisons,
79
+ tTrEndPts = _props.tTrEndPts,
80
+ tSfPeaks = _props.tSfPeaks,
81
+ editPeakSt = _props.editPeakSt,
82
+ layoutSt = _props.layoutSt,
83
+ integationSt = _props.integationSt,
84
+ mtplySt = _props.mtplySt,
85
+ sweepExtentSt = _props.sweepExtentSt,
86
+ isUiAddIntgSt = _props.isUiAddIntgSt,
87
+ isUiNoBrushSt = _props.isUiNoBrushSt,
88
+ isHidden = _props.isHidden,
89
+ resetAllAct = _props.resetAllAct;
90
+
91
+ (0, _draw.drawDestroy)(this.rootKlass);
92
+ resetAllAct(feature);
93
+
94
+ var filterSeed = seed;
95
+ var filterPeak = peak;
96
+
97
+ (0, _draw.drawMain)(this.rootKlass, W, H);
98
+ this.focus.create({
99
+ filterSeed: filterSeed,
100
+ filterPeak: filterPeak,
101
+ freq: freq,
102
+ comparisons: comparisons,
103
+ tTrEndPts: tTrEndPts,
104
+ tSfPeaks: tSfPeaks,
105
+ editPeakSt: editPeakSt,
106
+ layoutSt: layoutSt,
107
+ integationSt: integationSt,
108
+ mtplySt: mtplySt,
109
+ sweepExtentSt: sweepExtentSt,
110
+ isUiAddIntgSt: isUiAddIntgSt,
111
+ isUiNoBrushSt: isUiNoBrushSt
112
+ });
113
+ (0, _draw.drawLabel)(this.rootKlass, cLabel, xLabel, yLabel);
114
+ (0, _draw.drawDisplay)(this.rootKlass, isHidden);
115
+ }
116
+ }, {
117
+ key: 'componentDidUpdate',
118
+ value: function componentDidUpdate(prevProps) {
119
+ var _props2 = this.props,
120
+ seed = _props2.seed,
121
+ peak = _props2.peak,
122
+ freq = _props2.freq,
123
+ comparisons = _props2.comparisons,
124
+ tTrEndPts = _props2.tTrEndPts,
125
+ tSfPeaks = _props2.tSfPeaks,
126
+ editPeakSt = _props2.editPeakSt,
127
+ layoutSt = _props2.layoutSt,
128
+ integationSt = _props2.integationSt,
129
+ mtplySt = _props2.mtplySt,
130
+ sweepExtentSt = _props2.sweepExtentSt,
131
+ isUiAddIntgSt = _props2.isUiAddIntgSt,
132
+ isUiNoBrushSt = _props2.isUiNoBrushSt,
133
+ isHidden = _props2.isHidden;
134
+
135
+ this.normChange(prevProps);
136
+
137
+ var filterSeed = seed;
138
+ var filterPeak = peak;
139
+
140
+ this.focus.update({
141
+ filterSeed: filterSeed,
142
+ filterPeak: filterPeak,
143
+ freq: freq,
144
+ comparisons: comparisons,
145
+ tTrEndPts: tTrEndPts,
146
+ tSfPeaks: tSfPeaks,
147
+ editPeakSt: editPeakSt,
148
+ layoutSt: layoutSt,
149
+ integationSt: integationSt,
150
+ mtplySt: mtplySt,
151
+ sweepExtentSt: sweepExtentSt,
152
+ isUiAddIntgSt: isUiAddIntgSt,
153
+ isUiNoBrushSt: isUiNoBrushSt
154
+ });
155
+ (0, _draw.drawDisplay)(this.rootKlass, isHidden);
156
+ }
157
+ }, {
158
+ key: 'componentWillUnmount',
159
+ value: function componentWillUnmount() {
160
+ (0, _draw.drawDestroy)(this.rootKlass);
161
+ }
162
+ }, {
163
+ key: 'normChange',
164
+ value: function normChange(prevProps) {
165
+ var _props3 = this.props,
166
+ feature = _props3.feature,
167
+ resetAllAct = _props3.resetAllAct;
168
+
169
+ var oldFeature = prevProps.feature;
170
+ if (oldFeature !== feature) {
171
+ resetAllAct(feature);
172
+ }
173
+ }
174
+ }, {
175
+ key: 'render',
176
+ value: function render() {
177
+ return _react2.default.createElement('div', { className: 'd3Line' });
178
+ }
179
+ }]);
180
+
181
+ return ViewerLine;
182
+ }(_react2.default.Component);
183
+
184
+ var mapStateToProps = function mapStateToProps(state, props) {
185
+ return {
186
+ seed: (0, _chem.Topic2Seed)(state, props),
187
+ peak: (0, _chem.Feature2Peak)(state, props),
188
+ freq: (0, _chem.ToFrequency)(state, props),
189
+ comparisons: (0, _chem.GetComparisons)(state, props),
190
+ tTrEndPts: (0, _chem.ToThresEndPts)(state, props),
191
+ tSfPeaks: (0, _chem.ToShiftPeaks)(state, props),
192
+ editPeakSt: state.editPeak.present,
193
+ layoutSt: state.layout,
194
+ integationSt: state.integration.present,
195
+ mtplySt: state.multiplicity.present,
196
+ sweepExtentSt: state.ui.sweepExtent,
197
+ isUiAddIntgSt: state.ui.sweepType === _list_ui.LIST_UI_SWEEP_TYPE.INTEGRATION_ADD,
198
+ isUiNoBrushSt: _list_ui.LIST_NON_BRUSH_TYPES.indexOf(state.ui.sweepType) < 0
199
+ };
200
+ };
201
+
202
+ var mapDispatchToProps = function mapDispatchToProps(dispatch) {
203
+ return (0, _redux.bindActionCreators)({
204
+ resetAllAct: _manager.resetAll,
205
+ clickUiTargetAct: _ui.clickUiTarget,
206
+ selectUiSweepAct: _ui.selectUiSweep,
207
+ scrollUiWheelAct: _ui.scrollUiWheel
208
+ }, dispatch);
209
+ };
210
+
211
+ ViewerLine.propTypes = {
212
+ seed: _propTypes2.default.array.isRequired,
213
+ peak: _propTypes2.default.array.isRequired,
214
+ freq: _propTypes2.default.oneOfType([_propTypes2.default.bool, _propTypes2.default.number]).isRequired,
215
+ comparisons: _propTypes2.default.array.isRequired,
216
+ cLabel: _propTypes2.default.string.isRequired,
217
+ xLabel: _propTypes2.default.string.isRequired,
218
+ yLabel: _propTypes2.default.string.isRequired,
219
+ feature: _propTypes2.default.object.isRequired,
220
+ tTrEndPts: _propTypes2.default.array.isRequired,
221
+ tSfPeaks: _propTypes2.default.array.isRequired,
222
+ editPeakSt: _propTypes2.default.object.isRequired,
223
+ layoutSt: _propTypes2.default.string.isRequired,
224
+ integationSt: _propTypes2.default.object.isRequired,
225
+ mtplySt: _propTypes2.default.object.isRequired,
226
+ sweepExtentSt: _propTypes2.default.object.isRequired,
227
+ isUiAddIntgSt: _propTypes2.default.bool.isRequired,
228
+ isUiNoBrushSt: _propTypes2.default.bool.isRequired,
229
+ resetAllAct: _propTypes2.default.func.isRequired,
230
+ clickUiTargetAct: _propTypes2.default.func.isRequired,
231
+ selectUiSweepAct: _propTypes2.default.func.isRequired,
232
+ scrollUiWheelAct: _propTypes2.default.func.isRequired,
233
+ isHidden: _propTypes2.default.bool.isRequired
234
+ };
235
+
236
+ exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(ViewerLine);