@pie-lib/graphing 2.34.3-next.2 → 2.34.4-next.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 (252) hide show
  1. package/CHANGELOG.md +6 -76
  2. package/lib/__tests__/graph-with-controls.test.js +226 -0
  3. package/lib/__tests__/graph.test.js +187 -0
  4. package/lib/__tests__/grid.test.js +29 -0
  5. package/lib/__tests__/labels.test.js +61 -0
  6. package/lib/__tests__/mark-label.test.js +133 -0
  7. package/lib/__tests__/toggle-bar.test.js +150 -0
  8. package/lib/__tests__/tool-menu.test.js +101 -0
  9. package/lib/__tests__/undo-redo.test.js +31 -0
  10. package/lib/__tests__/use-debounce.test.js +24 -0
  11. package/lib/__tests__/utils.js +70 -0
  12. package/lib/__tests__/utils.test.js +123 -0
  13. package/lib/axis/__tests__/arrow.test.js +60 -0
  14. package/lib/axis/__tests__/axes.test.js +195 -0
  15. package/lib/axis/arrow.js +20 -56
  16. package/lib/axis/arrow.js.map +1 -1
  17. package/lib/axis/axes.js +107 -195
  18. package/lib/axis/axes.js.map +1 -1
  19. package/lib/axis/index.js +2 -7
  20. package/lib/axis/index.js.map +1 -1
  21. package/lib/bg.js +22 -50
  22. package/lib/bg.js.map +1 -1
  23. package/lib/container/actions.js +3 -9
  24. package/lib/container/actions.js.map +1 -1
  25. package/lib/container/index.js +15 -60
  26. package/lib/container/index.js.map +1 -1
  27. package/lib/container/marks.js +2 -7
  28. package/lib/container/marks.js.map +1 -1
  29. package/lib/container/middleware.js +3 -9
  30. package/lib/container/middleware.js.map +1 -1
  31. package/lib/container/reducer.js +2 -9
  32. package/lib/container/reducer.js.map +1 -1
  33. package/lib/coordinates-label.js +25 -55
  34. package/lib/coordinates-label.js.map +1 -1
  35. package/lib/graph-with-controls.js +121 -185
  36. package/lib/graph-with-controls.js.map +1 -1
  37. package/lib/graph.js +60 -117
  38. package/lib/graph.js.map +1 -1
  39. package/lib/grid-setup.js +169 -225
  40. package/lib/grid-setup.js.map +1 -1
  41. package/lib/grid.js +30 -75
  42. package/lib/grid.js.map +1 -1
  43. package/lib/index.js +2 -14
  44. package/lib/index.js.map +1 -1
  45. package/lib/key-legend.js +41 -86
  46. package/lib/key-legend.js.map +1 -1
  47. package/lib/label-svg-icon.js +2 -8
  48. package/lib/label-svg-icon.js.map +1 -1
  49. package/lib/labels.js +66 -122
  50. package/lib/labels.js.map +1 -1
  51. package/lib/mark-label.js +121 -164
  52. package/lib/mark-label.js.map +1 -1
  53. package/lib/toggle-bar.js +156 -244
  54. package/lib/toggle-bar.js.map +1 -1
  55. package/lib/tool-menu.js +17 -51
  56. package/lib/tool-menu.js.map +1 -1
  57. package/lib/tools/absolute/__tests__/component.test.js +67 -0
  58. package/lib/tools/absolute/component.js +5 -11
  59. package/lib/tools/absolute/component.js.map +1 -1
  60. package/lib/tools/absolute/index.js +4 -17
  61. package/lib/tools/absolute/index.js.map +1 -1
  62. package/lib/tools/circle/__tests__/bg-circle.test.js +33 -0
  63. package/lib/tools/circle/__tests__/component.test.js +68 -0
  64. package/lib/tools/circle/bg-circle.js +43 -93
  65. package/lib/tools/circle/bg-circle.js.map +1 -1
  66. package/lib/tools/circle/component.js +79 -166
  67. package/lib/tools/circle/component.js.map +1 -1
  68. package/lib/tools/circle/index.js +4 -14
  69. package/lib/tools/circle/index.js.map +1 -1
  70. package/lib/tools/exponential/__tests__/component.test.js +66 -0
  71. package/lib/tools/exponential/component.js +5 -11
  72. package/lib/tools/exponential/component.js.map +1 -1
  73. package/lib/tools/exponential/index.js +4 -19
  74. package/lib/tools/exponential/index.js.map +1 -1
  75. package/lib/tools/index.js +4 -17
  76. package/lib/tools/index.js.map +1 -1
  77. package/lib/tools/line/__tests__/component.test.js +45 -0
  78. package/lib/tools/line/component.js +28 -49
  79. package/lib/tools/line/component.js.map +1 -1
  80. package/lib/tools/line/index.js +2 -7
  81. package/lib/tools/line/index.js.map +1 -1
  82. package/lib/tools/parabola/__tests__/component.test.js +66 -0
  83. package/lib/tools/parabola/component.js +5 -11
  84. package/lib/tools/parabola/component.js.map +1 -1
  85. package/lib/tools/parabola/index.js +4 -17
  86. package/lib/tools/parabola/index.js.map +1 -1
  87. package/lib/tools/point/__tests__/component.test.js +50 -0
  88. package/lib/tools/point/component.js +25 -72
  89. package/lib/tools/point/component.js.map +1 -1
  90. package/lib/tools/point/index.js +4 -12
  91. package/lib/tools/point/index.js.map +1 -1
  92. package/lib/tools/polygon/__tests__/component.test.js +85 -0
  93. package/lib/tools/polygon/__tests__/index.test.js +92 -0
  94. package/lib/tools/polygon/__tests__/line.test.js +29 -0
  95. package/lib/tools/polygon/__tests__/polygon.test.js +59 -0
  96. package/lib/tools/polygon/component.js +84 -185
  97. package/lib/tools/polygon/component.js.map +1 -1
  98. package/lib/tools/polygon/index.js +7 -24
  99. package/lib/tools/polygon/index.js.map +1 -1
  100. package/lib/tools/polygon/line.js +49 -92
  101. package/lib/tools/polygon/line.js.map +1 -1
  102. package/lib/tools/polygon/polygon.js +66 -99
  103. package/lib/tools/polygon/polygon.js.map +1 -1
  104. package/lib/tools/ray/__tests__/component.test.js +35 -0
  105. package/lib/tools/ray/component.js +42 -61
  106. package/lib/tools/ray/component.js.map +1 -1
  107. package/lib/tools/ray/index.js +2 -7
  108. package/lib/tools/ray/index.js.map +1 -1
  109. package/lib/tools/segment/__tests__/component.test.js +35 -0
  110. package/lib/tools/segment/component.js +26 -44
  111. package/lib/tools/segment/component.js.map +1 -1
  112. package/lib/tools/segment/index.js +2 -7
  113. package/lib/tools/segment/index.js.map +1 -1
  114. package/lib/tools/shared/__tests__/arrow-head.test.js +45 -0
  115. package/lib/tools/shared/arrow-head.js +70 -29
  116. package/lib/tools/shared/arrow-head.js.map +1 -1
  117. package/lib/tools/shared/icons/CorrectSVG.js +13 -9
  118. package/lib/tools/shared/icons/CorrectSVG.js.map +1 -1
  119. package/lib/tools/shared/icons/IncorrectSVG.js +13 -9
  120. package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -1
  121. package/lib/tools/shared/icons/MissingSVG.js +13 -9
  122. package/lib/tools/shared/icons/MissingSVG.js.map +1 -1
  123. package/lib/tools/shared/line/__tests__/index.test.js +124 -0
  124. package/lib/tools/shared/line/__tests__/line-path.test.js +62 -0
  125. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +91 -0
  126. package/lib/tools/shared/line/index.js +141 -194
  127. package/lib/tools/shared/line/index.js.map +1 -1
  128. package/lib/tools/shared/line/line-path.js +71 -102
  129. package/lib/tools/shared/line/line-path.js.map +1 -1
  130. package/lib/tools/shared/line/with-root-edge.js +23 -57
  131. package/lib/tools/shared/line/with-root-edge.js.map +1 -1
  132. package/lib/tools/shared/point/__tests__/arrow-point.test.js +127 -0
  133. package/lib/tools/shared/point/__tests__/base-point.test.js +122 -0
  134. package/lib/tools/shared/point/arrow-point.js +22 -63
  135. package/lib/tools/shared/point/arrow-point.js.map +1 -1
  136. package/lib/tools/shared/point/arrow.js +24 -53
  137. package/lib/tools/shared/point/arrow.js.map +1 -1
  138. package/lib/tools/shared/point/base-point.js +55 -73
  139. package/lib/tools/shared/point/base-point.js.map +1 -1
  140. package/lib/tools/shared/point/index.js +23 -58
  141. package/lib/tools/shared/point/index.js.map +1 -1
  142. package/lib/tools/shared/styles.js +11 -39
  143. package/lib/tools/shared/styles.js.map +1 -1
  144. package/lib/tools/shared/types.js +3 -10
  145. package/lib/tools/shared/types.js.map +1 -1
  146. package/lib/tools/sine/__tests__/component.test.js +72 -0
  147. package/lib/tools/sine/component.js +9 -20
  148. package/lib/tools/sine/component.js.map +1 -1
  149. package/lib/tools/sine/index.js +4 -17
  150. package/lib/tools/sine/index.js.map +1 -1
  151. package/lib/tools/vector/__tests__/component.test.js +32 -0
  152. package/lib/tools/vector/component.js +25 -45
  153. package/lib/tools/vector/component.js.map +1 -1
  154. package/lib/tools/vector/index.js +2 -7
  155. package/lib/tools/vector/index.js.map +1 -1
  156. package/lib/undo-redo.js +30 -70
  157. package/lib/undo-redo.js.map +1 -1
  158. package/lib/use-debounce.js +5 -12
  159. package/lib/use-debounce.js.map +1 -1
  160. package/lib/utils.js +52 -129
  161. package/lib/utils.js.map +1 -1
  162. package/package.json +25 -29
  163. package/src/__tests__/graph-with-controls.test.jsx +28 -11
  164. package/src/__tests__/graph.test.jsx +104 -168
  165. package/src/__tests__/grid.test.jsx +8 -6
  166. package/src/__tests__/labels.test.jsx +25 -8
  167. package/src/__tests__/mark-label.test.jsx +12 -17
  168. package/src/__tests__/toggle-bar.test.jsx +92 -17
  169. package/src/__tests__/tool-menu.test.jsx +61 -12
  170. package/src/__tests__/undo-redo.test.jsx +7 -8
  171. package/src/__tests__/utils.js +3 -0
  172. package/src/axis/__tests__/arrow.test.jsx +16 -17
  173. package/src/axis/__tests__/axes.test.jsx +118 -122
  174. package/src/axis/arrow.jsx +7 -12
  175. package/src/axis/axes.jsx +45 -55
  176. package/src/coordinates-label.jsx +14 -18
  177. package/src/graph-with-controls.jsx +52 -59
  178. package/src/grid-setup.jsx +210 -206
  179. package/src/grid.jsx +2 -4
  180. package/src/key-legend.jsx +52 -56
  181. package/src/labels.jsx +23 -30
  182. package/src/mark-label.jsx +92 -81
  183. package/src/toggle-bar.jsx +135 -164
  184. package/src/tool-menu.jsx +1 -1
  185. package/src/tools/circle/__tests__/bg-circle.test.jsx +7 -9
  186. package/src/tools/circle/__tests__/component.test.jsx +17 -189
  187. package/src/tools/circle/bg-circle.jsx +20 -28
  188. package/src/tools/circle/component.jsx +28 -63
  189. package/src/tools/line/__tests__/component.test.jsx +7 -7
  190. package/src/tools/line/component.jsx +22 -15
  191. package/src/tools/point/__tests__/component.test.jsx +18 -43
  192. package/src/tools/point/component.jsx +1 -1
  193. package/src/tools/polygon/__tests__/component.test.jsx +18 -162
  194. package/src/tools/polygon/__tests__/line.test.jsx +7 -10
  195. package/src/tools/polygon/__tests__/polygon.test.jsx +7 -8
  196. package/src/tools/polygon/component.jsx +3 -4
  197. package/src/tools/polygon/line.jsx +30 -33
  198. package/src/tools/polygon/polygon.jsx +52 -45
  199. package/src/tools/ray/__tests__/component.test.jsx +7 -8
  200. package/src/tools/ray/component.jsx +38 -25
  201. package/src/tools/segment/__tests__/component.test.jsx +7 -8
  202. package/src/tools/segment/component.jsx +19 -18
  203. package/src/tools/shared/__tests__/arrow-head.test.jsx +14 -17
  204. package/src/tools/shared/arrow-head.jsx +60 -7
  205. package/src/tools/shared/icons/CorrectSVG.jsx +10 -0
  206. package/src/tools/shared/icons/IncorrectSVG.jsx +10 -0
  207. package/src/tools/shared/icons/MissingSVG.jsx +10 -0
  208. package/src/tools/shared/line/__tests__/index.test.jsx +19 -165
  209. package/src/tools/shared/line/__tests__/line-path.test.jsx +8 -8
  210. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +22 -22
  211. package/src/tools/shared/line/index.jsx +52 -7
  212. package/src/tools/shared/line/line-path.jsx +55 -59
  213. package/src/tools/shared/line/with-root-edge.jsx +1 -1
  214. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +15 -11
  215. package/src/tools/shared/point/__tests__/base-point.test.jsx +14 -11
  216. package/src/tools/shared/point/arrow-point.jsx +10 -24
  217. package/src/tools/shared/point/arrow.jsx +5 -11
  218. package/src/tools/shared/point/base-point.jsx +42 -19
  219. package/src/tools/shared/point/index.jsx +27 -44
  220. package/src/tools/vector/__tests__/component.test.jsx +7 -8
  221. package/src/tools/vector/component.jsx +11 -16
  222. package/src/undo-redo.jsx +19 -21
  223. package/esm/index.css +0 -847
  224. package/esm/index.js +0 -239949
  225. package/esm/index.js.map +0 -1
  226. package/esm/package.json +0 -3
  227. package/src/__tests__/__snapshots__/graph-with-controls.test.jsx.snap +0 -237
  228. package/src/__tests__/__snapshots__/graph.test.jsx.snap +0 -211
  229. package/src/__tests__/__snapshots__/grid.test.jsx.snap +0 -54
  230. package/src/__tests__/__snapshots__/labels.test.jsx.snap +0 -30
  231. package/src/__tests__/__snapshots__/mark-label.test.jsx.snap +0 -45
  232. package/src/__tests__/__snapshots__/toggle-bar.test.jsx.snap +0 -7
  233. package/src/__tests__/__snapshots__/tool-menu.test.jsx.snap +0 -13
  234. package/src/__tests__/__snapshots__/undo-redo.test.jsx.snap +0 -14
  235. package/src/axis/__tests__/__snapshots__/arrow.test.jsx.snap +0 -33
  236. package/src/axis/__tests__/__snapshots__/axes.test.jsx.snap +0 -122
  237. package/src/tools/circle/__tests__/__snapshots__/bg-circle.test.jsx.snap +0 -46
  238. package/src/tools/circle/__tests__/__snapshots__/component.test.jsx.snap +0 -293
  239. package/src/tools/line/__tests__/__snapshots__/component.test.jsx.snap +0 -20
  240. package/src/tools/point/__tests__/__snapshots__/component.test.jsx.snap +0 -40
  241. package/src/tools/polygon/__tests__/__snapshots__/component.test.jsx.snap +0 -415
  242. package/src/tools/polygon/__tests__/__snapshots__/line.test.jsx.snap +0 -45
  243. package/src/tools/polygon/__tests__/__snapshots__/polygon.test.jsx.snap +0 -52
  244. package/src/tools/ray/__tests__/__snapshots__/component.test.jsx.snap +0 -23
  245. package/src/tools/segment/__tests__/__snapshots__/component.test.jsx.snap +0 -14
  246. package/src/tools/shared/__tests__/__snapshots__/arrow-head.test.jsx.snap +0 -27
  247. package/src/tools/shared/line/__tests__/__snapshots__/index.test.jsx.snap +0 -360
  248. package/src/tools/shared/line/__tests__/__snapshots__/line-path.test.jsx.snap +0 -58
  249. package/src/tools/shared/line/__tests__/__snapshots__/with-root-edge.test.jsx.snap +0 -63
  250. package/src/tools/shared/point/__tests__/__snapshots__/arrow-point.test.jsx.snap +0 -56
  251. package/src/tools/shared/point/__tests__/__snapshots__/base-point.test.jsx.snap +0 -44
  252. package/src/tools/vector/__tests__/__snapshots__/component.test.jsx.snap +0 -12
