@pie-lib/graphing 2.14.22-next.0 → 2.16.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/NEXT.CHANGELOG.json +1 -0
  3. package/lib/__tests__/graph-with-controls.test.js +215 -0
  4. package/lib/__tests__/graph.test.js +290 -0
  5. package/lib/__tests__/grid.test.js +40 -0
  6. package/lib/__tests__/labels.test.js +59 -0
  7. package/lib/__tests__/mark-label.test.js +154 -0
  8. package/lib/__tests__/toggle-bar.test.js +54 -0
  9. package/lib/__tests__/tool-menu.test.js +43 -0
  10. package/lib/__tests__/undo-redo.test.js +42 -0
  11. package/lib/__tests__/use-debounce.test.js +28 -0
  12. package/lib/__tests__/utils.js +72 -0
  13. package/lib/__tests__/utils.test.js +133 -0
  14. package/lib/axis/__tests__/arrow.test.js +68 -0
  15. package/lib/axis/__tests__/axes.test.js +214 -0
  16. package/lib/axis/arrow.js +1 -1
  17. package/lib/axis/axes.js +6 -6
  18. package/lib/axis/index.js +1 -1
  19. package/lib/bg.js +1 -1
  20. package/lib/container/actions.js +1 -1
  21. package/lib/container/index.js +2 -5
  22. package/lib/container/marks.js +1 -1
  23. package/lib/container/middleware.js +1 -1
  24. package/lib/container/reducer.js +1 -1
  25. package/lib/coordinates-label.js +6 -4
  26. package/lib/graph-with-controls.js +9 -16
  27. package/lib/graph.js +30 -13
  28. package/lib/grid-setup.js +1 -1
  29. package/lib/grid.js +7 -15
  30. package/lib/index.js +9 -1
  31. package/lib/key-legend.js +246 -0
  32. package/lib/label-svg-icon.js +56 -0
  33. package/lib/labels.js +3 -2
  34. package/lib/mark-label.js +168 -57
  35. package/lib/toggle-bar.js +4 -5
  36. package/lib/tool-menu.js +3 -23
  37. package/lib/tools/absolute/__tests__/component.test.js +74 -0
  38. package/lib/tools/absolute/component.js +35 -0
  39. package/lib/tools/absolute/index.js +63 -0
  40. package/lib/tools/circle/__tests__/bg-circle.test.js +46 -0
  41. package/lib/tools/circle/__tests__/component.test.js +259 -0
  42. package/lib/tools/circle/bg-circle.js +5 -4
  43. package/lib/tools/circle/component.js +35 -16
  44. package/lib/tools/circle/index.js +1 -1
  45. package/lib/tools/exponential/__tests__/component.test.js +73 -0
  46. package/lib/tools/exponential/component.js +34 -0
  47. package/lib/tools/exponential/index.js +71 -0
  48. package/lib/tools/index.js +27 -7
  49. package/lib/tools/line/__tests__/component.test.js +56 -0
  50. package/lib/tools/line/component.js +3 -2
  51. package/lib/tools/line/index.js +1 -1
  52. package/lib/tools/parabola/__tests__/component.test.js +73 -0
  53. package/lib/tools/parabola/component.js +7 -6
  54. package/lib/tools/parabola/index.js +1 -1
  55. package/lib/tools/point/__tests__/component.test.js +97 -0
  56. package/lib/tools/point/component.js +15 -10
  57. package/lib/tools/point/index.js +1 -1
  58. package/lib/tools/polygon/__tests__/component.test.js +255 -0
  59. package/lib/tools/polygon/__tests__/index.test.js +95 -0
  60. package/lib/tools/polygon/__tests__/line.test.js +43 -0
  61. package/lib/tools/polygon/__tests__/polygon.test.js +73 -0
  62. package/lib/tools/polygon/component.js +26 -13
  63. package/lib/tools/polygon/index.js +1 -1
  64. package/lib/tools/polygon/line.js +13 -7
  65. package/lib/tools/polygon/polygon.js +7 -4
  66. package/lib/tools/ray/__tests__/component.test.js +48 -0
  67. package/lib/tools/ray/component.js +3 -2
  68. package/lib/tools/ray/index.js +1 -1
  69. package/lib/tools/segment/__tests__/component.test.js +48 -0
  70. package/lib/tools/segment/component.js +3 -2
  71. package/lib/tools/segment/index.js +1 -1
  72. package/lib/tools/shared/__tests__/arrow-head.test.js +62 -0
  73. package/lib/tools/shared/arrow-head.js +1 -1
  74. package/lib/tools/shared/icons/CorrectSVG.js +36 -0
  75. package/lib/tools/shared/icons/IncorrectSVG.js +36 -0
  76. package/lib/tools/shared/icons/MissingSVG.js +35 -0
  77. package/lib/tools/shared/line/__tests__/index.test.js +301 -0
  78. package/lib/tools/shared/line/__tests__/line-path.test.js +78 -0
  79. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +122 -0
  80. package/lib/tools/shared/line/index.js +52 -20
  81. package/lib/tools/shared/line/line-path.js +14 -8
  82. package/lib/tools/shared/line/with-root-edge.js +20 -9
  83. package/lib/tools/shared/point/__tests__/arrow-point.test.js +137 -0
  84. package/lib/tools/shared/point/__tests__/base-point.test.js +134 -0
  85. package/lib/tools/shared/point/arrow-point.js +2 -2
  86. package/lib/tools/shared/point/arrow.js +2 -2
  87. package/lib/tools/shared/point/base-point.js +44 -8
  88. package/lib/tools/shared/point/index.js +5 -2
  89. package/lib/tools/shared/styles.js +17 -8
  90. package/lib/tools/shared/types.js +1 -1
  91. package/lib/tools/sine/__tests__/component.test.js +81 -0
  92. package/lib/tools/sine/component.js +14 -5
  93. package/lib/tools/sine/index.js +1 -1
  94. package/lib/tools/vector/__tests__/component.test.js +45 -0
  95. package/lib/tools/vector/component.js +3 -2
  96. package/lib/tools/vector/index.js +1 -1
  97. package/lib/undo-redo.js +1 -2
  98. package/lib/use-debounce.js +1 -1
  99. package/lib/utils.js +2 -2
  100. package/package.json +7 -7
  101. package/src/__tests__/__snapshots__/graph-with-controls.test.jsx.snap +237 -0
  102. package/src/__tests__/__snapshots__/graph.test.jsx.snap +211 -0
  103. package/src/__tests__/__snapshots__/grid.test.jsx.snap +54 -0
  104. package/src/__tests__/__snapshots__/labels.test.jsx.snap +30 -0
  105. package/src/__tests__/__snapshots__/mark-label.test.jsx.snap +45 -0
  106. package/src/__tests__/__snapshots__/toggle-bar.test.jsx.snap +7 -0
  107. package/src/__tests__/__snapshots__/tool-menu.test.jsx.snap +13 -0
  108. package/src/__tests__/__snapshots__/undo-redo.test.jsx.snap +14 -0
  109. package/src/__tests__/graph-with-controls.test.jsx +147 -0
  110. package/src/__tests__/graph.test.jsx +230 -0
  111. package/src/__tests__/grid.test.jsx +20 -0
  112. package/src/__tests__/labels.test.jsx +38 -0
  113. package/src/__tests__/mark-label.test.jsx +68 -0
  114. package/src/__tests__/toggle-bar.test.jsx +36 -0
  115. package/src/__tests__/tool-menu.test.jsx +29 -0
  116. package/src/__tests__/undo-redo.test.jsx +25 -0
  117. package/src/__tests__/use-debounce.test.js +21 -0
  118. package/src/__tests__/utils.js +38 -0
  119. package/src/__tests__/utils.test.js +151 -0
  120. package/src/axis/__tests__/__snapshots__/arrow.test.jsx.snap +33 -0
  121. package/src/axis/__tests__/__snapshots__/axes.test.jsx.snap +122 -0
  122. package/src/axis/__tests__/arrow.test.jsx +39 -0
  123. package/src/axis/__tests__/axes.test.jsx +220 -0
  124. package/src/axis/axes.jsx +5 -5
  125. package/src/container/index.jsx +2 -4
  126. package/src/coordinates-label.jsx +4 -3
  127. package/src/graph-with-controls.jsx +8 -10
  128. package/src/graph.jsx +22 -10
  129. package/src/grid-setup.jsx +9 -6
  130. package/src/grid.jsx +8 -10
  131. package/src/index.js +2 -2
  132. package/src/key-legend.jsx +115 -0
  133. package/src/label-svg-icon.jsx +39 -0
  134. package/src/labels.jsx +2 -1
  135. package/src/mark-label.jsx +149 -52
  136. package/src/toggle-bar.jsx +1 -2
  137. package/src/tool-menu.jsx +3 -26
  138. package/src/tools/absolute/__tests__/component.test.jsx +54 -0
  139. package/src/tools/absolute/component.jsx +23 -0
  140. package/src/tools/absolute/index.js +31 -0
  141. package/src/tools/circle/__tests__/__snapshots__/bg-circle.test.jsx.snap +46 -0
  142. package/src/tools/circle/__tests__/__snapshots__/component.test.jsx.snap +293 -0
  143. package/src/tools/circle/__tests__/bg-circle.test.jsx +28 -0
  144. package/src/tools/circle/__tests__/component.test.jsx +228 -0
  145. package/src/tools/circle/bg-circle.jsx +5 -4
  146. package/src/tools/circle/component.jsx +22 -8
  147. package/src/tools/exponential/__tests__/component.test.jsx +54 -0
  148. package/src/tools/exponential/component.jsx +23 -0
  149. package/src/tools/exponential/index.js +39 -0
  150. package/src/tools/index.js +38 -5
  151. package/src/tools/line/__tests__/__snapshots__/component.test.jsx.snap +20 -0
  152. package/src/tools/line/__tests__/component.test.jsx +36 -0
  153. package/src/tools/line/component.jsx +2 -1
  154. package/src/tools/parabola/__tests__/component.test.jsx +49 -0
  155. package/src/tools/parabola/component.jsx +7 -6
  156. package/src/tools/point/__tests__/__snapshots__/component.test.jsx.snap +40 -0
  157. package/src/tools/point/__tests__/component.test.jsx +66 -0
  158. package/src/tools/point/component.jsx +12 -6
  159. package/src/tools/polygon/__tests__/__snapshots__/component.test.jsx.snap +415 -0
  160. package/src/tools/polygon/__tests__/__snapshots__/line.test.jsx.snap +45 -0
  161. package/src/tools/polygon/__tests__/__snapshots__/polygon.test.jsx.snap +52 -0
  162. package/src/tools/polygon/__tests__/component.test.jsx +226 -0
  163. package/src/tools/polygon/__tests__/index.test.js +65 -0
  164. package/src/tools/polygon/__tests__/line.test.jsx +25 -0
  165. package/src/tools/polygon/__tests__/polygon.test.jsx +44 -0
  166. package/src/tools/polygon/component.jsx +39 -11
  167. package/src/tools/polygon/line.jsx +15 -7
  168. package/src/tools/polygon/polygon.jsx +7 -3
  169. package/src/tools/ray/__tests__/__snapshots__/component.test.jsx.snap +23 -0
  170. package/src/tools/ray/__tests__/component.test.jsx +29 -0
  171. package/src/tools/ray/component.jsx +2 -1
  172. package/src/tools/segment/__tests__/__snapshots__/component.test.jsx.snap +14 -0
  173. package/src/tools/segment/__tests__/component.test.jsx +28 -0
  174. package/src/tools/segment/component.jsx +2 -1
  175. package/src/tools/shared/__tests__/__snapshots__/arrow-head.test.jsx.snap +27 -0
  176. package/src/tools/shared/__tests__/arrow-head.test.jsx +34 -0
  177. package/src/tools/shared/icons/CorrectSVG.jsx +22 -0
  178. package/src/tools/shared/icons/IncorrectSVG.jsx +20 -0
  179. package/src/tools/shared/icons/MissingSVG.jsx +21 -0
  180. package/src/tools/shared/line/__tests__/__snapshots__/index.test.jsx.snap +360 -0
  181. package/src/tools/shared/line/__tests__/__snapshots__/line-path.test.jsx.snap +58 -0
  182. package/src/tools/shared/line/__tests__/__snapshots__/with-root-edge.test.jsx.snap +63 -0
  183. package/src/tools/shared/line/__tests__/index.test.jsx +255 -0
  184. package/src/tools/shared/line/__tests__/line-path.test.jsx +53 -0
  185. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +73 -0
  186. package/src/tools/shared/line/index.jsx +39 -13
  187. package/src/tools/shared/line/line-path.jsx +18 -7
  188. package/src/tools/shared/line/with-root-edge.jsx +10 -3
  189. package/src/tools/shared/point/__tests__/__snapshots__/arrow-point.test.jsx.snap +56 -0
  190. package/src/tools/shared/point/__tests__/__snapshots__/base-point.test.jsx.snap +44 -0
  191. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +87 -0
  192. package/src/tools/shared/point/__tests__/base-point.test.jsx +84 -0
  193. package/src/tools/shared/point/arrow-point.jsx +4 -1
  194. package/src/tools/shared/point/arrow.jsx +4 -1
  195. package/src/tools/shared/point/base-point.jsx +28 -3
  196. package/src/tools/shared/point/index.jsx +7 -2
  197. package/src/tools/shared/styles.js +8 -3
  198. package/src/tools/sine/__tests__/component.test.jsx +51 -0
  199. package/src/tools/sine/component.jsx +7 -7
  200. package/src/tools/vector/__tests__/__snapshots__/component.test.jsx.snap +12 -0
  201. package/src/tools/vector/__tests__/component.test.jsx +26 -0
  202. package/src/tools/vector/component.jsx +2 -1
  203. package/src/undo-redo.jsx +0 -1
  204. package/src/utils.js +1 -1
  205. package/legacy.png +0 -0
  206. package/lib/axis/arrow.js.map +0 -1
  207. package/lib/axis/axes.js.map +0 -1
  208. package/lib/axis/index.js.map +0 -1
  209. package/lib/bg.js.map +0 -1
  210. package/lib/container/actions.js.map +0 -1
  211. package/lib/container/index.js.map +0 -1
  212. package/lib/container/marks.js.map +0 -1
  213. package/lib/container/middleware.js.map +0 -1
  214. package/lib/container/reducer.js.map +0 -1
  215. package/lib/coordinates-label.js.map +0 -1
  216. package/lib/graph-with-controls.js.map +0 -1
  217. package/lib/graph.js.map +0 -1
  218. package/lib/grid-setup.js.map +0 -1
  219. package/lib/grid.js.map +0 -1
  220. package/lib/index.js.map +0 -1
  221. package/lib/labels.js.map +0 -1
  222. package/lib/mark-label.js.map +0 -1
  223. package/lib/toggle-bar.js.map +0 -1
  224. package/lib/tool-menu.js.map +0 -1
  225. package/lib/tools/circle/bg-circle.js.map +0 -1
  226. package/lib/tools/circle/component.js.map +0 -1
  227. package/lib/tools/circle/index.js.map +0 -1
  228. package/lib/tools/index.js.map +0 -1
  229. package/lib/tools/line/component.js.map +0 -1
  230. package/lib/tools/line/index.js.map +0 -1
  231. package/lib/tools/parabola/component.js.map +0 -1
  232. package/lib/tools/parabola/index.js.map +0 -1
  233. package/lib/tools/point/component.js.map +0 -1
  234. package/lib/tools/point/index.js.map +0 -1
  235. package/lib/tools/polygon/component.js.map +0 -1
  236. package/lib/tools/polygon/index.js.map +0 -1
  237. package/lib/tools/polygon/line.js.map +0 -1
  238. package/lib/tools/polygon/polygon.js.map +0 -1
  239. package/lib/tools/ray/component.js.map +0 -1
  240. package/lib/tools/ray/index.js.map +0 -1
  241. package/lib/tools/segment/component.js.map +0 -1
  242. package/lib/tools/segment/index.js.map +0 -1
  243. package/lib/tools/shared/arrow-head.js.map +0 -1
  244. package/lib/tools/shared/line/index.js.map +0 -1
  245. package/lib/tools/shared/line/line-path.js.map +0 -1
  246. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  247. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  248. package/lib/tools/shared/point/arrow.js.map +0 -1
  249. package/lib/tools/shared/point/base-point.js.map +0 -1
  250. package/lib/tools/shared/point/index.js.map +0 -1
  251. package/lib/tools/shared/styles.js.map +0 -1
  252. package/lib/tools/shared/types.js.map +0 -1
  253. package/lib/tools/sine/component.js.map +0 -1
  254. package/lib/tools/sine/index.js.map +0 -1
  255. package/lib/tools/vector/component.js.map +0 -1
  256. package/lib/tools/vector/index.js.map +0 -1
  257. package/lib/undo-redo.js.map +0 -1
  258. package/lib/use-debounce.js.map +0 -1
  259. package/lib/utils.js.map +0 -1
