@pie-lib/graphing 2.15.0-beta.2 → 2.15.0-beta.3

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 (128) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/lib/axis/arrow.js +115 -0
  3. package/lib/axis/arrow.js.map +1 -0
  4. package/lib/axis/axes.js +415 -0
  5. package/lib/axis/axes.js.map +1 -0
  6. package/lib/axis/index.js +26 -0
  7. package/lib/axis/index.js.map +1 -0
  8. package/lib/bg.js +139 -0
  9. package/lib/bg.js.map +1 -0
  10. package/lib/container/actions.js +24 -0
  11. package/lib/container/actions.js.map +1 -0
  12. package/lib/container/index.js +163 -0
  13. package/lib/container/index.js.map +1 -0
  14. package/lib/container/marks.js +27 -0
  15. package/lib/container/marks.js.map +1 -0
  16. package/lib/container/middleware.js +25 -0
  17. package/lib/container/middleware.js.map +1 -0
  18. package/lib/container/reducer.js +25 -0
  19. package/lib/container/reducer.js.map +1 -0
  20. package/lib/coordinates-label.js +109 -0
  21. package/lib/coordinates-label.js.map +1 -0
  22. package/lib/graph-with-controls.js +359 -0
  23. package/lib/graph-with-controls.js.map +1 -0
  24. package/lib/graph.js +371 -0
  25. package/lib/graph.js.map +1 -0
  26. package/lib/grid-setup.js +462 -0
  27. package/lib/grid-setup.js.map +1 -0
  28. package/lib/grid.js +176 -0
  29. package/lib/grid.js.map +1 -0
  30. package/lib/index.js +59 -0
  31. package/lib/index.js.map +1 -0
  32. package/lib/key-legend.js +246 -0
  33. package/lib/key-legend.js.map +1 -0
  34. package/lib/label-svg-icon.js +56 -0
  35. package/lib/label-svg-icon.js.map +1 -0
  36. package/lib/labels.js +299 -0
  37. package/lib/labels.js.map +1 -0
  38. package/lib/mark-label.js +321 -0
  39. package/lib/mark-label.js.map +1 -0
  40. package/lib/toggle-bar.js +336 -0
  41. package/lib/toggle-bar.js.map +1 -0
  42. package/lib/tool-menu.js +112 -0
  43. package/lib/tool-menu.js.map +1 -0
  44. package/lib/tools/absolute/component.js +35 -0
  45. package/lib/tools/absolute/component.js.map +1 -0
  46. package/lib/tools/absolute/index.js +63 -0
  47. package/lib/tools/absolute/index.js.map +1 -0
  48. package/lib/tools/circle/bg-circle.js +173 -0
  49. package/lib/tools/circle/bg-circle.js.map +1 -0
  50. package/lib/tools/circle/component.js +406 -0
  51. package/lib/tools/circle/component.js.map +1 -0
  52. package/lib/tools/circle/index.js +51 -0
  53. package/lib/tools/circle/index.js.map +1 -0
  54. package/lib/tools/exponential/component.js +34 -0
  55. package/lib/tools/exponential/component.js.map +1 -0
  56. package/lib/tools/exponential/index.js +71 -0
  57. package/lib/tools/exponential/index.js.map +1 -0
  58. package/lib/tools/index.js +99 -0
  59. package/lib/tools/index.js.map +1 -0
  60. package/lib/tools/line/component.js +103 -0
  61. package/lib/tools/line/component.js.map +1 -0
  62. package/lib/tools/line/index.js +16 -0
  63. package/lib/tools/line/index.js.map +1 -0
  64. package/lib/tools/parabola/component.js +34 -0
  65. package/lib/tools/parabola/component.js.map +1 -0
  66. package/lib/tools/parabola/index.js +63 -0
  67. package/lib/tools/parabola/index.js.map +1 -0
  68. package/lib/tools/point/component.js +186 -0
  69. package/lib/tools/point/component.js.map +1 -0
  70. package/lib/tools/point/index.js +32 -0
  71. package/lib/tools/point/index.js.map +1 -0
  72. package/lib/tools/polygon/component.js +518 -0
  73. package/lib/tools/polygon/component.js.map +1 -0
  74. package/lib/tools/polygon/index.js +106 -0
  75. package/lib/tools/polygon/index.js.map +1 -0
  76. package/lib/tools/polygon/line.js +157 -0
  77. package/lib/tools/polygon/line.js.map +1 -0
  78. package/lib/tools/polygon/polygon.js +165 -0
  79. package/lib/tools/polygon/polygon.js.map +1 -0
  80. package/lib/tools/ray/component.js +102 -0
  81. package/lib/tools/ray/component.js.map +1 -0
  82. package/lib/tools/ray/index.js +16 -0
  83. package/lib/tools/ray/index.js.map +1 -0
  84. package/lib/tools/segment/component.js +75 -0
  85. package/lib/tools/segment/component.js.map +1 -0
  86. package/lib/tools/segment/index.js +16 -0
  87. package/lib/tools/segment/index.js.map +1 -0
  88. package/lib/tools/shared/arrow-head.js +70 -0
  89. package/lib/tools/shared/arrow-head.js.map +1 -0
  90. package/lib/tools/shared/icons/CorrectSVG.js +36 -0
  91. package/lib/tools/shared/icons/CorrectSVG.js.map +1 -0
  92. package/lib/tools/shared/icons/IncorrectSVG.js +36 -0
  93. package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -0
  94. package/lib/tools/shared/icons/MissingSVG.js +35 -0
  95. package/lib/tools/shared/icons/MissingSVG.js.map +1 -0
  96. package/lib/tools/shared/line/index.js +599 -0
  97. package/lib/tools/shared/line/index.js.map +1 -0
  98. package/lib/tools/shared/line/line-path.js +151 -0
  99. package/lib/tools/shared/line/line-path.js.map +1 -0
  100. package/lib/tools/shared/line/with-root-edge.js +155 -0
  101. package/lib/tools/shared/line/with-root-edge.js.map +1 -0
  102. package/lib/tools/shared/point/arrow-point.js +113 -0
  103. package/lib/tools/shared/point/arrow-point.js.map +1 -0
  104. package/lib/tools/shared/point/arrow.js +96 -0
  105. package/lib/tools/shared/point/arrow.js.map +1 -0
  106. package/lib/tools/shared/point/base-point.js +175 -0
  107. package/lib/tools/shared/point/base-point.js.map +1 -0
  108. package/lib/tools/shared/point/index.js +97 -0
  109. package/lib/tools/shared/point/index.js.map +1 -0
  110. package/lib/tools/shared/styles.js +58 -0
  111. package/lib/tools/shared/styles.js.map +1 -0
  112. package/lib/tools/shared/types.js +23 -0
  113. package/lib/tools/shared/types.js.map +1 -0
  114. package/lib/tools/sine/component.js +51 -0
  115. package/lib/tools/sine/component.js.map +1 -0
  116. package/lib/tools/sine/index.js +63 -0
  117. package/lib/tools/sine/index.js.map +1 -0
  118. package/lib/tools/vector/component.js +88 -0
  119. package/lib/tools/vector/component.js.map +1 -0
  120. package/lib/tools/vector/index.js +16 -0
  121. package/lib/tools/vector/index.js.map +1 -0
  122. package/lib/undo-redo.js +123 -0
  123. package/lib/undo-redo.js.map +1 -0
  124. package/lib/use-debounce.js +32 -0
  125. package/lib/use-debounce.js.map +1 -0
  126. package/lib/utils.js +307 -0
  127. package/lib/utils.js.map +1 -0
  128. package/package.json +1 -1
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.Point = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _point = require("../shared/point");
29
+
30
+ var _types = require("../shared/types");
31
+
32
+ var _plot = require("@pie-lib/plot");
33
+
34
+ var _reactDom = _interopRequireDefault(require("react-dom"));
35
+
36
+ var _markLabel = _interopRequireDefault(require("../../mark-label"));
37
+
38
+ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
39
+
40
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
41
+
42
+ 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; }
43
+
44
+ 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; }
45
+
46
+ 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); }; }
47
+
48
+ 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; } }
49
+
50
+ var Point = /*#__PURE__*/function (_React$Component) {
51
+ (0, _inherits2["default"])(Point, _React$Component);
52
+
53
+ var _super = _createSuper(Point);
54
+
55
+ function Point(props) {
56
+ var _this;
57
+
58
+ (0, _classCallCheck2["default"])(this, Point);
59
+ _this = _super.call(this, props);
60
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "move", function (p) {
61
+ var mark = _objectSpread(_objectSpread({}, _this.state.mark), p);
62
+
63
+ _this.setState({
64
+ mark: mark
65
+ });
66
+ });
67
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "startDrag", function () {
68
+ var update = _objectSpread({}, _this.props.mark);
69
+
70
+ if (update.label === '') {
71
+ delete update.label;
72
+ }
73
+
74
+ _this.setState({
75
+ mark: update
76
+ });
77
+ });
78
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "stopDrag", function () {
79
+ var onChange = _this.props.onChange;
80
+
81
+ var mark = _objectSpread({}, _this.state.mark);
82
+
83
+ _this.setState({
84
+ mark: undefined
85
+ }, function () {
86
+ if (!(0, _isEqual["default"])(_this.props.mark, mark)) {
87
+ onChange(_this.props.mark, mark);
88
+ }
89
+ });
90
+ });
91
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "labelChange", function (label) {
92
+ var onChange = _this.props.onChange;
93
+
94
+ var update = _objectSpread(_objectSpread({}, _this.props.mark), {}, {
95
+ label: label
96
+ });
97
+
98
+ if (!label || (0, _isEmpty["default"])(label)) {
99
+ delete update.label;
100
+ }
101
+
102
+ _this.setState({
103
+ mark: update
104
+ }, function () {
105
+ onChange(_this.props.mark, update);
106
+ });
107
+ });
108
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "clickPoint", function () {
109
+ var _this$props = _this.props,
110
+ labelModeEnabled = _this$props.labelModeEnabled,
111
+ onChange = _this$props.onChange,
112
+ onClick = _this$props.onClick,
113
+ mark = _this$props.mark;
114
+
115
+ if (!labelModeEnabled) {
116
+ onClick(mark);
117
+ return;
118
+ }
119
+
120
+ if (mark.disabled) {
121
+ return;
122
+ }
123
+
124
+ onChange(mark, _objectSpread({
125
+ label: ''
126
+ }, mark));
127
+
128
+ if (_this.input) {
129
+ _this.input.focus();
130
+ }
131
+ });
132
+ _this.state = {};
133
+ return _this;
134
+ }
135
+
136
+ (0, _createClass2["default"])(Point, [{
137
+ key: "render",
138
+ value: function render() {
139
+ var _this2 = this;
140
+
141
+ var _this$props2 = this.props,
142
+ coordinatesOnHover = _this$props2.coordinatesOnHover,
143
+ graphProps = _this$props2.graphProps,
144
+ labelNode = _this$props2.labelNode,
145
+ labelModeEnabled = _this$props2.labelModeEnabled;
146
+ var mark = this.state.mark ? this.state.mark : this.props.mark;
147
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_point.BasePoint, (0, _extends2["default"])({}, mark, {
148
+ coordinatesOnHover: coordinatesOnHover,
149
+ graphProps: graphProps,
150
+ labelNode: labelNode,
151
+ onDrag: this.move,
152
+ onDragStart: this.startDrag,
153
+ onDragStop: this.stopDrag,
154
+ onClick: this.clickPoint,
155
+ onTouchStart: function onTouchStart(e) {
156
+ e.stopPropagation();
157
+
158
+ _this2.clickPoint();
159
+ },
160
+ onTouchEnd: function onTouchEnd(e) {
161
+ e.stopPropagation();
162
+
163
+ _this2.clickPoint();
164
+ }
165
+ })), labelNode && mark.hasOwnProperty('label') && /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
166
+ inputRef: function inputRef(r) {
167
+ return _this2.input = r;
168
+ },
169
+ disabled: !labelModeEnabled,
170
+ mark: mark,
171
+ graphProps: graphProps,
172
+ onChange: this.labelChange
173
+ }), labelNode));
174
+ }
175
+ }]);
176
+ return Point;
177
+ }(_react["default"].Component);
178
+
179
+ exports.Point = Point;
180
+ (0, _defineProperty2["default"])(Point, "propTypes", _objectSpread({
181
+ graphProps: _plot.types.GraphPropsType.isRequired
182
+ }, _types.ToolPropTypeFields));
183
+ (0, _defineProperty2["default"])(Point, "defaultProps", {});
184
+ var _default = Point;
185
+ exports["default"] = _default;
186
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tools/point/component.jsx"],"names":["Point","props","p","mark","state","setState","update","label","onChange","undefined","labelModeEnabled","onClick","disabled","input","focus","coordinatesOnHover","graphProps","labelNode","move","startDrag","stopDrag","clickPoint","e","stopPropagation","hasOwnProperty","ReactDOM","createPortal","r","labelChange","React","Component","types","GraphPropsType","isRequired","ToolPropTypeFields"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { BasePoint } from '../shared/point';\nimport { ToolPropTypeFields } from '../shared/types';\nimport { types } from '@pie-lib/plot';\nimport ReactDOM from 'react-dom';\nimport MarkLabel from '../../mark-label';\nimport isEqual from 'lodash/isEqual';\nimport isEmpty from 'lodash/isEmpty';\n\nexport class Point extends React.Component {\n static propTypes = {\n graphProps: types.GraphPropsType.isRequired,\n ...ToolPropTypeFields,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n move = (p) => {\n const mark = { ...this.state.mark, ...p };\n this.setState({ mark });\n };\n\n startDrag = () => {\n const update = { ...this.props.mark };\n\n if (update.label === '') {\n delete update.label;\n }\n this.setState({ mark: update });\n };\n\n stopDrag = () => {\n const { onChange } = this.props;\n const mark = { ...this.state.mark };\n this.setState({ mark: undefined }, () => {\n if (!isEqual(this.props.mark, mark)) {\n onChange(this.props.mark, mark);\n }\n });\n };\n\n labelChange = (label) => {\n const { onChange } = this.props;\n const update = { ...this.props.mark, label };\n\n if (!label || isEmpty(label)) {\n delete update.label;\n }\n\n this.setState({ mark: update }, () => {\n onChange(this.props.mark, update);\n });\n };\n\n clickPoint = () => {\n const { labelModeEnabled, onChange, onClick, mark } = this.props;\n\n if (!labelModeEnabled) {\n onClick(mark);\n return;\n }\n\n if (mark.disabled) {\n return;\n }\n\n onChange(mark, { label: '', ...mark });\n\n if (this.input) {\n this.input.focus();\n }\n };\n\n render() {\n const { coordinatesOnHover, graphProps, labelNode, labelModeEnabled } = this.props;\n const mark = this.state.mark ? this.state.mark : this.props.mark;\n\n return (\n <React.Fragment>\n <BasePoint\n {...mark}\n coordinatesOnHover={coordinatesOnHover}\n graphProps={graphProps}\n labelNode={labelNode}\n onDrag={this.move}\n onDragStart={this.startDrag}\n onDragStop={this.stopDrag}\n onClick={this.clickPoint}\n onTouchStart={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n onTouchEnd={(e) => {\n e.stopPropagation();\n this.clickPoint();\n }}\n />\n {labelNode &&\n mark.hasOwnProperty('label') &&\n ReactDOM.createPortal(\n <MarkLabel\n inputRef={(r) => (this.input = r)}\n disabled={!labelModeEnabled}\n mark={mark}\n graphProps={graphProps}\n onChange={this.labelChange}\n />,\n labelNode,\n )}\n </React.Fragment>\n );\n }\n}\n\nexport default Point;\n"],"file":"component.js"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.tool = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _component = _interopRequireDefault(require("./component"));
13
+
14
+ 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; }
15
+
16
+ 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; }
17
+
18
+ var tool = function tool() {
19
+ return {
20
+ label: 'Point',
21
+ type: 'point',
22
+ Component: _component["default"],
23
+ addPoint: function addPoint(point) {
24
+ return _objectSpread({
25
+ type: 'point'
26
+ }, point);
27
+ }
28
+ };
29
+ };
30
+
31
+ exports.tool = tool;
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tools/point/index.js"],"names":["tool","label","type","Component","Point","addPoint","point"],"mappings":";;;;;;;;;;;AAAA;;;;;;AAEO,IAAMA,IAAI,GAAG,SAAPA,IAAO;AAAA,SAAO;AACzBC,IAAAA,KAAK,EAAE,OADkB;AAEzBC,IAAAA,IAAI,EAAE,OAFmB;AAGzBC,IAAAA,SAAS,EAAEC,qBAHc;AAIzBC,IAAAA,QAAQ,EAAE,kBAACC,KAAD;AAAA;AACRJ,QAAAA,IAAI,EAAE;AADE,SAELI,KAFK;AAAA;AAJe,GAAP;AAAA,CAAb","sourcesContent":["import Point from './component';\n\nexport const tool = () => ({\n label: 'Point',\n type: 'point',\n Component: Point,\n addPoint: (point) => ({\n type: 'point',\n ...point,\n }),\n});\n"],"file":"index.js"}