@pie-lib/graphing 2.6.3 → 2.8.1
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.
- package/CHANGELOG.md +34 -0
- package/lib/axis/arrow.js +15 -25
- package/lib/axis/arrow.js.map +1 -1
- package/lib/axis/axes.js +41 -73
- package/lib/axis/axes.js.map +1 -1
- package/lib/axis/index.js +1 -1
- package/lib/bg.js +20 -31
- package/lib/bg.js.map +1 -1
- package/lib/container/index.js +27 -41
- package/lib/container/index.js.map +1 -1
- package/lib/container/reducer.js +2 -2
- package/lib/container/reducer.js.map +1 -1
- package/lib/coordinates-label.js +5 -5
- package/lib/coordinates-label.js.map +1 -1
- package/lib/graph-with-controls.js +116 -55
- package/lib/graph-with-controls.js.map +1 -1
- package/lib/graph.js +45 -69
- package/lib/graph.js.map +1 -1
- package/lib/grid-setup.js +72 -27
- package/lib/grid-setup.js.map +1 -1
- package/lib/grid.js +28 -46
- package/lib/grid.js.map +1 -1
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/labels.js +22 -38
- package/lib/labels.js.map +1 -1
- package/lib/mark-label.js +10 -20
- package/lib/mark-label.js.map +1 -1
- package/lib/toggle-bar.js +177 -45
- package/lib/toggle-bar.js.map +1 -1
- package/lib/tool-menu.js +49 -32
- package/lib/tool-menu.js.map +1 -1
- package/lib/tools/circle/bg-circle.js +27 -38
- package/lib/tools/circle/bg-circle.js.map +1 -1
- package/lib/tools/circle/component.js +36 -54
- package/lib/tools/circle/component.js.map +1 -1
- package/lib/tools/circle/index.js +5 -5
- package/lib/tools/circle/index.js.map +1 -1
- package/lib/tools/line/component.js +11 -25
- package/lib/tools/line/component.js.map +1 -1
- package/lib/tools/line/index.js +2 -2
- package/lib/tools/line/index.js.map +1 -1
- package/lib/tools/parabola/component.js +2 -2
- package/lib/tools/parabola/component.js.map +1 -1
- package/lib/tools/parabola/index.js +5 -5
- package/lib/tools/parabola/index.js.map +1 -1
- package/lib/tools/point/component.js +30 -47
- package/lib/tools/point/component.js.map +1 -1
- package/lib/tools/point/index.js +5 -5
- package/lib/tools/point/index.js.map +1 -1
- package/lib/tools/polygon/component.js +59 -107
- package/lib/tools/polygon/component.js.map +1 -1
- package/lib/tools/polygon/index.js +9 -19
- package/lib/tools/polygon/index.js.map +1 -1
- package/lib/tools/polygon/line.js +28 -41
- package/lib/tools/polygon/line.js.map +1 -1
- package/lib/tools/polygon/polygon.js +28 -42
- package/lib/tools/polygon/polygon.js.map +1 -1
- package/lib/tools/ray/component.js +11 -25
- package/lib/tools/ray/component.js.map +1 -1
- package/lib/tools/ray/index.js +2 -2
- package/lib/tools/ray/index.js.map +1 -1
- package/lib/tools/segment/component.js +8 -11
- package/lib/tools/segment/component.js.map +1 -1
- package/lib/tools/segment/index.js +2 -2
- package/lib/tools/segment/index.js.map +1 -1
- package/lib/tools/shared/arrow-head.js +2 -2
- package/lib/tools/shared/arrow-head.js.map +1 -1
- package/lib/tools/shared/line/index.js +43 -66
- package/lib/tools/shared/line/index.js.map +1 -1
- package/lib/tools/shared/line/line-path.js +29 -42
- package/lib/tools/shared/line/line-path.js.map +1 -1
- package/lib/tools/shared/line/with-root-edge.js +12 -14
- package/lib/tools/shared/line/with-root-edge.js.map +1 -1
- package/lib/tools/shared/point/arrow-point.js +24 -39
- package/lib/tools/shared/point/arrow-point.js.map +1 -1
- package/lib/tools/shared/point/arrow.js +23 -37
- package/lib/tools/shared/point/arrow.js.map +1 -1
- package/lib/tools/shared/point/base-point.js +24 -38
- package/lib/tools/shared/point/base-point.js.map +1 -1
- package/lib/tools/shared/point/index.js +6 -6
- package/lib/tools/shared/point/index.js.map +1 -1
- package/lib/tools/shared/styles.js +7 -5
- package/lib/tools/shared/styles.js.map +1 -1
- package/lib/tools/shared/types.js +2 -2
- package/lib/tools/shared/types.js.map +1 -1
- package/lib/tools/sine/component.js +2 -2
- package/lib/tools/sine/component.js.map +1 -1
- package/lib/tools/sine/index.js +5 -5
- package/lib/tools/sine/index.js.map +1 -1
- package/lib/tools/vector/component.js +8 -11
- package/lib/tools/vector/component.js.map +1 -1
- package/lib/tools/vector/index.js +2 -2
- package/lib/tools/vector/index.js.map +1 -1
- package/lib/undo-redo.js +19 -31
- package/lib/undo-redo.js.map +1 -1
- package/lib/use-debounce.js +5 -13
- package/lib/use-debounce.js.map +1 -1
- package/lib/utils.js +2 -2
- package/lib/utils.js.map +1 -1
- package/package.json +4 -3
- package/src/graph-with-controls.jsx +100 -14
- package/src/graph.jsx +2 -0
- package/src/grid-setup.jsx +155 -88
- package/src/toggle-bar.jsx +143 -13
- package/src/tool-menu.jsx +15 -0
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
6
|
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports.toolIsAvailable = exports.setToolbarAvailability = exports.getAvailableTool = exports.filterByVisibleToolTypes = exports.filterByValidToolTypes = exports["default"] = exports.GraphWithControls = void 0;
|
|
9
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
|
+
|
|
10
26
|
var _react = _interopRequireDefault(require("react"));
|
|
11
27
|
|
|
12
28
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -29,37 +45,21 @@ var _undoRedo = _interopRequireDefault(require("./undo-redo"));
|
|
|
29
45
|
|
|
30
46
|
var _tools = require("./tools");
|
|
31
47
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
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; }
|
|
35
|
-
|
|
36
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
37
|
-
|
|
38
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
48
|
+
var _core = require("@material-ui/core");
|
|
39
49
|
|
|
40
|
-
|
|
50
|
+
var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"));
|
|
41
51
|
|
|
42
|
-
function
|
|
43
|
-
|
|
44
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
45
|
-
|
|
46
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
47
|
-
|
|
48
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
52
|
+
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); }
|
|
49
53
|
|
|
50
|
-
function
|
|
54
|
+
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; }
|
|
51
55
|
|
|
52
|
-
function
|
|
56
|
+
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); }; }
|
|
53
57
|
|
|
54
58
|
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; } }
|
|
55
59
|
|
|
56
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
57
|
-
|
|
58
60
|
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; }
|
|
59
61
|
|
|
60
|
-
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) {
|
|
61
|
-
|
|
62
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
62
|
+
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; }
|
|
63
63
|
|
|
64
64
|
var setToolbarAvailability = function setToolbarAvailability(toolbarTools) {
|
|
65
65
|
return _tools.toolsArr.map(function (tA) {
|
|
@@ -109,47 +109,84 @@ var filterByVisibleToolTypes = function filterByVisibleToolTypes(toolbarTools, m
|
|
|
109
109
|
|
|
110
110
|
exports.filterByVisibleToolTypes = filterByVisibleToolTypes;
|
|
111
111
|
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
112
|
+
var getDefaultCurrentTool = function getDefaultCurrentTool(toolType) {
|
|
113
|
+
return _tools.toolsArr.find(function (tool) {
|
|
114
|
+
return tool.type === toolType;
|
|
115
|
+
}) || null;
|
|
116
|
+
};
|
|
116
117
|
|
|
117
|
-
|
|
118
|
-
|
|
118
|
+
var Collapsible = function Collapsible(_ref) {
|
|
119
|
+
var classes = _ref.classes,
|
|
120
|
+
children = _ref.children,
|
|
121
|
+
title = _ref.title;
|
|
122
|
+
return /*#__PURE__*/_react["default"].createElement(_core.ExpansionPanel, {
|
|
123
|
+
elevation: 0,
|
|
124
|
+
className: classes.expansionPanel,
|
|
125
|
+
disabledGutters: true,
|
|
126
|
+
square: true
|
|
127
|
+
}, /*#__PURE__*/_react["default"].createElement(_core.ExpansionPanelSummary, {
|
|
128
|
+
classes: {
|
|
129
|
+
root: classes.summaryRoot,
|
|
130
|
+
content: classes.summaryContent
|
|
131
|
+
},
|
|
132
|
+
expandIcon: /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], null)
|
|
133
|
+
}, /*#__PURE__*/_react["default"].createElement(_core.Typography, {
|
|
134
|
+
variant: "subheading"
|
|
135
|
+
}, title)), /*#__PURE__*/_react["default"].createElement(_core.ExpansionPanelDetails, {
|
|
136
|
+
className: classes.details
|
|
137
|
+
}, children));
|
|
138
|
+
};
|
|
119
139
|
|
|
120
|
-
|
|
140
|
+
Collapsible.propTypes = {
|
|
141
|
+
classes: _propTypes["default"].object,
|
|
142
|
+
children: _propTypes["default"].array,
|
|
143
|
+
title: _propTypes["default"].string
|
|
144
|
+
};
|
|
121
145
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}
|
|
146
|
+
var GraphWithControls = /*#__PURE__*/function (_React$Component) {
|
|
147
|
+
(0, _inherits2["default"])(GraphWithControls, _React$Component);
|
|
125
148
|
|
|
126
|
-
|
|
149
|
+
var _super = _createSuper(GraphWithControls);
|
|
127
150
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
labelModeEnabled: false
|
|
131
|
-
});
|
|
151
|
+
function GraphWithControls(props) {
|
|
152
|
+
var _this;
|
|
132
153
|
|
|
133
|
-
|
|
154
|
+
(0, _classCallCheck2["default"])(this, GraphWithControls);
|
|
155
|
+
_this = _super.call(this, props);
|
|
156
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeCurrentTool", function (tool, tools) {
|
|
134
157
|
return _this.setState({
|
|
135
158
|
currentTool: tools.find(function (t) {
|
|
136
159
|
return t.type === tool;
|
|
137
160
|
})
|
|
138
161
|
});
|
|
139
162
|
});
|
|
140
|
-
|
|
141
|
-
_defineProperty(_assertThisInitialized(_this), "toggleLabelMode", function () {
|
|
163
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "toggleLabelMode", function () {
|
|
142
164
|
return _this.setState(function (state) {
|
|
143
165
|
return {
|
|
144
166
|
labelModeEnabled: !state.labelModeEnabled
|
|
145
167
|
};
|
|
146
168
|
});
|
|
147
169
|
});
|
|
148
|
-
|
|
170
|
+
_this.state = {
|
|
171
|
+
currentTool: getDefaultCurrentTool(props.defaultTool),
|
|
172
|
+
labelModeEnabled: false
|
|
173
|
+
};
|
|
149
174
|
return _this;
|
|
150
175
|
}
|
|
151
176
|
|
|
152
|
-
|
|
177
|
+
(0, _createClass2["default"])(GraphWithControls, [{
|
|
178
|
+
key: "componentDidUpdate",
|
|
179
|
+
value: function componentDidUpdate(prevProps) {
|
|
180
|
+
var defaultTool = this.props.defaultTool;
|
|
181
|
+
|
|
182
|
+
if (prevProps.defaultTool !== defaultTool) {
|
|
183
|
+
var currentTool = getDefaultCurrentTool(defaultTool);
|
|
184
|
+
this.setState({
|
|
185
|
+
currentTool: currentTool
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}, {
|
|
153
190
|
key: "render",
|
|
154
191
|
value: function render() {
|
|
155
192
|
var _this2 = this;
|
|
@@ -162,10 +199,14 @@ var GraphWithControls = /*#__PURE__*/function (_React$Component) {
|
|
|
162
199
|
classes = _this$props.classes,
|
|
163
200
|
className = _this$props.className,
|
|
164
201
|
coordinatesOnHover = _this$props.coordinatesOnHover,
|
|
202
|
+
collapsibleToolbar = _this$props.collapsibleToolbar,
|
|
203
|
+
collapsibleToolbarTitle = _this$props.collapsibleToolbarTitle,
|
|
165
204
|
disabled = _this$props.disabled,
|
|
166
205
|
domain = _this$props.domain,
|
|
206
|
+
draggableTools = _this$props.draggableTools,
|
|
167
207
|
labels = _this$props.labels,
|
|
168
208
|
onChangeMarks = _this$props.onChangeMarks,
|
|
209
|
+
onChangeTools = _this$props.onChangeTools,
|
|
169
210
|
onUndo = _this$props.onUndo,
|
|
170
211
|
onRedo = _this$props.onRedo,
|
|
171
212
|
onReset = _this$props.onReset,
|
|
@@ -190,24 +231,31 @@ var GraphWithControls = /*#__PURE__*/function (_React$Component) {
|
|
|
190
231
|
currentTool = getAvailableTool(tools);
|
|
191
232
|
}
|
|
192
233
|
|
|
193
|
-
|
|
194
|
-
className: (0, _classnames["default"])(classes.graphWithControls, className)
|
|
195
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
196
|
-
className: classes.controls
|
|
197
|
-
}, /*#__PURE__*/_react["default"].createElement(_toolMenu["default"], {
|
|
234
|
+
var graphActions = /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_toolMenu["default"], {
|
|
198
235
|
currentToolType: currentTool && currentTool.type,
|
|
199
236
|
disabled: !!disabled,
|
|
237
|
+
draggableTools: draggableTools,
|
|
200
238
|
labelModeEnabled: labelModeEnabled,
|
|
201
239
|
onChange: function onChange(tool) {
|
|
202
240
|
return _this2.changeCurrentTool(tool, tools);
|
|
203
241
|
},
|
|
204
242
|
onToggleLabelMode: this.toggleLabelMode,
|
|
205
|
-
toolbarTools: toolbarTools
|
|
243
|
+
toolbarTools: toolbarTools,
|
|
244
|
+
onChangeTools: onChangeTools
|
|
206
245
|
}), !disabled && /*#__PURE__*/_react["default"].createElement(_undoRedo["default"], {
|
|
207
246
|
onUndo: onUndo,
|
|
208
247
|
onRedo: onRedo,
|
|
209
248
|
onReset: onReset
|
|
210
|
-
}))
|
|
249
|
+
}));
|
|
250
|
+
|
|
251
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
252
|
+
className: (0, _classnames["default"])(classes.graphWithControls, className)
|
|
253
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
254
|
+
className: classes.controls
|
|
255
|
+
}, collapsibleToolbar ? /*#__PURE__*/_react["default"].createElement(Collapsible, {
|
|
256
|
+
classes: classes,
|
|
257
|
+
title: collapsibleToolbarTitle
|
|
258
|
+
}, graphActions) : graphActions), /*#__PURE__*/_react["default"].createElement("div", {
|
|
211
259
|
ref: function ref(r) {
|
|
212
260
|
return _this2.labelNode = r;
|
|
213
261
|
}
|
|
@@ -228,21 +276,20 @@ var GraphWithControls = /*#__PURE__*/function (_React$Component) {
|
|
|
228
276
|
}));
|
|
229
277
|
}
|
|
230
278
|
}]);
|
|
231
|
-
|
|
232
279
|
return GraphWithControls;
|
|
233
280
|
}(_react["default"].Component);
|
|
234
281
|
|
|
235
282
|
exports.GraphWithControls = GraphWithControls;
|
|
236
|
-
|
|
237
|
-
_defineProperty(GraphWithControls, "propTypes", _objectSpread(_objectSpread({}, _graph.graphPropTypes), {}, {
|
|
283
|
+
(0, _defineProperty2["default"])(GraphWithControls, "propTypes", _objectSpread(_objectSpread({}, _graph.graphPropTypes), {}, {
|
|
238
284
|
onUndo: _propTypes["default"].func,
|
|
239
285
|
onRedo: _propTypes["default"].func,
|
|
240
286
|
onReset: _propTypes["default"].func,
|
|
241
287
|
toolbarTools: _propTypes["default"].arrayOf(_propTypes["default"].string) // array of tool types that have to be displayed in the toolbar, same shape as 'allTools'
|
|
242
288
|
|
|
243
289
|
}));
|
|
244
|
-
|
|
245
|
-
|
|
290
|
+
(0, _defineProperty2["default"])(GraphWithControls, "defaultProps", {
|
|
291
|
+
collapsibleToolbar: false,
|
|
292
|
+
collapsibleToolbarTitle: '',
|
|
246
293
|
toolbarTools: []
|
|
247
294
|
});
|
|
248
295
|
|
|
@@ -263,6 +310,20 @@ var styles = function styles(theme) {
|
|
|
263
310
|
'& button': {
|
|
264
311
|
fontSize: theme.typography.fontSize
|
|
265
312
|
}
|
|
313
|
+
},
|
|
314
|
+
expansionPanel: {
|
|
315
|
+
backgroundColor: _renderUi.color.primaryLight()
|
|
316
|
+
},
|
|
317
|
+
summaryRoot: {
|
|
318
|
+
padding: "0 ".concat(theme.spacing.unit, "px"),
|
|
319
|
+
minHeight: '32px !important'
|
|
320
|
+
},
|
|
321
|
+
summaryContent: {
|
|
322
|
+
margin: '4px 0 !important'
|
|
323
|
+
},
|
|
324
|
+
details: {
|
|
325
|
+
padding: 0,
|
|
326
|
+
marginTop: theme.spacing.unit
|
|
266
327
|
}
|
|
267
328
|
};
|
|
268
329
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/graph-with-controls.jsx"],"names":["setToolbarAvailability","toolbarTools","toolsArr","map","tA","toolbar","find","t","type","toolIsAvailable","tools","currentTool","tool","getAvailableTool","filterByValidToolTypes","backgroundMarks","filter","bM","allTools","filterByVisibleToolTypes","marks","GraphWithControls","labelModeEnabled","setState","state","props","axesSettings","classes","className","coordinatesOnHover","disabled","domain","labels","onChangeMarks","onUndo","onRedo","onReset","range","size","title","tT","graphWithControls","controls","changeCurrentTool","toggleLabelMode","r","labelNode","undefined","React","Component","graphPropTypes","PropTypes","func","arrayOf","string","styles","theme","width","display","justifyContent","padding","spacing","unit","color","text","backgroundColor","primaryLight","borderTop","primaryDark","borderBottom","borderLeft","borderRight","fontSize","typography"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport uniq from 'lodash/uniq';\nimport isString from 'lodash/isString';\nimport { color } from '@pie-lib/render-ui';\n\nimport ToolMenu from './tool-menu';\nimport Graph, { graphPropTypes } from './graph';\nimport UndoRedo from './undo-redo';\nimport { allTools, toolsArr } from './tools';\n\nexport const setToolbarAvailability = toolbarTools =>\n toolsArr.map(tA => ({ ...tA, toolbar: !!toolbarTools.find(t => t === tA.type) })) || [];\n\nexport const toolIsAvailable = (tools, currentTool) =>\n currentTool && tools && (tools.find(tool => tool.type === currentTool.type) || {}).toolbar;\n\nexport const getAvailableTool = tools => tools.find(tool => tool.toolbar);\n\nexport const filterByValidToolTypes = backgroundMarks =>\n backgroundMarks.filter(bM => !!allTools.find(tool => tool === bM.type));\n\nexport const filterByVisibleToolTypes = (toolbarTools, marks) =>\n marks.filter(bM => !!toolbarTools.find(tool => tool === bM.type));\n\nexport class GraphWithControls extends React.Component {\n static propTypes = {\n ...graphPropTypes,\n onUndo: PropTypes.func,\n onRedo: PropTypes.func,\n onReset: PropTypes.func,\n toolbarTools: PropTypes.arrayOf(PropTypes.string) // array of tool types that have to be displayed in the toolbar, same shape as 'allTools'\n };\n\n static defaultProps = { toolbarTools: [] };\n\n state = { currentTool: null, labelModeEnabled: false };\n\n changeCurrentTool = (tool, tools) =>\n this.setState({ currentTool: tools.find(t => t.type === tool) });\n\n toggleLabelMode = () => this.setState(state => ({ labelModeEnabled: !state.labelModeEnabled }));\n\n render() {\n let { currentTool, labelModeEnabled } = this.state;\n\n const {\n axesSettings,\n classes,\n className,\n coordinatesOnHover,\n disabled,\n domain,\n labels,\n onChangeMarks,\n onUndo,\n onRedo,\n onReset,\n range,\n size,\n title\n } = this.props;\n\n let { backgroundMarks, marks, toolbarTools } = this.props;\n\n // make sure only valid tool types are kept (string) and without duplicates\n toolbarTools = uniq(toolbarTools || []).filter(tT => !!isString(tT)) || [];\n\n // keep only the backgroundMarks that have valid types\n backgroundMarks = filterByValidToolTypes(backgroundMarks || []);\n\n // keep only the marks that have types which appear in toolbar\n marks = filterByVisibleToolTypes(toolbarTools, marks || []);\n\n const tools = setToolbarAvailability(toolbarTools);\n\n // set current tool if there's no current tool or if the existing one is no longer available\n if (!currentTool || !toolIsAvailable(tools, currentTool)) {\n currentTool = getAvailableTool(tools);\n }\n\n return (\n <div className={classNames(classes.graphWithControls, className)}>\n <div className={classes.controls}>\n <ToolMenu\n currentToolType={currentTool && currentTool.type}\n disabled={!!disabled}\n labelModeEnabled={labelModeEnabled}\n onChange={tool => this.changeCurrentTool(tool, tools)}\n onToggleLabelMode={this.toggleLabelMode}\n toolbarTools={toolbarTools}\n />\n\n {!disabled && <UndoRedo onUndo={onUndo} onRedo={onRedo} onReset={onReset} />}\n </div>\n\n <div ref={r => (this.labelNode = r)} />\n\n <Graph\n axesSettings={axesSettings}\n backgroundMarks={backgroundMarks}\n coordinatesOnHover={coordinatesOnHover}\n currentTool={currentTool}\n domain={domain}\n labels={labels}\n labelModeEnabled={labelModeEnabled}\n marks={marks}\n onChangeMarks={!disabled ? onChangeMarks : undefined}\n range={range}\n size={size}\n title={title}\n tools={tools}\n />\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n graphWithControls: {},\n controls: {\n width: 'inherit',\n display: 'flex',\n justifyContent: 'space-between',\n padding: theme.spacing.unit,\n color: color.text(),\n backgroundColor: color.primaryLight(),\n borderTop: `solid 1px ${color.primaryDark()}`,\n borderBottom: `solid 0px ${color.primaryDark()}`,\n borderLeft: `solid 1px ${color.primaryDark()}`,\n borderRight: `solid 1px ${color.primaryDark()}`,\n '& button': {\n fontSize: theme.typography.fontSize\n }\n }\n});\n\nexport default withStyles(styles)(GraphWithControls);\n"],"file":"graph-with-controls.js"}
|
|
1
|
+
{"version":3,"sources":["../src/graph-with-controls.jsx"],"names":["setToolbarAvailability","toolbarTools","toolsArr","map","tA","toolbar","find","t","type","toolIsAvailable","tools","currentTool","tool","getAvailableTool","filterByValidToolTypes","backgroundMarks","filter","bM","allTools","filterByVisibleToolTypes","marks","getDefaultCurrentTool","toolType","Collapsible","classes","children","title","expansionPanel","root","summaryRoot","content","summaryContent","details","propTypes","PropTypes","object","array","string","GraphWithControls","props","setState","state","labelModeEnabled","defaultTool","prevProps","axesSettings","className","coordinatesOnHover","collapsibleToolbar","collapsibleToolbarTitle","disabled","domain","draggableTools","labels","onChangeMarks","onChangeTools","onUndo","onRedo","onReset","range","size","tT","graphActions","changeCurrentTool","toggleLabelMode","graphWithControls","controls","r","labelNode","undefined","React","Component","graphPropTypes","func","arrayOf","styles","theme","width","display","justifyContent","padding","spacing","unit","color","text","backgroundColor","primaryLight","borderTop","primaryDark","borderBottom","borderLeft","borderRight","fontSize","typography","minHeight","margin","marginTop"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport uniq from 'lodash/uniq';\nimport isString from 'lodash/isString';\nimport { color } from '@pie-lib/render-ui';\n\nimport ToolMenu from './tool-menu';\nimport Graph, { graphPropTypes } from './graph';\nimport UndoRedo from './undo-redo';\nimport { allTools, toolsArr } from './tools';\nimport {\n ExpansionPanel,\n ExpansionPanelDetails,\n ExpansionPanelSummary,\n Typography\n} from '@material-ui/core';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\n\nexport const setToolbarAvailability = toolbarTools =>\n toolsArr.map(tA => ({ ...tA, toolbar: !!toolbarTools.find(t => t === tA.type) })) || [];\n\nexport const toolIsAvailable = (tools, currentTool) =>\n currentTool && tools && (tools.find(tool => tool.type === currentTool.type) || {}).toolbar;\n\nexport const getAvailableTool = tools => tools.find(tool => tool.toolbar);\n\nexport const filterByValidToolTypes = backgroundMarks =>\n backgroundMarks.filter(bM => !!allTools.find(tool => tool === bM.type));\n\nexport const filterByVisibleToolTypes = (toolbarTools, marks) =>\n marks.filter(bM => !!toolbarTools.find(tool => tool === bM.type));\n\nconst getDefaultCurrentTool = toolType => toolsArr.find(tool => tool.type === toolType) || null;\n\nconst Collapsible = ({ classes, children, title }) => (\n <ExpansionPanel\n elevation={0}\n className={classes.expansionPanel}\n disabledGutters={true}\n square={true}\n >\n <ExpansionPanelSummary\n classes={{\n root: classes.summaryRoot,\n content: classes.summaryContent\n }}\n expandIcon={<ExpandMoreIcon />}\n >\n <Typography variant=\"subheading\">{title}</Typography>\n </ExpansionPanelSummary>\n <ExpansionPanelDetails className={classes.details}>{children}</ExpansionPanelDetails>\n </ExpansionPanel>\n);\n\nCollapsible.propTypes = {\n classes: PropTypes.object,\n children: PropTypes.array,\n title: PropTypes.string\n};\n\nexport class GraphWithControls extends React.Component {\n static propTypes = {\n ...graphPropTypes,\n onUndo: PropTypes.func,\n onRedo: PropTypes.func,\n onReset: PropTypes.func,\n toolbarTools: PropTypes.arrayOf(PropTypes.string) // array of tool types that have to be displayed in the toolbar, same shape as 'allTools'\n };\n\n static defaultProps = {\n collapsibleToolbar: false,\n collapsibleToolbarTitle: '',\n toolbarTools: []\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n currentTool: getDefaultCurrentTool(props.defaultTool),\n labelModeEnabled: false\n };\n }\n\n componentDidUpdate(prevProps) {\n const { defaultTool } = this.props;\n\n if (prevProps.defaultTool !== defaultTool) {\n const currentTool = getDefaultCurrentTool(defaultTool);\n\n this.setState({ currentTool });\n }\n }\n\n changeCurrentTool = (tool, tools) =>\n this.setState({ currentTool: tools.find(t => t.type === tool) });\n\n toggleLabelMode = () => this.setState(state => ({ labelModeEnabled: !state.labelModeEnabled }));\n\n render() {\n let { currentTool, labelModeEnabled } = this.state;\n const {\n axesSettings,\n classes,\n className,\n coordinatesOnHover,\n collapsibleToolbar,\n collapsibleToolbarTitle,\n disabled,\n domain,\n draggableTools,\n labels,\n onChangeMarks,\n onChangeTools,\n onUndo,\n onRedo,\n onReset,\n range,\n size,\n title\n } = this.props;\n let { backgroundMarks, marks, toolbarTools } = this.props;\n\n // make sure only valid tool types are kept (string) and without duplicates\n toolbarTools = uniq(toolbarTools || []).filter(tT => !!isString(tT)) || [];\n\n // keep only the backgroundMarks that have valid types\n backgroundMarks = filterByValidToolTypes(backgroundMarks || []);\n\n // keep only the marks that have types which appear in toolbar\n marks = filterByVisibleToolTypes(toolbarTools, marks || []);\n\n const tools = setToolbarAvailability(toolbarTools);\n\n // set current tool if there's no current tool or if the existing one is no longer available\n if (!currentTool || !toolIsAvailable(tools, currentTool)) {\n currentTool = getAvailableTool(tools);\n }\n\n const graphActions = (\n <React.Fragment>\n <ToolMenu\n currentToolType={currentTool && currentTool.type}\n disabled={!!disabled}\n draggableTools={draggableTools}\n labelModeEnabled={labelModeEnabled}\n onChange={tool => this.changeCurrentTool(tool, tools)}\n onToggleLabelMode={this.toggleLabelMode}\n toolbarTools={toolbarTools}\n onChangeTools={onChangeTools}\n />\n\n {!disabled && <UndoRedo onUndo={onUndo} onRedo={onRedo} onReset={onReset} />}\n </React.Fragment>\n );\n\n return (\n <div className={classNames(classes.graphWithControls, className)}>\n <div className={classes.controls}>\n {collapsibleToolbar ? (\n <Collapsible classes={classes} title={collapsibleToolbarTitle}>\n {graphActions}\n </Collapsible>\n ) : (\n graphActions\n )}\n </div>\n\n <div ref={r => (this.labelNode = r)} />\n\n <Graph\n axesSettings={axesSettings}\n backgroundMarks={backgroundMarks}\n coordinatesOnHover={coordinatesOnHover}\n currentTool={currentTool}\n domain={domain}\n labels={labels}\n labelModeEnabled={labelModeEnabled}\n marks={marks}\n onChangeMarks={!disabled ? onChangeMarks : undefined}\n range={range}\n size={size}\n title={title}\n tools={tools}\n />\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n graphWithControls: {},\n controls: {\n width: 'inherit',\n display: 'flex',\n justifyContent: 'space-between',\n padding: theme.spacing.unit,\n color: color.text(),\n backgroundColor: color.primaryLight(),\n borderTop: `solid 1px ${color.primaryDark()}`,\n borderBottom: `solid 0px ${color.primaryDark()}`,\n borderLeft: `solid 1px ${color.primaryDark()}`,\n borderRight: `solid 1px ${color.primaryDark()}`,\n '& button': {\n fontSize: theme.typography.fontSize\n }\n },\n expansionPanel: {\n backgroundColor: color.primaryLight()\n },\n summaryRoot: {\n padding: `0 ${theme.spacing.unit}px`,\n minHeight: '32px !important'\n },\n summaryContent: {\n margin: '4px 0 !important'\n },\n details: {\n padding: 0,\n marginTop: theme.spacing.unit\n }\n});\n\nexport default withStyles(styles)(GraphWithControls);\n"],"file":"graph-with-controls.js"}
|
package/lib/graph.js
CHANGED
|
@@ -1,12 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
6
|
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports.removeBuildingToolIfCurrentToolDiffers = exports.graphPropTypes = exports["default"] = exports.Graph = void 0;
|
|
9
11
|
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
16
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
17
|
+
|
|
18
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
19
|
+
|
|
20
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
21
|
+
|
|
22
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
23
|
+
|
|
24
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
25
|
+
|
|
26
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
27
|
+
|
|
28
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
29
|
+
|
|
10
30
|
var _react = _interopRequireDefault(require("react"));
|
|
11
31
|
|
|
12
32
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -33,53 +53,21 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
33
53
|
|
|
34
54
|
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; }
|
|
35
55
|
|
|
36
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
37
|
-
|
|
38
|
-
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
39
|
-
|
|
40
56
|
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; }
|
|
41
57
|
|
|
42
|
-
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) {
|
|
43
|
-
|
|
44
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
45
|
-
|
|
46
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
47
|
-
|
|
48
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
49
|
-
|
|
50
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
51
|
-
|
|
52
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
53
|
-
|
|
54
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
55
|
-
|
|
56
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
57
|
-
|
|
58
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
58
|
+
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; }
|
|
59
59
|
|
|
60
|
-
function
|
|
61
|
-
|
|
62
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
63
|
-
|
|
64
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
65
|
-
|
|
66
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
67
|
-
|
|
68
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
69
|
-
|
|
70
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
60
|
+
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); }; }
|
|
71
61
|
|
|
72
62
|
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; } }
|
|
73
63
|
|
|
74
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
75
|
-
|
|
76
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
77
|
-
|
|
78
64
|
var log = (0, _debug["default"])('pie-lib:graphing:graph');
|
|
79
65
|
var graphPropTypes = {
|
|
80
66
|
axesSettings: _propTypes["default"].shape(_axis.AxisPropTypes),
|
|
81
67
|
backgroundMarks: _propTypes["default"].array,
|
|
82
68
|
className: _propTypes["default"].string,
|
|
69
|
+
collapsibleToolbar: _propTypes["default"].bool,
|
|
70
|
+
collapsibleToolbarTitle: _propTypes["default"].string,
|
|
83
71
|
domain: _plot.types.DomainType,
|
|
84
72
|
labels: _propTypes["default"].shape(_labels.LabelType),
|
|
85
73
|
labelModeEnabled: _propTypes["default"].bool,
|
|
@@ -129,30 +117,27 @@ var removeBuildingToolIfCurrentToolDiffers = function removeBuildingToolIfCurren
|
|
|
129
117
|
exports.removeBuildingToolIfCurrentToolDiffers = removeBuildingToolIfCurrentToolDiffers;
|
|
130
118
|
|
|
131
119
|
var Graph = /*#__PURE__*/function (_React$Component) {
|
|
132
|
-
|
|
120
|
+
(0, _inherits2["default"])(Graph, _React$Component);
|
|
133
121
|
|
|
134
122
|
var _super = _createSuper(Graph);
|
|
135
123
|
|
|
136
124
|
function Graph() {
|
|
137
125
|
var _this;
|
|
138
126
|
|
|
139
|
-
|
|
127
|
+
(0, _classCallCheck2["default"])(this, Graph);
|
|
140
128
|
|
|
141
129
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
142
130
|
args[_key] = arguments[_key];
|
|
143
131
|
}
|
|
144
132
|
|
|
145
133
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
_defineProperty(_assertThisInitialized(_this), "componentDidMount", function () {
|
|
134
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {});
|
|
135
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "componentDidMount", function () {
|
|
150
136
|
return _this.setState({
|
|
151
137
|
labelNode: _this.labelNode
|
|
152
138
|
});
|
|
153
139
|
});
|
|
154
|
-
|
|
155
|
-
_defineProperty(_assertThisInitialized(_this), "changeMark", function (oldMark, newMark) {
|
|
140
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeMark", function (oldMark, newMark) {
|
|
156
141
|
var _this$props = _this.props,
|
|
157
142
|
onChangeMarks = _this$props.onChangeMarks,
|
|
158
143
|
marks = _this$props.marks;
|
|
@@ -166,8 +151,7 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
166
151
|
onChangeMarks(newMarks);
|
|
167
152
|
}
|
|
168
153
|
});
|
|
169
|
-
|
|
170
|
-
_defineProperty(_assertThisInitialized(_this), "completeMark", function (markData) {
|
|
154
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "completeMark", function (markData) {
|
|
171
155
|
var _this$props2 = _this.props,
|
|
172
156
|
currentTool = _this$props2.currentTool,
|
|
173
157
|
marks = _this$props2.marks;
|
|
@@ -179,8 +163,7 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
179
163
|
|
|
180
164
|
_this.updateMarks(buildingMark, updatedMark);
|
|
181
165
|
});
|
|
182
|
-
|
|
183
|
-
_defineProperty(_assertThisInitialized(_this), "updateMarks", function (existing, update) {
|
|
166
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "updateMarks", function (existing, update) {
|
|
184
167
|
var addIfMissing = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
185
168
|
var _this$props3 = _this.props,
|
|
186
169
|
onChangeMarks = _this$props3.onChangeMarks,
|
|
@@ -199,19 +182,17 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
199
182
|
newMarks.splice(index, 1, update);
|
|
200
183
|
onChangeMarks(newMarks);
|
|
201
184
|
} else if (addIfMissing) {
|
|
202
|
-
onChangeMarks([].concat(
|
|
185
|
+
onChangeMarks([].concat((0, _toConsumableArray2["default"])(newMarks), [update]));
|
|
203
186
|
}
|
|
204
187
|
});
|
|
205
|
-
|
|
206
|
-
_defineProperty(_assertThisInitialized(_this), "getComponent", function (mark) {
|
|
188
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getComponent", function (mark) {
|
|
207
189
|
if (!mark) return null;
|
|
208
190
|
var tool = (_this.props.tools || []).find(function (t) {
|
|
209
191
|
return t.type === mark.type;
|
|
210
192
|
});
|
|
211
193
|
return tool && tool.Component || null;
|
|
212
194
|
});
|
|
213
|
-
|
|
214
|
-
_defineProperty(_assertThisInitialized(_this), "onBgClick", function (point) {
|
|
195
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onBgClick", function (point) {
|
|
215
196
|
var x = point.x,
|
|
216
197
|
y = point.y;
|
|
217
198
|
var _this$props4 = _this.props,
|
|
@@ -243,11 +224,10 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
243
224
|
|
|
244
225
|
_this.updateMarks(buildingMark, updatedMark, true);
|
|
245
226
|
});
|
|
246
|
-
|
|
247
227
|
return _this;
|
|
248
228
|
}
|
|
249
229
|
|
|
250
|
-
|
|
230
|
+
(0, _createClass2["default"])(Graph, [{
|
|
251
231
|
key: "render",
|
|
252
232
|
value: function render() {
|
|
253
233
|
var _this2 = this;
|
|
@@ -276,20 +256,20 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
276
256
|
marks: marks || [],
|
|
277
257
|
currentTool: currentTool
|
|
278
258
|
});
|
|
279
|
-
return /*#__PURE__*/_react["default"].createElement(_plot.Root,
|
|
259
|
+
return /*#__PURE__*/_react["default"].createElement(_plot.Root, (0, _extends2["default"])({
|
|
280
260
|
rootRef: function rootRef(r) {
|
|
281
261
|
return _this2.rootNode = r;
|
|
282
262
|
},
|
|
283
263
|
title: title
|
|
284
|
-
}, common), /*#__PURE__*/_react["default"].createElement(_labels["default"],
|
|
264
|
+
}, common), /*#__PURE__*/_react["default"].createElement(_labels["default"], (0, _extends2["default"])({
|
|
285
265
|
value: labels
|
|
286
266
|
}, common)), /*#__PURE__*/_react["default"].createElement("g", {
|
|
287
267
|
transform: "translate(".concat(domain.padding, ", ").concat(range.padding, ")")
|
|
288
|
-
}, /*#__PURE__*/_react["default"].createElement(_grid["default"], common), /*#__PURE__*/_react["default"].createElement(_axis.Axes,
|
|
268
|
+
}, /*#__PURE__*/_react["default"].createElement(_grid["default"], common), /*#__PURE__*/_react["default"].createElement(_axis.Axes, (0, _extends2["default"])({}, axesSettings, common)), /*#__PURE__*/_react["default"].createElement(_bg["default"], (0, _extends2["default"])({}, size, {
|
|
289
269
|
onClick: this.onBgClick
|
|
290
270
|
}, common)), /*#__PURE__*/_react["default"].createElement("mask", {
|
|
291
271
|
id: "myMask"
|
|
292
|
-
}, /*#__PURE__*/_react["default"].createElement("rect",
|
|
272
|
+
}, /*#__PURE__*/_react["default"].createElement("rect", (0, _extends2["default"])({}, maskSize, {
|
|
293
273
|
fill: "white"
|
|
294
274
|
})), " "), /*#__PURE__*/_react["default"].createElement("g", {
|
|
295
275
|
id: "marks",
|
|
@@ -298,7 +278,7 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
298
278
|
var Component = _this2.getComponent(m);
|
|
299
279
|
|
|
300
280
|
var markType = m.type;
|
|
301
|
-
return /*#__PURE__*/_react["default"].createElement(Component,
|
|
281
|
+
return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
|
|
302
282
|
key: "".concat(markType, "-").concat(index, "-bg"),
|
|
303
283
|
mark: _objectSpread(_objectSpread({}, m), {}, {
|
|
304
284
|
disabled: true,
|
|
@@ -310,7 +290,7 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
310
290
|
var Component = _this2.getComponent(m);
|
|
311
291
|
|
|
312
292
|
var markType = m.type;
|
|
313
|
-
return /*#__PURE__*/_react["default"].createElement(Component,
|
|
293
|
+
return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
|
|
314
294
|
key: "".concat(markType, "-").concat(index),
|
|
315
295
|
mark: m,
|
|
316
296
|
coordinatesOnHover: coordinatesOnHover,
|
|
@@ -322,7 +302,7 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
322
302
|
labelNode: _this2.state.labelNode,
|
|
323
303
|
isToolActive: currentTool && markType === currentTool.type
|
|
324
304
|
}, common));
|
|
325
|
-
}), /*#__PURE__*/_react["default"].createElement("foreignObject",
|
|
305
|
+
}), /*#__PURE__*/_react["default"].createElement("foreignObject", (0, _extends2["default"])({
|
|
326
306
|
ref: function ref(labelNode) {
|
|
327
307
|
return _this2.labelNode = labelNode;
|
|
328
308
|
},
|
|
@@ -335,20 +315,16 @@ var Graph = /*#__PURE__*/function (_React$Component) {
|
|
|
335
315
|
})))));
|
|
336
316
|
}
|
|
337
317
|
}]);
|
|
338
|
-
|
|
339
318
|
return Graph;
|
|
340
319
|
}(_react["default"].Component);
|
|
341
320
|
|
|
342
321
|
exports.Graph = Graph;
|
|
343
|
-
|
|
344
|
-
_defineProperty(Graph, "propTypes", _objectSpread(_objectSpread({}, graphPropTypes), {}, {
|
|
322
|
+
(0, _defineProperty2["default"])(Graph, "propTypes", _objectSpread(_objectSpread({}, graphPropTypes), {}, {
|
|
345
323
|
currentTool: _propTypes["default"].object
|
|
346
324
|
}));
|
|
347
|
-
|
|
348
|
-
_defineProperty(Graph, "defaultProps", {
|
|
325
|
+
(0, _defineProperty2["default"])(Graph, "defaultProps", {
|
|
349
326
|
onChangeMarks: function onChangeMarks() {}
|
|
350
327
|
});
|
|
351
|
-
|
|
352
328
|
var _default = Graph;
|
|
353
329
|
exports["default"] = _default;
|
|
354
330
|
//# sourceMappingURL=graph.js.map
|