@pie-lib/graphing 4.0.23 → 4.0.24-beta.10

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 (69) hide show
  1. package/CHANGELOG.md +0 -92
  2. package/lib/__tests__/bg.test.js +282 -0
  3. package/lib/__tests__/coordinates-label.test.js +276 -0
  4. package/lib/__tests__/graph-with-controls.test.js +275 -0
  5. package/lib/__tests__/graph.test.js +927 -0
  6. package/lib/__tests__/grid-setup.test.js +729 -0
  7. package/lib/__tests__/grid.test.js +29 -0
  8. package/lib/__tests__/key-legend.test.js +321 -0
  9. package/lib/__tests__/label-svg-icon.test.js +373 -0
  10. package/lib/__tests__/labels.test.js +61 -0
  11. package/lib/__tests__/mark-label.test.js +133 -0
  12. package/lib/__tests__/toggle-bar.test.js +197 -0
  13. package/lib/__tests__/tool-menu.test.js +151 -0
  14. package/lib/__tests__/undo-redo.test.js +31 -0
  15. package/lib/__tests__/use-debounce.test.js +24 -0
  16. package/lib/__tests__/utils.js +70 -0
  17. package/lib/__tests__/utils.test.js +123 -0
  18. package/lib/axis/__tests__/arrow.test.js +60 -0
  19. package/lib/axis/__tests__/axes.test.js +195 -0
  20. package/lib/container/__tests__/actions.test.js +108 -0
  21. package/lib/container/__tests__/index.test.js +503 -0
  22. package/lib/container/__tests__/marks.test.js +259 -0
  23. package/lib/container/__tests__/middleware.test.js +244 -0
  24. package/lib/container/__tests__/reducer.test.js +450 -0
  25. package/lib/mark-label.js +7 -197
  26. package/lib/mark-label.js.map +1 -1
  27. package/lib/tools/absolute/__tests__/component.test.js +65 -0
  28. package/lib/tools/circle/__tests__/bg-circle.test.js +33 -0
  29. package/lib/tools/circle/__tests__/component.test.js +615 -0
  30. package/lib/tools/circle/__tests__/index.test.js +576 -0
  31. package/lib/tools/circle/component.js +3 -34
  32. package/lib/tools/circle/component.js.map +1 -1
  33. package/lib/tools/exponential/__tests__/component.test.js +64 -0
  34. package/lib/tools/exponential/__tests__/index.test.js +828 -0
  35. package/lib/tools/line/__tests__/component.test.js +45 -0
  36. package/lib/tools/parabola/__tests__/component.test.js +64 -0
  37. package/lib/tools/parabola/__tests__/index.test.js +564 -0
  38. package/lib/tools/point/__tests__/component.test.js +434 -0
  39. package/lib/tools/point/__tests__/index.test.js +262 -0
  40. package/lib/tools/point/component.js +8 -29
  41. package/lib/tools/point/component.js.map +1 -1
  42. package/lib/tools/polygon/__tests__/component.test.js +485 -0
  43. package/lib/tools/polygon/__tests__/index.test.js +303 -0
  44. package/lib/tools/polygon/__tests__/line.test.js +50 -0
  45. package/lib/tools/polygon/__tests__/polygon.test.js +85 -0
  46. package/lib/tools/polygon/component.js +6 -31
  47. package/lib/tools/polygon/component.js.map +1 -1
  48. package/lib/tools/ray/__tests__/component.test.js +35 -0
  49. package/lib/tools/segment/__tests__/component.test.js +35 -0
  50. package/lib/tools/shared/__tests__/arrow-head.test.js +45 -0
  51. package/lib/tools/shared/line/__tests__/index.test.js +124 -0
  52. package/lib/tools/shared/line/__tests__/line-path.test.js +62 -0
  53. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +90 -0
  54. package/lib/tools/shared/line/index.js +3 -34
  55. package/lib/tools/shared/line/index.js.map +1 -1
  56. package/lib/tools/shared/point/__tests__/arrow-point.test.js +127 -0
  57. package/lib/tools/shared/point/__tests__/base-point.test.js +122 -0
  58. package/lib/tools/sine/__tests__/component.test.js +72 -0
  59. package/lib/tools/vector/__tests__/component.test.js +32 -0
  60. package/package.json +17 -17
  61. package/src/__tests__/graph.test.jsx +1 -76
  62. package/src/__tests__/mark-label.test.jsx +1 -375
  63. package/src/mark-label.jsx +8 -209
  64. package/src/tools/circle/component.jsx +3 -26
  65. package/src/tools/point/__tests__/component.test.jsx +1 -127
  66. package/src/tools/point/component.jsx +8 -21
  67. package/src/tools/polygon/component.jsx +6 -24
  68. package/src/tools/shared/line/index.jsx +3 -26
  69. package/LICENSE.md +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","names":["_react","_interopRequireDefault","require","_propTypes","_types","_point","_lodashEs","_debug","_line","_polygon","_interopRequireWildcard","_plot","_invariant","_reactDom","_markLabel","_utils","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","log","debug","buildLines","exports","points","closed","expanded","reduce","acc","p","index","isLast","next","all","chunk","map","_ref","_ref2","_slicedToArray2","from","to","initial","swap","arr","_len","rest","Array","_key","pairs","pr","_pr","replacement","invariant","Number","isFinite","splice","_toConsumableArray2","RawBaseComponent","_React$Component","_this","_classCallCheck2","_len2","args","_key2","concat","editingLabel","_this$props","props","onChange","update","overlapPoint","find","equalPoints","label","existing","point","_this$props2","onClosePolygon","_this$props3","onChangeProps","updatedPoint","isEmpty","state","setState","data","_this$props4","disabled","currentMiddle","middle","onClick","isToolActive","labelModeEnabled","limitLabeling","onSetMiddleLabel","_getRightestPoints","getRightestPoints","a","b","getMiddleOfTwoPoints","stripEmptyLabel","strippedPoints","strippedMiddle","close","_inherits2","_createClass2","key","value","componentDidUpdate","prevProps","render","_this2","_this$props5","coordinatesOnHover","correctness","graphProps","onChangeLabelProps","onDragStart","onDragStop","labelNode","lines","common","polygonLabelIndex","polygonLabelNode","ReactDOM","createPortal","createElement","inputRef","input","autoFocus","mark","onBlur","stopEditingLabel","Fragment","_extends2","onDrag","dragPoly","bind","clickPoint","Polygon","l","dragLine","BasePoint","x","y","dragPoint","labelChange","React","Component","classes","PropTypes","object","className","string","bool","arrayOf","types","PointType","func","isRequired","GraphPropsType","BaseComponent","_React$Component2","_this3","_getRightestPoints2","_this3$props","_this3$props2","_this3$props3","onComplete","m","undefined","_this$props6","stateMark","change","changeLabelProps","setMiddleLabel","changeProps","closePolygon","dragStart","dragStop","ToolPropTypeFields"],"sources":["../../../src/tools/polygon/component.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ToolPropTypeFields } from '../shared/types';\nimport { BasePoint } from '../shared/point';\nimport { chunk, initial, isEmpty } from 'lodash-es';\nimport debug from 'debug';\nimport Line from './line';\nimport DraggablePolygon, { Polygon } from './polygon';\nimport { types } from '@pie-lib/plot';\nimport invariant from 'invariant';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport { equalPoints, getMiddleOfTwoPoints, getRightestPoints, stripEmptyLabel } from '../../utils';\n\nconst log = debug('pie-lib:graphing:polygon');\n\nexport const buildLines = (points, closed) => {\n const expanded = points.reduce((acc, p, index) => {\n acc.push({ ...p, index });\n\n const isLast = index === points.length - 1;\n const next = isLast ? 0 : index + 1;\n\n acc.push({ ...points[next], index: next });\n\n return acc;\n }, []);\n\n const all = chunk(expanded, 2).map(([from, to]) => {\n return { from, to };\n });\n\n return closed ? all : initial(all);\n};\n\nexport const swap = (arr, ...rest) => {\n const pairs = chunk(rest, 2);\n\n return pairs.reduce(\n (acc, pr) => {\n if (pr.length === 2) {\n let [e, replacement] = pr;\n\n invariant(Number.isFinite(e.index), 'Index must be defined');\n\n const index = e.index;\n // const i = acc.findIndex(pt => pt.x === e.x && pt.y === e.y);\n\n if (index >= 0) {\n acc.splice(index, 1, replacement);\n\n return acc;\n } else {\n return acc;\n }\n } else {\n return acc;\n }\n },\n [...arr],\n );\n};\n\nexport class RawBaseComponent extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n points: PropTypes.arrayOf(types.PointType),\n closed: PropTypes.bool,\n coordinatesOnHover: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onClosePolygon: PropTypes.func.isRequired,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n isToolActive: PropTypes.bool,\n middle: PropTypes.object,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n limitLabeling: PropTypes.bool,\n onChangeLabelProps: PropTypes.func,\n onSetMiddleLabel: PropTypes.func,\n onChangeProps: PropTypes.func,\n };\n\n static defaultProps = {\n points: [],\n };\n\n // index of the point whose label is edited (points.length for the polygon label), null if none\n state = { editingLabel: null };\n\n componentDidUpdate(prevProps) {\n // leaving label mode closes any label that is still being edited\n if (prevProps.labelModeEnabled && !this.props.labelModeEnabled && this.state.editingLabel !== null) {\n this.setState({ editingLabel: null });\n }\n }\n\n dragPoint = (index, from, to) => {\n log('[dragPoint] from, to:', from, to);\n const { onChange, points } = this.props;\n const update = [...points];\n const overlapPoint = !!(points || []).find((p) => equalPoints(p, to));\n\n if (equalPoints(from, to) || overlapPoint) {\n return;\n }\n\n if (points[index].label) {\n to.label = points[index].label;\n }\n\n update.splice(index, 1, to);\n onChange(update);\n };\n\n dragLine = (existing, next) => {\n log('[dragLine]: ', existing, next);\n const { onChange } = this.props;\n\n if (existing.from.label) {\n next.from.label = existing.from.label;\n }\n\n if (existing.to.label) {\n next.to.label = existing.to.label;\n }\n\n const points = swap(this.props.points, existing.from, next.from, existing.to, next.to);\n onChange(points);\n };\n\n dragPoly = (existing, next) => {\n log('[dragPoly] ', existing, next);\n const { onChange } = this.props;\n\n next.forEach((point, index) => {\n if (existing[index].label) {\n next[index].label = existing[index].label;\n }\n });\n\n onChange(next);\n };\n\n close = () => {\n const { points, onClosePolygon } = this.props;\n log('[close] ...');\n\n if (points.length >= 3) {\n onClosePolygon();\n } else {\n log('[close] - nope');\n }\n };\n\n labelChange = (point, index) => {\n const { points, onChangeProps } = this.props;\n const updatedPoint = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete updatedPoint.label;\n }\n\n const update = [...points];\n\n update.splice(index, 1, updatedPoint);\n onChangeProps(update);\n };\n\n stopEditingLabel = () => {\n if (this.state.editingLabel !== null) {\n this.setState({ editingLabel: null });\n }\n };\n\n clickPoint = (point, index, data) => {\n const {\n closed,\n disabled,\n middle: currentMiddle,\n onClick,\n isToolActive,\n labelModeEnabled,\n limitLabeling,\n onSetMiddleLabel,\n points,\n } = this.props;\n\n if (labelModeEnabled) {\n // limit labeling the points of the polygon\n if (disabled || limitLabeling) {\n return;\n }\n\n if (points && index === points.length) {\n const { a, b } = getRightestPoints(points);\n const middle = { label: '', ...point, ...getMiddleOfTwoPoints(a, b) };\n\n onSetMiddleLabel(middle, points.map(stripEmptyLabel));\n } else {\n const strippedPoints = points.map(stripEmptyLabel);\n strippedPoints.splice(index, 1, { label: '', ...point });\n\n const strippedMiddle = currentMiddle ? stripEmptyLabel(currentMiddle) : currentMiddle;\n onSetMiddleLabel(strippedMiddle, strippedPoints);\n }\n\n // MarkLabel focuses itself once it is rendered - it also holds on to the focus if the model\n // that comes back from the host (api save) remounts the input.\n this.setState({ editingLabel: index });\n\n return;\n }\n\n if (isToolActive && !closed && index === 0) {\n this.close();\n return;\n }\n\n onClick(point || data);\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n const {\n closed,\n coordinatesOnHover,\n correctness,\n disabled,\n graphProps,\n onChangeLabelProps,\n onDragStart,\n onDragStop,\n points,\n middle,\n labelNode,\n labelModeEnabled,\n } = this.props;\n const { editingLabel } = this.state;\n const lines = buildLines(points, closed);\n const common = { onDragStart, onDragStop, graphProps, disabled, correctness };\n const polygonLabelIndex = (points && points.length) || 0;\n let polygonLabelNode = null;\n\n if (labelNode && middle && Object.prototype.hasOwnProperty.call(middle, 'label')) {\n polygonLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input[polygonLabelIndex] = r)}\n autoFocus={editingLabel === polygonLabelIndex}\n disabled={disabled || !labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onBlur={this.stopEditingLabel}\n onChange={(label) => onChangeLabelProps({ ...middle, label })}\n />,\n labelNode,\n );\n }\n\n return (\n <g>\n {closed ? (\n <React.Fragment>\n <DraggablePolygon\n points={points}\n onDrag={this.dragPoly.bind(this, points)}\n closed={closed}\n {...common}\n onClick={this.clickPoint.bind(this, middle, polygonLabelIndex)}\n />\n {polygonLabelNode}\n </React.Fragment>\n ) : (\n <Polygon points={points} graphProps={graphProps} closed={closed} />\n )}\n {(lines || []).map((l, index) => (\n <Line\n key={`line-${index}`}\n from={l.from}\n to={l.to}\n onDrag={this.dragLine.bind(this, l)}\n {...common}\n onClick={this.clickPoint.bind(this, middle, polygonLabelIndex)}\n />\n ))}\n\n {(points || []).map((p, index) => {\n return [\n <BasePoint\n key={`point-${index}`}\n coordinatesOnHover={coordinatesOnHover}\n labelNode={labelNode}\n x={p.x}\n y={p.y}\n onDrag={this.dragPoint.bind(this, index, p)}\n {...common}\n onClick={this.clickPoint.bind(this, p, index)}\n />,\n labelNode && Object.prototype.hasOwnProperty.call(p, 'label')\n ? ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input[index] = r)}\n autoFocus={editingLabel === index}\n disabled={disabled || !labelModeEnabled}\n mark={p}\n graphProps={graphProps}\n onBlur={this.stopEditingLabel}\n onChange={(label) => this.labelChange({ ...p, label }, index)}\n />,\n labelNode,\n )\n : null,\n ];\n })}\n </g>\n );\n }\n}\n\nexport const BaseComponent = RawBaseComponent;\n\nexport default class Component extends React.Component {\n static propTypes = {\n ...ToolPropTypeFields,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n change = (points) => {\n const {\n mark: { middle },\n } = this.props;\n const mark = { ...this.state.mark, points };\n\n if (middle) {\n const { a, b } = getRightestPoints(points);\n\n mark.middle = { ...middle, ...getMiddleOfTwoPoints(a, b) };\n }\n\n this.setState({ mark });\n };\n\n changeProps = (points) => {\n const mark = { ...this.props.mark, points };\n\n this.props.onChange(this.props.mark, mark);\n };\n\n changeLabelProps = (point) => {\n const { mark, onChange } = this.props;\n const middle = { ...mark.middle, ...point };\n\n if (!middle.label || isEmpty(middle.label)) {\n delete middle.label;\n }\n\n onChange(mark, { ...mark, middle });\n };\n\n setMiddleLabel = (middle, strippedPoints) => {\n const { mark, onChange } = this.props;\n const next = { ...mark, middle };\n if (strippedPoints) {\n next.points = strippedPoints;\n }\n onChange(mark, next);\n };\n\n closePolygon = () => {\n log('[closePolygon] ...');\n const { onComplete, mark } = this.props;\n const update = { ...mark, closed: true };\n\n onComplete(mark, update);\n };\n\n dragStart = () => this.setState({ mark: this.props.mark });\n\n dragStop = () => {\n const { onChange } = this.props;\n const m = { ...this.state.mark };\n\n this.setState({ mark: undefined }, () => {\n onChange(this.props.mark, m);\n });\n };\n\n render() {\n const { coordinatesOnHover, mark, graphProps, onClick, isToolActive, labelNode, labelModeEnabled, limitLabeling } =\n this.props;\n const { mark: stateMark } = this.state;\n\n return (\n <BaseComponent\n {...(stateMark || mark)}\n coordinatesOnHover={coordinatesOnHover}\n onChange={this.change}\n onChangeLabelProps={this.changeLabelProps}\n onSetMiddleLabel={this.setMiddleLabel}\n onChangeProps={this.changeProps}\n onClosePolygon={this.closePolygon}\n onDragStart={this.dragStart}\n onDragStop={this.dragStop}\n onClick={onClick}\n graphProps={graphProps}\n isToolActive={isToolActive}\n labelNode={labelNode}\n labelModeEnabled={labelModeEnabled}\n limitLabeling={limitLabeling}\n />\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"component.js","names":["_react","_interopRequireDefault","require","_propTypes","_types","_point","_lodashEs","_debug","_line","_polygon","_interopRequireWildcard","_plot","_invariant","_reactDom","_markLabel","_utils","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","log","debug","buildLines","exports","points","closed","expanded","reduce","acc","p","index","isLast","next","all","chunk","map","_ref","_ref2","_slicedToArray2","from","to","initial","swap","arr","_len","rest","Array","_key","pairs","pr","_pr","replacement","invariant","Number","isFinite","splice","_toConsumableArray2","RawBaseComponent","_React$Component","_this","_classCallCheck2","_len2","args","_key2","concat","_this$props","props","onChange","update","overlapPoint","find","equalPoints","label","existing","point","_this$props2","onClosePolygon","_this$props3","onChangeProps","updatedPoint","isEmpty","data","_this$props4","disabled","currentMiddle","middle","onClick","isToolActive","labelModeEnabled","limitLabeling","onSetMiddleLabel","_getRightestPoints","getRightestPoints","a","b","getMiddleOfTwoPoints","stripEmptyLabel","strippedPoints","strippedMiddle","setTimeout","input","focus","close","_inherits2","_createClass2","key","value","render","_this2","_this$props5","coordinatesOnHover","correctness","graphProps","onChangeLabelProps","onDragStart","onDragStop","labelNode","lines","common","polygonLabelIndex","polygonLabelNode","ReactDOM","createPortal","createElement","inputRef","mark","Fragment","_extends2","onDrag","dragPoly","bind","clickPoint","Polygon","l","dragLine","BasePoint","x","y","dragPoint","labelChange","React","Component","classes","PropTypes","object","className","string","bool","arrayOf","types","PointType","func","isRequired","GraphPropsType","BaseComponent","_React$Component2","_this3","state","_getRightestPoints2","setState","_this3$props","_this3$props2","_this3$props3","onComplete","m","undefined","_this$props6","stateMark","change","changeLabelProps","setMiddleLabel","changeProps","closePolygon","dragStart","dragStop","ToolPropTypeFields"],"sources":["../../../src/tools/polygon/component.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ToolPropTypeFields } from '../shared/types';\nimport { BasePoint } from '../shared/point';\nimport { chunk, initial, isEmpty } from 'lodash-es';\nimport debug from 'debug';\nimport Line from './line';\nimport DraggablePolygon, { Polygon } from './polygon';\nimport { types } from '@pie-lib/plot';\nimport invariant from 'invariant';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport { equalPoints, getMiddleOfTwoPoints, getRightestPoints, stripEmptyLabel } from '../../utils';\n\nconst log = debug('pie-lib:graphing:polygon');\n\nexport const buildLines = (points, closed) => {\n const expanded = points.reduce((acc, p, index) => {\n acc.push({ ...p, index });\n\n const isLast = index === points.length - 1;\n const next = isLast ? 0 : index + 1;\n\n acc.push({ ...points[next], index: next });\n\n return acc;\n }, []);\n\n const all = chunk(expanded, 2).map(([from, to]) => {\n return { from, to };\n });\n\n return closed ? all : initial(all);\n};\n\nexport const swap = (arr, ...rest) => {\n const pairs = chunk(rest, 2);\n\n return pairs.reduce(\n (acc, pr) => {\n if (pr.length === 2) {\n let [e, replacement] = pr;\n\n invariant(Number.isFinite(e.index), 'Index must be defined');\n\n const index = e.index;\n // const i = acc.findIndex(pt => pt.x === e.x && pt.y === e.y);\n\n if (index >= 0) {\n acc.splice(index, 1, replacement);\n\n return acc;\n } else {\n return acc;\n }\n } else {\n return acc;\n }\n },\n [...arr],\n );\n};\n\nexport class RawBaseComponent extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n points: PropTypes.arrayOf(types.PointType),\n closed: PropTypes.bool,\n coordinatesOnHover: PropTypes.bool,\n onChange: PropTypes.func.isRequired,\n onClosePolygon: PropTypes.func.isRequired,\n onDragStart: PropTypes.func,\n onDragStop: PropTypes.func,\n onClick: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n isToolActive: PropTypes.bool,\n middle: PropTypes.object,\n labelNode: PropTypes.object,\n labelModeEnabled: PropTypes.bool,\n limitLabeling: PropTypes.bool,\n onChangeLabelProps: PropTypes.func,\n onSetMiddleLabel: PropTypes.func,\n onChangeProps: PropTypes.func,\n };\n\n static defaultProps = {\n points: [],\n };\n\n dragPoint = (index, from, to) => {\n log('[dragPoint] from, to:', from, to);\n const { onChange, points } = this.props;\n const update = [...points];\n const overlapPoint = !!(points || []).find((p) => equalPoints(p, to));\n\n if (equalPoints(from, to) || overlapPoint) {\n return;\n }\n\n if (points[index].label) {\n to.label = points[index].label;\n }\n\n update.splice(index, 1, to);\n onChange(update);\n };\n\n dragLine = (existing, next) => {\n log('[dragLine]: ', existing, next);\n const { onChange } = this.props;\n\n if (existing.from.label) {\n next.from.label = existing.from.label;\n }\n\n if (existing.to.label) {\n next.to.label = existing.to.label;\n }\n\n const points = swap(this.props.points, existing.from, next.from, existing.to, next.to);\n onChange(points);\n };\n\n dragPoly = (existing, next) => {\n log('[dragPoly] ', existing, next);\n const { onChange } = this.props;\n\n next.forEach((point, index) => {\n if (existing[index].label) {\n next[index].label = existing[index].label;\n }\n });\n\n onChange(next);\n };\n\n close = () => {\n const { points, onClosePolygon } = this.props;\n log('[close] ...');\n\n if (points.length >= 3) {\n onClosePolygon();\n } else {\n log('[close] - nope');\n }\n };\n\n labelChange = (point, index) => {\n const { points, onChangeProps } = this.props;\n const updatedPoint = { ...point };\n\n if (!point.label || isEmpty(point.label)) {\n delete updatedPoint.label;\n }\n\n const update = [...points];\n\n update.splice(index, 1, updatedPoint);\n onChangeProps(update);\n };\n\n clickPoint = (point, index, data) => {\n const {\n closed,\n disabled,\n middle: currentMiddle,\n onClick,\n isToolActive,\n labelModeEnabled,\n limitLabeling,\n onSetMiddleLabel,\n points,\n } = this.props;\n\n if (labelModeEnabled) {\n // limit labeling the points of the polygon\n if (disabled || limitLabeling) {\n return;\n }\n\n if (points && index === points.length) {\n const { a, b } = getRightestPoints(points);\n const middle = { label: '', ...point, ...getMiddleOfTwoPoints(a, b) };\n\n onSetMiddleLabel(middle, points.map(stripEmptyLabel));\n } else {\n const strippedPoints = points.map(stripEmptyLabel);\n strippedPoints.splice(index, 1, { label: '', ...point });\n\n const strippedMiddle = currentMiddle ? stripEmptyLabel(currentMiddle) : currentMiddle;\n onSetMiddleLabel(strippedMiddle, strippedPoints);\n }\n\n // defer the focus() call with setTimeout to allow the re-render to complete first.\n setTimeout(() => {\n if (this.input[index]) {\n this.input[index].focus();\n }\n }, 0);\n\n return;\n }\n\n if (isToolActive && !closed && index === 0) {\n this.close();\n return;\n }\n\n onClick(point || data);\n };\n\n // IMPORTANT, do not remove\n input = {};\n\n render() {\n const {\n closed,\n coordinatesOnHover,\n correctness,\n disabled,\n graphProps,\n onChangeLabelProps,\n onDragStart,\n onDragStop,\n points,\n middle,\n labelNode,\n labelModeEnabled,\n } = this.props;\n const lines = buildLines(points, closed);\n const common = { onDragStart, onDragStop, graphProps, disabled, correctness };\n const polygonLabelIndex = (points && points.length) || 0;\n let polygonLabelNode = null;\n\n if (labelNode && middle && Object.prototype.hasOwnProperty.call(middle, 'label')) {\n polygonLabelNode = ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input[polygonLabelIndex] = r)}\n disabled={disabled || !labelModeEnabled}\n mark={middle}\n graphProps={graphProps}\n onChange={(label) => onChangeLabelProps({ ...middle, label })}\n />,\n labelNode,\n );\n }\n\n return (\n <g>\n {closed ? (\n <React.Fragment>\n <DraggablePolygon\n points={points}\n onDrag={this.dragPoly.bind(this, points)}\n closed={closed}\n {...common}\n onClick={this.clickPoint.bind(this, middle, polygonLabelIndex)}\n />\n {polygonLabelNode}\n </React.Fragment>\n ) : (\n <Polygon points={points} graphProps={graphProps} closed={closed} />\n )}\n {(lines || []).map((l, index) => (\n <Line\n key={`line-${index}`}\n from={l.from}\n to={l.to}\n onDrag={this.dragLine.bind(this, l)}\n {...common}\n onClick={this.clickPoint.bind(this, middle, polygonLabelIndex)}\n />\n ))}\n\n {(points || []).map((p, index) => {\n return [\n <BasePoint\n key={`point-${index}`}\n coordinatesOnHover={coordinatesOnHover}\n labelNode={labelNode}\n x={p.x}\n y={p.y}\n onDrag={this.dragPoint.bind(this, index, p)}\n {...common}\n onClick={this.clickPoint.bind(this, p, index)}\n />,\n labelNode && Object.prototype.hasOwnProperty.call(p, 'label')\n ? ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input[index] = r)}\n disabled={disabled || !labelModeEnabled}\n mark={p}\n graphProps={graphProps}\n onChange={(label) => this.labelChange({ ...p, label }, index)}\n />,\n labelNode,\n )\n : null,\n ];\n })}\n </g>\n );\n }\n}\n\nexport const BaseComponent = RawBaseComponent;\n\nexport default class Component extends React.Component {\n static propTypes = {\n ...ToolPropTypeFields,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n change = (points) => {\n const {\n mark: { middle },\n } = this.props;\n const mark = { ...this.state.mark, points };\n\n if (middle) {\n const { a, b } = getRightestPoints(points);\n\n mark.middle = { ...middle, ...getMiddleOfTwoPoints(a, b) };\n }\n\n this.setState({ mark });\n };\n\n changeProps = (points) => {\n const mark = { ...this.props.mark, points };\n\n this.props.onChange(this.props.mark, mark);\n };\n\n changeLabelProps = (point) => {\n const { mark, onChange } = this.props;\n const middle = { ...mark.middle, ...point };\n\n if (!middle.label || isEmpty(middle.label)) {\n delete middle.label;\n }\n\n onChange(mark, { ...mark, middle });\n };\n\n setMiddleLabel = (middle, strippedPoints) => {\n const { mark, onChange } = this.props;\n const next = { ...mark, middle };\n if (strippedPoints) {\n next.points = strippedPoints;\n }\n onChange(mark, next);\n };\n\n closePolygon = () => {\n log('[closePolygon] ...');\n const { onComplete, mark } = this.props;\n const update = { ...mark, closed: true };\n\n onComplete(mark, update);\n };\n\n dragStart = () => this.setState({ mark: this.props.mark });\n\n dragStop = () => {\n const { onChange } = this.props;\n const m = { ...this.state.mark };\n\n this.setState({ mark: undefined }, () => {\n onChange(this.props.mark, m);\n });\n };\n\n render() {\n const { coordinatesOnHover, mark, graphProps, onClick, isToolActive, labelNode, labelModeEnabled, limitLabeling } =\n this.props;\n const { mark: stateMark } = this.state;\n\n return (\n <BaseComponent\n {...(stateMark || mark)}\n coordinatesOnHover={coordinatesOnHover}\n onChange={this.change}\n onChangeLabelProps={this.changeLabelProps}\n onSetMiddleLabel={this.setMiddleLabel}\n onChangeProps={this.changeProps}\n onClosePolygon={this.closePolygon}\n onDragStart={this.dragStart}\n onDragStop={this.dragStop}\n onClick={onClick}\n graphProps={graphProps}\n isToolActive={isToolActive}\n labelNode={labelNode}\n labelModeEnabled={labelModeEnabled}\n limitLabeling={limitLabeling}\n />\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
+ var _testUtils = require("@pie-lib/test-utils");
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _component = require("../component");
8
+ var _utils = require("../../../__tests__/utils");
9
+ var _plot = require("@pie-lib/plot");
10
+ 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; }
11
+ 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; }
12
+ describe('RayLine', function () {
13
+ var onChange = jest.fn();
14
+ var renderComponent = function renderComponent(extras) {
15
+ var defaults = {
16
+ classes: {},
17
+ className: 'className',
18
+ onChange: onChange,
19
+ markerId: '1',
20
+ graphProps: (0, _utils.graphProps)(),
21
+ from: _plot.utils.xy(0, 0),
22
+ to: _plot.utils.xy(1, 1)
23
+ };
24
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
25
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_component.RayLine, props));
26
+ };
27
+ describe('rendering', function () {
28
+ it('renders without crashing', function () {
29
+ var _renderComponent = renderComponent(),
30
+ container = _renderComponent.container;
31
+ expect(container.firstChild).toBeInTheDocument();
32
+ });
33
+ });
34
+ });
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29tcG9uZW50IiwiX3V0aWxzIiwiX3Bsb3QiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsImRlc2NyaWJlIiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJyZW5kZXJDb21wb25lbnQiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJtYXJrZXJJZCIsImdyYXBoUHJvcHMiLCJnZXRHcmFwaFByb3BzIiwiZnJvbSIsInV0aWxzIiwieHkiLCJ0byIsInByb3BzIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIlJheUxpbmUiLCJpdCIsIl9yZW5kZXJDb21wb25lbnQiLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdG9vbHMvcmF5L19fdGVzdHNfXy9jb21wb25lbnQudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHBpZS1saWIvdGVzdC11dGlscyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgUmF5TGluZSB9IGZyb20gJy4uL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBncmFwaFByb3BzIGFzIGdldEdyYXBoUHJvcHMgfSBmcm9tICcuLi8uLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuaW1wb3J0IHsgdXRpbHMgfSBmcm9tICdAcGllLWxpYi9wbG90JztcblxuZGVzY3JpYmUoJ1JheUxpbmUnLCAoKSA9PiB7XG4gIGxldCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjbGFzc05hbWU6ICdjbGFzc05hbWUnLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBtYXJrZXJJZDogJzEnLFxuICAgICAgZ3JhcGhQcm9wczogZ2V0R3JhcGhQcm9wcygpLFxuICAgICAgZnJvbTogdXRpbHMueHkoMCwgMCksXG4gICAgICB0bzogdXRpbHMueHkoMSwgMSksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuICAgIHJldHVybiByZW5kZXIoPFJheUxpbmUgey4uLnByb3BzfSAvPik7XG4gIH07XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsVUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssS0FBQSxHQUFBTCxPQUFBO0FBQXNDLFNBQUFNLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFD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
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
+ var _testUtils = require("@pie-lib/test-utils");
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _component = require("../component");
8
+ var _utils = require("../../../__tests__/utils");
9
+ var _plot = require("@pie-lib/plot");
10
+ 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; }
11
+ 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; }
12
+ var xy = _plot.utils.xy;
13
+ describe('Line', function () {
14
+ var onChange = jest.fn();
15
+ var renderComponent = function renderComponent(extras) {
16
+ var defaults = {
17
+ classes: {},
18
+ className: 'className',
19
+ onChange: onChange,
20
+ graphProps: (0, _utils.graphProps)(),
21
+ from: xy(0, 0),
22
+ to: xy(1, 1)
23
+ };
24
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
25
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_component.Line, props));
26
+ };
27
+ describe('rendering', function () {
28
+ it('renders without crashing', function () {
29
+ var _renderComponent = renderComponent(),
30
+ container = _renderComponent.container;
31
+ expect(container.firstChild).toBeInTheDocument();
32
+ });
33
+ });
34
+ });
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29tcG9uZW50IiwiX3V0aWxzIiwiX3Bsb3QiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsInh5IiwidXRpbHMiLCJkZXNjcmliZSIsIm9uQ2hhbmdlIiwiamVzdCIsImZuIiwicmVuZGVyQ29tcG9uZW50IiwiZXh0cmFzIiwiZGVmYXVsdHMiLCJjbGFzc2VzIiwiY2xhc3NOYW1lIiwiZ3JhcGhQcm9wcyIsImdldEdyYXBoUHJvcHMiLCJmcm9tIiwidG8iLCJwcm9wcyIsInJlbmRlciIsImNyZWF0ZUVsZW1lbnQiLCJMaW5lIiwiaXQiLCJfcmVuZGVyQ29tcG9uZW50IiwiY29udGFpbmVyIiwiZXhwZWN0IiwiZmlyc3RDaGlsZCIsInRvQmVJblRoZURvY3VtZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rvb2xzL3NlZ21lbnQvX190ZXN0c19fL2NvbXBvbmVudC50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAcGllLWxpYi90ZXN0LXV0aWxzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBMaW5lIH0gZnJvbSAnLi4vY29tcG9uZW50JztcbmltcG9ydCB7IGdyYXBoUHJvcHMgYXMgZ2V0R3JhcGhQcm9wcyB9IGZyb20gJy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5pbXBvcnQgeyB1dGlscyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuXG5jb25zdCB7IHh5IH0gPSB1dGlscztcbmRlc2NyaWJlKCdMaW5lJywgKCkgPT4ge1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGNvbnN0IHJlbmRlckNvbXBvbmVudCA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgZ3JhcGhQcm9wczogZ2V0R3JhcGhQcm9wcygpLFxuICAgICAgZnJvbTogeHkoMCwgMCksXG4gICAgICB0bzogeHkoMSwgMSksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuICAgIHJldHVybiByZW5kZXIoPExpbmUgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUwsT0FBQTtBQUFzQyxTQUFBTSxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFB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
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
+ var _testUtils = require("@pie-lib/test-utils");
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _arrowHead = require("../arrow-head");
8
+ 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; }
9
+ 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; }
10
+ describe('ArrowHead', function () {
11
+ var renderComponent = function renderComponent(extras) {
12
+ var defaults = {
13
+ size: 10,
14
+ transform: ''
15
+ };
16
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
17
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_arrowHead.ArrowHead, props));
18
+ };
19
+ describe('rendering', function () {
20
+ it('renders without crashing', function () {
21
+ var _renderComponent = renderComponent(),
22
+ container = _renderComponent.container;
23
+ expect(container.firstChild).toBeInTheDocument();
24
+ });
25
+ });
26
+ });
27
+ describe('ArrowMarker', function () {
28
+ var renderComponent = function renderComponent(extras) {
29
+ var defaults = {
30
+ id: 'id',
31
+ size: 10,
32
+ className: 'className'
33
+ };
34
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
35
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_arrowHead.ArrowMarker, props));
36
+ };
37
+ describe('rendering', function () {
38
+ it('renders without crashing', function () {
39
+ var _renderComponent2 = renderComponent(),
40
+ container = _renderComponent2.container;
41
+ expect(container.firstChild).toBeInTheDocument();
42
+ });
43
+ });
44
+ });
45
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfYXJyb3dIZWFkIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJkZXNjcmliZSIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsImRlZmF1bHRzIiwic2l6ZSIsInRyYW5zZm9ybSIsInByb3BzIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIkFycm93SGVhZCIsIml0IiwiX3JlbmRlckNvbXBvbmVudCIsImNvbnRhaW5lciIsImV4cGVjdCIsImZpcnN0Q2hpbGQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsImlkIiwiY2xhc3NOYW1lIiwiQXJyb3dNYXJrZXIiLCJfcmVuZGVyQ29tcG9uZW50MiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvX190ZXN0c19fL2Fycm93LWhlYWQudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHBpZS1saWIvdGVzdC11dGlscyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQXJyb3dIZWFkLCBBcnJvd01hcmtlciB9IGZyb20gJy4uL2Fycm93LWhlYWQnO1xuXG5kZXNjcmliZSgnQXJyb3dIZWFkJywgKCkgPT4ge1xuICBjb25zdCByZW5kZXJDb21wb25lbnQgPSAoZXh0cmFzKSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSB7IHNpemU6IDEwLCB0cmFuc2Zvcm06ICcnIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxBcnJvd0hlYWQgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ0Fycm93TWFya2VyJywgKCkgPT4ge1xuICBjb25zdCByZW5kZXJDb21wb25lbnQgPSAoZXh0cmFzKSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSB7IGlkOiAnaWQnLCBzaXplOiAxMCwgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyB9O1xuICAgIGNvbnN0IHByb3BzID0geyAuLi5kZWZhdWx0cywgLi4uZXh0cmFzIH07XG4gICAgcmV0dXJuIHJlbmRlcig8QXJyb3dNYXJrZXIgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXJDb21wb25lbnQoKTtcbiAgICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUF1RCxTQUFBSSxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULENBQUEsRUFBQUksQ0FBQSxZQUFBSixDQUFBO0FBQUEsU0FBQVUsY0FBQVosQ0FBQSxhQUFBQyxDQUFBLE1BQUFBLENBQUEsR0FBQVksU0FBQSxDQUFBQyxNQUFBLEVBQUFiLENBQUEsVUFBQUMsQ0FBQSxXQUFBVyxTQUFBLENBQUFaLENBQUEsSUFBQVksU0FBQSxDQUFBWixDQUFBLFFBQUFBLENBQUEsT0FBQUYsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsT0FBQWEsT0FBQSxXQUFBZCxDQUFBLFFBQUFlLGdCQUFBLGFBQUFoQixDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxDQUFBRCxDQUFBLFNBQUFFLE1BQUEsQ0FBQWMseUJBQUEsR0FBQWQsTUFBQSxDQUFBZSxnQkFBQSxDQUFBbEIsQ0FBQSxFQUFBRyxNQUFBLENBQUFjLHlCQUFBLENBQUFmLENBQUEsS0FBQUgsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsR0FBQWEsT0FBQSxXQUFBZCxDQUFBLElBQUFFLE1BQUEsQ0FBQWdCLGNBQUEsQ0FBQW5CLENBQUEsRUFBQUMsQ0FBQSxFQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFOLENBQUEsRUFBQUQsQ0FBQSxpQkFBQUQsQ0FBQTtBQUV2RG9CLFFBQVEsQ0FBQyxXQUFXLEVBQUUsWUFBTTtFQUMxQixJQUFNQyxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUlDLE1BQU0sRUFBSztJQUNsQyxJQUFNQyxRQUFRLEdBQUc7TUFBRUMsSUFBSSxFQUFFLEVBQUU7TUFBRUMsU0FBUyxFQUFFO0lBQUcsQ0FBQztJQUM1QyxJQUFNQyxLQUFLLEdBQUFkLGFBQUEsQ0FBQUEsYUFBQSxLQUFRVyxRQUFRLEdBQUtELE1BQU0sQ0FBRTtJQUN4QyxPQUFPLElBQUFLLGlCQUFNLGVBQUMvQixNQUFBLFlBQUFnQyxhQUFBLENBQUM5QixVQUFBLENBQUErQixTQUFTLEVBQUtILEtBQVEsQ0FBQyxDQUFDO0VBQ3pDLENBQUM7RUFDRE4sUUFBUSxDQUFDLFdBQVcsRUFBRSxZQUFNO0lBQzFCVSxFQUFFLENBQUMsMEJBQTBCLEVBQUUsWUFBTTtNQUNuQyxJQUFBQyxnQkFBQSxHQUFzQlYsZUFBZSxDQUFDLENBQUM7UUFBL0JXLFNBQVMsR0FBQUQsZ0JBQUEsQ0FBVEMsU0FBUztNQUNqQkMsTUFBTSxDQUFDRCxTQUFTLENBQUNFLFVBQVUsQ0FBQyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2xELENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGZixRQUFRLENBQUMsYUFBYSxFQUFFLFlBQU07RUFDNUIsSUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFlQSxDQUFJQyxNQUFNLEVBQUs7SUFDbEMsSUFBTUMsUUFBUSxHQUFHO01BQUVhLEVBQUUsRUFBRSxJQUFJO01BQUVaLElBQUksRUFBRSxFQUFFO01BQUVhLFNBQVMsRUFBRTtJQUFZLENBQUM7SUFDL0QsSUFBTVgsS0FBSyxHQUFBZCxhQUFBLENBQUFBLGFBQUEsS0FBUVcsUUFBUSxHQUFLRCxNQUFNLENBQUU7SUFDeEMsT0FBTyxJQUFBSyxpQkFBTSxlQUFDL0IsTUFBQSxZQUFBZ0MsYUFBQSxDQUFDOUIsVUFBQSxDQUFBd0MsV0FBVyxFQUFLWixLQUFRLENBQUMsQ0FBQztFQUMzQyxDQUFDO0VBQ0ROLFFBQVEsQ0FBQyxXQUFXLEVBQUUsWUFBTTtJQUMxQlUsRUFBRSxDQUFDLDBCQUEwQixFQUFFLFlBQU07TUFDbkMsSUFBQVMsaUJBQUEsR0FBc0JsQixlQUFlLENBQUMsQ0FBQztRQUEvQlcsU0FBUyxHQUFBTyxpQkFBQSxDQUFUUCxTQUFTO01BQ2pCQyxNQUFNLENBQUNELFNBQVMsQ0FBQ0UsVUFBVSxDQUFDLENBQUNDLGlCQUFpQixDQUFDLENBQUM7SUFDbEQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
+ var _index = require("../index");
6
+ var _plot = require("@pie-lib/plot");
7
+ var _testUtils = require("@pie-lib/test-utils");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _utils = require("../../../../__tests__/utils");
10
+ 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; }
11
+ 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; }
12
+ var xy = _plot.utils.xy;
13
+ var xyLabel = function xyLabel(x, y, label) {
14
+ return {
15
+ x: x,
16
+ y: y,
17
+ label: label
18
+ };
19
+ };
20
+ describe('lineTool', function () {
21
+ describe('addPoint', function () {
22
+ var toolbar;
23
+ beforeEach(function () {
24
+ toolbar = (0, _index.lineTool)('lineType', function () {
25
+ return /*#__PURE__*/_react["default"].createElement("div", null);
26
+ })();
27
+ });
28
+ it('returns a building mark', function () {
29
+ var result = toolbar.addPoint(xy(1, 1));
30
+ expect(result).toEqual({
31
+ type: 'lineType',
32
+ building: true,
33
+ from: xy(1, 1)
34
+ });
35
+ });
36
+ it('returns a complete mark', function () {
37
+ var result = toolbar.addPoint(xy(1, 1), {
38
+ from: xy(0, 0)
39
+ });
40
+ expect(result).toEqual({
41
+ building: false,
42
+ from: xy(0, 0),
43
+ to: xy(1, 1)
44
+ });
45
+ });
46
+ });
47
+ });
48
+ describe('lineToolComponent', function () {
49
+ var Comp;
50
+ var mark;
51
+ var onChange;
52
+ var renderComponent = function renderComponent(extras) {
53
+ var defaults = {
54
+ mark: mark,
55
+ onChange: jest.fn(),
56
+ graphProps: (0, _utils.graphProps)()
57
+ };
58
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
59
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
60
+ };
61
+ beforeEach(function () {
62
+ Comp = (0, _index.lineToolComponent)(function () {
63
+ return /*#__PURE__*/_react["default"].createElement("text", null);
64
+ });
65
+ mark = {
66
+ from: xy(0, 0),
67
+ to: xy(1, 1)
68
+ };
69
+ });
70
+ describe('rendering', function () {
71
+ it('renders without crashing', function () {
72
+ var _renderComponent = renderComponent(),
73
+ container = _renderComponent.container;
74
+ expect(container.firstChild).toBeInTheDocument();
75
+ });
76
+ });
77
+ });
78
+ describe('lineBase', function () {
79
+ var Comp;
80
+ var onChange = jest.fn();
81
+ var changeMarkProps = jest.fn();
82
+ beforeEach(function () {
83
+ Comp = (0, _index.lineBase)(function () {
84
+ return /*#__PURE__*/_react["default"].createElement("text", null);
85
+ });
86
+ onChange.mockClear();
87
+ changeMarkProps.mockClear();
88
+ });
89
+ var renderComponent = function renderComponent(extras) {
90
+ var defaults = {
91
+ onChange: onChange,
92
+ changeMarkProps: changeMarkProps,
93
+ graphProps: (0, _utils.graphProps)(),
94
+ from: xy(0, 0),
95
+ to: xy(1, 1)
96
+ };
97
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
98
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
99
+ };
100
+
101
+ // used to test items that have labels attached to points
102
+ var labelNode = document.createElement('foreignObject');
103
+ var renderWithLabels = function renderWithLabels() {
104
+ var extras = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
105
+ return renderComponent(_objectSpread(_objectSpread({}, extras), {}, {
106
+ labelNode: labelNode,
107
+ from: xyLabel(0, 0, 'A'),
108
+ to: xyLabel(1, 1, 'B')
109
+ }));
110
+ };
111
+ describe('rendering', function () {
112
+ it('renders without crashing', function () {
113
+ var _renderComponent2 = renderComponent(),
114
+ container = _renderComponent2.container;
115
+ expect(container.firstChild).toBeInTheDocument();
116
+ });
117
+ it('renders with labels', function () {
118
+ var _renderWithLabels = renderWithLabels(),
119
+ container = _renderWithLabels.container;
120
+ expect(container.firstChild).toBeInTheDocument();
121
+ });
122
+ });
123
+ });
124
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5kZXgiLCJyZXF1aXJlIiwiX3Bsb3QiLCJfdGVzdFV0aWxzIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl91dGlscyIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwieHkiLCJ1dGlscyIsInh5TGFiZWwiLCJ4IiwieSIsImxhYmVsIiwiZGVzY3JpYmUiLCJ0b29sYmFyIiwiYmVmb3JlRWFjaCIsImxpbmVUb29sIiwiY3JlYXRlRWxlbWVudCIsIml0IiwicmVzdWx0IiwiYWRkUG9pbnQiLCJleHBlY3QiLCJ0b0VxdWFsIiwidHlwZSIsImJ1aWxkaW5nIiwiZnJvbSIsInRvIiwiQ29tcCIsIm1hcmsiLCJvbkNoYW5nZSIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsImRlZmF1bHRzIiwiamVzdCIsImZuIiwiZ3JhcGhQcm9wcyIsImdldEdyYXBoUHJvcHMiLCJwcm9wcyIsInJlbmRlciIsImxpbmVUb29sQ29tcG9uZW50IiwiX3JlbmRlckNvbXBvbmVudCIsImNvbnRhaW5lciIsImZpcnN0Q2hpbGQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsImNoYW5nZU1hcmtQcm9wcyIsImxpbmVCYXNlIiwibW9ja0NsZWFyIiwibGFiZWxOb2RlIiwiZG9jdW1lbnQiLCJyZW5kZXJXaXRoTGFiZWxzIiwidW5kZWZpbmVkIiwiX3JlbmRlckNvbXBvbmVudDIiLCJfcmVuZGVyV2l0aExhYmVscyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS9fX3Rlc3RzX18vaW5kZXgudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGluZUJhc2UsIGxpbmVUb29sLCBsaW5lVG9vbENvbXBvbmVudCB9IGZyb20gJy4uL2luZGV4JztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAcGllLWxpYi90ZXN0LXV0aWxzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBncmFwaFByb3BzIGFzIGdldEdyYXBoUHJvcHMgfSBmcm9tICcuLi8uLi8uLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuXG5jb25zdCB7IHh5IH0gPSB1dGlscztcbmNvbnN0IHh5TGFiZWwgPSAoeCwgeSwgbGFiZWwpID0+ICh7IHgsIHksIGxhYmVsIH0pO1xuXG5kZXNjcmliZSgnbGluZVRvb2wnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdhZGRQb2ludCcsICgpID0+IHtcbiAgICBsZXQgdG9vbGJhcjtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIHRvb2xiYXIgPSBsaW5lVG9vbCgnbGluZVR5cGUnLCAoKSA9PiA8ZGl2IC8+KSgpO1xuICAgIH0pO1xuICAgIGl0KCdyZXR1cm5zIGEgYnVpbGRpbmcgbWFyaycsICgpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHRvb2xiYXIuYWRkUG9pbnQoeHkoMSwgMSkpO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCh7XG4gICAgICAgIHR5cGU6ICdsaW5lVHlwZScsXG4gICAgICAgIGJ1aWxkaW5nOiB0cnVlLFxuICAgICAgICBmcm9tOiB4eSgxLCAxKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JldHVybnMgYSBjb21wbGV0ZSBtYXJrJywgKCkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdG9vbGJhci5hZGRQb2ludCh4eSgxLCAxKSwgeyBmcm9tOiB4eSgwLCAwKSB9KTtcbiAgICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoe1xuICAgICAgICBidWlsZGluZzogZmFsc2UsXG4gICAgICAgIGZyb206IHh5KDAsIDApLFxuICAgICAgICB0bzogeHkoMSwgMSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ2xpbmVUb29sQ29tcG9uZW50JywgKCkgPT4ge1xuICBsZXQgQ29tcDtcbiAgbGV0IG1hcms7XG4gIGxldCBvbkNoYW5nZTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgbWFyayxcbiAgICAgIG9uQ2hhbmdlOiBqZXN0LmZuKCksXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuXG4gICAgcmV0dXJuIHJlbmRlcig8Q29tcCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBDb21wID0gbGluZVRvb2xDb21wb25lbnQoKCkgPT4gPHRleHQgLz4pO1xuICAgIG1hcmsgPSB7IGZyb206IHh5KDAsIDApLCB0bzogeHkoMSwgMSkgfTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG5kZXNjcmliZSgnbGluZUJhc2UnLCAoKSA9PiB7XG4gIGxldCBDb21wO1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGxldCBjaGFuZ2VNYXJrUHJvcHMgPSBqZXN0LmZuKCk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgQ29tcCA9IGxpbmVCYXNlKCgpID0+IDx0ZXh0IC8+KTtcbiAgICBvbkNoYW5nZS5tb2NrQ2xlYXIoKTtcbiAgICBjaGFuZ2VNYXJrUHJvcHMubW9ja0NsZWFyKCk7XG4gIH0pO1xuXG4gIGNvbnN0IHJlbmRlckNvbXBvbmVudCA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgY2hhbmdlTWFya1Byb3BzLFxuICAgICAgZ3JhcGhQcm9wczogZ2V0R3JhcGhQcm9wcygpLFxuICAgICAgZnJvbTogeHkoMCwgMCksXG4gICAgICB0bzogeHkoMSwgMSksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuXG4gICAgcmV0dXJuIHJlbmRlcig8Q29tcCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICAvLyB1c2VkIHRvIHRlc3QgaXRlbXMgdGhhdCBoYXZlIGxhYmVscyBhdHRhY2hlZCB0byBwb2ludHNcbiAgY29uc3QgbGFiZWxOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZm9yZWlnbk9iamVjdCcpO1xuICBjb25zdCByZW5kZXJXaXRoTGFiZWxzID0gKGV4dHJhcyA9IHt9KSA9PlxuICAgIHJlbmRlckNvbXBvbmVudCh7XG4gICAgICAuLi5leHRyYXMsXG4gICAgICBsYWJlbE5vZGU6IGxhYmVsTm9kZSxcbiAgICAgIGZyb206IHh5TGFiZWwoMCwgMCwgJ0EnKSxcbiAgICAgIHRvOiB4eUxhYmVsKDEsIDEsICdCJyksXG4gICAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgd2l0aCBsYWJlbHMnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyV2l0aExhYmVscygpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBQyxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQTBFLFNBQUFNLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRixPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdB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
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+ var _testUtils = require("@pie-lib/test-utils");
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _utils = require("../../../../__tests__/utils");
9
+ var _plot = require("@pie-lib/plot");
10
+ var lineUtils = _interopRequireWildcard(require("../../../../utils"));
11
+ 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); }
12
+ 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; }
13
+ 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; }
14
+ var xy = _plot.utils.xy;
15
+ var bounds = lineUtils.bounds,
16
+ pointsToArea = lineUtils.pointsToArea;
17
+ jest.mock('../../../../utils', function () {
18
+ var a = jest.requireActual('../../../../utils');
19
+ return {
20
+ pointsToArea: jest.fn().mockReturnValue({}),
21
+ bounds: jest.fn().mockReturnValue({}),
22
+ point: a.point
23
+ };
24
+ });
25
+ jest.mock('@pie-lib/plot', function () {
26
+ var a = jest.requireActual('@pie-lib/plot');
27
+ return {
28
+ gridDraggable: jest.fn(function (opts) {
29
+ return jest.fn();
30
+ }),
31
+ types: a.types,
32
+ utils: a.utils
33
+ };
34
+ });
35
+ describe('LinePath', function () {
36
+ var LinePath;
37
+ var onChange = jest.fn();
38
+ beforeEach(function () {
39
+ LinePath = require('../line-path').LinePath;
40
+ });
41
+ var renderComponent = function renderComponent(extras) {
42
+ var defaults = {
43
+ classes: {},
44
+ className: 'className',
45
+ onChange: onChange,
46
+ graphProps: (0, _utils.graphProps)(),
47
+ from: xy(0, 0, 0),
48
+ to: xy(1, 1, 0),
49
+ data: [xy(0, 0, 0), xy(1, 1, 0)]
50
+ };
51
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
52
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(LinePath, props));
53
+ };
54
+ describe('rendering', function () {
55
+ it('renders without crashing', function () {
56
+ var _renderComponent = renderComponent(),
57
+ container = _renderComponent.container;
58
+ expect(container.firstChild).toBeInTheDocument();
59
+ });
60
+ });
61
+ });
62
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdXRpbHMiLCJfcGxvdCIsImxpbmVVdGlscyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsInh5IiwidXRpbHMiLCJib3VuZHMiLCJwb2ludHNUb0FyZWEiLCJqZXN0IiwibW9jayIsImEiLCJyZXF1aXJlQWN0dWFsIiwiZm4iLCJtb2NrUmV0dXJuVmFsdWUiLCJwb2ludCIsImdyaWREcmFnZ2FibGUiLCJvcHRzIiwidHlwZXMiLCJkZXNjcmliZSIsIkxpbmVQYXRoIiwib25DaGFuZ2UiLCJiZWZvcmVFYWNoIiwicmVuZGVyQ29tcG9uZW50IiwiZXh0cmFzIiwiZGVmYXVsdHMiLCJjbGFzc2VzIiwiY2xhc3NOYW1lIiwiZ3JhcGhQcm9wcyIsImdldEdyYXBoUHJvcHMiLCJmcm9tIiwidG8iLCJkYXRhIiwicHJvcHMiLCJyZW5kZXIiLCJjcmVhdGVFbGVtZW50IiwiaXQiLCJfcmVuZGVyQ29tcG9uZW50IiwiY29udGFpbmVyIiwiZXhwZWN0IiwiZmlyc3RDaGlsZCIsInRvQmVJblRoZURvY3VtZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Rvb2xzL3NoYXJlZC9saW5lL19fdGVzdHNfXy9saW5lLXBhdGgudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHBpZS1saWIvdGVzdC11dGlscyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZ3JhcGhQcm9wcyBhcyBnZXRHcmFwaFByb3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgKiBhcyBsaW5lVXRpbHMgZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnO1xuXG5jb25zdCB7IHh5IH0gPSB1dGlscztcblxuY29uc3QgeyBib3VuZHMsIHBvaW50c1RvQXJlYSB9ID0gbGluZVV0aWxzO1xuamVzdC5tb2NrKCcuLi8uLi8uLi8uLi91dGlscycsICgpID0+IHtcbiAgY29uc3QgYSA9IGplc3QucmVxdWlyZUFjdHVhbCgnLi4vLi4vLi4vLi4vdXRpbHMnKTtcbiAgcmV0dXJuIHtcbiAgICBwb2ludHNUb0FyZWE6IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoe30pLFxuICAgIGJvdW5kczogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7fSksXG4gICAgcG9pbnQ6IGEucG9pbnQsXG4gIH07XG59KTtcblxuamVzdC5tb2NrKCdAcGllLWxpYi9wbG90JywgKCkgPT4ge1xuICBjb25zdCBhID0gamVzdC5yZXF1aXJlQWN0dWFsKCdAcGllLWxpYi9wbG90Jyk7XG4gIHJldHVybiB7XG4gICAgZ3JpZERyYWdnYWJsZTogamVzdC5mbigob3B0cykgPT4gamVzdC5mbigpKSxcbiAgICB0eXBlczogYS50eXBlcyxcbiAgICB1dGlsczogYS51dGlscyxcbiAgfTtcbn0pO1xuXG5kZXNjcmliZSgnTGluZVBhdGgnLCAoKSA9PiB7XG4gIGxldCBMaW5lUGF0aDtcbiAgbGV0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBMaW5lUGF0aCA9IHJlcXVpcmUoJy4uL2xpbmUtcGF0aCcpLkxpbmVQYXRoO1xuICB9KTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjbGFzc05hbWU6ICdjbGFzc05hbWUnLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgICBmcm9tOiB4eSgwLCAwLCAwKSxcbiAgICAgIHRvOiB4eSgxLCAxLCAwKSxcbiAgICAgIGRhdGE6IFt4eSgwLCAwLCAwKSwgeHkoMSwgMSwgMCldLFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxMaW5lUGF0aCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUMsdUJBQUEsQ0FBQU4sT0FBQTtBQUErQyxTQUFBTSx3QkFBQUMsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFD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