@pie-lib/graphing-solution-set 2.34.3-next.0 → 2.34.3-next.155

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 (142) hide show
  1. package/CHANGELOG.md +7 -78
  2. package/esm/package.json +3 -0
  3. package/lib/axis/arrow.js +19 -55
  4. package/lib/axis/arrow.js.map +1 -1
  5. package/lib/axis/axes.js +103 -193
  6. package/lib/axis/axes.js.map +1 -1
  7. package/lib/axis/index.js +1 -6
  8. package/lib/axis/index.js.map +1 -1
  9. package/lib/bg.js +21 -49
  10. package/lib/bg.js.map +1 -1
  11. package/lib/container/actions.js +2 -8
  12. package/lib/container/actions.js.map +1 -1
  13. package/lib/container/index.js +14 -60
  14. package/lib/container/index.js.map +1 -1
  15. package/lib/container/marks.js +1 -6
  16. package/lib/container/marks.js.map +1 -1
  17. package/lib/container/middleware.js +2 -8
  18. package/lib/container/middleware.js.map +1 -1
  19. package/lib/container/reducer.js +1 -8
  20. package/lib/container/reducer.js.map +1 -1
  21. package/lib/coordinates-label.js +23 -55
  22. package/lib/coordinates-label.js.map +1 -1
  23. package/lib/graph-with-controls.js +129 -203
  24. package/lib/graph-with-controls.js.map +1 -1
  25. package/lib/graph.js +61 -126
  26. package/lib/graph.js.map +1 -1
  27. package/lib/grid-setup.js +168 -224
  28. package/lib/grid-setup.js.map +1 -1
  29. package/lib/grid.js +29 -74
  30. package/lib/grid.js.map +1 -1
  31. package/lib/index.js +1 -12
  32. package/lib/index.js.map +1 -1
  33. package/lib/labels.js +84 -184
  34. package/lib/labels.js.map +1 -1
  35. package/lib/mark-label.js +39 -88
  36. package/lib/mark-label.js.map +1 -1
  37. package/lib/toggle-bar.js +155 -243
  38. package/lib/toggle-bar.js.map +1 -1
  39. package/lib/tool-menu.js +93 -200
  40. package/lib/tool-menu.js.map +1 -1
  41. package/lib/tools/index.js +2 -7
  42. package/lib/tools/index.js.map +1 -1
  43. package/lib/tools/line/component.js +48 -62
  44. package/lib/tools/line/component.js.map +1 -1
  45. package/lib/tools/line/index.js +1 -6
  46. package/lib/tools/line/index.js.map +1 -1
  47. package/lib/tools/polygon/component.js +76 -173
  48. package/lib/tools/polygon/component.js.map +1 -1
  49. package/lib/tools/polygon/index.js +6 -23
  50. package/lib/tools/polygon/index.js.map +1 -1
  51. package/lib/tools/polygon/line.js +48 -85
  52. package/lib/tools/polygon/line.js.map +1 -1
  53. package/lib/tools/polygon/polygon.js +62 -102
  54. package/lib/tools/polygon/polygon.js.map +1 -1
  55. package/lib/tools/shared/arrow-head.js +7 -20
  56. package/lib/tools/shared/arrow-head.js.map +1 -1
  57. package/lib/tools/shared/line/index.js +89 -185
  58. package/lib/tools/shared/line/index.js.map +1 -1
  59. package/lib/tools/shared/line/line-path.js +71 -95
  60. package/lib/tools/shared/line/line-path.js.map +1 -1
  61. package/lib/tools/shared/line/with-root-edge.js +22 -56
  62. package/lib/tools/shared/line/with-root-edge.js.map +1 -1
  63. package/lib/tools/shared/point/arrow-point.js +18 -45
  64. package/lib/tools/shared/point/arrow-point.js.map +1 -1
  65. package/lib/tools/shared/point/arrow.js +16 -42
  66. package/lib/tools/shared/point/arrow.js.map +1 -1
  67. package/lib/tools/shared/point/base-point.js +44 -58
  68. package/lib/tools/shared/point/base-point.js.map +1 -1
  69. package/lib/tools/shared/point/index.js +38 -52
  70. package/lib/tools/shared/point/index.js.map +1 -1
  71. package/lib/tools/shared/styles.js +8 -31
  72. package/lib/tools/shared/styles.js.map +1 -1
  73. package/lib/tools/shared/types.js +1 -5
  74. package/lib/tools/shared/types.js.map +1 -1
  75. package/lib/undo-redo.js +27 -67
  76. package/lib/undo-redo.js.map +1 -1
  77. package/lib/use-debounce.js +4 -11
  78. package/lib/use-debounce.js.map +1 -1
  79. package/lib/utils.js +56 -131
  80. package/lib/utils.js.map +1 -1
  81. package/package.json +34 -23
  82. package/src/__tests__/graph-with-controls.test.jsx +23 -10
  83. package/src/__tests__/graph.test.jsx +36 -171
  84. package/src/__tests__/grid.test.jsx +9 -6
  85. package/src/__tests__/labels.test.jsx +11 -8
  86. package/src/__tests__/mark-label.test.jsx +15 -17
  87. package/src/__tests__/toggle-bar.test.jsx +46 -17
  88. package/src/__tests__/tool-menu.test.jsx +12 -8
  89. package/src/__tests__/undo-redo.test.jsx +9 -8
  90. package/src/__tests__/utils.js +3 -0
  91. package/src/axis/__tests__/arrow.test.jsx +21 -17
  92. package/src/axis/__tests__/axes.test.jsx +117 -155
  93. package/src/axis/arrow.jsx +7 -12
  94. package/src/axis/axes.jsx +41 -51
  95. package/src/coordinates-label.jsx +13 -18
  96. package/src/graph-with-controls.jsx +90 -93
  97. package/src/grid-setup.jsx +210 -206
  98. package/src/grid.jsx +2 -4
  99. package/src/labels.jsx +83 -124
  100. package/src/mark-label.jsx +14 -25
  101. package/src/toggle-bar.jsx +135 -163
  102. package/src/tool-menu.jsx +136 -195
  103. package/src/tools/line/__tests__/component.test.jsx +7 -7
  104. package/src/tools/line/component.jsx +29 -29
  105. package/src/tools/polygon/__tests__/component.test.jsx +13 -152
  106. package/src/tools/polygon/__tests__/line.test.jsx +7 -9
  107. package/src/tools/polygon/__tests__/polygon.test.jsx +8 -8
  108. package/src/tools/polygon/component.jsx +2 -4
  109. package/src/tools/polygon/line.jsx +26 -24
  110. package/src/tools/polygon/polygon.jsx +35 -40
  111. package/src/tools/shared/__tests__/arrow-head.test.jsx +16 -17
  112. package/src/tools/shared/line/__tests__/index.test.jsx +26 -163
  113. package/src/tools/shared/line/__tests__/line-path.test.jsx +9 -9
  114. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +14 -24
  115. package/src/tools/shared/line/index.jsx +3 -3
  116. package/src/tools/shared/line/line-path.jsx +51 -48
  117. package/src/tools/shared/line/with-root-edge.jsx +1 -1
  118. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +15 -11
  119. package/src/tools/shared/point/__tests__/base-point.test.jsx +14 -11
  120. package/src/tools/shared/point/base-point.jsx +33 -6
  121. package/src/tools/shared/point/index.jsx +30 -32
  122. package/src/undo-redo.jsx +16 -24
  123. package/src/__tests__/__snapshots__/graph-with-controls.test.jsx.snap +0 -114
  124. package/src/__tests__/__snapshots__/graph.test.jsx.snap +0 -213
  125. package/src/__tests__/__snapshots__/grid.test.jsx.snap +0 -54
  126. package/src/__tests__/__snapshots__/labels.test.jsx.snap +0 -30
  127. package/src/__tests__/__snapshots__/mark-label.test.jsx.snap +0 -37
  128. package/src/__tests__/__snapshots__/toggle-bar.test.jsx.snap +0 -7
  129. package/src/__tests__/__snapshots__/tool-menu.test.jsx.snap +0 -35
  130. package/src/__tests__/__snapshots__/undo-redo.test.jsx.snap +0 -15
  131. package/src/axis/__tests__/__snapshots__/arrow.test.jsx.snap +0 -33
  132. package/src/axis/__tests__/__snapshots__/axes.test.jsx.snap +0 -122
  133. package/src/tools/line/__tests__/__snapshots__/component.test.jsx.snap +0 -20
  134. package/src/tools/polygon/__tests__/__snapshots__/component.test.jsx.snap +0 -94
  135. package/src/tools/polygon/__tests__/__snapshots__/line.test.jsx.snap +0 -44
  136. package/src/tools/polygon/__tests__/__snapshots__/polygon.test.jsx.snap +0 -53
  137. package/src/tools/shared/__tests__/__snapshots__/arrow-head.test.jsx.snap +0 -32
  138. package/src/tools/shared/line/__tests__/__snapshots__/index.test.jsx.snap +0 -360
  139. package/src/tools/shared/line/__tests__/__snapshots__/line-path.test.jsx.snap +0 -57
  140. package/src/tools/shared/line/__tests__/__snapshots__/with-root-edge.test.jsx.snap +0 -63
  141. package/src/tools/shared/point/__tests__/__snapshots__/arrow-point.test.jsx.snap +0 -55
  142. package/src/tools/shared/point/__tests__/__snapshots__/base-point.test.jsx.snap +0 -43
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/tools/shared/line/index.jsx"],"names":["lineTool","type","Component","addPoint","point","mark","root","building","from","to","lineToolComponent","props","setState","onChange","update","state","undefined","shouldNotChange","y","middle","graphProps","onClick","labelNode","labelModeEnabled","coordinatesOnHover","gssLineData","isBackground","disabled","correctness","fill","changeMark","changeMarkProps","startDrag","stopDrag","React","types","ToolPropTypeFields","GraphPropsType","isRequired","dragOpts","bounds","domain","range","area","utils","lineToArea","anchorPoint","fromDelta","delta","add","lineBase","Comp","opts","DraggableComp","FromPoint","BasePoint","ToPoint","LineBase","draggedFrom","draggedTo","label","updated","onChangePoint","data","input","focus","onDragStart","onDragStop","common","selectedTool","angle","trig","toDegrees","fromLabelNode","toLabelNode","lineLabelNode","hasOwnProperty","ReactDOM","createPortal","r","labelChange","x","dragComp","clickPoint","dragFrom","dragTo","PropTypes","bool","PointType","func","string","object","styles","line","stroke","color","defaults","BLACK","strokeWidth","transition","dashedLine","strokeDasharray","arrow","SECONDARY","disabledArrow","correct","theme","key","incorrect","missing"],"mappings":"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","sourcesContent":["import React from 'react';\nimport isEqual from 'lodash/isEqual';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { BasePoint } from '../point';\nimport { types, utils, gridDraggable, trig } from '@pie-lib/plot';\nimport PropTypes from 'prop-types';\nimport { disabled, correct, incorrect, missing } from '../styles';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../../mark-label';\nimport isEmpty from 'lodash/isEmpty';\nimport { color } from '@pie-lib/render-ui';\nimport { getMiddleOfTwoPoints, equalPoints, sameAxes } from '../../../utils';\n\nexport const lineTool = (type, Component) => () => ({\n type,\n Component,\n addPoint: (point, mark) => {\n if (mark && equalPoints(mark.root, point)) {\n return mark;\n }\n\n if (!mark) {\n return {\n type,\n building: true,\n from: point,\n };\n }\n\n if (equalPoints(point, mark.from)) {\n return { ...mark };\n }\n\n return { ...mark, building: false, to: point };\n },\n});\n\nexport const lineToolComponent = (Component) => {\n return class LineToolComponent extends React.Component {\n static propTypes = {\n ...types.ToolPropTypeFields,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n startDrag = () => this.setState({ mark: { ...this.props.mark } });\n\n stopDrag = () => {\n const { onChange, mark } = this.props;\n const update = { ...this.state.mark };\n\n this.setState({ mark: undefined }, () => {\n const { type } = update;\n let shouldNotChange =\n type &&\n (type === 'parabola' || type === 'sine' || type === 'absolute' || type === 'exponential') &&\n sameAxes(update.from, update.to);\n if (!shouldNotChange && type && type === 'exponential' && update.from && update.to) {\n shouldNotChange = update.from.y === 0 || update.to.y === 0 || update.from.y * update.to.y < 0;\n }\n if (!isEqual(mark, update) && !shouldNotChange) {\n onChange(mark, update);\n }\n });\n };\n\n changeMark = ({ from, to, middle }) => {\n let mark = { ...this.state.mark, from, to };\n\n if (middle) {\n mark = { ...mark, middle };\n }\n\n this.setState({ mark });\n };\n\n changeMarkProps = ({ from, to, middle }) => {\n const { onChange, mark } = this.props;\n let update = { ...mark, ...this.state.mark };\n\n if (from) {\n update = { ...update, from };\n }\n\n if (to) {\n update = { ...update, to };\n }\n\n if (middle) {\n update = { ...update, middle };\n }\n\n if (!isEqual(mark, update)) {\n onChange(mark, update);\n }\n };\n\n render() {\n const { graphProps, onClick, labelNode, labelModeEnabled, coordinatesOnHover, gssLineData } = this.props;\n const mark = this.state.mark ? this.state.mark : this.props.mark;\n\n const from = cloneDeep(mark.from);\n const to = cloneDeep(mark.to);\n const middle = cloneDeep(mark.middle);\n\n // SET DISABLED\n // if it's a background mark, we need to force disable it\n if (from && mark.isBackground) {\n from.disabled = true;\n }\n\n if (to && mark.isBackground) {\n to.disabled = true;\n }\n\n if (middle && mark.isBackground) {\n middle.disabled = true;\n }\n\n return (\n <Component\n disabled={mark.disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={mark.correctness}\n from={from}\n to={to}\n middle={middle}\n graphProps={graphProps}\n fill={mark && mark.fill}\n gssLineData={gssLineData}\n onChange={this.changeMark}\n changeMarkProps={this.changeMarkProps}\n onClick={onClick}\n onDragStart={this.startDrag}\n onDragStop={this.stopDrag}\n labelNode={labelNode}\n labelModeEnabled={labelModeEnabled}\n />\n );\n }\n };\n};\n\nconst dragOpts = () => ({\n bounds: (props, { domain, range }) => {\n const area = utils.lineToArea(props.from, props.to);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { from } = props;\n return from;\n },\n fromDelta: (props, delta) => {\n const { from, to } = props;\n return {\n from: utils.point(from).add(utils.point(delta)),\n to: utils.point(to).add(utils.point(delta)),\n };\n },\n});\n\nexport const lineBase = (Comp, opts) => {\n const DraggableComp = gridDraggable(dragOpts())(Comp);\n\n const FromPoint = opts && opts.from ? opts.from : BasePoint;\n const ToPoint = opts && opts.to ? opts.to : BasePoint;\n\n class LineBase extends React.Component {\n static propTypes = {\n coordinatesOnHover: PropTypes.bool,\n graphProps: types.GraphPropsType,\n from: types.PointType,\n to: types.PointType,\n middle: types.PointType,\n onChange: PropTypes.func,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n correctness: PropTypes.string,\n fill: PropTypes.string,\n gssLineData: PropTypes.object,\n disabled: PropTypes.bool,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n changeMarkProps: PropTypes.func,\n };\n\n onChangePoint = (point) => {\n const { middle, onChange } = this.props;\n const { from, to } = point;\n\n // because point.from.label and point.to.label can be different\n if (!equalPoints(from, to)) {\n if (middle) {\n point.middle = { ...middle, ...getMiddleOfTwoPoints(from, to) };\n }\n\n onChange(point);\n }\n };\n\n dragComp = ({ from: draggedFrom, to: draggedTo }) => {\n const { from, to, onChange, middle } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n const updated = { from: draggedFrom, to: draggedTo };\n\n if (middle) {\n updated.middle = { ...middle, ...getMiddleOfTwoPoints(draggedFrom, draggedTo) };\n }\n\n onChange(updated);\n };\n\n dragFrom = (draggedFrom) => {\n const { from, to } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (!equalPoints(draggedFrom, to)) {\n this.onChangePoint({ from: draggedFrom, to: to });\n }\n };\n\n dragTo = (draggedTo) => {\n const { from, to } = this.props;\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n if (!equalPoints(from, draggedTo)) {\n this.onChangePoint({ from: from, to: draggedTo });\n }\n };\n\n labelChange = (point, type) => {\n const { changeMarkProps } = this.props;\n const update = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete update.label;\n }\n\n changeMarkProps({ [type]: update });\n };\n\n clickPoint = (point, type, data) => {\n const { changeMarkProps, disabled, from, to, labelModeEnabled, onClick } = this.props;\n\n if (!labelModeEnabled) {\n onClick(point || data);\n return;\n }\n\n if (disabled) {\n return;\n }\n\n if (type === 'middle' && !point && from && to) {\n point = { ...point, ...getMiddleOfTwoPoints(from, to) };\n }\n\n changeMarkProps({ from, to, [type]: { label: '', ...point } });\n\n if (this.input[type]) {\n this.input[type].focus();\n }\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n const {\n coordinatesOnHover,\n graphProps,\n fill,\n gssLineData,\n onDragStart,\n onDragStop,\n from,\n to,\n middle,\n disabled,\n correctness,\n onClick,\n labelNode,\n labelModeEnabled,\n } = this.props;\n let common = { graphProps, fill, onDragStart, onDragStop, disabled, correctness, onClick };\n if (gssLineData && gssLineData.selectedTool === 'solutionSet') {\n //removing dragging option for line if solution set is clicked.\n common = { graphProps, fill, disabled, correctness, onClick };\n }\n const angle = to ? trig.toDegrees(trig.angle(from, to)) : 0;\n\n let fromLabelNode = null;\n let toLabelNode = null;\n let lineLabelNode = null;\n\n if (labelNode) {\n if (from && from.hasOwnProperty('label')) {\n fromLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.from = r)}\n disabled={!labelModeEnabled}\n mark={from}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...from, label }, 'from')}\n />,\n labelNode,\n );\n }\n\n if (to && to.hasOwnProperty('label')) {\n toLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.to = r)}\n disabled={!labelModeEnabled}\n mark={to}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...to, label }, 'to')}\n />,\n labelNode,\n );\n }\n\n if (middle && middle.hasOwnProperty('label')) {\n lineLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.middle = r)}\n disabled={!labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...middle, label }, 'middle')}\n />,\n labelNode,\n );\n }\n }\n if (gssLineData && gssLineData.selectedTool === 'solutionSet') {\n //removing dragging feature of line and point if solution set is true.\n return (\n <g>\n {to && <DraggableComp from={from} to={to} middle={middle} {...common} />}\n {lineLabelNode}\n\n <FromPoint\n x={from.x}\n y={from.y}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n {...common}\n />\n {fromLabelNode}\n\n {to && (\n <ToPoint\n x={to.x}\n y={to.y}\n angle={angle} //angle + 45}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n {...common}\n />\n )}\n {toLabelNode}\n </g>\n );\n } else {\n return (\n <g>\n {to && (\n <DraggableComp\n from={from}\n to={to}\n middle={middle}\n onDrag={this.dragComp}\n {...common}\n onClick={(data) => this.clickPoint(middle, 'middle', data)}\n />\n )}\n {lineLabelNode}\n\n <FromPoint\n x={from.x}\n y={from.y}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n onDrag={this.dragFrom}\n {...common}\n onClick={(data) => this.clickPoint(from, 'from', data)}\n />\n {fromLabelNode}\n\n {to && (\n <ToPoint\n x={to.x}\n y={to.y}\n angle={angle} //angle + 45}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n onDrag={this.dragTo}\n {...common}\n onClick={(data) => this.clickPoint(to, 'to', data)}\n />\n )}\n {toLabelNode}\n </g>\n );\n }\n }\n }\n\n return LineBase;\n};\n\nexport const styles = {\n line: () => ({\n fill: 'transparent',\n stroke: color.defaults.BLACK,\n strokeWidth: 4,\n transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.BLACK,\n },\n }),\n dashedLine: () => ({\n fill: 'transparent',\n stroke: color.defaults.BLACK,\n strokeWidth: 4,\n transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.BLACK,\n },\n strokeDasharray: '3,3',\n }),\n arrow: () => ({\n fill: color.defaults.SECONDARY,\n }),\n disabledArrow: () => ({\n ...disabled(),\n }),\n disabled: () => ({\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n correct: (theme, key) => ({\n ...correct(key),\n }),\n incorrect: (theme, key) => ({\n ...incorrect(key),\n }),\n missing: (theme, key) => ({\n ...missing(key),\n }),\n};\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_isEqual","_cloneDeep","_point","_plot","_propTypes","_styles","_reactDom","_markLabel","_isEmpty","_renderUi","_utils","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","lineTool","exports","type","Component","addPoint","point","mark","equalPoints","root","building","from","to","lineToolComponent","_LineToolComponent","_React$Component","LineToolComponent","props","_this","_classCallCheck2","setState","_this$props","onChange","update","state","undefined","shouldNotChange","sameAxes","y","isEqual","_ref","middle","_ref2","_this$props2","_inherits2","_createClass2","key","value","render","_this$props3","graphProps","onClick","labelNode","labelModeEnabled","coordinatesOnHover","gssLineData","cloneDeep","isBackground","disabled","createElement","correctness","fill","changeMark","changeMarkProps","onDragStart","startDrag","onDragStop","stopDrag","React","types","ToolPropTypeFields","GraphPropsType","isRequired","dragOpts","bounds","_ref3","domain","range","area","utils","lineToArea","anchorPoint","fromDelta","delta","add","lineBase","Comp","opts","DraggableComp","gridDraggable","FromPoint","BasePoint","ToPoint","LineBase","_React$Component2","_this2","_len","args","Array","_key","concat","_this2$props","getMiddleOfTwoPoints","_ref4","draggedFrom","draggedTo","_this2$props2","label","updated","_this2$props3","onChangePoint","_this2$props4","isEmpty","data","_this2$props5","input","focus","_this3","_this$props4","common","selectedTool","angle","trig","toDegrees","fromLabelNode","toLabelNode","lineLabelNode","hasOwnProperty","ReactDOM","createPortal","inputRef","labelChange","_extends2","x","onDrag","dragComp","clickPoint","dragFrom","dragTo","PropTypes","bool","PointType","func","string","object","styles","line","stroke","color","defaults","BLACK","strokeWidth","transition","dashedLine","strokeDasharray","arrow","SECONDARY","disabledArrow","correct","theme","incorrect","missing"],"sources":["../../../../src/tools/shared/line/index.jsx"],"sourcesContent":["import React from 'react';\nimport isEqual from 'lodash/isEqual';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { BasePoint } from '../point';\nimport { types, utils, gridDraggable, trig } from '@pie-lib/plot';\nimport PropTypes from 'prop-types';\nimport { disabled, correct, incorrect, missing } from '../styles';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../../mark-label';\nimport isEmpty from 'lodash/isEmpty';\nimport { color } from '@pie-lib/render-ui';\nimport { getMiddleOfTwoPoints, equalPoints, sameAxes } from '../../../utils';\n\nexport const lineTool = (type, Component) => () => ({\n type,\n Component,\n addPoint: (point, mark) => {\n if (mark && equalPoints(mark.root, point)) {\n return mark;\n }\n\n if (!mark) {\n return {\n type,\n building: true,\n from: point,\n };\n }\n\n if (equalPoints(point, mark.from)) {\n return { ...mark };\n }\n\n return { ...mark, building: false, to: point };\n },\n});\n\nexport const lineToolComponent = (Component) => {\n return class LineToolComponent extends React.Component {\n static propTypes = {\n ...types.ToolPropTypeFields,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n startDrag = () => this.setState({ mark: { ...this.props.mark } });\n\n stopDrag = () => {\n const { onChange, mark } = this.props;\n const update = { ...this.state.mark };\n\n this.setState({ mark: undefined }, () => {\n const { type } = update;\n let shouldNotChange =\n type &&\n (type === 'parabola' || type === 'sine' || type === 'absolute' || type === 'exponential') &&\n sameAxes(update.from, update.to);\n if (!shouldNotChange && type && type === 'exponential' && update.from && update.to) {\n shouldNotChange = update.from.y === 0 || update.to.y === 0 || update.from.y * update.to.y < 0;\n }\n if (!isEqual(mark, update) && !shouldNotChange) {\n onChange(mark, update);\n }\n });\n };\n\n changeMark = ({ from, to, middle }) => {\n let mark = { ...this.state.mark, from, to };\n\n if (middle) {\n mark = { ...mark, middle };\n }\n\n this.setState({ mark });\n };\n\n changeMarkProps = ({ from, to, middle }) => {\n const { onChange, mark } = this.props;\n let update = { ...mark, ...this.state.mark };\n\n if (from) {\n update = { ...update, from };\n }\n\n if (to) {\n update = { ...update, to };\n }\n\n if (middle) {\n update = { ...update, middle };\n }\n\n if (!isEqual(mark, update)) {\n onChange(mark, update);\n }\n };\n\n render() {\n const { graphProps, onClick, labelNode, labelModeEnabled, coordinatesOnHover, gssLineData } = this.props;\n const mark = this.state.mark ? this.state.mark : this.props.mark;\n\n const from = cloneDeep(mark.from);\n const to = cloneDeep(mark.to);\n const middle = cloneDeep(mark.middle);\n\n // SET DISABLED\n // if it's a background mark, we need to force disable it\n if (from && mark.isBackground) {\n from.disabled = true;\n }\n\n if (to && mark.isBackground) {\n to.disabled = true;\n }\n\n if (middle && mark.isBackground) {\n middle.disabled = true;\n }\n\n return (\n <Component\n disabled={mark.disabled}\n coordinatesOnHover={coordinatesOnHover}\n correctness={mark.correctness}\n from={from}\n to={to}\n middle={middle}\n graphProps={graphProps}\n fill={mark && mark.fill}\n gssLineData={gssLineData}\n onChange={this.changeMark}\n changeMarkProps={this.changeMarkProps}\n onClick={onClick}\n onDragStart={this.startDrag}\n onDragStop={this.stopDrag}\n labelNode={labelNode}\n labelModeEnabled={labelModeEnabled}\n />\n );\n }\n };\n};\n\nconst dragOpts = () => ({\n bounds: (props, { domain, range }) => {\n const area = utils.lineToArea(props.from, props.to);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { from } = props;\n return from;\n },\n fromDelta: (props, delta) => {\n const { from, to } = props;\n return {\n from: utils.point(from).add(utils.point(delta)),\n to: utils.point(to).add(utils.point(delta)),\n };\n },\n});\n\nexport const lineBase = (Comp, opts) => {\n const DraggableComp = gridDraggable(dragOpts())(Comp);\n\n const FromPoint = opts && opts.from ? opts.from : BasePoint;\n const ToPoint = opts && opts.to ? opts.to : BasePoint;\n\n class LineBase extends React.Component {\n static propTypes = {\n coordinatesOnHover: PropTypes.bool,\n graphProps: types.GraphPropsType,\n from: types.PointType,\n to: types.PointType,\n middle: types.PointType,\n onChange: PropTypes.func,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n correctness: PropTypes.string,\n fill: PropTypes.string,\n gssLineData: PropTypes.object,\n disabled: PropTypes.bool,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n changeMarkProps: PropTypes.func,\n };\n\n onChangePoint = (point) => {\n const { middle, onChange } = this.props;\n const { from, to } = point;\n\n // because point.from.label and point.to.label can be different\n if (!equalPoints(from, to)) {\n if (middle) {\n point.middle = { ...middle, ...getMiddleOfTwoPoints(from, to) };\n }\n\n onChange(point);\n }\n };\n\n dragComp = ({ from: draggedFrom, to: draggedTo }) => {\n const { from, to, onChange, middle } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n const updated = { from: draggedFrom, to: draggedTo };\n\n if (middle) {\n updated.middle = { ...middle, ...getMiddleOfTwoPoints(draggedFrom, draggedTo) };\n }\n\n onChange(updated);\n };\n\n dragFrom = (draggedFrom) => {\n const { from, to } = this.props;\n\n if (from.label) {\n draggedFrom.label = from.label;\n }\n\n if (!equalPoints(draggedFrom, to)) {\n this.onChangePoint({ from: draggedFrom, to: to });\n }\n };\n\n dragTo = (draggedTo) => {\n const { from, to } = this.props;\n\n if (to.label) {\n draggedTo.label = to.label;\n }\n\n if (!equalPoints(from, draggedTo)) {\n this.onChangePoint({ from: from, to: draggedTo });\n }\n };\n\n labelChange = (point, type) => {\n const { changeMarkProps } = this.props;\n const update = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete update.label;\n }\n\n changeMarkProps({ [type]: update });\n };\n\n clickPoint = (point, type, data) => {\n const { changeMarkProps, disabled, from, to, labelModeEnabled, onClick } = this.props;\n\n if (!labelModeEnabled) {\n onClick(point || data);\n return;\n }\n\n if (disabled) {\n return;\n }\n\n if (type === 'middle' && !point && from && to) {\n point = { ...point, ...getMiddleOfTwoPoints(from, to) };\n }\n\n changeMarkProps({ from, to, [type]: { label: '', ...point } });\n\n if (this.input[type]) {\n this.input[type].focus();\n }\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n const {\n coordinatesOnHover,\n graphProps,\n fill,\n gssLineData,\n onDragStart,\n onDragStop,\n from,\n to,\n middle,\n disabled,\n correctness,\n onClick,\n labelNode,\n labelModeEnabled,\n } = this.props;\n let common = { graphProps, fill, onDragStart, onDragStop, disabled, correctness, onClick };\n if (gssLineData && gssLineData.selectedTool === 'solutionSet') {\n //removing dragging option for line if solution set is clicked.\n common = { graphProps, fill, disabled, correctness, onClick };\n }\n const angle = to ? trig.toDegrees(trig.angle(from, to)) : 0;\n\n let fromLabelNode = null;\n let toLabelNode = null;\n let lineLabelNode = null;\n\n if (labelNode) {\n if (from && Object.prototype.hasOwnProperty.call(from, 'label')) {\n fromLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.from = r)}\n disabled={!labelModeEnabled}\n mark={from}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...from, label }, 'from')}\n />,\n labelNode,\n );\n }\n\n if (to && Object.prototype.hasOwnProperty.call(to, 'label')) {\n toLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.to = r)}\n disabled={!labelModeEnabled}\n mark={to}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...to, label }, 'to')}\n />,\n labelNode,\n );\n }\n\n if (middle && Object.prototype.hasOwnProperty.call(middle, 'label')) {\n lineLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input.middle = r)}\n disabled={!labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...middle, label }, 'middle')}\n />,\n labelNode,\n );\n }\n }\n if (gssLineData && gssLineData.selectedTool === 'solutionSet') {\n //removing dragging feature of line and point if solution set is true.\n return (\n <g>\n {to && <DraggableComp from={from} to={to} middle={middle} {...common} />}\n {lineLabelNode}\n\n <FromPoint\n x={from.x}\n y={from.y}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n {...common}\n />\n {fromLabelNode}\n\n {to && (\n <ToPoint\n x={to.x}\n y={to.y}\n angle={angle} //angle + 45}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n {...common}\n />\n )}\n {toLabelNode}\n </g>\n );\n } else {\n return (\n <g>\n {to && (\n <DraggableComp\n from={from}\n to={to}\n middle={middle}\n onDrag={this.dragComp}\n {...common}\n onClick={(data) => this.clickPoint(middle, 'middle', data)}\n />\n )}\n {lineLabelNode}\n\n <FromPoint\n x={from.x}\n y={from.y}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n onDrag={this.dragFrom}\n {...common}\n onClick={(data) => this.clickPoint(from, 'from', data)}\n />\n {fromLabelNode}\n\n {to && (\n <ToPoint\n x={to.x}\n y={to.y}\n angle={angle} //angle + 45}\n labelNode={labelNode}\n coordinatesOnHover={coordinatesOnHover}\n onDrag={this.dragTo}\n {...common}\n onClick={(data) => this.clickPoint(to, 'to', data)}\n />\n )}\n {toLabelNode}\n </g>\n );\n }\n }\n }\n\n return LineBase;\n};\n\nexport const styles = {\n line: () => ({\n fill: 'transparent',\n stroke: color.defaults.BLACK,\n strokeWidth: 4,\n transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.BLACK,\n },\n }),\n dashedLine: () => ({\n fill: 'transparent',\n stroke: color.defaults.BLACK,\n strokeWidth: 4,\n transition: 'stroke 200ms ease-in, stroke-width 200ms ease-in',\n '&:hover': {\n strokeWidth: 6,\n stroke: color.defaults.BLACK,\n },\n strokeDasharray: '3,3',\n }),\n arrow: () => ({\n fill: color.defaults.SECONDARY,\n }),\n disabledArrow: () => ({\n ...disabled(),\n }),\n disabled: () => ({\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n correct: (theme, key) => ({\n ...correct(key),\n }),\n incorrect: (theme, key) => ({\n ...incorrect(key),\n }),\n missing: (theme, key) => ({\n ...missing(key),\n }),\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,103 +1,110 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.RawLinePath = exports.LinePath = void 0;
11
-
12
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
-
18
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
14
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
26
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
17
  var _react = _interopRequireDefault(require("react"));
29
-
30
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
19
+ var _styles = require("@mui/material/styles");
34
20
  var _plot = require("@pie-lib/plot");
35
-
36
- var _classnames = _interopRequireDefault(require("classnames"));
37
-
38
21
  var _styles2 = require("../styles");
39
-
40
- var vx = _interopRequireWildcard(require("@vx/shape"));
41
-
22
+ var vx = _interopRequireWildcard(require("@visx/shape"));
42
23
  var _renderUi = require("@pie-lib/render-ui");
43
-
44
- var _excluded = ["data", "classes", "className", "disabled", "correctness", "from", "to", "graphProps", "isDragging"];
45
-
46
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
47
-
48
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
49
-
50
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
51
-
52
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
53
-
54
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
55
-
56
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
57
-
58
- var RawLinePath = /*#__PURE__*/function (_React$Component) {
59
- (0, _inherits2["default"])(RawLinePath, _React$Component);
60
-
61
- var _super = _createSuper(RawLinePath);
62
-
24
+ var _excluded = ["data", "className", "disabled", "correctness", "from", "to", "graphProps", "isDragging"];
25
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
26
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
27
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
28
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
30
+ var dragging = function dragging() {
31
+ return {
32
+ strokeWidth: 7,
33
+ stroke: _renderUi.color.defaults.BLACK
34
+ };
35
+ };
36
+ var StyledDrawLine = (0, _styles.styled)(vx.LinePath, {
37
+ shouldForwardProp: function shouldForwardProp(prop) {
38
+ return !['disabled', 'correctness'].includes(prop);
39
+ }
40
+ })(function (_ref) {
41
+ var isDisabled = _ref.disabled,
42
+ correctness = _ref.correctness;
43
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread({
44
+ fill: 'none',
45
+ strokeWidth: 2,
46
+ stroke: _renderUi.color.secondaryLight()
47
+ }, isDisabled && _objectSpread(_objectSpread({}, (0, _styles2.disabled)('stroke')), {}, {
48
+ strokeWidth: 2
49
+ })), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && (0, _styles2.missing)('stroke'));
50
+ });
51
+ var StyledInteractionLine = (0, _styles.styled)(vx.LinePath, {
52
+ shouldForwardProp: function shouldForwardProp(prop) {
53
+ return !['disabled', 'correctness', 'isDragging'].includes(prop);
54
+ }
55
+ })(function (_ref2) {
56
+ var isDisabled = _ref2.disabled,
57
+ correctness = _ref2.correctness,
58
+ isDragging = _ref2.isDragging;
59
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
60
+ strokeWidth: 6,
61
+ fill: 'none',
62
+ transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',
63
+ stroke: 'transparent',
64
+ '&:hover': dragging()
65
+ }, isDragging && dragging()), isDisabled && _objectSpread(_objectSpread({}, (0, _styles2.disabled)('stroke')), {}, {
66
+ strokeWidth: 2
67
+ })), correctness === 'correct' && (0, _styles2.correct)('stroke')), correctness === 'incorrect' && (0, _styles2.incorrect)('stroke')), correctness === 'missing' && (0, _styles2.missing)('stroke'));
68
+ });
69
+ var RawLinePath = exports.RawLinePath = /*#__PURE__*/function (_React$Component) {
63
70
  function RawLinePath() {
64
71
  (0, _classCallCheck2["default"])(this, RawLinePath);
65
- return _super.apply(this, arguments);
72
+ return _callSuper(this, RawLinePath, arguments);
66
73
  }
67
-
68
- (0, _createClass2["default"])(RawLinePath, [{
74
+ (0, _inherits2["default"])(RawLinePath, _React$Component);
75
+ return (0, _createClass2["default"])(RawLinePath, [{
69
76
  key: "render",
70
77
  value: function render() {
71
78
  /* eslint-disable no-unused-vars */
72
79
  var _this$props = this.props,
73
- data = _this$props.data,
74
- classes = _this$props.classes,
75
- className = _this$props.className,
76
- disabled = _this$props.disabled,
77
- correctness = _this$props.correctness,
78
- from = _this$props.from,
79
- to = _this$props.to,
80
- graphProps = _this$props.graphProps,
81
- isDragging = _this$props.isDragging,
82
- rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
80
+ data = _this$props.data,
81
+ className = _this$props.className,
82
+ disabled = _this$props.disabled,
83
+ correctness = _this$props.correctness,
84
+ from = _this$props.from,
85
+ to = _this$props.to,
86
+ graphProps = _this$props.graphProps,
87
+ isDragging = _this$props.isDragging,
88
+ rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
83
89
  /* eslint-enable */
84
90
 
85
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(vx.LinePath, (0, _extends2["default"])({
91
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(StyledDrawLine, (0, _extends2["default"])({
86
92
  data: data,
87
- className: (0, _classnames["default"])(classes.drawLine, disabled && classes.disabled, classes[correctness], className)
88
- }, rest)), /*#__PURE__*/_react["default"].createElement(vx.LinePath, (0, _extends2["default"])({
93
+ disabled: disabled,
94
+ correctness: correctness,
95
+ className: className
96
+ }, rest)), /*#__PURE__*/_react["default"].createElement(StyledInteractionLine, (0, _extends2["default"])({
89
97
  data: data,
90
- className: (0, _classnames["default"])(classes.line, isDragging && classes.dragging, disabled && classes.disabled, classes[correctness], className)
98
+ isDragging: isDragging,
99
+ disabled: disabled,
100
+ correctness: correctness,
101
+ className: className
91
102
  }, rest)));
92
103
  }
93
104
  }]);
94
- return RawLinePath;
95
105
  }(_react["default"].Component);
96
-
97
- exports.RawLinePath = RawLinePath;
98
106
  (0, _defineProperty2["default"])(RawLinePath, "propTypes", {
99
107
  className: _propTypes["default"].string,
100
- classes: _propTypes["default"].object,
101
108
  data: _propTypes["default"].arrayOf(_propTypes["default"].arrayOf(_propTypes["default"].number)),
102
109
  graphProps: _plot.types.GraphPropsType.isRequired,
103
110
  disabled: _propTypes["default"].bool,
@@ -110,36 +117,5 @@ exports.RawLinePath = RawLinePath;
110
117
  from: {},
111
118
  to: {}
112
119
  });
113
-
114
- var dragging = function dragging() {
115
- return {
116
- strokeWidth: 7,
117
- stroke: _renderUi.color.defaults.BLACK
118
- };
119
- };
120
-
121
- var LinePath = (0, _styles.withStyles)(function (theme) {
122
- return {
123
- drawLine: {
124
- fill: 'none',
125
- strokeWidth: 2,
126
- stroke: _renderUi.color.secondaryLight()
127
- },
128
- line: {
129
- strokeWidth: 6,
130
- fill: 'none',
131
- transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',
132
- stroke: 'transparent',
133
- '&:hover': dragging(theme)
134
- },
135
- dragging: dragging(theme),
136
- disabled: _objectSpread(_objectSpread({}, (0, _styles2.disabled)('stroke')), {}, {
137
- strokeWidth: 2
138
- }),
139
- correct: _objectSpread({}, (0, _styles2.correct)('stroke')),
140
- incorrect: _objectSpread({}, (0, _styles2.incorrect)('stroke')),
141
- missing: _objectSpread({}, (0, _styles2.missing)('stroke'))
142
- };
143
- })(RawLinePath);
144
- exports.LinePath = LinePath;
120
+ var LinePath = exports.LinePath = RawLinePath;
145
121
  //# sourceMappingURL=line-path.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/tools/shared/line/line-path.jsx"],"names":["RawLinePath","props","data","classes","className","disabled","correctness","from","to","graphProps","isDragging","rest","drawLine","line","dragging","React","Component","PropTypes","string","object","arrayOf","number","types","GraphPropsType","isRequired","bool","PointType","strokeWidth","stroke","color","defaults","BLACK","LinePath","theme","fill","secondaryLight","transition","correct","incorrect","missing"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;IAEaA,W;;;;;;;;;;;;WAkBX,kBAAS;AACP;AACA,wBAAuG,KAAKC,KAA5G;AAAA,UAAQC,IAAR,eAAQA,IAAR;AAAA,UAAcC,OAAd,eAAcA,OAAd;AAAA,UAAuBC,SAAvB,eAAuBA,SAAvB;AAAA,UAAkCC,QAAlC,eAAkCA,QAAlC;AAAA,UAA4CC,WAA5C,eAA4CA,WAA5C;AAAA,UAAyDC,IAAzD,eAAyDA,IAAzD;AAAA,UAA+DC,EAA/D,eAA+DA,EAA/D;AAAA,UAAmEC,UAAnE,eAAmEA,UAAnE;AAAA,UAA+EC,UAA/E,eAA+EA,UAA/E;AAAA,UAA8FC,IAA9F;AACA;;AAEA,0BACE,gCAAC,iBAAD,CAAO,QAAP,qBACE,gCAAC,EAAD,CAAI,QAAJ;AACE,QAAA,IAAI,EAAET,IADR;AAEE,QAAA,SAAS,EAAE,4BAAWC,OAAO,CAACS,QAAnB,EAA6BP,QAAQ,IAAIF,OAAO,CAACE,QAAjD,EAA2DF,OAAO,CAACG,WAAD,CAAlE,EAAiFF,SAAjF;AAFb,SAGMO,IAHN,EADF,eAME,gCAAC,EAAD,CAAI,QAAJ;AACE,QAAA,IAAI,EAAET,IADR;AAEE,QAAA,SAAS,EAAE,4BACTC,OAAO,CAACU,IADC,EAETH,UAAU,IAAIP,OAAO,CAACW,QAFb,EAGTT,QAAQ,IAAIF,OAAO,CAACE,QAHX,EAITF,OAAO,CAACG,WAAD,CAJE,EAKTF,SALS;AAFb,SASMO,IATN,EANF,CADF;AAoBD;;;EA3C8BI,kBAAMC,S;;;iCAA1BhB,W,eACQ;AACjBI,EAAAA,SAAS,EAAEa,sBAAUC,MADJ;AAEjBf,EAAAA,OAAO,EAAEc,sBAAUE,MAFF;AAGjBjB,EAAAA,IAAI,EAAEe,sBAAUG,OAAV,CAAkBH,sBAAUG,OAAV,CAAkBH,sBAAUI,MAA5B,CAAlB,CAHW;AAIjBZ,EAAAA,UAAU,EAAEa,YAAMC,cAAN,CAAqBC,UAJhB;AAKjBnB,EAAAA,QAAQ,EAAEY,sBAAUQ,IALH;AAMjBnB,EAAAA,WAAW,EAAEW,sBAAUC,MANN;AAOjBX,EAAAA,IAAI,EAAEe,YAAMI,SAPK;AAQjBlB,EAAAA,EAAE,EAAEc,YAAMI,SARO;AASjBhB,EAAAA,UAAU,EAAEO,sBAAUQ;AATL,C;iCADRzB,W,kBAaW;AACpBO,EAAAA,IAAI,EAAE,EADc;AAEpBC,EAAAA,EAAE,EAAE;AAFgB,C;;AAiCxB,IAAMM,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAO;AACtBa,IAAAA,WAAW,EAAE,CADS;AAEtBC,IAAAA,MAAM,EAAEC,gBAAMC,QAAN,CAAeC;AAFD,GAAP;AAAA,CAAjB;;AAKO,IAAMC,QAAQ,GAAG,wBAAW,UAACC,KAAD;AAAA,SAAY;AAC7CrB,IAAAA,QAAQ,EAAE;AACRsB,MAAAA,IAAI,EAAE,MADE;AAERP,MAAAA,WAAW,EAAE,CAFL;AAGRC,MAAAA,MAAM,EAAEC,gBAAMM,cAAN;AAHA,KADmC;AAM7CtB,IAAAA,IAAI,EAAE;AACJc,MAAAA,WAAW,EAAE,CADT;AAEJO,MAAAA,IAAI,EAAE,MAFF;AAGJE,MAAAA,UAAU,EAAE,kDAHR;AAIJR,MAAAA,MAAM,EAAE,aAJJ;AAKJ,iBAAWd,QAAQ,CAACmB,KAAD;AALf,KANuC;AAa7CnB,IAAAA,QAAQ,EAAEA,QAAQ,CAACmB,KAAD,CAb2B;AAc7C5B,IAAAA,QAAQ,kCACH,uBAAS,QAAT,CADG;AAENsB,MAAAA,WAAW,EAAE;AAFP,MAdqC;AAkB7CU,IAAAA,OAAO,oBACF,sBAAQ,QAAR,CADE,CAlBsC;AAqB7CC,IAAAA,SAAS,oBACJ,wBAAU,QAAV,CADI,CArBoC;AAwB7CC,IAAAA,OAAO,oBACF,sBAAQ,QAAR,CADE;AAxBsC,GAAZ;AAAA,CAAX,EA2BpBvC,WA3BoB,CAAjB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { disabled, correct, incorrect, missing } from '../styles';\nimport * as vx from '@vx/shape';\nimport { color } from '@pie-lib/render-ui';\n\nexport class RawLinePath extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n classes: PropTypes.object,\n data: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.number)),\n graphProps: types.GraphPropsType.isRequired,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n from: types.PointType,\n to: types.PointType,\n isDragging: PropTypes.bool,\n };\n\n static defaultProps = {\n from: {},\n to: {},\n };\n\n render() {\n /* eslint-disable no-unused-vars */\n const { data, classes, className, disabled, correctness, from, to, graphProps, isDragging, ...rest } = this.props;\n /* eslint-enable */\n\n return (\n <React.Fragment>\n <vx.LinePath\n data={data}\n className={classNames(classes.drawLine, disabled && classes.disabled, classes[correctness], className)}\n {...rest}\n />\n <vx.LinePath\n data={data}\n className={classNames(\n classes.line,\n isDragging && classes.dragging,\n disabled && classes.disabled,\n classes[correctness],\n className,\n )}\n {...rest}\n />\n </React.Fragment>\n );\n }\n}\n\nconst dragging = () => ({\n strokeWidth: 7,\n stroke: color.defaults.BLACK,\n});\n\nexport const LinePath = withStyles((theme) => ({\n drawLine: {\n fill: 'none',\n strokeWidth: 2,\n stroke: color.secondaryLight(),\n },\n line: {\n strokeWidth: 6,\n fill: 'none',\n transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',\n stroke: 'transparent',\n '&:hover': dragging(theme),\n },\n dragging: dragging(theme),\n disabled: {\n ...disabled('stroke'),\n strokeWidth: 2,\n },\n correct: {\n ...correct('stroke'),\n },\n incorrect: {\n ...incorrect('stroke'),\n },\n missing: {\n ...missing('stroke'),\n },\n}))(RawLinePath);\n"],"file":"line-path.js"}
1
+ {"version":3,"file":"line-path.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_styles2","vx","_interopRequireWildcard","_renderUi","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","dragging","strokeWidth","stroke","color","defaults","BLACK","StyledDrawLine","styled","LinePath","shouldForwardProp","prop","includes","_ref","isDisabled","disabled","correctness","fill","secondaryLight","correct","incorrect","missing","StyledInteractionLine","_ref2","isDragging","transition","RawLinePath","exports","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","data","className","from","to","graphProps","rest","_objectWithoutProperties2","createElement","Fragment","_extends2","React","Component","PropTypes","string","arrayOf","number","types","GraphPropsType","isRequired","bool","PointType"],"sources":["../../../../src/tools/shared/line/line-path.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { types } from '@pie-lib/plot';\nimport { disabled, correct, incorrect, missing } from '../styles';\nimport * as vx from '@visx/shape';\nimport { color } from '@pie-lib/render-ui';\n\nconst dragging = () => ({\n strokeWidth: 7,\n stroke: color.defaults.BLACK,\n});\n\nconst StyledDrawLine = styled(vx.LinePath, {\n shouldForwardProp: (prop) => !['disabled', 'correctness'].includes(prop),\n})(({ disabled: isDisabled, correctness }) => ({\n fill: 'none',\n strokeWidth: 2,\n stroke: color.secondaryLight(),\n ...(isDisabled && {\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && missing('stroke')),\n}));\n\nconst StyledInteractionLine = styled(vx.LinePath, {\n shouldForwardProp: (prop) => !['disabled', 'correctness', 'isDragging'].includes(prop),\n})(({ disabled: isDisabled, correctness, isDragging }) => ({\n strokeWidth: 6,\n fill: 'none',\n transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',\n stroke: 'transparent',\n '&:hover': dragging(),\n ...(isDragging && dragging()),\n ...(isDisabled && {\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && missing('stroke')),\n}));\n\nexport class RawLinePath extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n data: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.number)),\n graphProps: types.GraphPropsType.isRequired,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n from: types.PointType,\n to: types.PointType,\n isDragging: PropTypes.bool,\n };\n\n static defaultProps = {\n from: {},\n to: {},\n };\n\n render() {\n /* eslint-disable no-unused-vars */\n const { data, className, disabled, correctness, from, to, graphProps, isDragging, ...rest } = this.props;\n /* eslint-enable */\n\n return (\n <React.Fragment>\n <StyledDrawLine\n data={data}\n disabled={disabled}\n correctness={correctness}\n className={className}\n {...rest}\n />\n <StyledInteractionLine\n data={data}\n isDragging={isDragging}\n disabled={disabled}\n correctness={correctness}\n className={className}\n {...rest}\n />\n </React.Fragment>\n );\n }\n}\n\nexport const LinePath = RawLinePath;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAC,uBAAA,CAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAA2C,IAAAQ,SAAA;AAAA,SAAAF,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,wBAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAmB,WAAAnB,CAAA,EAAAK,CAAA,EAAAN,CAAA,WAAAM,CAAA,OAAAe,gBAAA,aAAAf,CAAA,OAAAgB,2BAAA,aAAArB,CAAA,EAAAsB,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAnB,CAAA,EAAAN,CAAA,YAAAqB,gBAAA,aAAApB,CAAA,EAAAyB,WAAA,IAAApB,CAAA,CAAAqB,KAAA,CAAA1B,CAAA,EAAAD,CAAA;AAAA,SAAAuB,0BAAA,cAAAtB,CAAA,IAAA2B,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAd,IAAA,CAAAQ,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAA3B,CAAA,aAAAsB,yBAAA,YAAAA,0BAAA,aAAAtB,CAAA;AAAA,SAAA8B,QAAA/B,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAgB,MAAA,CAAAe,IAAA,CAAAhC,CAAA,OAAAiB,MAAA,CAAAgB,qBAAA,QAAA3B,CAAA,GAAAW,MAAA,CAAAgB,qBAAA,CAAAjC,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAA4B,MAAA,WAAA/B,CAAA,WAAAc,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAG,CAAA,EAAAgC,UAAA,OAAAlC,CAAA,CAAAmC,IAAA,CAAAT,KAAA,CAAA1B,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAAoC,cAAArC,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAmC,SAAA,CAAAC,MAAA,EAAApC,CAAA,UAAAF,CAAA,WAAAqC,SAAA,CAAAnC,CAAA,IAAAmC,SAAA,CAAAnC,CAAA,QAAAA,CAAA,OAAA4B,OAAA,CAAAd,MAAA,CAAAhB,CAAA,OAAAuC,OAAA,WAAArC,CAAA,QAAAsC,gBAAA,aAAAzC,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAc,MAAA,CAAAyB,yBAAA,GAAAzB,MAAA,CAAA0B,gBAAA,CAAA3C,CAAA,EAAAiB,MAAA,CAAAyB,yBAAA,CAAAzC,CAAA,KAAA8B,OAAA,CAAAd,MAAA,CAAAhB,CAAA,GAAAuC,OAAA,WAAArC,CAAA,IAAAc,MAAA,CAAAC,cAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAc,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAE3C,IAAM4C,QAAQ,GAAG,SAAXA,QAAQA,CAAA;EAAA,OAAU;IACtBC,WAAW,EAAE,CAAC;IACdC,MAAM,EAAEC,eAAK,CAACC,QAAQ,CAACC;EACzB,CAAC;AAAA,CAAC;AAEF,IAAMC,cAAc,GAAG,IAAAC,cAAM,EAACvD,EAAE,CAACwD,QAAQ,EAAE;EACzCC,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGC,IAAI;IAAA,OAAK,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAACC,QAAQ,CAACD,IAAI,CAAC;EAAA;AAC1E,CAAC,CAAC,CAAC,UAAAE,IAAA;EAAA,IAAaC,UAAU,GAAAD,IAAA,CAApBE,QAAQ;IAAcC,WAAW,GAAAH,IAAA,CAAXG,WAAW;EAAA,OAAAtB,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA;IACrCuB,IAAI,EAAE,MAAM;IACZf,WAAW,EAAE,CAAC;IACdC,MAAM,EAAEC,eAAK,CAACc,cAAc,CAAC;EAAC,GAC1BJ,UAAU,IAAApB,aAAA,CAAAA,aAAA,KACT,IAAAqB,iBAAQ,EAAC,QAAQ,CAAC;IACrBb,WAAW,EAAE;EAAC,EACf,GACGc,WAAW,KAAK,SAAS,IAAI,IAAAG,gBAAO,EAAC,QAAQ,CAAC,GAC9CH,WAAW,KAAK,WAAW,IAAI,IAAAI,kBAAS,EAAC,QAAQ,CAAC,GAClDJ,WAAW,KAAK,SAAS,IAAI,IAAAK,gBAAO,EAAC,QAAQ,CAAC;AAAA,CAClD,CAAC;AAEH,IAAMC,qBAAqB,GAAG,IAAAd,cAAM,EAACvD,EAAE,CAACwD,QAAQ,EAAE;EAChDC,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGC,IAAI;IAAA,OAAK,CAAC,CAAC,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC,CAACC,QAAQ,CAACD,IAAI,CAAC;EAAA;AACxF,CAAC,CAAC,CAAC,UAAAY,KAAA;EAAA,IAAaT,UAAU,GAAAS,KAAA,CAApBR,QAAQ;IAAcC,WAAW,GAAAO,KAAA,CAAXP,WAAW;IAAEQ,UAAU,GAAAD,KAAA,CAAVC,UAAU;EAAA,OAAA9B,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA;IACjDQ,WAAW,EAAE,CAAC;IACde,IAAI,EAAE,MAAM;IACZQ,UAAU,EAAE,kDAAkD;IAC9DtB,MAAM,EAAE,aAAa;IACrB,SAAS,EAAEF,QAAQ,CAAC;EAAC,GACjBuB,UAAU,IAAIvB,QAAQ,CAAC,CAAC,GACxBa,UAAU,IAAApB,aAAA,CAAAA,aAAA,KACT,IAAAqB,iBAAQ,EAAC,QAAQ,CAAC;IACrBb,WAAW,EAAE;EAAC,EACf,GACGc,WAAW,KAAK,SAAS,IAAI,IAAAG,gBAAO,EAAC,QAAQ,CAAC,GAC9CH,WAAW,KAAK,WAAW,IAAI,IAAAI,kBAAS,EAAC,QAAQ,CAAC,GAClDJ,WAAW,KAAK,SAAS,IAAI,IAAAK,gBAAO,EAAC,QAAQ,CAAC;AAAA,CAClD,CAAC;AAAC,IAESK,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAAE,gBAAA;EAAA,SAAAF,YAAA;IAAA,IAAAG,gBAAA,mBAAAH,WAAA;IAAA,OAAAjD,UAAA,OAAAiD,WAAA,EAAA/B,SAAA;EAAA;EAAA,IAAAmC,UAAA,aAAAJ,WAAA,EAAAE,gBAAA;EAAA,WAAAG,aAAA,aAAAL,WAAA;IAAAM,GAAA;IAAAC,KAAA,EAiBtB,SAAAC,MAAMA,CAAA,EAAG;MACP;MACA,IAAAC,WAAA,GAA8F,IAAI,CAACC,KAAK;QAAhGC,IAAI,GAAAF,WAAA,CAAJE,IAAI;QAAEC,SAAS,GAAAH,WAAA,CAATG,SAAS;QAAEvB,QAAQ,GAAAoB,WAAA,CAARpB,QAAQ;QAAEC,WAAW,GAAAmB,WAAA,CAAXnB,WAAW;QAAEuB,IAAI,GAAAJ,WAAA,CAAJI,IAAI;QAAEC,EAAE,GAAAL,WAAA,CAAFK,EAAE;QAAEC,UAAU,GAAAN,WAAA,CAAVM,UAAU;QAAEjB,UAAU,GAAAW,WAAA,CAAVX,UAAU;QAAKkB,IAAI,OAAAC,yBAAA,aAAAR,WAAA,EAAA/E,SAAA;MACzF;;MAEA,oBACEV,MAAA,YAAAkG,aAAA,CAAClG,MAAA,WAAK,CAACmG,QAAQ,qBACbnG,MAAA,YAAAkG,aAAA,CAACrC,cAAc,MAAAuC,SAAA;QACbT,IAAI,EAAEA,IAAK;QACXtB,QAAQ,EAAEA,QAAS;QACnBC,WAAW,EAAEA,WAAY;QACzBsB,SAAS,EAAEA;MAAU,GACjBI,IAAI,CACT,CAAC,eACFhG,MAAA,YAAAkG,aAAA,CAACtB,qBAAqB,MAAAwB,SAAA;QACpBT,IAAI,EAAEA,IAAK;QACXb,UAAU,EAAEA,UAAW;QACvBT,QAAQ,EAAEA,QAAS;QACnBC,WAAW,EAAEA,WAAY;QACzBsB,SAAS,EAAEA;MAAU,GACjBI,IAAI,CACT,CACa,CAAC;IAErB;EAAC;AAAA,EAzC8BK,iBAAK,CAACC,SAAS;AAAA,IAAAlD,gBAAA,aAAnC4B,WAAW,eACH;EACjBY,SAAS,EAAEW,qBAAS,CAACC,MAAM;EAC3Bb,IAAI,EAAEY,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACE,OAAO,CAACF,qBAAS,CAACG,MAAM,CAAC,CAAC;EAC5DX,UAAU,EAAEY,WAAK,CAACC,cAAc,CAACC,UAAU;EAC3CxC,QAAQ,EAAEkC,qBAAS,CAACO,IAAI;EACxBxC,WAAW,EAAEiC,qBAAS,CAACC,MAAM;EAC7BX,IAAI,EAAEc,WAAK,CAACI,SAAS;EACrBjB,EAAE,EAAEa,WAAK,CAACI,SAAS;EACnBjC,UAAU,EAAEyB,qBAAS,CAACO;AACxB,CAAC;AAAA,IAAA1D,gBAAA,aAVU4B,WAAW,kBAYA;EACpBa,IAAI,EAAE,CAAC,CAAC;EACRC,EAAE,EAAE,CAAC;AACP,CAAC;AA6BI,IAAM/B,QAAQ,GAAAkB,OAAA,CAAAlB,QAAA,GAAGiB,WAAW","ignoreList":[]}
@@ -1,108 +1,79 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.withRootEdge = exports.rootEdgeToFromToWrapper = exports.rootEdgeComponent = void 0;
9
-
10
8
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
-
12
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
11
  var _react = _interopRequireDefault(require("react"));
17
-
18
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
-
20
13
  var _plot = require("@pie-lib/plot");
21
-
22
14
  var _linePath = require("./line-path");
23
-
24
- var _curve = require("@vx/curve");
25
-
15
+ var _curve = require("@visx/curve");
26
16
  var _index = require("./index");
27
-
28
17
  var _excluded = ["graphProps", "from", "to", "onClick", "onDragStart", "onDragStop", "onChange", "disabled", "correctness"];
29
-
30
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
31
-
32
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
33
-
18
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
34
20
  var toRootEdge = function toRootEdge(m) {
35
21
  var out = _objectSpread({}, m);
36
-
37
22
  out.root = _objectSpread({}, m.from);
38
23
  out.edge = m.to ? _objectSpread({}, m.to) : undefined;
39
24
  delete out.from;
40
25
  delete out.to;
41
26
  return out;
42
27
  };
43
-
44
28
  var toFromTo = function toFromTo(m) {
45
29
  var out = _objectSpread({}, m);
46
-
47
30
  out.from = _objectSpread({}, m.root);
48
31
  out.to = m.edge ? _objectSpread({}, m.edge) : undefined;
49
32
  delete out.root;
50
33
  delete out.edge;
51
34
  return out;
52
35
  };
53
-
54
- var rootEdgeToFromToWrapper = function rootEdgeToFromToWrapper(BaseComp) {
36
+ var rootEdgeToFromToWrapper = exports.rootEdgeToFromToWrapper = function rootEdgeToFromToWrapper(BaseComp) {
55
37
  var Wrapper = function Wrapper(props) {
56
38
  var m = toFromTo(props.mark);
57
-
58
39
  var onChange = function onChange(current, next) {
59
40
  props.onChange(toRootEdge(current), toRootEdge(next));
60
41
  };
61
-
62
42
  return /*#__PURE__*/_react["default"].createElement(BaseComp, (0, _extends2["default"])({}, props, {
63
43
  mark: m,
64
44
  onChange: onChange
65
45
  }));
66
46
  };
67
-
68
47
  Wrapper.propTypes = {
69
48
  onChange: _propTypes["default"].func,
70
49
  mark: _propTypes["default"].object
71
50
  };
72
51
  return Wrapper;
73
52
  };
74
-
75
- exports.rootEdgeToFromToWrapper = rootEdgeToFromToWrapper;
76
-
77
- var rootEdgeComponent = function rootEdgeComponent(RootEdgeComp) {
53
+ var rootEdgeComponent = exports.rootEdgeComponent = function rootEdgeComponent(RootEdgeComp) {
78
54
  var BaseComponent = (0, _index.lineToolComponent)(RootEdgeComp);
79
55
  return rootEdgeToFromToWrapper(BaseComponent);
80
56
  };
81
-
82
- exports.rootEdgeComponent = rootEdgeComponent;
83
-
84
57
  var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoints) {
85
58
  var LinePathComponent = function LinePathComponent(props) {
86
59
  var graphProps = props.graphProps,
87
- from = props.from,
88
- to = props.to,
89
- onClick = props.onClick,
90
- onDragStart = props.onDragStart,
91
- onDragStop = props.onDragStop,
92
- onChange = props.onChange,
93
- disabled = props.disabled,
94
- correctness = props.correctness,
95
- rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
96
-
60
+ from = props.from,
61
+ to = props.to,
62
+ onClick = props.onClick,
63
+ onDragStart = props.onDragStart,
64
+ onDragStop = props.onDragStop,
65
+ onChange = props.onChange,
66
+ disabled = props.disabled,
67
+ correctness = props.correctness,
68
+ rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
97
69
  var _getPoints = getPoints({
98
- graphProps: props.graphProps,
99
- root: from,
100
- edge: to
101
- }),
102
- dataPoints = _getPoints.dataPoints,
103
- _getPoints$enableCurv = _getPoints.enableCurve,
104
- enableCurve = _getPoints$enableCurv === void 0 ? true : _getPoints$enableCurv;
105
-
70
+ graphProps: props.graphProps,
71
+ root: from,
72
+ edge: to
73
+ }),
74
+ dataPoints = _getPoints.dataPoints,
75
+ _getPoints$enableCurv = _getPoints.enableCurve,
76
+ enableCurve = _getPoints$enableCurv === void 0 ? true : _getPoints$enableCurv;
106
77
  var raw = dataPoints.map(function (d) {
107
78
  return [graphProps.scale.x(d.x), graphProps.scale.y(d.y)];
108
79
  });
@@ -115,7 +86,6 @@ var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoin
115
86
  disabled: disabled,
116
87
  correctness: correctness
117
88
  };
118
-
119
89
  if (!enableCurve) {
120
90
  return /*#__PURE__*/_react["default"].createElement(_linePath.LinePath, (0, _extends2["default"])({
121
91
  data: raw,
@@ -131,7 +101,6 @@ var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoin
131
101
  }, common, rest));
132
102
  }
133
103
  };
134
-
135
104
  LinePathComponent.propTypes = {
136
105
  graphProps: _plot.types.GraphPropsType.isRequired,
137
106
  from: _plot.types.PointType.isRequired,
@@ -145,11 +114,8 @@ var withPointsGenerationLinePath = function withPointsGenerationLinePath(getPoin
145
114
  };
146
115
  return LinePathComponent;
147
116
  };
148
-
149
- var withRootEdge = function withRootEdge(getPoints) {
117
+ var withRootEdge = exports.withRootEdge = function withRootEdge(getPoints) {
150
118
  var LinePathComp = withPointsGenerationLinePath(getPoints);
151
119
  return (0, _index.lineBase)(LinePathComp);
152
120
  };
153
-
154
- exports.withRootEdge = withRootEdge;
155
121
  //# sourceMappingURL=with-root-edge.js.map