@@ -33,6 +33,7 @@ var lineStyles = function lineStyles(theme) {
33
33
  return {
34
34
  line: _line.styles.line(theme),
35
35
  disabled: _line.styles.disabled(theme),
36
+ disabledSecondary: _line.styles.disabledSecondary(theme),
36
37
  correct: _line.styles.correct(theme, 'stroke'),
37
38
  incorrect: _line.styles.incorrect(theme, 'stroke'),
38
39
  missing: _line.styles.missing(theme, 'stroke')
@@ -58,7 +59,7 @@ var Line = function Line(props) {
58
59
  };
59
60
  var length = (0, _utils.getDistanceBetweenTwoPoints)(startPoint, endPoint);
60
61
  return /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
61
- className: (0, _classnames["default"])(classes.line, disabled && classes.disabled, classes[correctness], className),
62
+ className: (0, _classnames["default"])(classes.line, disabled && classes.disabledSecondary, classes[correctness], className),
62
63
  x1: startPoint.x,
63
64
  y1: startPoint.y,
64
65
  x2: endPoint.x,
@@ -84,4 +85,4 @@ var Vector = (0, _line.lineBase)(StyledLine, {
84
85
  var Component = (0, _line.lineToolComponent)(Vector);
85
86
  var _default = Component;
86
87
  exports["default"] = _default;
87
- //# sourceMappingURL=component.js.map
88
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy92ZWN0b3IvY29tcG9uZW50LmpzeCJdLCJuYW1lcyI6WyJsaW5lU3R5bGVzIiwidGhlbWUiLCJsaW5lIiwic3R5bGVzIiwiZGlzYWJsZWQiLCJkaXNhYmxlZFNlY29uZGFyeSIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJtaXNzaW5nIiwiTGluZSIsInByb3BzIiwiY2xhc3NOYW1lIiwiY2xhc3NlcyIsImNvcnJlY3RuZXNzIiwic2NhbGUiLCJncmFwaFByb3BzIiwiZnJvbSIsInRvIiwicmVzdCIsInN0YXJ0UG9pbnQiLCJ4IiwieSIsImVuZFBvaW50IiwibGVuZ3RoIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwic3RyaW5nIiwib2JqZWN0IiwiYm9vbCIsImFueSIsInR5cGVzIiwiUG9pbnRUeXBlIiwiU3R5bGVkTGluZSIsIlZlY3RvciIsIkFycm93IiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFFQSxJQUFNQSxVQUFVLEdBQUcsU0FBYkEsVUFBYSxDQUFDQyxLQUFEO0FBQUEsU0FBWTtBQUM3QkMsSUFBQUEsSUFBSSxFQUFFQyxhQUFPRCxJQUFQLENBQVlELEtBQVosQ0FEdUI7QUFFN0JHLElBQUFBLFFBQVEsRUFBRUQsYUFBT0MsUUFBUCxDQUFnQkgsS0FBaEIsQ0FGbUI7QUFHN0JJLElBQUFBLGlCQUFpQixFQUFFRixhQUFPRSxpQkFBUCxDQUF5QkosS0FBekIsQ0FIVTtBQUk3QkssSUFBQUEsT0FBTyxFQUFFSCxhQUFPRyxPQUFQLENBQWVMLEtBQWYsRUFBc0IsUUFBdEIsQ0FKb0I7QUFLN0JNLElBQUFBLFNBQVMsRUFBRUosYUFBT0ksU0FBUCxDQUFpQk4sS0FBakIsRUFBd0IsUUFBeEIsQ0FMa0I7QUFNN0JPLElBQUFBLE9BQU8sRUFBRUwsYUFBT0ssT0FBUCxDQUFlUCxLQUFmLEVBQXNCLFFBQXRCO0FBTm9CLEdBQVo7QUFBQSxDQUFuQjs7QUFTTyxJQUFNUSxJQUFJLEdBQUcsU0FBUEEsSUFBTyxDQUFDQyxLQUFELEVBQVc7QUFDN0IsTUFDRUMsU0FERixHQVNJRCxLQVRKLENBQ0VDLFNBREY7QUFBQSxNQUVFQyxPQUZGLEdBU0lGLEtBVEosQ0FFRUUsT0FGRjtBQUFBLE1BR0VSLFFBSEYsR0FTSU0sS0FUSixDQUdFTixRQUhGO0FBQUEsTUFJRVMsV0FKRixHQVNJSCxLQVRKLENBSUVHLFdBSkY7QUFBQSxNQUtnQkMsS0FMaEIsR0FTSUosS0FUSixDQUtFSyxVQUxGLENBS2dCRCxLQUxoQjtBQUFBLE1BTUVFLElBTkYsR0FTSU4sS0FUSixDQU1FTSxJQU5GO0FBQUEsTUFPRUMsRUFQRixHQVNJUCxLQVRKLENBT0VPLEVBUEY7QUFBQSxNQVFLQyxJQVJMLDZDQVNJUixLQVRKO0FBVUEsTUFBTVMsVUFBVSxHQUFHO0FBQUVDLElBQUFBLENBQUMsRUFBRU4sS0FBSyxDQUFDTSxDQUFOLENBQVFKLElBQUksQ0FBQ0ksQ0FBYixDQUFMO0FBQXNCQyxJQUFBQSxDQUFDLEVBQUVQLEtBQUssQ0FBQ08sQ0FBTixDQUFRTCxJQUFJLENBQUNLLENBQWI7QUFBekIsR0FBbkI7QUFDQSxNQUFNQyxRQUFRLEdBQUc7QUFBRUYsSUFBQUEsQ0FBQyxFQUFFTixLQUFLLENBQUNNLENBQU4sQ0FBUUgsRUFBRSxDQUFDRyxDQUFYLENBQUw7QUFBb0JDLElBQUFBLENBQUMsRUFBRVAsS0FBSyxDQUFDTyxDQUFOLENBQVFKLEVBQUUsQ0FBQ0ksQ0FBWDtBQUF2QixHQUFqQjtBQUNBLE1BQU1FLE1BQU0sR0FBRyx3Q0FBNEJKLFVBQTVCLEVBQXdDRyxRQUF4QyxDQUFmO0FBRUEsc0JBQ0U7QUFDRSxJQUFBLFNBQVMsRUFBRSw0QkFBV1YsT0FBTyxDQUFDVixJQUFuQixFQUF5QkUsUUFBUSxJQUFJUSxPQUFPLENBQUNQLGlCQUE3QyxFQUFnRU8sT0FBTyxDQUFDQyxXQUFELENBQXZFLEVBQXNGRixTQUF0RixDQURiO0FBRUUsSUFBQSxFQUFFLEVBQUVRLFVBQVUsQ0FBQ0MsQ0FGakI7QUFHRSxJQUFBLEVBQUUsRUFBRUQsVUFBVSxDQUFDRSxDQUhqQjtBQUlFLElBQUEsRUFBRSxFQUFFQyxRQUFRLENBQUNGLENBSmY7QUFLRSxJQUFBLEVBQUUsRUFBRUUsUUFBUSxDQUFDRCxDQUxmO0FBTUUsSUFBQSxlQUFlLEVBQUVFLE1BQU0sR0FBRztBQU41QixLQU9NTCxJQVBOLEVBREY7QUFXRCxDQTFCTTs7O0FBNEJQVCxJQUFJLENBQUNlLFNBQUwsR0FBaUI7QUFDZmIsRUFBQUEsU0FBUyxFQUFFYyxzQkFBVUMsTUFETjtBQUVmZCxFQUFBQSxPQUFPLEVBQUVhLHNCQUFVRSxNQUZKO0FBR2Z2QixFQUFBQSxRQUFRLEVBQUVxQixzQkFBVUcsSUFITDtBQUlmZixFQUFBQSxXQUFXLEVBQUVZLHNCQUFVQyxNQUpSO0FBS2ZYLEVBQUFBLFVBQVUsRUFBRVUsc0JBQVVJLEdBTFA7QUFNZmIsRUFBQUEsSUFBSSxFQUFFYyxZQUFNQyxTQU5HO0FBT2ZkLEVBQUFBLEVBQUUsRUFBRWEsWUFBTUM7QUFQSyxDQUFqQjtBQVVBLElBQU1DLFVBQVUsR0FBRyx3QkFBV2hDLFVBQVgsRUFBdUJTLElBQXZCLENBQW5CO0FBQ0EsSUFBTXdCLE1BQU0sR0FBRyxvQkFBU0QsVUFBVCxFQUFxQjtBQUFFZixFQUFBQSxFQUFFLEVBQUVpQjtBQUFOLENBQXJCLENBQWY7QUFDQSxJQUFNQyxTQUFTLEdBQUcsNkJBQWtCRixNQUFsQixDQUFsQjtlQUVlRSxTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGluZVRvb2xDb21wb25lbnQsIGxpbmVCYXNlLCBzdHlsZXMgfSBmcm9tICcuLi9zaGFyZWQvbGluZSc7XG5pbXBvcnQgeyBBcnJvdyB9IGZyb20gJy4uL3NoYXJlZC9wb2ludCc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHR5cGVzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IHsgZ2V0RGlzdGFuY2VCZXR3ZWVuVHdvUG9pbnRzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5jb25zdCBsaW5lU3R5bGVzID0gKHRoZW1lKSA9PiAoe1xuICBsaW5lOiBzdHlsZXMubGluZSh0aGVtZSksXG4gIGRpc2FibGVkOiBzdHlsZXMuZGlzYWJsZWQodGhlbWUpLFxuICBkaXNhYmxlZFNlY29uZGFyeTogc3R5bGVzLmRpc2FibGVkU2Vjb25kYXJ5KHRoZW1lKSxcbiAgY29ycmVjdDogc3R5bGVzLmNvcnJlY3QodGhlbWUsICdzdHJva2UnKSxcbiAgaW5jb3JyZWN0OiBzdHlsZXMuaW5jb3JyZWN0KHRoZW1lLCAnc3Ryb2tlJyksXG4gIG1pc3Npbmc6IHN0eWxlcy5taXNzaW5nKHRoZW1lLCAnc3Ryb2tlJyksXG59KTtcblxuZXhwb3J0IGNvbnN0IExpbmUgPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIGNsYXNzTmFtZSxcbiAgICBjbGFzc2VzLFxuICAgIGRpc2FibGVkLFxuICAgIGNvcnJlY3RuZXNzLFxuICAgIGdyYXBoUHJvcHM6IHsgc2NhbGUgfSxcbiAgICBmcm9tLFxuICAgIHRvLFxuICAgIC4uLnJlc3RcbiAgfSA9IHByb3BzO1xuICBjb25zdCBzdGFydFBvaW50ID0geyB4OiBzY2FsZS54KGZyb20ueCksIHk6IHNjYWxlLnkoZnJvbS55KSB9O1xuICBjb25zdCBlbmRQb2ludCA9IHsgeDogc2NhbGUueCh0by54KSwgeTogc2NhbGUueSh0by55KSB9O1xuICBjb25zdCBsZW5ndGggPSBnZXREaXN0YW5jZUJldHdlZW5Ud29Qb2ludHMoc3RhcnRQb2ludCwgZW5kUG9pbnQpO1xuXG4gIHJldHVybiAoXG4gICAgPGxpbmVcbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhjbGFzc2VzLmxpbmUsIGRpc2FibGVkICYmIGNsYXNzZXMuZGlzYWJsZWRTZWNvbmRhcnksIGNsYXNzZXNbY29ycmVjdG5lc3NdLCBjbGFzc05hbWUpfVxuICAgICAgeDE9e3N0YXJ0UG9pbnQueH1cbiAgICAgIHkxPXtzdGFydFBvaW50Lnl9XG4gICAgICB4Mj17ZW5kUG9pbnQueH1cbiAgICAgIHkyPXtlbmRQb2ludC55fVxuICAgICAgc3Ryb2tlRGFzaGFycmF5PXtsZW5ndGggLSA3fVxuICAgICAgey4uLnJlc3R9XG4gICAgLz5cbiAgKTtcbn07XG5cbkxpbmUucHJvcFR5cGVzID0ge1xuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgY29ycmVjdG5lc3M6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGdyYXBoUHJvcHM6IFByb3BUeXBlcy5hbnksXG4gIGZyb206IHR5cGVzLlBvaW50VHlwZSxcbiAgdG86IHR5cGVzLlBvaW50VHlwZSxcbn07XG5cbmNvbnN0IFN0eWxlZExpbmUgPSB3aXRoU3R5bGVzKGxpbmVTdHlsZXMpKExpbmUpO1xuY29uc3QgVmVjdG9yID0gbGluZUJhc2UoU3R5bGVkTGluZSwgeyB0bzogQXJyb3cgfSk7XG5jb25zdCBDb21wb25lbnQgPSBsaW5lVG9vbENvbXBvbmVudChWZWN0b3IpO1xuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQ7XG4iXX0=
@@ -13,4 +13,4 @@ var _line = require("../shared/line");
13
13
 
14
14
  var tool = (0, _line.lineTool)('vector', _component["default"]);
15
15
  exports.tool = tool;
16
- //# sourceMappingURL=index.js.map
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy92ZWN0b3IvaW5kZXguanMiXSwibmFtZXMiOlsidG9vbCIsIlZlY3RvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBRU8sSUFBTUEsSUFBSSxHQUFHLG9CQUFTLFFBQVQsRUFBbUJDLHFCQUFuQixDQUFiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFZlY3RvciBmcm9tICcuL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBsaW5lVG9vbCB9IGZyb20gJy4uL3NoYXJlZC9saW5lJztcblxuZXhwb3J0IGNvbnN0IHRvb2wgPSBsaW5lVG9vbCgndmVjdG9yJywgVmVjdG9yKTtcbiJdfQ==
package/lib/undo-redo.js CHANGED
@@ -109,7 +109,6 @@ var styles = function styles(theme) {
109
109
  return {
110
110
  button: {
111
111
  color: _renderUi.color.text(),
112
- backgroundColor: _renderUi.color.background(),
113
112
  marginBottom: theme.spacing.unit / 2,
114
113
  '&:not(:last-of-type)': {
115
114
  marginRight: theme.spacing.unit / 2
@@ -121,4 +120,4 @@ var styles = function styles(theme) {
121
120
  var _default = (0, _core.withStyles)(styles)(UndoRedo);
122
121
 
123
122
  exports["default"] = _default;
124
- //# sourceMappingURL=undo-redo.js.map
123
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91bmRvLXJlZG8uanN4Il0sIm5hbWVzIjpbInRyYW5zbGF0b3IiLCJUcmFuc2xhdG9yIiwiVW5kb1JlZG8iLCJwcm9wcyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJvblVuZG8iLCJvblJlZG8iLCJvblJlc2V0IiwibGFuZ3VhZ2UiLCJyb290IiwiYnV0dG9uIiwidCIsImxuZyIsIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib2JqZWN0Iiwic3RyaW5nIiwiZnVuYyIsImlzUmVxdWlyZWQiLCJzdHlsZXMiLCJ0aGVtZSIsImNvbG9yIiwidGV4dCIsIm1hcmdpbkJvdHRvbSIsInNwYWNpbmciLCJ1bml0IiwibWFyZ2luUmlnaHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFRQSxVQUFSLEdBQXVCQyxzQkFBdkIsQ0FBUUQsVUFBUjs7SUFFYUUsUTs7Ozs7Ozs7Ozs7O1dBV1gsa0JBQVM7QUFDUCx3QkFBa0UsS0FBS0MsS0FBdkU7QUFBQSxVQUFRQyxPQUFSLGVBQVFBLE9BQVI7QUFBQSxVQUFpQkMsU0FBakIsZUFBaUJBLFNBQWpCO0FBQUEsVUFBNEJDLE1BQTVCLGVBQTRCQSxNQUE1QjtBQUFBLFVBQW9DQyxNQUFwQyxlQUFvQ0EsTUFBcEM7QUFBQSxVQUE0Q0MsT0FBNUMsZUFBNENBLE9BQTVDO0FBQUEsVUFBcURDLFFBQXJELGVBQXFEQSxRQUFyRDtBQUNBLDBCQUNFO0FBQUssUUFBQSxTQUFTLEVBQUUsNEJBQVdKLFNBQVg7QUFBaEIsc0JBQ0UsZ0NBQUMsa0JBQUQ7QUFBUSxRQUFBLE9BQU8sRUFBRTtBQUFFSyxVQUFBQSxJQUFJLEVBQUVOLE9BQU8sQ0FBQ087QUFBaEIsU0FBakI7QUFBMkMsUUFBQSxPQUFPLEVBQUU7QUFBQSxpQkFBTUwsTUFBTSxDQUFDLElBQUQsQ0FBWjtBQUFBO0FBQXBELFNBQ0dOLFVBQVUsQ0FBQ1ksQ0FBWCxDQUFhLGFBQWIsRUFBNEI7QUFBRUMsUUFBQUEsR0FBRyxFQUFFSjtBQUFQLE9BQTVCLENBREgsQ0FERixlQUlFLGdDQUFDLGtCQUFEO0FBQVEsUUFBQSxPQUFPLEVBQUU7QUFBRUMsVUFBQUEsSUFBSSxFQUFFTixPQUFPLENBQUNPO0FBQWhCLFNBQWpCO0FBQTJDLFFBQUEsT0FBTyxFQUFFO0FBQUEsaUJBQU1KLE1BQU0sQ0FBQyxJQUFELENBQVo7QUFBQTtBQUFwRCxTQUNHUCxVQUFVLENBQUNZLENBQVgsQ0FBYSxlQUFiLEVBQThCO0FBQUVDLFFBQUFBLEdBQUcsRUFBRUo7QUFBUCxPQUE5QixDQURILENBSkYsZUFPRSxnQ0FBQyxrQkFBRDtBQUFRLFFBQUEsT0FBTyxFQUFFO0FBQUVDLFVBQUFBLElBQUksRUFBRU4sT0FBTyxDQUFDTztBQUFoQixTQUFqQjtBQUEyQyxRQUFBLE9BQU8sRUFBRTtBQUFBLGlCQUFNSCxPQUFPLEVBQWI7QUFBQTtBQUFwRCxTQUNHUixVQUFVLENBQUNZLENBQVgsQ0FBYSxnQkFBYixFQUErQjtBQUFFQyxRQUFBQSxHQUFHLEVBQUVKO0FBQVAsT0FBL0IsQ0FESCxDQVBGLENBREY7QUFhRDs7O0VBMUIyQkssa0JBQU1DLFM7OztpQ0FBdkJiLFEsZUFDUTtBQUNqQkUsRUFBQUEsT0FBTyxFQUFFWSxzQkFBVUMsTUFERjtBQUVqQlosRUFBQUEsU0FBUyxFQUFFVyxzQkFBVUUsTUFGSjtBQUdqQlosRUFBQUEsTUFBTSxFQUFFVSxzQkFBVUcsSUFBVixDQUFlQyxVQUhOO0FBSWpCYixFQUFBQSxNQUFNLEVBQUVTLHNCQUFVRyxJQUFWLENBQWVDLFVBSk47QUFLakJaLEVBQUFBLE9BQU8sRUFBRVEsc0JBQVVHLElBQVYsQ0FBZUMsVUFMUDtBQU1qQlgsRUFBQUEsUUFBUSxFQUFFTyxzQkFBVUU7QUFOSCxDO2lDQURSaEIsUSxrQkFTVyxFOztBQW9CeEIsSUFBTW1CLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ3pCWCxJQUFBQSxNQUFNLEVBQUU7QUFDTlksTUFBQUEsS0FBSyxFQUFFQSxnQkFBTUMsSUFBTixFQUREO0FBRU5DLE1BQUFBLFlBQVksRUFBRUgsS0FBSyxDQUFDSSxPQUFOLENBQWNDLElBQWQsR0FBcUIsQ0FGN0I7QUFHTiw4QkFBd0I7QUFDdEJDLFFBQUFBLFdBQVcsRUFBRU4sS0FBSyxDQUFDSSxPQUFOLENBQWNDLElBQWQsR0FBcUI7QUFEWjtBQUhsQjtBQURpQixHQUFaO0FBQUEsQ0FBZjs7ZUFVZSxzQkFBV04sTUFBWCxFQUFtQm5CLFFBQW5CLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IEJ1dHRvbiBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9CdXR0b24nO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlJztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCBUcmFuc2xhdG9yIGZyb20gJ0BwaWUtbGliL3RyYW5zbGF0b3InO1xuXG5jb25zdCB7IHRyYW5zbGF0b3IgfSA9IFRyYW5zbGF0b3I7XG5cbmV4cG9ydCBjbGFzcyBVbmRvUmVkbyBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25VbmRvOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9uUmVkbzogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBvblJlc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIGxhbmd1YWdlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICB9O1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge307XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgY2xhc3NlcywgY2xhc3NOYW1lLCBvblVuZG8sIG9uUmVkbywgb25SZXNldCwgbGFuZ3VhZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVzKGNsYXNzTmFtZSl9PlxuICAgICAgICA8QnV0dG9uIGNsYXNzZXM9e3sgcm9vdDogY2xhc3Nlcy5idXR0b24gfX0gb25DbGljaz17KCkgPT4gb25VbmRvKHRydWUpfT5cbiAgICAgICAgICB7dHJhbnNsYXRvci50KCdjb21tb246dW5kbycsIHsgbG5nOiBsYW5ndWFnZSB9KX1cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICAgIDxCdXR0b24gY2xhc3Nlcz17eyByb290OiBjbGFzc2VzLmJ1dHRvbiB9fSBvbkNsaWNrPXsoKSA9PiBvblJlZG8odHJ1ZSl9PlxuICAgICAgICAgIHt0cmFuc2xhdG9yLnQoJ2dyYXBoaW5nLnJlZG8nLCB7IGxuZzogbGFuZ3VhZ2UgfSl9XG4gICAgICAgIDwvQnV0dG9uPlxuICAgICAgICA8QnV0dG9uIGNsYXNzZXM9e3sgcm9vdDogY2xhc3Nlcy5idXR0b24gfX0gb25DbGljaz17KCkgPT4gb25SZXNldCgpfT5cbiAgICAgICAgICB7dHJhbnNsYXRvci50KCdncmFwaGluZy5yZXNldCcsIHsgbG5nOiBsYW5ndWFnZSB9KX1cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmNvbnN0IHN0eWxlcyA9ICh0aGVtZSkgPT4gKHtcbiAgYnV0dG9uOiB7XG4gICAgY29sb3I6IGNvbG9yLnRleHQoKSxcbiAgICBtYXJnaW5Cb3R0b206IHRoZW1lLnNwYWNpbmcudW5pdCAvIDIsXG4gICAgJyY6bm90KDpsYXN0LW9mLXR5cGUpJzoge1xuICAgICAgbWFyZ2luUmlnaHQ6IHRoZW1lLnNwYWNpbmcudW5pdCAvIDIsXG4gICAgfSxcbiAgfSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKHN0eWxlcykoVW5kb1JlZG8pO1xuIl19
@@ -29,4 +29,4 @@ var useDebounce = function useDebounce(value, delay) {
29
29
  };
30
30
 
31
31
  exports.useDebounce = useDebounce;
32
- //# sourceMappingURL=use-debounce.js.map
32
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91c2UtZGVib3VuY2UuanMiXSwibmFtZXMiOlsidXNlRGVib3VuY2UiLCJ2YWx1ZSIsImRlbGF5IiwiZGVib3VuY2VkVmFsdWUiLCJzZXREZWJvdW5jZWRWYWx1ZSIsImhhbmRsZXIiLCJzZXRUaW1lb3V0IiwiY2xlYXJUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUVPLElBQU1BLFdBQVcsR0FBRyxTQUFkQSxXQUFjLENBQUNDLEtBQUQsRUFBUUMsS0FBUixFQUFrQjtBQUMzQyxrQkFBNEMscUJBQVNELEtBQVQsQ0FBNUM7QUFBQTtBQUFBLE1BQU9FLGNBQVA7QUFBQSxNQUF1QkMsaUJBQXZCOztBQUVBLHdCQUFVLFlBQU07QUFDZCxRQUFNQyxPQUFPLEdBQUdDLFVBQVUsQ0FBQyxZQUFNO0FBQy9CRixNQUFBQSxpQkFBaUIsQ0FBQ0gsS0FBRCxDQUFqQjtBQUNELEtBRnlCLEVBRXZCQyxLQUZ1QixDQUExQjtBQUdBLFdBQU87QUFBQSxhQUFNSyxZQUFZLENBQUNGLE9BQUQsQ0FBbEI7QUFBQSxLQUFQO0FBQ0QsR0FMRCxFQUtHLENBQUNKLEtBQUQsQ0FMSDtBQU1BLFNBQU9FLGNBQVA7QUFDRCxDQVZNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcblxuZXhwb3J0IGNvbnN0IHVzZURlYm91bmNlID0gKHZhbHVlLCBkZWxheSkgPT4ge1xuICBjb25zdCBbZGVib3VuY2VkVmFsdWUsIHNldERlYm91bmNlZFZhbHVlXSA9IHVzZVN0YXRlKHZhbHVlKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldERlYm91bmNlZFZhbHVlKHZhbHVlKTtcbiAgICB9LCBkZWxheSk7XG4gICAgcmV0dXJuICgpID0+IGNsZWFyVGltZW91dChoYW5kbGVyKTtcbiAgfSwgW3ZhbHVlXSk7XG4gIHJldHVybiBkZWJvdW5jZWRWYWx1ZTtcbn07XG4iXX0=
package/lib/utils.js CHANGED
@@ -286,7 +286,7 @@ var isDuplicatedMark = function isDuplicatedMark(mark, marks, oldMark) {
286
286
  }
287
287
 
288
288
  var duplicated = filteredMarks.find(function (m) {
289
- if (type === 'circle' || type === 'parabola' || type === 'sine') {
289
+ if (type === 'circle' || type === 'parabola' || type === 'sine' || type === 'absolute' || type === 'exponential') {
290
290
  var root = mark.root,
291
291
  edge = mark.edge;
292
292
  return equalPoints(root, m.root) && equalPoints(edge, m.edge) || type === 'circle' && isSameCircle(m, mark);
@@ -304,4 +304,4 @@ var isDuplicatedMark = function isDuplicatedMark(mark, marks, oldMark) {
304
304
  };
305
305
 
306
306
  exports.isDuplicatedMark = isDuplicatedMark;
307
- //# sourceMappingURL=utils.js.map
307
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy5qcyJdLCJuYW1lcyI6WyJ0aWNrQ291bnQiLCJ1dGlscyIsImJvdW5kcyIsInBvaW50IiwiZ2V0QW5nbGVEZWciLCJhcnJvd0RpbWVuc2lvbnMiLCJnZXRUaWNrVmFsdWVzIiwicHJvcCIsInRpY2tWYWx1ZXMiLCJ0aWNrVmFsIiwibWluIiwiaW5kZXhPZiIsInB1c2giLCJNYXRoIiwicm91bmQiLCJzdGVwIiwibWF4IiwiZmlsdGVyIiwidFYiLCJjb3VudFdvcmRzIiwibGFiZWwiLCJ3b3JkcyIsInNwbGl0IiwibGVuZ3RoIiwiZmluZExvbmdlc3RXb3JkIiwibG9uZ2VzdFdvcmQiLCJyZXBsYWNlIiwic29ydCIsImEiLCJiIiwiYW1vdW50VG9JbmNyZWFzZVdpZHRoIiwicG9seWdvblRvQXJlYSIsInBvaW50cyIsImgiLCJhcmVhIiwibGVmdCIsIngiLCJ0b3AiLCJ5IiwiYm90dG9tIiwicmlnaHQiLCJyZWR1Y2UiLCJwIiwibGluZVRvQXJlYSIsImZyb20iLCJ0byIsInBvaW50c1RvQXJlYSIsImlzRG9tYWluUmFuZ2VFcXVhbCIsImdyYXBoUHJvcHMiLCJuZXh0R3JhcGhQcm9wcyIsImRvbWFpbiIsInJhbmdlIiwiZ2V0UmlnaHRlc3RQb2ludHMiLCJzb3J0ZWRQb2ludHMiLCJnZXRNaWRkbGVPZlR3b1BvaW50cyIsInJvdW5kTnVtYmVyIiwibnVtYmVyIiwicGFyc2VGbG9hdCIsInRvRml4ZWQiLCJzYW1lQXhlcyIsInAxIiwicDIiLCJlcXVhbFBvaW50cyIsImdldERpc3RhbmNlQmV0d2VlblRpY2tzIiwiYXhpcyIsInNpemUiLCJuYk9mVGlja3MiLCJ0aGlubmVyU2hhcGVzTmVlZGVkIiwid2lkdGgiLCJoZWlnaHQiLCJnZXRBZGp1c3RlZEdyYXBoTGltaXRzIiwiZG9tYWluVGlja3NEaXN0YW5jZSIsInJhbmdlVGlja3NEaXN0YW5jZSIsImRvbWFpblBhZGRpbmciLCJyYW5nZVBhZGRpbmciLCJnZXREaXN0YW5jZUJldHdlZW5Ud29Qb2ludHMiLCJzcXJ0Iiwic29ydFBvaW50cyIsImFycmF5IiwiY2hlY2tDb2xsaW5lYXJpdHkiLCJjIiwiaXNTYW1lTGluZSIsIm1hcmtBIiwibWFya0IiLCJpc1NhbWVDaXJjbGUiLCJyb290IiwiZWRnZSIsImlzRHVwbGljYXRlZE1hcmsiLCJtYXJrIiwibWFya3MiLCJvbGRNYXJrIiwidHlwZSIsImJ1aWxkaW5nIiwiZmlsdGVyZWRNYXJrcyIsIm0iLCJpbmRleCIsImZpbmRJbmRleCIsInNwbGljZSIsImR1cGxpY2F0ZWQiLCJmaW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFTyxJQUFNQSxTQUFTLEdBQUdDLFlBQU1ELFNBQXhCOztBQUNBLElBQU1FLE1BQU0sR0FBR0QsWUFBTUMsTUFBckI7O0FBQ0EsSUFBTUMsS0FBSyxHQUFHRixZQUFNRSxLQUFwQixDLENBRVA7Ozs7QUFDTyxJQUFNQyxXQUFXLEdBQUcsU0FBZEEsV0FBYztBQUFBLFNBQU0sQ0FBTjtBQUFBLENBQXBCLEMsQ0FDUDs7Ozs7QUFDTyxJQUFNQyxlQUFlLEdBQUcsU0FBbEJBLGVBQWtCO0FBQUEsU0FBTSxDQUFOO0FBQUEsQ0FBeEI7Ozs7QUFFQSxJQUFNQyxhQUFhLEdBQUcsU0FBaEJBLGFBQWdCLENBQUNDLElBQUQsRUFBVTtBQUNyQyxNQUFNQyxVQUFVLEdBQUcsRUFBbkI7QUFDQSxNQUFJQyxPQUFPLEdBQUcsQ0FBZDs7QUFFQSxTQUFPQSxPQUFPLElBQUlGLElBQUksQ0FBQ0csR0FBaEIsSUFBdUJGLFVBQVUsQ0FBQ0csT0FBWCxDQUFtQkYsT0FBbkIsSUFBOEIsQ0FBNUQsRUFBK0Q7QUFDN0RELElBQUFBLFVBQVUsQ0FBQ0ksSUFBWCxDQUFnQkgsT0FBaEI7QUFDQUEsSUFBQUEsT0FBTyxHQUFHSSxJQUFJLENBQUNDLEtBQUwsQ0FBVyxDQUFDTCxPQUFPLEdBQUdGLElBQUksQ0FBQ1EsSUFBaEIsSUFBd0IsS0FBbkMsSUFBNEMs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RUFBSU4sSUFBSixDQUFyRztBQUNELEtBSkQsTUFJTyxJQUFJRyxJQUFJLEtBQUssTUFBVCxJQUFtQkEsSUFBSSxLQUFLLEtBQTVCLElBQXFDQSxJQUFJLEtBQUssU0FBOUMsSUFBMkRBLElBQUksS0FBSyxRQUF4RSxFQUFrRjtBQUN2RixVQUFRL0MsSUFBUixHQUFxQjRDLElBQXJCLENBQVE1QyxJQUFSO0FBQUEsVUFBY0MsRUFBZCxHQUFxQjJDLElBQXJCLENBQWMzQyxFQUFkO0FBRUEsYUFDR2lCLFdBQVcsQ0FBQ2xCLElBQUQsRUFBT2tELENBQUMsQ0FBQ2xELElBQVQsQ0FBWCxJQUE2QmtCLFdBQVcsQ0FBQ2pCLEVBQUQsRUFBS2lELENBQUMsQ0FBQ2pELEVBQVAsQ0FBekMsSUFDQ2lCLFdBQVcsQ0FBQ2xCLElBQUQsRUFBT2tELENBQUMsQ0FBQ2pELEVBQVQsQ0FBWCxJQUEyQmlCLFdBQVcsQ0FBQ2pCLEVBQUQsRUFBS2lELENBQUMsQ0FBQ2xELElBQVAsQ0FEdkMsSUFFQytDLElBQUksS0FBSyxNQUFULElBQW1CVixVQUFVLENBQUNhLENBQUQsRUFBSU4sSUFBSixDQUhoQztBQUtELEtBUk0sTUFRQSxJQUFJRyxJQUFJLEtBQUssU0FBYixFQUF3QjtBQUM3QixhQUFPLHlCQUFRZCxVQUFVLENBQUMsMkJBQVVXLElBQUksQ0FBQ3hELE1BQWYsQ0FBRCxDQUFsQixFQUE0QzZDLFVBQVUsQ0FBQywyQkFBVWlCLENBQUMsQ0FBQzlELE1BQVosQ0FBRCxDQUF0RCxDQUFQO0FBQ0QsS0FGTSxNQUVBLElBQUkyRCxJQUFJLEtBQUssT0FBYixFQUFzQjtBQUMzQixhQUFPN0IsV0FBVyxDQUFDZ0MsQ0FBRCxFQUFJTixJQUFKLENBQWxCO0FBQ0Q7QUFDRixHQWxCa0IsQ0FBbkI7QUFvQkEsU0FBTyxDQUFDLENBQUNVLFVBQVQ7QUFDRCxDQW5DTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBoZWFkIGZyb20gJ2xvZGFzaC9oZWFkJztcbmltcG9ydCB0YWlsIGZyb20gJ2xvZGFzaC90YWlsJztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2ludmFyaWFudCc7XG5pbXBvcnQgaXNFcXVhbCBmcm9tICdsb2Rhc2gvaXNFcXVhbCc7XG5pbXBvcnQgaXNFbXB0eSBmcm9tICdsb2Rhc2gvaXNFbXB0eSc7XG5pbXBvcnQgY2xvbmVEZWVwIGZyb20gJ2xvZGFzaC9jbG9uZURlZXAnO1xuXG5leHBvcnQgY29uc3QgdGlja0NvdW50ID0gdXRpbHMudGlja0NvdW50O1xuZXhwb3J0IGNvbnN0IGJvdW5kcyA9IHV0aWxzLmJvdW5kcztcbmV4cG9ydCBjb25zdCBwb2ludCA9IHV0aWxzLnBvaW50O1xuXG4vL1RPRE86IFRoaXMgY2FuIGJlIHJlbW92ZWQ/XG5leHBvcnQgY29uc3QgZ2V0QW5nbGVEZWcgPSAoKSA9PiAwO1xuLy9UT0RPOiBUaGlzIGNhbiBiZSByZW1vdmVkP1xuZXhwb3J0IGNvbnN0IGFycm93RGltZW5zaW9ucyA9ICgpID0+IDA7XG5cbmV4cG9ydCBjb25zdCBnZXRUaWNrVmFsdWVzID0gKHByb3ApID0+IHtcbiAgY29uc3QgdGlja1ZhbHVlcyA9IFtdO1xuICBsZXQgdGlja1ZhbCA9IDA7XG5cbiAgd2hpbGUgKHRpY2tWYWwgPj0gcHJvcC5taW4gJiYgdGlja1ZhbHVlcy5pbmRleE9mKHRpY2tWYWwpIDwgMCkge1xuICAgIHRpY2tWYWx1ZXMucHVzaCh0aWNrVmFsKTtcbiAgICB0aWNrVmFsID0gTWF0aC5yb3VuZCgodGlja1ZhbCAtIHByb3Auc3RlcCkgKiAxMDAwMCkgLyAxMDAwMDtcbiAgfVxuXG4gIHRpY2tWYWwgPSBNYXRoLnJvdW5kKHByb3Auc3RlcCAqIDEwMDAwKSAvIDEwMDAwO1xuXG4gIHdoaWxlICh0aWNrVmFsIDw9IHByb3AubWF4ICYmIHRpY2tWYWx1ZXMuaW5kZXhPZih0aWNrVmFsKSA8IDApIHtcbiAgICB0aWNrVmFsdWVzLnB1c2godGlja1ZhbCk7XG4gICAgdGlja1ZhbCA9IE1hdGgucm91bmQoKHRpY2tWYWwgKyBwcm9wLnN0ZXApICogMTAwMDApIC8gMTAwMDA7XG4gIH1cblxuICAvLyByZXR1cm4gb25seSB0aWNrcyB0aGF0IGFyZSBpbnNpZGUgdGhlIG1pbi1tYXggaW50ZXJ2YWxcbiAgaWYgKHRpY2tWYWx1ZXMpIHtcbiAgICByZXR1cm4gdGlja1ZhbHVlcy5maWx0ZXIoKHRWKSA9PiB0ViA+PSBwcm9wLm1pbiAmJiB0ViA8PSBwcm9wLm1heCk7XG4gIH1cblxuICByZXR1cm4gW107XG59O1xuXG5leHBvcnQgY29uc3QgY291bnRXb3JkcyA9IChsYWJlbCkgPT4ge1xuICBpZiAobGFiZWwgPT0gbnVsbCB8fCBpc0VtcHR5KGxhYmVsKSkge1xuICAgIHJldHVybiAxO1xuICB9XG5cbiAgY29uc3Qgd29yZHMgPSBsYWJlbC5zcGxpdCgnICcpO1xuICByZXR1cm4gd29yZHMubGVuZ3RoO1xufTtcblxuLy8gZmluZExvbmdlc3RXb3JkIGlzIGFsc28gdXNlZCBpbiBwbG90XG5leHBvcnQgY29uc3QgZmluZExvbmdlc3RXb3JkID0gKGxhYmVsKSA9PiB7XG4gIGxldCBsb25nZXN0V29yZCA9IChsYWJlbCB8fCAnJylcbiAgICAucmVwbGFjZSgvPFtePl0rPi9nLCAnJylcbiAgICAuc3BsaXQoJyAnKVxuICAgIC5zb3J0KChhLCBiKSA9PiBiLmxlbmd0aCAtIGEubGVuZ3RoKTtcblxuICByZXR1cm4gbG9uZ2VzdFdvcmRbMF0ubGVuZ3RoO1xufTtcblxuLy8gYW1vdW50VG9JbmNyZWFzZVdpZHRoIGlzIGFsc28gdXNlZCBpbiBwbG90XG5leHBvcnQgY29uc3QgYW1vdW50VG9JbmNyZWFzZVdpZHRoID0gKGxvbmdlc3RXb3JkKSA9PiB7XG4gIGlmICghbG9uZ2VzdFdvcmQpIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHJldHVybiBsb25nZXN0V29yZCAqIDEwO1xufTtcblxuZXhwb3J0IGNvbnN0IHBvbHlnb25Ub0FyZWEgPSAocG9pbnRzKSA9PiB7XG4gIGNvbnN0IGggPSBoZWFkKHBvaW50cyk7XG4gIGNvbnN0IGFyZWEgPSB7XG4gICAgbGVmdDogaC54LFxuICAgIHRvcDogaC55LFxuICAgIGJvdHRvbTogaC55LFxuICAgIHJpZ2h0OiBoLngsXG4gIH07XG4gIHJldHVybiB0YWlsKHBvaW50cykucmVkdWNlKChhLCBwKSA9PiB7XG4gICAgYS5sZWZ0ID0gTWF0aC5taW4oYS5sZWZ0LCBwLngpO1xuICAgIGEudG9wID0gTWF0aC5tYXgoYS50b3AsIHAueSk7XG4gICAgYS5ib3R0b20gPSBNYXRoLm1pbihhLmJvdHRvbSwgcC55KTtcbiAgICBhLnJpZ2h0ID0gTWF0aC5tYXgoYS5yaWdodCwgcC54KTtcbiAgICByZXR1cm4gYTtcbiAgfSwgYXJlYSk7XG59O1xuXG5leHBvcnQgY29uc3QgbGluZVRvQXJlYSA9IChmcm9tLCB0bykgPT4gcG9pbnRzVG9BcmVhKGZyb20sIHRvKTtcblxuZXhwb3J0IGNvbnN0IHBvaW50c1RvQXJlYSA9IChhLCBiKSA9PiB7XG4gIGludmFyaWFudCghIWEgJiYgISFiLCAnYSBvciBiIGlzIHVuZGVmaW5lZCcpO1xuICBjb25zdCBsZWZ0ID0gTWF0aC5taW4oYS54LCBiLngpO1xuICBjb25zdCB0b3AgPSBNYXRoLm1heChhLnksIGIueSk7XG4gIGNvbnN0IGJvdHRvbSA9IE1hdGgubWluKGEueSwgYi55KTtcbiAgY29uc3QgcmlnaHQgPSBNYXRoLm1heChhLngsIGIueCk7XG4gIHJldHVybiB7IGxlZnQsIHRvcCwgYm90dG9tLCByaWdodCB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRG9tYWluUmFuZ2VFcXVhbCA9IChncmFwaFByb3BzLCBuZXh0R3JhcGhQcm9wcykgPT4ge1xuICByZXR1cm4gaXNFcXVhbChncmFwaFByb3BzLmRvbWFpbiwgbmV4dEdyYXBoUHJvcHMuZG9tYWluKSAmJiBpc0VxdWFsKGdyYXBoUHJvcHMucmFuZ2UsIG5leHRHcmFwaFByb3BzLnJhbmdlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSaWdodGVzdFBvaW50cyA9IChwb2ludHMpID0+IHtcbiAgY29uc3Qgc29ydGVkUG9pbnRzID0gY2xvbmVEZWVwKHBvaW50cyk7XG4gIHNvcnRlZFBvaW50cy5zb3J0KChhLCBiKSA9PiBiLnggLSBhLngpO1xuXG4gIHJldHVybiB7IGE6IHNvcnRlZFBvaW50c1swXSwgYjogc29ydGVkUG9pbnRzWzFdIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TWlkZGxlT2ZUd29Qb2ludHMgPSAoYSwgYikgPT4gKHtcbiAgeDogKGEueCArIGIueCkgLyAyLFxuICB5OiAoYS55ICsgYi55KSAvIDIsXG59KTtcblxuZXhwb3J0IGNvbnN0IHJvdW5kTnVtYmVyID0gKG51bWJlcikgPT4gcGFyc2VGbG9hdChudW1iZXIudG9GaXhlZCg0KSk7XG5cbmV4cG9ydCBjb25zdCBzYW1lQXhlcyA9IChwMSwgcDIpID0+XG4gIHAxICYmIHAyICYmIChyb3VuZE51bWJlcihwMS54KSA9PT0gcm91bmROdW1iZXIocDIueCkgfHwgcm91bmROdW1iZXIocDEueSkgPT09IHJvdW5kTnVtYmVyKHAyLnkpKTtcblxuZXhwb3J0IGNvbnN0IGVxdWFsUG9pbnRzID0gKHAxLCBwMikgPT5cbiAgcDEgJiZcbiAgcDIgJiZcbiAgaXNFcXVhbChcbiAgICB7XG4gICAgICB4OiByb3VuZE51bWJlcihwMS54KSxcbiAgICAgIHk6IHJvdW5kTnVtYmVyKHAxLnkpLFxuICAgIH0sXG4gICAge1xuICAgICAgeDogcm91bmROdW1iZXIocDIueCksXG4gICAgICB5OiByb3VuZE51bWJlcihwMi55KSxcbiAgICB9LFxuICApO1xuXG5jb25zdCBnZXREaXN0YW5jZUJldHdlZW5UaWNrcyA9IChheGlzLCBzaXplKSA9PiB7XG4gIGNvbnN0IHsgbWluLCBtYXgsIHN0ZXAgfSA9IGF4aXM7XG4gIGNvbnN0IG5iT2ZUaWNrcyA9IChtYXggLSBtaW4pIC8gc3RlcDtcblxuICByZXR1cm4gc2l6ZSAvIG5iT2ZUaWNrcztcbn07XG5cbmV4cG9ydCBjb25zdCB0aGlubmVyU2hhcGVzTmVlZGVkID0gKGdyYXBoUHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIGRvbWFpbixcbiAgICByYW5nZSxcbiAgICBzaXplOiB7IHdpZHRoLCBoZWlnaHQgfSxcbiAgfSA9IGdyYXBoUHJvcHM7XG5cbiAgLy8gMTQgaXMgdGhlIGRlZmF1bHQgd2lkdGggb2YgYSBwb2ludFxuICByZXR1cm4gZ2V0RGlzdGFuY2VCZXR3ZWVuVGlja3MoZG9tYWluLCB3aWR0aCkgPCAxNCB8fCBnZXREaXN0YW5jZUJldHdlZW5UaWNrcyhyYW5nZSwgaGVpZ2h0KSA8IDE0O1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEFkanVzdGVkR3JhcGhMaW1pdHMgPSAoZ3JhcGhQcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgZG9tYWluLFxuICAgIHJhbmdlLFxuICAgIHNpemU6IHsgd2lkdGgsIGhlaWdodCB9LFxuICB9ID0gZ3JhcGhQcm9wcztcbiAgY29uc3QgZG9tYWluVGlja3NEaXN0YW5jZSA9IGdldERpc3RhbmNlQmV0d2VlblRpY2tzKGRvbWFpbiwgd2lkdGgpO1xuICBjb25zdCByYW5nZVRpY2tzRGlzdGFuY2UgPSBnZXREaXN0YW5jZUJldHdlZW5UaWNrcyhyYW5nZSwgaGVpZ2h0KTtcblxuICAvLyAxNSBpcyB0aGUgZGlzdGFuY2UgcmVxdWlyZWQgZm9yIHRoZSBhcnJvdyB0byBleHRlbmQgdGhlIGdyYXBoXG4gIGNvbnN0IGRvbWFpblBhZGRpbmcgPSBkb21haW4uc3RlcCAvIChkb21haW5UaWNrc0Rpc3RhbmNlIC8gMTUpO1xuICBjb25zdCByYW5nZVBhZGRpbmcgPSByYW5nZS5zdGVwIC8gKHJhbmdlVGlja3NEaXN0YW5jZSAvIDE1KTtcblxuICByZXR1cm4ge1xuICAgIGRvbWFpbjoge1xuICAgICAgbWluOiBkb21haW4ubWluIC0gZG9tYWluUGFkZGluZyxcbiAgICAgIG1heDogZG9tYWluLm1heCArIGRvbWFpblBhZGRpbmcsXG4gICAgfSxcbiAgICByYW5nZToge1xuICAgICAgbWluOiByYW5nZS5taW4gLSByYW5nZVBhZGRpbmcsXG4gICAgICBtYXg6IHJhbmdlLm1heCArIHJhbmdlUGFkZGluZyxcbiAgICB9LFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdldERpc3RhbmNlQmV0d2VlblR3b1BvaW50cyA9IChhLCBiKSA9PiBNYXRoLnNxcnQoKGIueCAtIGEueCkgKiAoYi54IC0gYS54KSArIChiLnkgLSBhLnkpICogKGIueSAtIGEueSkpO1xuXG5jb25zdCBzb3J0UG9pbnRzID0gKGFycmF5KSA9PiAoYXJyYXkgfHwgW10pLnNvcnQoKGEsIGIpID0+IGEueCAtIGIueCB8fCBhLnkgLSBiLnkpO1xuXG4vLyBjaGVjayBjb2xsaW5pYXJpdHkgb2YgMyBwb2ludHMgKHNvdXJjZTogaHR0cHM6Ly93d3cuZ2Vla3Nmb3JnZWVrcy5vcmcvcHJvZ3JhbS1jaGVjay10aHJlZS1wb2ludHMtY29sbGluZWFyLylcbmNvbnN0IGNoZWNrQ29sbGluZWFyaXR5ID0gKGEsIGIsIGMpID0+IChhLnggLSBiLngpICogKGMueSAtIGIueSkgPT09IChjLnggLSBiLngpICogKGEueSAtIGIueSk7XG5cbi8vIDIgbGluZXMgYXJlIG92ZXJsYXBwaW5nIGlmIGFsbCA0IHBvaW50cyBhcmUgY29sbGluZWFyXG5jb25zdCBpc1NhbWVMaW5lID0gKG1hcmtBLCBtYXJrQikgPT5cbiAgY2hlY2tDb2xsaW5lYXJpdHkobWFya0EuZnJvbSwgbWFya0IuZnJvbSwgbWFya0IudG8pICYmIGNoZWNrQ29sbGluZWFyaXR5KG1hcmtBLnRvLCBtYXJrQi5mcm9tLCBtYXJrQi50byk7XG5cbmNvbnN0IGlzU2FtZUNpcmNsZSA9IChtYXJrQSwgbWFya0IpID0+XG4gIGVxdWFsUG9pbnRzKG1hcmtBLnJvb3QsIG1hcmtCLnJvb3QpICYmXG4gIGdldERpc3RhbmNlQmV0d2VlblR3b1BvaW50cyhtYXJrQi5yb290LCBtYXJrQi5lZGdlKSA9PT0gZ2V0RGlzdGFuY2VCZXR3ZWVuVHdvUG9pbnRzKG1hcmtBLnJvb3QsIG1hcmtBLmVkZ2UpO1xuXG5leHBvcnQgY29uc3QgaXNEdXBsaWNhdGVkTWFyayA9IChtYXJrLCBtYXJrcywgb2xkTWFyaykgPT4ge1xuICBjb25zdCB7IHR5cGUsIGJ1aWxkaW5nIH0gPSBtYXJrO1xuXG4gIGlmIChidWlsZGluZykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGZpbHRlcmVkTWFya3MgPSAobWFya3MgfHwgW10pLmZpbHRlcigobSkgPT4gbS50eXBlID09PSB0eXBlICYmICFtLmJ1aWxkaW5nKTtcbiAgY29uc3QgaW5kZXggPSBmaWx0ZXJlZE1hcmtzLmZpbmRJbmRleCgobSkgPT4gaXNFcXVhbChtLCBvbGRNYXJrKSk7XG5cbiAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgIGZpbHRlcmVkTWFya3Muc3BsaWNlKGluZGV4LCAxKTtcbiAgfVxuXG4gIGNvbnN0IGR1cGxpY2F0ZWQgPSBmaWx0ZXJlZE1hcmtzLmZpbmQoKG0pID0+IHtcbiAgICBpZiAodHlwZSA9PT0gJ2NpcmNsZScgfHwgdHlwZSA9PT0gJ3BhcmFib2xhJyB8fCB0eXBlID09PSAnc2luZScgfHwgdHlwZSA9PT0gJ2Fic29sdXRlJyB8fCB0eXBlID09PSAnZXhwb25lbnRpYWwnKSB7XG4gICAgICBjb25zdCB7IHJvb3QsIGVkZ2UgfSA9IG1hcms7XG5cbiAgICAgIHJldHVybiAoZXF1YWxQb2ludHMocm9vdCwgbS5yb290KSAmJiBlcXVhbFBvaW50cyhlZGdlLCBtLmVkZ2UpKSB8fCAodHlwZSA9PT0gJ2NpcmNsZScgJiYgaXNTYW1lQ2lyY2xlKG0sIG1hcmspKTtcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdsaW5lJyB8fCB0eXBlID09PSAncmF5JyB8fCB0eXBlID09PSAnc2VnbWVudCcgfHwgdHlwZSA9PT0gJ3ZlY3RvcicpIHtcbiAgICAgIGNvbnN0IHsgZnJvbSwgdG8gfSA9IG1hcms7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIChlcXVhbFBvaW50cyhmcm9tLCBtLmZyb20pICYmIGVxdWFsUG9pbnRzKHRvLCBtLnRvKSkgfHxcbiAgICAgICAgKGVxdWFsUG9pbnRzKGZyb20sIG0udG8pICYmIGVxdWFsUG9pbnRzKHRvLCBtLmZyb20pKSB8fFxuICAgICAgICAodHlwZSA9PT0gJ2xpbmUnICYmIGlzU2FtZUxpbmUobSwgbWFyaykpXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3BvbHlnb24nKSB7XG4gICAgICByZXR1cm4gaXNFcXVhbChzb3J0UG9pbnRzKGNsb25lRGVlcChtYXJrLnBvaW50cykpLCBzb3J0UG9pbnRzKGNsb25lRGVlcChtLnBvaW50cykpKTtcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdwb2ludCcpIHtcbiAgICAgIHJldHVybiBlcXVhbFBvaW50cyhtLCBtYXJrKTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiAhIWR1cGxpY2F0ZWQ7XG59O1xuIl19
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "2.14.22-next.0+2ed4add0",
6
+ "version": "2.16.0-beta.0",
7
7
  "description": "Graphing components",
8
8
  "keywords": [
9
9
  "react",
@@ -18,11 +18,11 @@
18
18
  "dependencies": {
19
19
  "@mapbox/point-geometry": "^0.1.0",
20
20
  "@material-ui/core": "^3.8.3",
21
- "@pie-lib/drag": "^2.2.9",
22
- "@pie-lib/graphing-utils": "^1.1.33",
23
- "@pie-lib/plot": "^2.7.4-next.0+2ed4add0",
24
- "@pie-lib/render-ui": "^4.15.9",
25
- "@pie-lib/translator": "^2.3.0",
21
+ "@pie-lib/drag": "^2.4.0-beta.0",
22
+ "@pie-lib/graphing-utils": "^1.3.0-beta.0",
23
+ "@pie-lib/plot": "^2.9.0-beta.0",
24
+ "@pie-lib/render-ui": "^4.17.0-beta.0",
25
+ "@pie-lib/translator": "^2.5.0-beta.0",
26
26
  "@vx/axis": "^0.0.189",
27
27
  "@vx/clip-path": "^0.0.189",
28
28
  "@vx/event": "^0.0.189",
@@ -45,6 +45,6 @@
45
45
  "peerDependencies": {
46
46
  "react": "^16.8.1"
47
47
  },
48
- "gitHead": "2ed4add0b4f7b2bd7e906b715a2b86c442e41d69",
48
+ "gitHead": "3818c24530f62b5bb9be7a2c6aa5428f13a17e0a",
49
49
  "scripts": {}
50
50
  }
@@ -0,0 +1,237 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`GraphWithControls snapshot renders 1`] = `
4
+ <div
5
+ className=""
6
+ >
7
+ <div>
8
+ <ToolMenu
9
+ currentToolType="circle"
10
+ disabled={false}
11
+ labelModeEnabled={false}
12
+ onChange={[Function]}
13
+ toolbarTools={
14
+ Array [
15
+ "circle",
16
+ "line",
17
+ "label",
18
+ "parabola",
19
+ "point",
20
+ "polygon",
21
+ "ray",
22
+ "segment",
23
+ "sine",
24
+ "vector",
25
+ "absolute",
26
+ "exponential",
27
+ ]
28
+ }
29
+ />
30
+ <WithStyles(UndoRedo) />
31
+ </div>
32
+ <div />
33
+ <Graph
34
+ axesSettings={
35
+ Object {
36
+ "includeArrows": true,
37
+ }
38
+ }
39
+ backgroundMarks={
40
+ Array [
41
+ Object {
42
+ "label": "Point",
43
+ "showLabel": true,
44
+ "type": "point",
45
+ "x": 2,
46
+ "y": 2,
47
+ },
48
+ Object {
49
+ "building": true,
50
+ "from": Object {
51
+ "x": 0,
52
+ "y": 0,
53
+ },
54
+ "label": "Line",
55
+ "to": Object {
56
+ "x": 1,
57
+ "y": 1,
58
+ },
59
+ "type": "line",
60
+ },
61
+ Object {
62
+ "edge": Object {
63
+ "x": 0,
64
+ "y": 0,
65
+ },
66
+ "root": Object {
67
+ "x": 2,
68
+ "y": 2,
69
+ },
70
+ "type": "line",
71
+ },
72
+ ]
73
+ }
74
+ coordinatesOnHover={false}
75
+ currentTool={
76
+ Object {
77
+ "Component": [Function],
78
+ "addPoint": [Function],
79
+ "hover": [Function],
80
+ "toolbar": true,
81
+ "type": "circle",
82
+ }
83
+ }
84
+ disabledLabels={false}
85
+ disabledTitle={false}
86
+ domain={
87
+ Object {
88
+ "max": 10,
89
+ "min": 0,
90
+ "step": 1,
91
+ }
92
+ }
93
+ labelModeEnabled={false}
94
+ labels={
95
+ Object {
96
+ "bottom": "d",
97
+ "left": "b",
98
+ "right": "c",
99
+ "top": "a",
100
+ }
101
+ }
102
+ marks={
103
+ Array [
104
+ Object {
105
+ "label": "Point",
106
+ "showLabel": true,
107
+ "type": "point",
108
+ "x": 2,
109
+ "y": 2,
110
+ },
111
+ Object {
112
+ "building": true,
113
+ "from": Object {
114
+ "x": 0,
115
+ "y": 0,
116
+ },
117
+ "label": "Line",
118
+ "to": Object {
119
+ "x": 1,
120
+ "y": 1,
121
+ },
122
+ "type": "line",
123
+ },
124
+ Object {
125
+ "edge": Object {
126
+ "x": 0,
127
+ "y": 0,
128
+ },
129
+ "root": Object {
130
+ "x": 2,
131
+ "y": 2,
132
+ },
133
+ "type": "line",
134
+ },
135
+ ]
136
+ }
137
+ onChangeMarks={[MockFunction]}
138
+ range={
139
+ Object {
140
+ "max": 10,
141
+ "min": 0,
142
+ "step": 1,
143
+ }
144
+ }
145
+ showLabels={true}
146
+ showTitle={true}
147
+ size={
148
+ Object {
149
+ "height": 500,
150
+ "width": 500,
151
+ }
152
+ }
153
+ title="Title"
154
+ tools={
155
+ Array [
156
+ Object {
157
+ "Component": [Function],
158
+ "addPoint": [Function],
159
+ "hover": [Function],
160
+ "toolbar": true,
161
+ "type": "circle",
162
+ },
163
+ Object {
164
+ "Component": [Function],
165
+ "addPoint": [Function],
166
+ "toolbar": true,
167
+ "type": "line",
168
+ },
169
+ Object {
170
+ "Component": [Function],
171
+ "addPoint": [Function],
172
+ "complete": [Function],
173
+ "toolbar": true,
174
+ "type": "parabola",
175
+ },
176
+ Object {
177
+ "Component": [Function],
178
+ "addPoint": [Function],
179
+ "label": "Point",
180
+ "toolbar": true,
181
+ "type": "point",
182
+ },
183
+ Object {
184
+ "Component": [Function],
185
+ "addPoint": [Function],
186
+ "complete": [Function],
187
+ "toolbar": true,
188
+ "type": "polygon",
189
+ },
190
+ Object {
191
+ "Component": [Function],
192
+ "addPoint": [Function],
193
+ "toolbar": true,
194
+ "type": "ray",
195
+ },
196
+ Object {
197
+ "Component": [Function],
198
+ "addPoint": [Function],
199
+ "toolbar": true,
200
+ "type": "segment",
201
+ },
202
+ Object {
203
+ "Component": [Function],
204
+ "addPoint": [Function],
205
+ "complete": [Function],
206
+ "toolbar": true,
207
+ "type": "sine",
208
+ },
209
+ Object {
210
+ "Component": [Function],
211
+ "addPoint": [Function],
212
+ "toolbar": true,
213
+ "type": "vector",
214
+ },
215
+ Object {
216
+ "Component": [Function],
217
+ "addPoint": [Function],
218
+ "complete": [Function],
219
+ "toolbar": true,
220
+ "type": "absolute",
221
+ },
222
+ Object {
223
+ "Component": [Function],
224
+ "addPoint": [Function],
225
+ "complete": [Function],
226
+ "toolbar": true,
227
+ "type": "exponential",
228
+ },
229
+ Object {
230
+ "toolbar": true,
231
+ "type": "label",
232
+ },
233
+ ]
234
+ }
235
+ />
236
+ </div>
237
+ `;
@@ -0,0 +1,211 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Graph snapshot renders 1`] = `
4
+ <WithStyles(Root)
5
+ disabledLabels={false}
6
+ disabledTitle={false}
7
+ graphProps={
8
+ Object {
9
+ "domain": Object {
10
+ "max": 1,
11
+ "min": 0,
12
+ "step": 1,
13
+ },
14
+ "getRootNode": [Function],
15
+ "range": Object {
16
+ "max": 1,
17
+ "min": 0,
18
+ "step": 1,
19
+ },
20
+ "scale": Object {
21
+ "x": [Function],
22
+ "y": [Function],
23
+ },
24
+ "size": Object {
25
+ "height": 400,
26
+ "width": 400,
27
+ },
28
+ "snap": Object {
29
+ "x": [Function],
30
+ "y": [Function],
31
+ },
32
+ }
33
+ }
34
+ labelsPlaceholders={Object {}}
35
+ mathMlOptions={Object {}}
36
+ rootRef={[Function]}
37
+ >
38
+ <g>
39
+ <WithStyles(Grid)
40
+ graphProps={
41
+ Object {
42
+ "domain": Object {
43
+ "max": 1,
44
+ "min": 0,
45
+ "step": 1,
46
+ },
47
+ "getRootNode": [Function],
48
+ "range": Object {
49
+ "max": 1,
50
+ "min": 0,
51
+ "step": 1,
52
+ },
53
+ "scale": Object {
54
+ "x": [Function],
55
+ "y": [Function],
56
+ },
57
+ "size": Object {
58
+ "height": 400,
59
+ "width": 400,
60
+ },
61
+ "snap": Object {
62
+ "x": [Function],
63
+ "y": [Function],
64
+ },
65
+ }
66
+ }
67
+ />
68
+ <Axes
69
+ graphProps={
70
+ Object {
71
+ "domain": Object {
72
+ "max": 1,
73
+ "min": 0,
74
+ "step": 1,
75
+ },
76
+ "getRootNode": [Function],
77
+ "range": Object {
78
+ "max": 1,
79
+ "min": 0,
80
+ "step": 1,
81
+ },
82
+ "scale": Object {
83
+ "x": [Function],
84
+ "y": [Function],
85
+ },
86
+ "size": Object {
87
+ "height": 400,
88
+ "width": 400,
89
+ },
90
+ "snap": Object {
91
+ "x": [Function],
92
+ "y": [Function],
93
+ },
94
+ }
95
+ }
96
+ includeArrows={
97
+ Object {
98
+ "down": true,
99
+ "left": true,
100
+ "right": true,
101
+ "up": true,
102
+ }
103
+ }
104
+ />
105
+ <Bg
106
+ graphProps={
107
+ Object {
108
+ "domain": Object {
109
+ "max": 1,
110
+ "min": 0,
111
+ "step": 1,
112
+ },
113
+ "getRootNode": [Function],
114
+ "range": Object {
115
+ "max": 1,
116
+ "min": 0,
117
+ "step": 1,
118
+ },
119
+ "scale": Object {
120
+ "x": [Function],
121
+ "y": [Function],
122
+ },
123
+ "size": Object {
124
+ "height": 400,
125
+ "width": 400,
126
+ },
127
+ "snap": Object {
128
+ "x": [Function],
129
+ "y": [Function],
130
+ },
131
+ }
132
+ }
133
+ height={400}
134
+ onClick={[Function]}
135
+ width={400}
136
+ />
137
+ <mask
138
+ id="graph-1618"
139
+ >
140
+ <rect
141
+ fill="white"
142
+ height={446}
143
+ width={446}
144
+ x={-23}
145
+ y={-23}
146
+ />
147
+
148
+ </mask>
149
+ <g
150
+ id="marks"
151
+ mask="url('#graph-1618')"
152
+ >
153
+ <Point
154
+ graphProps={
155
+ Object {
156
+ "domain": Object {
157
+ "max": 1,
158
+ "min": 0,
159
+ "step": 1,
160
+ },
161
+ "getRootNode": [Function],
162
+ "range": Object {
163
+ "max": 1,
164
+ "min": 0,
165
+ "step": 1,
166
+ },
167
+ "scale": Object {
168
+ "x": [Function],
169
+ "y": [Function],
170
+ },
171
+ "size": Object {
172
+ "height": 400,
173
+ "width": 400,
174
+ },
175
+ "snap": Object {
176
+ "x": [Function],
177
+ "y": [Function],
178
+ },
179
+ }
180
+ }
181
+ isToolActive={false}
182
+ key="point-0"
183
+ mark={
184
+ Object {
185
+ "label": "Point",
186
+ "showLabel": true,
187
+ "type": "point",
188
+ "x": 2,
189
+ "y": 2,
190
+ }
191
+ }
192
+ onChange={[Function]}
193
+ onClick={[Function]}
194
+ onComplete={[Function]}
195
+ />
196
+ <foreignObject
197
+ height={400}
198
+ style={
199
+ Object {
200
+ "fontSize": "14px",
201
+ "pointerEvents": "none",
202
+ }
203
+ }
204
+ width={400}
205
+ x="0"
206
+ y="0"
207
+ />
208
+ </g>
209
+ </g>
210
+ </WithStyles(Root)>
211
+ `;
@@ -0,0 +1,54 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Grid snapshot renders 1`] = `
4
+ <Fragment>
5
+ <r
6
+ columnTickValues={
7
+ Array [
8
+ 0,
9
+ 1,
10
+ ]
11
+ }
12
+ height={400}
13
+ innerRef={[Function]}
14
+ rowTickValues={
15
+ Array [
16
+ 0,
17
+ 1,
18
+ ]
19
+ }
20
+ stroke="#E1E6EC"
21
+ width={400}
22
+ xScale={
23
+ [MockFunction] {
24
+ "calls": Array [
25
+ Array [
26
+ 0,
27
+ ],
28
+ ],
29
+ "results": Array [
30
+ Object {
31
+ "type": "return",
32
+ "value": 0,
33
+ },
34
+ ],
35
+ }
36
+ }
37
+ yScale={
38
+ [MockFunction] {
39
+ "calls": Array [
40
+ Array [
41
+ 0,
42
+ ],
43
+ ],
44
+ "results": Array [
45
+ Object {
46
+ "type": "return",
47
+ "value": 0,
48
+ },
49
+ ],
50
+ }
51
+ }
52
+ />
53
+ </Fragment>
54
+ `;