@@ -1,22 +1,20 @@
1
- import { withStyles } from '@material-ui/core/styles/index';
1
+ import React from 'react';
2
+ import { styled } from '@mui/material/styles';
2
3
  import { gridDraggable } from '@pie-lib/plot';
3
4
  import * as utils from '../../../utils';
4
- import { disabled, correct, incorrect, missing, disabledSecondary } from '../styles';
5
5
  import { RawBp } from './base-point';
6
6
  import { RawArrow } from './arrow-point';
7
- import { color } from '@pie-lib/render-ui';
8
- import BaseArrow from './arrow';
7
+ import { BaseArrow } from './arrow';
9
8
 
9
+ // Drag & bounds options
10
10
  const opts = {
11
11
  bounds: (props, { domain, range }) => {
12
12
  const { x, y } = props;
13
13
  const area = { left: x, top: y, bottom: y, right: x };
14
-
15
14
  return utils.bounds(area, domain, range);
16
15
  },
17
16
  anchorPoint: (props) => {
18
17
  const { x, y } = props;
19
-
20
18
  return { x, y };
21
19
  },
22
20
  fromDelta: (props, delta) => {
@@ -24,42 +22,27 @@ const opts = {
24
22
  },
25
23
  };
26
24
 
27
- const styles = () => {
28
- return {
29
- point: {
30
- '& circle, & polygon': {
31
- cursor: 'pointer',
32
- fill: color.defaults.BLACK,
33
- },
34
- },
35
- disabled: {
36
- '& circle, & polygon': {
37
- ...disabled(),
38
- },
39
- },
40
- disabledSecondary: {
41
- '& circle, & polygon': {
42
- ...disabledSecondary(),
43
- },
44
- },
45
- correct: {
46
- '& circle, & polygon': {
47
- ...correct(),
48
- },
49
- },
50
- incorrect: {
51
- '& circle, & polygon': {
52
- ...incorrect(),
53
- },
54
- },
55
- missing: {
56
- '& circle, & polygon': {
57
- ...missing(),
58
- },
59
- },
60
- };
61
- };
25
+ // Common styled point
26
+ const PointStyle = styled('g')(() => ({
27
+ '& circle, & polygon': {
28
+ cursor: 'pointer',
29
+ },
30
+ }));
31
+
32
+ export const BasePoint = gridDraggable(opts)((props) => (
33
+ <PointStyle {...props}>
34
+ <RawBp {...props} />
35
+ </PointStyle>
36
+ ));
37
+
38
+ export const ArrowPoint = gridDraggable(opts)((props) => (
39
+ <PointStyle {...props}>
40
+ <RawArrow {...props} />
41
+ </PointStyle>
42
+ ));
62
43
 
63
- export const BasePoint = withStyles(styles)(gridDraggable(opts)(RawBp));
64
- export const ArrowPoint = withStyles(styles)(gridDraggable(opts)(RawArrow));
65
- export const Arrow = withStyles(styles)(gridDraggable(opts)(BaseArrow));
44
+ export const Arrow = gridDraggable(opts)((props) => (
45
+ <PointStyle {...props}>
46
+ <BaseArrow {...props} />
47
+ </PointStyle>
48
+ ));
@@ -1,12 +1,11 @@
1
- import { shallow } from 'enzyme';
1
+ import { render } from '@pie-lib/test-utils';
2
2
  import React from 'react';
3
3
  import { Line } from '../component';
4
4
  import { graphProps as getGraphProps } from '../../../__tests__/utils';
5
5
  import { utils } from '@pie-lib/plot';
6
6
 
7
7
  describe('Line', () => {
8
- let w;
9
- const wrapper = (extras) => {
8
+ const renderComponent = (extras) => {
10
9
  const defaults = {
11
10
  classes: {},
12
11
  className: 'className',
@@ -15,12 +14,12 @@ describe('Line', () => {
15
14
  to: utils.xy(1, 1),
16
15
  };
17
16
  const props = { ...defaults, ...extras };
18
- return shallow(<Line {...props} />);
17
+ return render(<Line {...props} />);
19
18
  };
20
- describe('snapshot', () => {
21
- it('renders', () => {
22
- const w = wrapper();
23
- expect(w).toMatchSnapshot();
19
+ describe('rendering', () => {
20
+ it('renders without crashing', () => {
21
+ const { container } = renderComponent();
22
+ expect(container.firstChild).toBeInTheDocument();
24
23
  });
25
24
  });
26
25
  });
@@ -3,23 +3,18 @@ import { Arrow } from '../shared/point';
3
3
  import React from 'react';
4
4
  import PropTypes from 'prop-types';
5
5
  import { types } from '@pie-lib/plot';
6
- import classNames from 'classnames';
7
- import { withStyles } from '@material-ui/core/styles';
6
+ import { styled } from '@mui/material/styles';
8
7
  import { getDistanceBetweenTwoPoints } from '../../utils';
9
8
 
10
- const lineStyles = (theme) => ({
11
- line: styles.line(theme),
12
- disabled: styles.disabled(theme),
13
- disabledSecondary: styles.disabledSecondary(theme),
14
- correct: styles.correct(theme, 'stroke'),
15
- incorrect: styles.incorrect(theme, 'stroke'),
16
- missing: styles.missing(theme, 'stroke'),
17
- });
9
+ const StyledLine = styled('line')(({ theme, disabled, correctness }) => ({
10
+ ...styles.line(theme),
11
+ ...(disabled && styles.disabledSecondary(theme)),
12
+ ...(correctness && styles[correctness] && styles[correctness](theme, 'stroke')),
13
+ }));
18
14
 
19
15
  export const Line = (props) => {
20
16
  const {
21
17
  className,
22
- classes,
23
18
  disabled,
24
19
  correctness,
25
20
  graphProps: { scale },
@@ -32,8 +27,10 @@ export const Line = (props) => {
32
27
  const length = getDistanceBetweenTwoPoints(startPoint, endPoint);
33
28
 
34
29
  return (
35
- <line
36
- className={classNames(classes.line, disabled && classes.disabledSecondary, classes[correctness], className)}
30
+ <StyledLine
31
+ className={className}
32
+ disabled={disabled}
33
+ correctness={correctness}
37
34
  x1={startPoint.x}
38
35
  y1={startPoint.y}
39
36
  x2={endPoint.x}
@@ -46,7 +43,6 @@ export const Line = (props) => {
46
43
 
47
44
  Line.propTypes = {
48
45
  className: PropTypes.string,
49
- classes: PropTypes.object,
50
46
  disabled: PropTypes.bool,
51
47
  correctness: PropTypes.string,
52
48
  graphProps: PropTypes.any,
@@ -54,8 +50,7 @@ Line.propTypes = {
54
50
  to: types.PointType,
55
51
  };
56
52
 
57
- const StyledLine = withStyles(lineStyles)(Line);
58
- const Vector = lineBase(StyledLine, { to: Arrow });
53
+ const Vector = lineBase(Line, { to: Arrow });
59
54
  const Component = lineToolComponent(Vector);
60
55
 
61
56
  export default Component;
package/src/undo-redo.jsx CHANGED
@@ -1,16 +1,24 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import classNames from 'classnames';
4
- import Button from '@material-ui/core/Button';
5
- import { withStyles } from '@material-ui/core';
4
+ import Button from '@mui/material/Button';
5
+ import { styled } from '@mui/material/styles';
6
6
  import { color } from '@pie-lib/render-ui';
7
7
  import Translator from '@pie-lib/translator';
8
8
 
9
9
  const { translator } = Translator;
10
10
 
11
+ const StyledButton = styled(Button)(({ theme }) => ({
12
+ color: color.text(),
13
+ fontWeight: 'bold',
14
+ marginBottom: theme.spacing(0.5),
15
+ '&:not(:last-of-type)': {
16
+ marginRight: theme.spacing(0.5),
17
+ },
18
+ }));
19
+
11
20
  export class UndoRedo extends React.Component {
12
21
  static propTypes = {
13
- classes: PropTypes.object,
14
22
  className: PropTypes.string,
15
23
  onUndo: PropTypes.func.isRequired,
16
24
  onRedo: PropTypes.func.isRequired,
@@ -20,31 +28,21 @@ export class UndoRedo extends React.Component {
20
28
  static defaultProps = {};
21
29
 
22
30
  render() {
23
- const { classes, className, onUndo, onRedo, onReset, language } = this.props;
31
+ const { className, onUndo, onRedo, onReset, language } = this.props;
24
32
  return (
25
33
  <div className={classNames(className)}>
26
- <Button classes={{ root: classes.button }} onClick={() => onUndo(true)}>
34
+ <StyledButton onClick={() => onUndo(true)}>
27
35
  {translator.t('common:undo', { lng: language })}
28
- </Button>
29
- <Button classes={{ root: classes.button }} onClick={() => onRedo(true)}>
36
+ </StyledButton>
37
+ <StyledButton onClick={() => onRedo(true)}>
30
38
  {translator.t('graphing.redo', { lng: language })}
31
- </Button>
32
- <Button classes={{ root: classes.button }} onClick={() => onReset()}>
39
+ </StyledButton>
40
+ <StyledButton onClick={() => onReset()}>
33
41
  {translator.t('graphing.reset', { lng: language })}
34
- </Button>
42
+ </StyledButton>
35
43
  </div>
36
44
  );
37
45
  }
38
46
  }
39
47
 
40
- const styles = (theme) => ({
41
- button: {
42
- color: color.text(),
43
- marginBottom: theme.spacing.unit / 2,
44
- '&:not(:last-of-type)': {
45
- marginRight: theme.spacing.unit / 2,
46
- },
47
- },
48
- });
49
-
50
- export default withStyles(styles)(UndoRedo);
48
+ export default UndoRedo;