@pie-lib/graphing-solution-set 2.16.0-beta.0 → 2.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/CHANGELOG.md +165 -1
  2. package/package.json +14 -9
  3. package/src/axis/axes.jsx +1 -1
  4. package/src/coordinates-label.jsx +1 -1
  5. package/src/graph-with-controls.jsx +1 -1
  6. package/src/grid-setup.jsx +5 -8
  7. package/src/labels.jsx +1 -1
  8. package/src/mark-label.jsx +1 -1
  9. package/src/toggle-bar.jsx +1 -1
  10. package/src/tools/polygon/line.jsx +1 -1
  11. package/src/tools/polygon/polygon.jsx +1 -1
  12. package/src/tools/shared/arrow-head.jsx +1 -1
  13. package/src/tools/shared/line/index.jsx +1 -1
  14. package/src/tools/shared/line/line-path.jsx +1 -1
  15. package/src/tools/shared/point/base-point.jsx +1 -1
  16. package/src/tools/shared/point/index.jsx +1 -1
  17. package/src/tools/shared/styles.js +1 -1
  18. package/src/undo-redo.jsx +1 -1
  19. package/lib/__tests__/graph-with-controls.test.js +0 -191
  20. package/lib/__tests__/graph.test.js +0 -290
  21. package/lib/__tests__/grid.test.js +0 -40
  22. package/lib/__tests__/labels.test.js +0 -59
  23. package/lib/__tests__/mark-label.test.js +0 -154
  24. package/lib/__tests__/toggle-bar.test.js +0 -54
  25. package/lib/__tests__/tool-menu.test.js +0 -43
  26. package/lib/__tests__/undo-redo.test.js +0 -42
  27. package/lib/__tests__/use-debounce.test.js +0 -28
  28. package/lib/__tests__/utils.js +0 -72
  29. package/lib/__tests__/utils.test.js +0 -133
  30. package/lib/axis/__tests__/arrow.test.js +0 -68
  31. package/lib/axis/__tests__/axes.test.js +0 -214
  32. package/lib/axis/arrow.js +0 -115
  33. package/lib/axis/axes.js +0 -415
  34. package/lib/axis/index.js +0 -26
  35. package/lib/bg.js +0 -139
  36. package/lib/container/actions.js +0 -24
  37. package/lib/container/index.js +0 -166
  38. package/lib/container/marks.js +0 -27
  39. package/lib/container/middleware.js +0 -25
  40. package/lib/container/reducer.js +0 -25
  41. package/lib/coordinates-label.js +0 -109
  42. package/lib/graph-with-controls.js +0 -372
  43. package/lib/graph.js +0 -419
  44. package/lib/grid-setup.js +0 -462
  45. package/lib/grid.js +0 -176
  46. package/lib/index.js +0 -51
  47. package/lib/labels.js +0 -299
  48. package/lib/mark-label.js +0 -208
  49. package/lib/toggle-bar.js +0 -336
  50. package/lib/tool-menu.js +0 -325
  51. package/lib/tools/index.js +0 -29
  52. package/lib/tools/line/__tests__/component.test.js +0 -56
  53. package/lib/tools/line/component.js +0 -106
  54. package/lib/tools/line/index.js +0 -16
  55. package/lib/tools/polygon/__tests__/component.test.js +0 -245
  56. package/lib/tools/polygon/__tests__/index.test.js +0 -95
  57. package/lib/tools/polygon/__tests__/line.test.js +0 -43
  58. package/lib/tools/polygon/__tests__/polygon.test.js +0 -73
  59. package/lib/tools/polygon/component.js +0 -457
  60. package/lib/tools/polygon/index.js +0 -106
  61. package/lib/tools/polygon/line.js +0 -151
  62. package/lib/tools/polygon/polygon.js +0 -171
  63. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -62
  64. package/lib/tools/shared/arrow-head.js +0 -75
  65. package/lib/tools/shared/line/__tests__/index.test.js +0 -291
  66. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -78
  67. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -122
  68. package/lib/tools/shared/line/index.js +0 -637
  69. package/lib/tools/shared/line/line-path.js +0 -145
  70. package/lib/tools/shared/line/with-root-edge.js +0 -155
  71. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -137
  72. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -134
  73. package/lib/tools/shared/point/arrow-point.js +0 -113
  74. package/lib/tools/shared/point/arrow.js +0 -96
  75. package/lib/tools/shared/point/base-point.js +0 -151
  76. package/lib/tools/shared/point/index.js +0 -94
  77. package/lib/tools/shared/styles.js +0 -49
  78. package/lib/tools/shared/types.js +0 -19
  79. package/lib/undo-redo.js +0 -107
  80. package/lib/use-debounce.js +0 -32
  81. package/lib/utils.js +0 -314
package/lib/tool-menu.js DELETED
@@ -1,325 +0,0 @@
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.ToolMenu = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
- var _react = _interopRequireDefault(require("react"));
25
-
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
- var _core = require("@material-ui/core");
29
-
30
- var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
34
- 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); }; }
35
-
36
- 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; } }
37
-
38
- var ToolMenu = /*#__PURE__*/function (_React$Component) {
39
- (0, _inherits2["default"])(ToolMenu, _React$Component);
40
-
41
- var _super = _createSuper(ToolMenu);
42
-
43
- function ToolMenu() {
44
- var _this;
45
-
46
- (0, _classCallCheck2["default"])(this, ToolMenu);
47
-
48
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
49
- args[_key] = arguments[_key];
50
- }
51
-
52
- _this = _super.call.apply(_super, [this].concat(args));
53
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChangeRadioValue", function (event) {
54
- var _this$props = _this.props,
55
- gssLineData = _this$props.gssLineData,
56
- onChange = _this$props.onChange;
57
- var oldSelectedTool = gssLineData.selectedTool;
58
- gssLineData.selectedTool = event.target.value;
59
- onChange(gssLineData, oldSelectedTool);
60
- });
61
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "lineTypeChange", function (line, type) {
62
- var _this$props2 = _this.props,
63
- gssLineData = _this$props2.gssLineData,
64
- onChange = _this$props2.onChange;
65
- var oldSelectedTool = gssLineData.selectedTool;
66
- gssLineData["line".concat(line)].lineType = type;
67
- onChange(gssLineData, oldSelectedTool);
68
- });
69
- return _this;
70
- }
71
-
72
- (0, _createClass2["default"])(ToolMenu, [{
73
- key: "render",
74
- value: function render() {
75
- var _this2 = this;
76
-
77
- var _this$props3 = this.props,
78
- classes = _this$props3.classes,
79
- gssLineData = _this$props3.gssLineData,
80
- disabled = _this$props3.disabled;
81
- return /*#__PURE__*/_react["default"].createElement("div", {
82
- className: classes.selectLineRadioGroup
83
- }, /*#__PURE__*/_react["default"].createElement("div", {
84
- className: classes.radioFieldOuter
85
- }, /*#__PURE__*/_react["default"].createElement("div", {
86
- className: classes.radioFieldInner
87
- }, /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
88
- name: 'select-line-radio-buttons',
89
- onChange: this.onChangeRadioValue,
90
- value: 'lineA',
91
- disabled: !!disabled,
92
- checked: gssLineData.selectedTool === 'lineA',
93
- className: classes.lineTypeRadio
94
- }), /*#__PURE__*/_react["default"].createElement(_core.Typography, {
95
- className: classes.lineNameFont
96
- }, "Line A")), /*#__PURE__*/_react["default"].createElement("div", {
97
- className: classes.radioFieldButtons
98
- }, gssLineData.lineA.lineType === 'Solid' ? /*#__PURE__*/_react["default"].createElement(_core.Button, {
99
- size: 'small',
100
- variant: 'contained',
101
- color: 'primary',
102
- onClick: function onClick() {
103
- return _this2.lineTypeChange('A', 'Solid');
104
- },
105
- className: disabled ? classes.lineTypeButtonLeftSelectedDisabled : classes.lineTypeButtonLeftSelected
106
- }, "\u2714 Solid") : /*#__PURE__*/_react["default"].createElement(_core.Button, {
107
- size: 'small',
108
- variant: 'contained',
109
- disabled: !!disabled,
110
- onClick: function onClick() {
111
- return _this2.lineTypeChange('A', 'Solid');
112
- },
113
- className: disabled ? classes.lineTypeButtonLeftUnSelectedDisabled : classes.lineTypeButtonLeftUnSelected
114
- }, "Solid"), gssLineData.lineA.lineType === 'Dashed' ? /*#__PURE__*/_react["default"].createElement(_core.Button, {
115
- size: 'small',
116
- variant: 'contained',
117
- color: 'primary',
118
- onClick: function onClick() {
119
- return _this2.lineTypeChange('A', 'Dashed');
120
- },
121
- className: disabled ? classes.lineTypeButtonRightSelectedDisabled : classes.lineTypeButtonRightSelected
122
- }, "\u2714 Dashed") : /*#__PURE__*/_react["default"].createElement(_core.Button, {
123
- size: 'small',
124
- variant: 'contained',
125
- disabled: !!disabled,
126
- onClick: function onClick() {
127
- return _this2.lineTypeChange('A', 'Dashed');
128
- },
129
- className: disabled ? classes.lineTypeButtonRightUnSelectedDisabled : classes.lineTypeButtonRightUnSelected
130
- }, "Dashed"))), gssLineData.numberOfLines === 2 ? /*#__PURE__*/_react["default"].createElement("div", {
131
- className: classes.radioFieldOuter
132
- }, /*#__PURE__*/_react["default"].createElement("div", {
133
- className: classes.radioFieldInner
134
- }, /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
135
- name: 'select-line-radio-buttons',
136
- onChange: this.onChangeRadioValue,
137
- value: 'lineB',
138
- disabled: !!disabled,
139
- checked: gssLineData.selectedTool === 'lineB',
140
- className: classes.lineTypeRadio
141
- }), /*#__PURE__*/_react["default"].createElement(_core.Typography, {
142
- className: classes.lineNameFont
143
- }, "Line B")), /*#__PURE__*/_react["default"].createElement("div", {
144
- className: classes.radioFieldButtons
145
- }, gssLineData.lineB.lineType === 'Solid' ? /*#__PURE__*/_react["default"].createElement(_core.Button, {
146
- size: 'small',
147
- variant: 'contained',
148
- color: 'primary',
149
- onClick: function onClick() {
150
- return _this2.lineTypeChange('B', 'Solid');
151
- },
152
- className: disabled ? classes.lineTypeButtonLeftSelectedDisabled : classes.lineTypeButtonLeftSelected
153
- }, "\u2714 Solid") : /*#__PURE__*/_react["default"].createElement(_core.Button, {
154
- size: 'small',
155
- variant: 'contained',
156
- disabled: !!disabled,
157
- onClick: function onClick() {
158
- return _this2.lineTypeChange('B', 'Solid');
159
- },
160
- className: disabled ? classes.lineTypeButtonLeftUnSelectedDisabled : classes.lineTypeButtonLeftUnSelected
161
- }, "Solid"), gssLineData.lineB.lineType === 'Dashed' ? /*#__PURE__*/_react["default"].createElement(_core.Button, {
162
- size: 'small',
163
- variant: 'contained',
164
- color: 'primary',
165
- onClick: function onClick() {
166
- return _this2.lineTypeChange('B', 'Dashed');
167
- },
168
- className: disabled ? classes.lineTypeButtonRightSelectedDisabled : classes.lineTypeButtonRightSelected
169
- }, "\u2714 Dashed") : /*#__PURE__*/_react["default"].createElement(_core.Button, {
170
- size: 'small',
171
- variant: 'contained',
172
- disabled: !!disabled,
173
- onClick: function onClick() {
174
- return _this2.lineTypeChange('B', 'Dashed');
175
- },
176
- className: disabled ? classes.lineTypeButtonRightUnSelectedDisabled : classes.lineTypeButtonRightUnSelected
177
- }, "Dashed"))) : null, /*#__PURE__*/_react["default"].createElement("div", {
178
- className: classes.radioFieldOuter
179
- }, /*#__PURE__*/_react["default"].createElement("div", {
180
- className: classes.radioFieldInner
181
- }, /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
182
- name: 'select-line-radio-buttons',
183
- onChange: this.onChangeRadioValue,
184
- value: 'solutionSet',
185
- disabled: !!disabled,
186
- checked: gssLineData.selectedTool === 'solutionSet',
187
- className: classes.lineTypeRadio
188
- }), /*#__PURE__*/_react["default"].createElement(_core.Typography, {
189
- className: classes.lineNameFont
190
- }, "Solution Set"))));
191
- }
192
- }]);
193
- return ToolMenu;
194
- }(_react["default"].Component);
195
-
196
- exports.ToolMenu = ToolMenu;
197
- (0, _defineProperty2["default"])(ToolMenu, "propTypes", {
198
- classes: _propTypes["default"].object,
199
- gssLineData: _propTypes["default"].object,
200
- disabled: _propTypes["default"].bool,
201
- onChange: _propTypes["default"].func
202
- });
203
-
204
- var styles = function styles(theme) {
205
- return {
206
- radioButtonClass: {},
207
- selectLineRadioGroup: {
208
- display: 'flex',
209
- flexWrap: 'wrap',
210
- flexDirection: 'row'
211
- },
212
- radioFieldInner: {
213
- display: 'flex',
214
- flexWrap: 'wrap',
215
- flexDirection: 'row',
216
- alignItems: 'center'
217
- },
218
- radioFieldOuter: {
219
- display: 'flex',
220
- flexWrap: 'wrap',
221
- flexDirection: 'column'
222
- },
223
- radioFieldButtons: {
224
- display: 'flex',
225
- flexWrap: 'wrap',
226
- flexDirection: 'row',
227
- padding: '0 .9rem'
228
- },
229
- lineTypeText: {
230
- marginLeft: '.7rem'
231
- },
232
- lineNameFont: {
233
- fontWeight: 'bold',
234
- padding: '0 5px 0 0'
235
- },
236
- lineTypeButtonLeftSelected: {
237
- textTransform: 'none',
238
- border: '1px solid #3E4EB1',
239
- borderRadius: '0',
240
- backgroundColor: '#3E4EB1 !important',
241
- borderTopLeftRadius: '4px',
242
- borderBottomLeftRadius: '4px',
243
- color: '#FFFFFF !important'
244
- },
245
- lineTypeButtonLeftUnSelected: {
246
- textTransform: 'none',
247
- border: '1px solid #3E4EB1',
248
- borderRadius: '0',
249
- backgroundColor: '#FFFFFF !important',
250
- borderTopLeftRadius: '4px',
251
- borderBottomLeftRadius: '4px',
252
- color: '#3E4EB1 !important'
253
- },
254
- lineTypeButtonRightSelected: {
255
- textTransform: 'none',
256
- border: '1px solid #3E4EB1',
257
- borderRadius: '0',
258
- backgroundColor: '#3E4EB1 !important',
259
- borderTopRightRadius: '4px',
260
- borderBottomRightRadius: '4px',
261
- color: '#FFFFFF !important'
262
- },
263
- lineTypeButtonRightUnSelected: {
264
- textTransform: 'none',
265
- border: '1px solid #3E4EB1',
266
- borderRadius: '0',
267
- backgroundColor: '#FFFFFF !important',
268
- borderTopRightRadius: '4px',
269
- borderBottomRightRadius: '4px',
270
- color: '#3E4EB1 !important'
271
- },
272
- lineTypeRadio: {
273
- color: '#000000 !important'
274
- },
275
- lineTypeButtonLeftSelectedDisabled: {
276
- textTransform: 'none',
277
- border: '1px solid #3E4EB1',
278
- borderRadius: '0',
279
- backgroundColor: '#3E4EB1 !important',
280
- borderTopLeftRadius: '4px',
281
- borderBottomLeftRadius: '4px',
282
- color: '#FFFFFF !important',
283
- cursor: 'default',
284
- pointerEvents: 'none'
285
- },
286
- lineTypeButtonLeftUnSelectedDisabled: {
287
- textTransform: 'none',
288
- border: '1px solid #3E4EB1',
289
- borderRadius: '0',
290
- backgroundColor: '#FFFFFF !important',
291
- borderTopLeftRadius: '4px',
292
- borderBottomLeftRadius: '4px',
293
- color: '#3E4EB1 !important',
294
- cursor: 'default',
295
- pointerEvents: 'none'
296
- },
297
- lineTypeButtonRightSelectedDisabled: {
298
- textTransform: 'none',
299
- border: '1px solid #3E4EB1',
300
- borderRadius: '0',
301
- backgroundColor: '#3E4EB1 !important',
302
- borderTopRightRadius: '4px',
303
- borderBottomRightRadius: '4px',
304
- color: '#FFFFFF !important',
305
- cursor: 'default',
306
- pointerEvents: 'none'
307
- },
308
- lineTypeButtonRightUnSelectedDisabled: {
309
- textTransform: 'none',
310
- border: '1px solid #3E4EB1',
311
- borderRadius: '0',
312
- backgroundColor: '#FFFFFF !important',
313
- borderTopRightRadius: '4px',
314
- borderBottomRightRadius: '4px',
315
- color: '#3E4EB1 !important',
316
- cursor: 'default',
317
- pointerEvents: 'none'
318
- }
319
- };
320
- };
321
-
322
- var _default = (0, _styles.withStyles)(styles)(ToolMenu);
323
-
324
- exports["default"] = _default;
325
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90b29sLW1lbnUuanN4Il0sIm5hbWVzIjpbIlRvb2xNZW51IiwiZXZlbnQiLCJwcm9wcyIsImdzc0xpbmVEYXRhIiwib25DaGFuZ2UiLCJvbGRTZWxlY3RlZFRvb2wiLCJzZWxlY3RlZFRvb2wiLCJ0YXJnZXQiLCJ2YWx1ZSIsImxpbmUiLCJ0eXBlIiwibGluZVR5cGUiLCJjbGFzc2VzIiwiZGlzYWJsZWQiLCJzZWxlY3RMaW5lUmFkaW9Hcm91cCIsInJhZGlvRmllbGRPdXRlciIsInJhZGlvRmllbGRJbm5lciIsIm9uQ2hhbmdlUmFkaW9WYWx1ZSIsImxpbmVUeXBlUmFkaW8iLCJsaW5lTmFtZUZvbnQiLCJyYWRpb0ZpZWxkQnV0dG9ucyIsImxpbmVBIiwibGluZVR5cGVDaGFuZ2UiLCJsaW5lVHlwZUJ1dHRvbkxlZnRTZWxlY3RlZERpc2FibGVkIiwibGluZVR5cGVCdXR0b25MZWZ0U2VsZWN0ZWQiLCJsaW5lVHlwZUJ1dHRvbkxlZnRVblNlbGVjdGVkRGlzYWJsZWQiLCJsaW5lVHlwZUJ1dHRvbkxlZnRVblNlbGVjdGVkIiwibGluZVR5cGVCdXR0b25SaWdodFNlbGVjdGVkRGlzYWJsZWQiLCJsaW5lVHlwZUJ1dHRvblJpZ2h0U2VsZWN0ZWQiLCJsaW5lVHlwZUJ1dHRvblJpZ2h0VW5TZWxlY3RlZERpc2FibGVkIiwibGluZVR5cGVCdXR0b25SaWdodFVuU2VsZWN0ZWQiLCJudW1iZXJPZkxpbmVzIiwibGluZUIiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9iamVjdCIsImJvb2wiLCJmdW5jIiwic3R5bGVzIiwidGhlbWUiLCJyYWRpb0J1dHRvbkNsYXNzIiwiZGlzcGxheSIsImZsZXhXcmFwIiwiZmxleERpcmVjdGlvbiIsImFsaWduSXRlbXMiLCJwYWRkaW5nIiwibGluZVR5cGVUZXh0IiwibWFyZ2luTGVmdCIsImZvbnRXZWlnaHQiLCJ0ZXh0VHJhbnNmb3JtIiwiYm9yZGVyIiwiYm9yZGVyUmFkaXVzIiwiYmFja2dyb3VuZENvbG9yIiwiYm9yZGVyVG9wTGVmdFJhZGl1cyIsImJvcmRlckJvdHRvbUxlZnRSYWRpdXMiLCJjb2xvciIsImJvcmRlclRvcFJpZ2h0UmFkaXVzIiwiYm9yZGVyQm90dG9tUmlnaHRSYWRpdXMiLCJjdXJzb3IiLCJwb2ludGVyRXZlbnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7SUFFYUEsUTs7Ozs7Ozs7Ozs7Ozs7OzJHQTRKVSxVQUFDQyxLQUFELEVBQVc7QUFDOUIsd0JBQWdDLE1BQUtDLEtBQXJDO0FBQUEsVUFBTUMsV0FBTixlQUFNQSxXQUFOO0FBQUEsVUFBbUJDLFFBQW5CLGVBQW1CQSxRQUFuQjtBQUNBLFVBQUlDLGVBQWUsR0FBR0YsV0FBVyxDQUFDRyxZQUFsQztBQUNBSCxNQUFBQSxXQUFXLENBQUNHLFlBQVosR0FBMkJMLEtBQUssQ0FBQ00sTUFBTixDQUFhQyxLQUF4QztBQUNBSixNQUFBQSxRQUFRLENBQUNELFdBQUQsRUFBY0UsZUFBZCxDQUFSO0FBQ0QsSzt1R0FFZ0IsVUFBQ0ksSUFBRCxFQUFPQyxJQUFQLEVBQWdCO0FBQy9CLHlCQUFnQyxNQUFLUixLQUFyQztBQUFBLFVBQU1DLFdBQU4sZ0JBQU1BLFdBQU47QUFBQSxVQUFtQkMsUUFBbkIsZ0JBQW1CQSxRQUFuQjtBQUNBLFVBQUlDLGVBQWUsR0FBR0YsV0FBVyxDQUFDRyxZQUFsQztBQUNBSCxNQUFBQSxXQUFXLGVBQVFNLElBQVIsRUFBWCxDQUEyQkUsUUFBM0IsR0FBc0NELElBQXRDO0FBQ0FOLE1BQUFBLFFBQVEsQ0FBQ0QsV0FBRCxFQUFjRSxlQUFkLENBQVI7QUFDRCxLOzs7Ozs7V0FoS0Qsa0JBQVM7QUFBQTs7QUFDUCx5QkFBeUMsS0FBS0gsS0FBOUM7QUFBQSxVQUFNVSxPQUFOLGdCQUFNQSxPQUFOO0FBQUEsVUFBZVQsV0FBZixnQkFBZUEsV0FBZjtBQUFBLFVBQTRCVSxRQUE1QixnQkFBNEJBLFFBQTVCO0FBRUEs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LG1CQUYyQjtBQUduQ0MsTUFBQUEsWUFBWSxFQUFFLEdBSHFCO0FBSW5DQyxNQUFBQSxlQUFlLEVBQUUsb0JBSmtCO0FBS25DSSxNQUFBQSxvQkFBb0IsRUFBRSxLQUxhO0FBTW5DQyxNQUFBQSx1QkFBdUIsRUFBRSxLQU5VO0FBT25DRixNQUFBQSxLQUFLLEVBQUUsb0JBUDRCO0FBUW5DRyxNQUFBQSxNQUFNLEVBQUUsU0FSMkI7QUFTbkNDLE1BQUFBLGFBQWEsRUFBRTtBQVRvQixLQTVGWjtBQXVHekIvQixJQUFBQSxxQ0FBcUMsRUFBRTtBQUNyQ3FCLE1BQUFBLGFBQWEsRUFBRSxNQURzQjtBQUVyQ0MsTUFBQUEsTUFBTSxFQUFFLG1CQUY2QjtBQUdyQ0MsTUFBQUEsWUFBWSxFQUFFLEdBSHVCO0FBSXJDQyxNQUFBQSxlQUFlLEVBQUUsb0JBSm9CO0FBS3JDSSxNQUFBQSxvQkFBb0IsRUFBRSxLQUxlO0FBTXJDQyxNQUFBQSx1QkFBdUIsRUFBRSxLQU5ZO0FBT3JDRixNQUFBQSxLQUFLLEVBQUUsb0JBUDhCO0FBUXJDRyxNQUFBQSxNQUFNLEVBQUUsU0FSNkI7QUFTckNDLE1BQUFBLGFBQWEsRUFBRTtBQVRzQjtBQXZHZCxHQUFaO0FBQUEsQ0FBZjs7ZUFvSGUsd0JBQVdyQixNQUFYLEVBQW1CdkMsUUFBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeSwgQnV0dG9uIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUnO1xuaW1wb3J0IFJhZGlvIGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL1JhZGlvJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuXG5leHBvcnQgY2xhc3MgVG9vbE1lbnUgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgZ3NzTGluZURhdGE6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYyxcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgbGV0IHsgY2xhc3NlcywgZ3NzTGluZURhdGEsIGRpc2FibGVkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLnNlbGVjdExpbmVSYWRpb0dyb3VwfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMucmFkaW9GaWVsZE91dGVyfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5yYWRpb0ZpZWxkSW5uZXJ9PlxuICAgICAgICAgICAgPFJhZGlvXG4gICAgICAgICAgICAgIG5hbWU9eydzZWxlY3QtbGluZS1yYWRpby1idXR0b25zJ31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2VSYWRpb1ZhbHVlfVxuICAgICAgICAgICAgICB2YWx1ZT17J2xpbmVBJ31cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9eyEhZGlzYWJsZWR9XG4gICAgICAgICAgICAgIGNoZWNrZWQ9e2dzc0xpbmVEYXRhLnNlbGVjdGVkVG9vbCA9PT0gJ2xpbmVBJ31cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmxpbmVUeXBlUmFkaW99XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFR5cG9ncmFwaHkgY2xhc3NOYW1lPXtjbGFzc2VzLmxpbmVOYW1lRm9udH0+TGluZSBBPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLnJhZGlvRmllbGRCdXR0b25zfT5cbiAgICAgICAgICAgIHtnc3NMaW5lRGF0YS5saW5lQS5saW5lVHlwZSA9PT0gJ1NvbGlkJyA/IChcbiAgICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICAgIHNpemU9eydzbWFsbCd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgY29sb3I9eydwcmltYXJ5J31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB0aGlzLmxpbmVUeXBlQ2hhbmdlKCdBJywgJ1NvbGlkJyl9XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtkaXNhYmxlZCA/IGNsYXNzZXMubGluZVR5cGVCdXR0b25MZWZ0U2VsZWN0ZWREaXNhYmxlZCA6IGNsYXNzZXMubGluZVR5cGVCdXR0b25MZWZ0U2VsZWN0ZWR9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAmI3gyNzE0OyBTb2xpZFxuICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICBzaXplPXsnc21hbGwnfVxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9eydjb250YWluZWQnfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXshIWRpc2FibGVkfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRoaXMubGluZVR5cGVDaGFuZ2UoJ0EnLCAnU29saWQnKX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQgPyBjbGFzc2VzLmxpbmVUeXBlQnV0dG9uTGVmdFVuU2VsZWN0ZWREaXNhYmxlZCA6IGNsYXNzZXMubGluZVR5cGVCdXR0b25MZWZ0VW5TZWxlY3RlZFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIFNvbGlkXG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtnc3NMaW5lRGF0YS5saW5lQS5saW5lVHlwZSA9PT0gJ0Rhc2hlZCcgPyAoXG4gICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICBzaXplPXsnc21hbGwnfVxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9eydjb250YWluZWQnfVxuICAgICAgICAgICAgICAgIGNvbG9yPXsncHJpbWFyeSd9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdGhpcy5saW5lVHlwZUNoYW5nZSgnQScsICdEYXNoZWQnKX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Rpc2FibGVkID8gY2xhc3Nlcy5saW5lVHlwZUJ1dHRvblJpZ2h0U2VsZWN0ZWREaXNhYmxlZCA6IGNsYXNzZXMubGluZVR5cGVCdXR0b25SaWdodFNlbGVjdGVkfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgJiN4MjcxNDsgRGFzaGVkXG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICAgIHNpemU9eydzbWFsbCd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9eyEhZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdGhpcy5saW5lVHlwZUNoYW5nZSgnQScsICdEYXNoZWQnKX1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgZGlzYWJsZWQgPyBjbGFzc2VzLmxpbmVUeXBlQnV0dG9uUmlnaHRVblNlbGVjdGVkRGlzYWJsZWQgOiBjbGFzc2VzLmxpbmVUeXBlQnV0dG9uUmlnaHRVblNlbGVjdGVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgRGFzaGVkXG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHtnc3NMaW5lRGF0YS5udW1iZXJPZkxpbmVzID09PSAyID8gKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLnJhZGlvRmllbGRPdXRlcn0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5yYWRpb0ZpZWxkSW5uZXJ9PlxuICAgICAgICAgICAgICA8UmFkaW9cbiAgICAgICAgICAgICAgICBuYW1lPXsnc2VsZWN0LWxpbmUtcmFkaW8tYnV0dG9ucyd9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2VSYWRpb1ZhbHVlfVxuICAgICAgICAgICAgICAgIHZhbHVlPXsnbGluZUInfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXshIWRpc2FibGVkfVxuICAgICAgICAgICAgICAgIGNoZWNrZWQ9e2dzc0xpbmVEYXRhLnNlbGVjdGVkVG9vbCA9PT0gJ2xpbmVCJ31cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMubGluZVR5cGVSYWRpb31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPFR5cG9ncmFwaHkgY2xhc3NOYW1lPXtjbGFzc2VzLmxpbmVOYW1lRm9udH0+TGluZSBCPC9UeXBvZ3JhcGh5PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5yYWRpb0ZpZWxkQnV0dG9uc30+XG4gICAgICAgICAgICAgIHtnc3NMaW5lRGF0YS5saW5lQi5saW5lVHlwZSA9PT0gJ1NvbGlkJyA/IChcbiAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPXsnc21hbGwnfVxuICAgICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgICBjb2xvcj17J3ByaW1hcnknfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdGhpcy5saW5lVHlwZUNoYW5nZSgnQicsICdTb2xpZCcpfVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtkaXNhYmxlZCA/IGNsYXNzZXMubGluZVR5cGVCdXR0b25MZWZ0U2VsZWN0ZWREaXNhYmxlZCA6IGNsYXNzZXMubGluZVR5cGVCdXR0b25MZWZ0U2VsZWN0ZWR9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgJiN4MjcxNDsgU29saWRcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPXsnc21hbGwnfVxuICAgICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ISFkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRoaXMubGluZVR5cGVDaGFuZ2UoJ0InLCAnU29saWQnKX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgICAgICAgICAgICAgIGRpc2FibGVkID8gY2xhc3Nlcy5saW5lVHlwZUJ1dHRvbkxlZnRVblNlbGVjdGVkRGlzYWJsZWQgOiBjbGFzc2VzLmxpbmVUeXBlQnV0dG9uTGVmdFVuU2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICBTb2xpZFxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB7Z3NzTGluZURhdGEubGluZUIubGluZVR5cGUgPT09ICdEYXNoZWQnID8gKFxuICAgICAgICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgICAgICAgIHNpemU9eydzbWFsbCd9XG4gICAgICAgICAgICAgICAgICB2YXJpYW50PXsnY29udGFpbmVkJ31cbiAgICAgICAgICAgICAgICAgIGNvbG9yPXsncHJpbWFyeSd9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB0aGlzLmxpbmVUeXBlQ2hhbmdlKCdCJywgJ0Rhc2hlZCcpfVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQgPyBjbGFzc2VzLmxpbmVUeXBlQnV0dG9uUmlnaHRTZWxlY3RlZERpc2FibGVkIDogY2xhc3Nlcy5saW5lVHlwZUJ1dHRvblJpZ2h0U2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAmI3gyNzE0OyBEYXNoZWRcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPXsnc21hbGwnfVxuICAgICAgICAgICAgICAgICAgdmFyaWFudD17J2NvbnRhaW5lZCd9XG4gICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ISFkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHRoaXMubGluZVR5cGVDaGFuZ2UoJ0InLCAnRGFzaGVkJyl9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZCA/IGNsYXNzZXMubGluZVR5cGVCdXR0b25SaWdodFVuU2VsZWN0ZWREaXNhYmxlZCA6IGNsYXNzZXMubGluZVR5cGVCdXR0b25SaWdodFVuU2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICBEYXNoZWRcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMucmFkaW9GaWVsZE91dGVyfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5yYWRpb0ZpZWxkSW5uZXJ9PlxuICAgICAgICAgICAgPFJhZGlvXG4gICAgICAgICAgICAgIG5hbWU9eydzZWxlY3QtbGluZS1yYWRpby1idXR0b25zJ31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2VSYWRpb1ZhbHVlfVxuICAgICAgICAgICAgICB2YWx1ZT17J3NvbHV0aW9uU2V0J31cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9eyEhZGlzYWJsZWR9XG4gICAgICAgICAgICAgIGNoZWNrZWQ9e2dzc0xpbmVEYXRhLnNlbGVjdGVkVG9vbCA9PT0gJ3NvbHV0aW9uU2V0J31cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmxpbmVUeXBlUmFkaW99XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFR5cG9ncmFwaHkgY2xhc3NOYW1lPXtjbGFzc2VzLmxpbmVOYW1lRm9udH0+U29sdXRpb24gU2V0PC9UeXBvZ3JhcGh5PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cblxuICBvbkNoYW5nZVJhZGlvVmFsdWUgPSAoZXZlbnQpID0+IHtcbiAgICBsZXQgeyBnc3NMaW5lRGF0YSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgbGV0IG9sZFNlbGVjdGVkVG9vbCA9IGdzc0xpbmVEYXRhLnNlbGVjdGVkVG9vbDtcbiAgICBnc3NMaW5lRGF0YS5zZWxlY3RlZFRvb2wgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgb25DaGFuZ2UoZ3NzTGluZURhdGEsIG9sZFNlbGVjdGVkVG9vbCk7XG4gIH07XG5cbiAgbGluZVR5cGVDaGFuZ2UgPSAobGluZSwgdHlwZSkgPT4ge1xuICAgIGxldCB7IGdzc0xpbmVEYXRhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICBsZXQgb2xkU2VsZWN0ZWRUb29sID0gZ3NzTGluZURhdGEuc2VsZWN0ZWRUb29sO1xuICAgIGdzc0xpbmVEYXRhW2BsaW5lJHtsaW5lfWBdLmxpbmVUeXBlID0gdHlwZTtcbiAgICBvbkNoYW5nZShnc3NMaW5lRGF0YSwgb2xkU2VsZWN0ZWRUb29sKTtcbiAgfTtcbn1cblxuY29uc3Qgc3R5bGVzID0gKHRoZW1lKSA9PiAoe1xuICByYWRpb0J1dHRvbkNsYXNzOiB7fSxcbiAgc2VsZWN0TGluZVJhZGlvR3JvdXA6IHtcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgZmxleFdyYXA6ICd3cmFwJyxcbiAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgfSxcbiAgcmFkaW9GaWVsZElubmVyOiB7XG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIGZsZXhXcmFwOiAnd3JhcCcsXG4gICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIH0sXG4gIHJhZGlvRmllbGRPdXRlcjoge1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBmbGV4V3JhcDogJ3dyYXAnLFxuICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICB9LFxuICByYWRpb0ZpZWxkQnV0dG9uczoge1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBmbGV4V3JhcDogJ3dyYXAnLFxuICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgIHBhZGRpbmc6ICcwIC45cmVtJyxcbiAgfSxcbiAgbGluZVR5cGVUZXh0OiB7XG4gICAgbWFyZ2luTGVmdDogJy43cmVtJyxcbiAgfSxcbiAgbGluZU5hbWVGb250OiB7XG4gICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgIHBhZGRpbmc6ICcwIDVweCAwIDAnLFxuICB9LFxuICBsaW5lVHlwZUJ1dHRvbkxlZnRTZWxlY3RlZDoge1xuICAgIHRleHRUcmFuc2Zvcm06ICdub25lJyxcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzNFNEVCMScsXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzNFNEVCMSAhaW1wb3J0YW50JyxcbiAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICBjb2xvcjogJyNGRkZGRkYgIWltcG9ydGFudCcsXG4gIH0sXG4gIGxpbmVUeXBlQnV0dG9uTGVmdFVuU2VsZWN0ZWQ6IHtcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXG4gICAgYm9yZGVyOiAnMXB4IHNvbGlkICMzRTRFQjEnLFxuICAgIGJvcmRlclJhZGl1czogJzAnLFxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYgIWltcG9ydGFudCcsXG4gICAgYm9yZGVyVG9wTGVmdFJhZGl1czogJzRweCcsXG4gICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogJzRweCcsXG4gICAgY29sb3I6ICcjM0U0RUIxICFpbXBvcnRhbnQnLFxuICB9LFxuICBsaW5lVHlwZUJ1dHRvblJpZ2h0U2VsZWN0ZWQ6IHtcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXG4gICAgYm9yZGVyOiAnMXB4IHNvbGlkICMzRTRFQjEnLFxuICAgIGJvcmRlclJhZGl1czogJzAnLFxuICAgIGJhY2tncm91bmRDb2xvcjogJyMzRTRFQjEgIWltcG9ydGFudCcsXG4gICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcbiAgICBjb2xvcjogJyNGRkZGRkYgIWltcG9ydGFudCcsXG4gIH0sXG4gIGxpbmVUeXBlQnV0dG9uUmlnaHRVblNlbGVjdGVkOiB7XG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxuICAgIGJvcmRlcjogJzFweCBzb2xpZCAjM0U0RUIxJyxcbiAgICBib3JkZXJSYWRpdXM6ICcwJyxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjRkZGRkZGICFpbXBvcnRhbnQnLFxuICAgIGJvcmRlclRvcFJpZ2h0UmFkaXVzOiAnNHB4JyxcbiAgICBib3JkZXJCb3R0b21SaWdodFJhZGl1czogJzRweCcsXG4gICAgY29sb3I6ICcjM0U0RUIxICFpbXBvcnRhbnQnLFxuICB9LFxuICBsaW5lVHlwZVJhZGlvOiB7XG4gICAgY29sb3I6ICcjMDAwMDAwICFpbXBvcnRhbnQnLFxuICB9LFxuICBsaW5lVHlwZUJ1dHRvbkxlZnRTZWxlY3RlZERpc2FibGVkOiB7XG4gICAgdGV4dFRyYW5zZm9ybTogJ25vbmUnLFxuICAgIGJvcmRlcjogJzFweCBzb2xpZCAjM0U0RUIxJyxcbiAgICBib3JkZXJSYWRpdXM6ICcwJyxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjM0U0RUIxICFpbXBvcnRhbnQnLFxuICAgIGJvcmRlclRvcExlZnRSYWRpdXM6ICc0cHgnLFxuICAgIGJvcmRlckJvdHRvbUxlZnRSYWRpdXM6ICc0cHgnLFxuICAgIGNvbG9yOiAnI0ZGRkZGRiAhaW1wb3J0YW50JyxcbiAgICBjdXJzb3I6ICdkZWZhdWx0JyxcbiAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gIH0sXG4gIGxpbmVUeXBlQnV0dG9uTGVmdFVuU2VsZWN0ZWREaXNhYmxlZDoge1xuICAgIHRleHRUcmFuc2Zvcm06ICdub25lJyxcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzNFNEVCMScsXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnI0ZGRkZGRiAhaW1wb3J0YW50JyxcbiAgICBib3JkZXJUb3BMZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiAnNHB4JyxcbiAgICBjb2xvcjogJyMzRTRFQjEgIWltcG9ydGFudCcsXG4gICAgY3Vyc29yOiAnZGVmYXVsdCcsXG4gICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxuICB9LFxuICBsaW5lVHlwZUJ1dHRvblJpZ2h0U2VsZWN0ZWREaXNhYmxlZDoge1xuICAgIHRleHRUcmFuc2Zvcm06ICdub25lJyxcbiAgICBib3JkZXI6ICcxcHggc29saWQgIzNFNEVCMScsXG4gICAgYm9yZGVyUmFkaXVzOiAnMCcsXG4gICAgYmFja2dyb3VuZENvbG9yOiAnIzNFNEVCMSAhaW1wb3J0YW50JyxcbiAgICBib3JkZXJUb3BSaWdodFJhZGl1czogJzRweCcsXG4gICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgIGNvbG9yOiAnI0ZGRkZGRiAhaW1wb3J0YW50JyxcbiAgICBjdXJzb3I6ICdkZWZhdWx0JyxcbiAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gIH0sXG4gIGxpbmVUeXBlQnV0dG9uUmlnaHRVblNlbGVjdGVkRGlzYWJsZWQ6IHtcbiAgICB0ZXh0VHJhbnNmb3JtOiAnbm9uZScsXG4gICAgYm9yZGVyOiAnMXB4IHNvbGlkICMzRTRFQjEnLFxuICAgIGJvcmRlclJhZGl1czogJzAnLFxuICAgIGJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYgIWltcG9ydGFudCcsXG4gICAgYm9yZGVyVG9wUmlnaHRSYWRpdXM6ICc0cHgnLFxuICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiAnNHB4JyxcbiAgICBjb2xvcjogJyMzRTRFQjEgIWltcG9ydGFudCcsXG4gICAgY3Vyc29yOiAnZGVmYXVsdCcsXG4gICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxuICB9LFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZXMoc3R5bGVzKShUb29sTWVudSk7XG4iXX0=
@@ -1,29 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.allTools = void 0;
7
- Object.defineProperty(exports, "line", {
8
- enumerable: true,
9
- get: function get() {
10
- return _line.tool;
11
- }
12
- });
13
- Object.defineProperty(exports, "polygon", {
14
- enumerable: true,
15
- get: function get() {
16
- return _polygon.tool;
17
- }
18
- });
19
- exports.toolsArr = void 0;
20
-
21
- var _polygon = require("./polygon");
22
-
23
- var _line = require("./line");
24
-
25
- var allTools = ['line', 'polygon'];
26
- exports.allTools = allTools;
27
- var toolsArr = [(0, _line.tool)(), (0, _polygon.tool)()];
28
- exports.toolsArr = toolsArr;
29
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b29scy9pbmRleC5qcyJdLCJuYW1lcyI6WyJhbGxUb29scyIsInRvb2xzQXJyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUVBLElBQU1BLFFBQVEsR0FBRyxDQUFDLE1BQUQsRUFBUyxTQUFULENBQWpCOztBQUVBLElBQU1DLFFBQVEsR0FBRyxDQUFDLGlCQUFELEVBQVMsb0JBQVQsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0b29sIGFzIHBvbHlnb24gfSBmcm9tICcuL3BvbHlnb24nO1xuaW1wb3J0IHsgdG9vbCBhcyBsaW5lIH0gZnJvbSAnLi9saW5lJztcblxuY29uc3QgYWxsVG9vbHMgPSBbJ2xpbmUnLCAncG9seWdvbiddO1xuXG5jb25zdCB0b29sc0FyciA9IFtsaW5lKCksIHBvbHlnb24oKV07XG5cbmV4cG9ydCB7IGFsbFRvb2xzLCB0b29sc0FyciwgbGluZSwgcG9seWdvbiB9O1xuIl19
@@ -1,56 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
-
7
- var _enzyme = require("enzyme");
8
-
9
- var _react = _interopRequireDefault(require("react"));
10
-
11
- var _component = require("../component");
12
-
13
- var _utils = require("../../../__tests__/utils");
14
-
15
- 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; }
16
-
17
- 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; }
18
-
19
- jest.mock('@pie-lib/plot/index', function () {
20
- var a = jest.requireActual('@pie-lib/plot/index');
21
- return {
22
- types: a.types,
23
- gridDraggable: a.gridDraggable,
24
- utils: a.utils,
25
- trig: {
26
- edges: jest.fn(function () {
27
- return jest.fn().mockReturnValue([0, 0]);
28
- })
29
- }
30
- };
31
- });
32
- describe('ArrowedLine', function () {
33
- var w;
34
- var onChange = jest.fn();
35
-
36
- var wrapper = function wrapper(extras) {
37
- var defaults = {
38
- classes: {},
39
- className: 'className',
40
- onChange: onChange,
41
- markerId: '1',
42
- graphProps: (0, _utils.graphProps)()
43
- };
44
-
45
- var props = _objectSpread(_objectSpread({}, defaults), extras);
46
-
47
- return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_component.ArrowedLine, props));
48
- };
49
-
50
- describe('snapshot', function () {
51
- it('renders', function () {
52
- expect(wrapper()).toMatchSnapshot();
53
- });
54
- });
55
- });
56
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9saW5lL19fdGVzdHNfXy9jb21wb25lbnQudGVzdC5qc3giXSwibmFtZXMiOlsiamVzdCIsIm1vY2siLCJhIiwicmVxdWlyZUFjdHVhbCIsInR5cGVzIiwiZ3JpZERyYWdnYWJsZSIsInV0aWxzIiwidHJpZyIsImVkZ2VzIiwiZm4iLCJtb2NrUmV0dXJuVmFsdWUiLCJkZXNjcmliZSIsInciLCJvbkNoYW5nZSIsIndyYXBwZXIiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJtYXJrZXJJZCIsImdyYXBoUHJvcHMiLCJwcm9wcyIsIml0IiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBQ0FBLElBQUksQ0FBQ0MsSUFBTCxDQUFVLHFCQUFWLEVBQWlDLFlBQU07QUFDckMsTUFBTUMsQ0FBQyxHQUFHRixJQUFJLENBQUNHLGFBQUwsQ0FBbUIscUJBQW5CLENBQVY7QUFDQSxTQUFPO0FBQ0xDLElBQUFBLEtBQUssRUFBRUYsQ0FBQyxDQUFDRSxLQURKO0FBRUxDLElBQUFBLGFBQWEsRUFBRUgsQ0FBQyxDQUFDRyxhQUZaO0FBR0xDLElBQUFBLEtBQUssRUFBRUosQ0FBQyxDQUFDSSxLQUhKO0FBSUxDLElBQUFBLElBQUksRUFBRTtBQUNKQyxNQUFBQSxLQUFLLEVBQUVSLElBQUksQ0FBQ1MsRUFBTCxDQUFRO0FBQUEsZUFBTVQsSUFBSSxDQUFDUyxFQUFMLEdBQVVDLGVBQVYsQ0FBMEIsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUExQixDQUFOO0FBQUEsT0FBUjtBQURIO0FBSkQsR0FBUDtBQVFELENBVkQ7QUFZQUMsUUFBUSxDQUFDLGFBQUQsRUFBZ0IsWUFBTTtBQUM1QixNQUFJQyxDQUFKO0FBQ0EsTUFBSUMsUUFBUSxHQUFHYixJQUFJLENBQUNTLEVBQUwsRUFBZjs7QUFDQSxNQUFNSyxPQUFPLEdBQUcsU0FBVkEsT0FBVSxDQUFDQyxNQUFELEVBQVk7QUFDMUIsUUFBTUMsUUFBUSxHQUFHO0FBQ2ZDLE1BQUFBLE9BQU8sRUFBRSxFQURNO0FBRWZDLE1BQUFBLFNBQVMsRUFBRSxXQUZJO0FBR2ZMLE1BQUFBLFFBQVEsRUFBUkEsUUFIZTtBQUlmTSxNQUFBQSxRQUFRLEVBQUUsR0FKSztBQUtmQyxNQUFBQSxVQUFVLEVBQUU7QUFMRyxLQUFqQjs7QUFPQSxRQUFNQyxLQUFLLG1DQUFRTCxRQUFSLEdBQXFCRCxNQUFyQixDQUFYOztBQUNBLFdBQU8sbUNBQVEsZ0NBQUMsc0JBQUQsRUFBaUJNLEtBQWpCLENBQVIsQ0FBUDtBQUNELEdBVkQ7O0FBV0FWLEVBQUFBLFFBQVEsQ0FBQyxVQUFELEVBQWEsWUFBTTtBQUN6QlcsSUFBQUEsRUFBRSxDQUFDLFNBQUQsRUFBWSxZQUFNO0FBQ2xCQyxNQUFBQSxNQUFNLENBQUNULE9BQU8sRUFBUixDQUFOLENBQWtCVSxlQUFsQjtBQUNELEtBRkMsQ0FBRjtBQUdELEdBSk8sQ0FBUjtBQUtELENBbkJPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBcnJvd2VkTGluZSB9IGZyb20gJy4uL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBncmFwaFByb3BzIGFzIGdldEdyYXBoUHJvcHMgfSBmcm9tICcuLi8uLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuamVzdC5tb2NrKCdAcGllLWxpYi9wbG90L2luZGV4JywgKCkgPT4ge1xuICBjb25zdCBhID0gamVzdC5yZXF1aXJlQWN0dWFsKCdAcGllLWxpYi9wbG90L2luZGV4Jyk7XG4gIHJldHVybiB7XG4gICAgdHlwZXM6IGEudHlwZXMsXG4gICAgZ3JpZERyYWdnYWJsZTogYS5ncmlkRHJhZ2dhYmxlLFxuICAgIHV0aWxzOiBhLnV0aWxzLFxuICAgIHRyaWc6IHtcbiAgICAgIGVkZ2VzOiBqZXN0LmZuKCgpID0+IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoWzAsIDBdKSksXG4gICAgfSxcbiAgfTtcbn0pO1xuXG5kZXNjcmliZSgnQXJyb3dlZExpbmUnLCAoKSA9PiB7XG4gIGxldCB3O1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGNvbnN0IHdyYXBwZXIgPSAoZXh0cmFzKSA9PiB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBjbGFzc2VzOiB7fSxcbiAgICAgIGNsYXNzTmFtZTogJ2NsYXNzTmFtZScsXG4gICAgICBvbkNoYW5nZSxcbiAgICAgIG1hcmtlcklkOiAnMScsXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuICAgIHJldHVybiBzaGFsbG93KDxBcnJvd2VkTGluZSB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcbiAgZGVzY3JpYmUoJ3NuYXBzaG90JywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIoKSkudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -1,106 +0,0 @@
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.ArrowedLine = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
- var _line = require("../shared/line");
17
-
18
- var _react = _interopRequireDefault(require("react"));
19
-
20
- var _propTypes = _interopRequireDefault(require("prop-types"));
21
-
22
- var _plot = require("@pie-lib/plot");
23
-
24
- var _classnames = _interopRequireDefault(require("classnames"));
25
-
26
- var _styles = require("@material-ui/core/styles");
27
-
28
- var _arrowHead = require("../shared/arrow-head");
29
-
30
- var _utils = require("../../utils");
31
-
32
- var _excluded = ["className", "classes", "correctness", "disabled", "graphProps", "fill", "from", "to"];
33
-
34
- var lineStyles = function lineStyles(theme) {
35
- return {
36
- line: _line.styles.line(theme),
37
- dashedLine: _line.styles.dashedLine(theme),
38
- enabledArrow: _line.styles.arrow(theme),
39
- disabledArrow: _line.styles.disabledArrow(theme),
40
- disabled: _line.styles.disabled(theme),
41
- correct: _line.styles.correct(theme, 'stroke'),
42
- correctArrow: _line.styles.correct(theme),
43
- incorrect: _line.styles.incorrect(theme, 'stroke'),
44
- incorrectArrow: _line.styles.incorrect(theme),
45
- missing: _line.styles.missing(theme, 'stroke'),
46
- missingArrow: _line.styles.missing(theme)
47
- };
48
- };
49
-
50
- var ArrowedLine = function ArrowedLine(props) {
51
- var markerId = (0, _arrowHead.genUid)();
52
- var className = props.className,
53
- classes = props.classes,
54
- correctness = props.correctness,
55
- disabled = props.disabled,
56
- graphProps = props.graphProps,
57
- _props$fill = props.fill,
58
- fill = _props$fill === void 0 ? 'Solid' : _props$fill,
59
- from = props.from,
60
- to = props.to,
61
- rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
62
- var scale = graphProps.scale;
63
-
64
- var _getAdjustedGraphLimi = (0, _utils.getAdjustedGraphLimits)(graphProps),
65
- domain = _getAdjustedGraphLimi.domain,
66
- range = _getAdjustedGraphLimi.range;
67
-
68
- var _trig$edges = _plot.trig.edges(domain, range)(from, to),
69
- _trig$edges2 = (0, _slicedToArray2["default"])(_trig$edges, 2),
70
- eFrom = _trig$edges2[0],
71
- eTo = _trig$edges2[1];
72
-
73
- var suffix = correctness || disabled && 'disabled' || 'enabled';
74
- return /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("defs", null, /*#__PURE__*/_react["default"].createElement(_arrowHead.ArrowMarker, {
75
- size: (0, _utils.thinnerShapesNeeded)(graphProps) ? 4 : 5,
76
- id: "".concat(props.markerId || markerId, "-").concat(suffix),
77
- className: (0, _classnames["default"])(classes["".concat(suffix, "Arrow")])
78
- })), /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
79
- x1: scale.x(eFrom.x),
80
- y1: scale.y(eFrom.y),
81
- x2: scale.x(eTo.x),
82
- y2: scale.y(eTo.y),
83
- className: (0, _classnames["default"])(fill === 'Solid' ? classes.line : classes.dashedLine, disabled && classes.disabled, classes[correctness], className),
84
- markerEnd: "url(#".concat(props.markerId || markerId, "-").concat(suffix, ")"),
85
- markerStart: "url(#".concat(props.markerId || markerId, "-").concat(suffix, ")")
86
- }, rest)));
87
- };
88
-
89
- exports.ArrowedLine = ArrowedLine;
90
- ArrowedLine.propTypes = {
91
- className: _propTypes["default"].string,
92
- classes: _propTypes["default"].object,
93
- fill: _propTypes["default"].string,
94
- correctness: _propTypes["default"].string,
95
- disabled: _propTypes["default"].bool,
96
- graphProps: _plot.types.GraphPropsType,
97
- from: _plot.types.PointType,
98
- to: _plot.types.PointType,
99
- markerId: _propTypes["default"].string
100
- };
101
- var StyledArrowedLine = (0, _styles.withStyles)(lineStyles)(ArrowedLine);
102
- var Line = (0, _line.lineBase)(StyledArrowedLine);
103
- var Component = (0, _line.lineToolComponent)(Line);
104
- var _default = Component;
105
- exports["default"] = _default;
106
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9saW5lL2NvbXBvbmVudC5qc3giXSwibmFtZXMiOlsibGluZVN0eWxlcyIsInRoZW1lIiwibGluZSIsInN0eWxlcyIsImRhc2hlZExpbmUiLCJlbmFibGVkQXJyb3ciLCJhcnJvdyIsImRpc2FibGVkQXJyb3ciLCJkaXNhYmxlZCIsImNvcnJlY3QiLCJjb3JyZWN0QXJyb3ciLCJpbmNvcnJlY3QiLCJpbmNvcnJlY3RBcnJvdyIsIm1pc3NpbmciLCJtaXNzaW5nQXJyb3ciLCJBcnJvd2VkTGluZSIsInByb3BzIiwibWFya2VySWQiLCJjbGFzc05hbWUiLCJjbGFzc2VzIiwiY29ycmVjdG5lc3MiLCJncmFwaFByb3BzIiwiZmlsbCIsImZyb20iLCJ0byIsInJlc3QiLCJzY2FsZSIsImRvbWFpbiIsInJhbmdlIiwidHJpZyIsImVkZ2VzIiwiZUZyb20iLCJlVG8iLCJzdWZmaXgiLCJ4IiwieSIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsIm9iamVjdCIsImJvb2wiLCJ0eXBlcyIsIkdyYXBoUHJvcHNUeXBlIiwiUG9pbnRUeXBlIiwiU3R5bGVkQXJyb3dlZExpbmUiLCJMaW5lIiwiQ29tcG9uZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVBLElBQU1BLFVBQVUsR0FBRyxTQUFiQSxVQUFhLENBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQzdCQyxJQUFBQSxJQUFJLEVBQUVDLGFBQU9ELElBQVAsQ0FBWUQsS0FBWixDQUR1QjtBQUU3QkcsSUFBQUEsVUFBVSxFQUFFRCxhQUFPQyxVQUFQLENBQWtCSCxLQUFsQixDQUZpQjtBQUc3QkksSUFBQUEsWUFBWSxFQUFFRixhQUFPRyxLQUFQLENBQWFMLEtBQWIsQ0FIZTtBQUk3Qk0sSUFBQUEsYUFBYSxFQUFFSixhQUFPSSxhQUFQLENBQXFCTixLQUFyQixDQUpjO0FB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SVcsT0FBTyxDQUFDWCxRQUZYLEVBR1RXLE9BQU8sQ0FBQ0MsV0FBRCxDQUhFLEVBSVRGLFNBSlMsQ0FMYjtBQVdFLElBQUEsU0FBUyxpQkFBVUYsS0FBSyxDQUFDQyxRQUFOLElBQWtCQSxRQUE1QixjQUF3Q2dCLE1BQXhDLE1BWFg7QUFZRSxJQUFBLFdBQVcsaUJBQVVqQixLQUFLLENBQUNDLFFBQU4sSUFBa0JBLFFBQTVCLGNBQXdDZ0IsTUFBeEM7QUFaYixLQWFNUixJQWJOLEVBUkYsQ0FERjtBQTBCRCxDQWxDTTs7O0FBb0NQVixXQUFXLENBQUNxQixTQUFaLEdBQXdCO0FBQ3RCbEIsRUFBQUEsU0FBUyxFQUFFbUIsc0JBQVVDLE1BREM7QUFFdEJuQixFQUFBQSxPQUFPLEVBQUVrQixzQkFBVUUsTUFGRztBQUd0QmpCLEVBQUFBLElBQUksRUFBRWUsc0JBQVVDLE1BSE07QUFJdEJsQixFQUFBQSxXQUFXLEVBQUVpQixzQkFBVUMsTUFKRDtBQUt0QjlCLEVBQUFBLFFBQVEsRUFBRTZCLHNCQUFVRyxJQUxFO0FBTXRCbkIsRUFBQUEsVUFBVSxFQUFFb0IsWUFBTUMsY0FOSTtBQU90Qm5CLEVBQUFBLElBQUksRUFBRWtCLFlBQU1FLFNBUFU7QUFRdEJuQixFQUFBQSxFQUFFLEVBQUVpQixZQUFNRSxTQVJZO0FBU3RCMUIsRUFBQUEsUUFBUSxFQUFFb0Isc0JBQVVDO0FBVEUsQ0FBeEI7QUFZQSxJQUFNTSxpQkFBaUIsR0FBRyx3QkFBVzVDLFVBQVgsRUFBdUJlLFdBQXZCLENBQTFCO0FBRUEsSUFBTThCLElBQUksR0FBRyxvQkFBU0QsaUJBQVQsQ0FBYjtBQUNBLElBQU1FLFNBQVMsR0FBRyw2QkFBa0JELElBQWxCLENBQWxCO2VBRWVDLFMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsaW5lVG9vbENvbXBvbmVudCwgbGluZUJhc2UsIHN0eWxlcyB9IGZyb20gJy4uL3NoYXJlZC9saW5lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgdHJpZywgdHlwZXMgfSBmcm9tICdAcGllLWxpYi9wbG90JztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyBBcnJvd01hcmtlciwgZ2VuVWlkIH0gZnJvbSAnLi4vc2hhcmVkL2Fycm93LWhlYWQnO1xuaW1wb3J0IHsgdGhpbm5lclNoYXBlc05lZWRlZCwgZ2V0QWRqdXN0ZWRHcmFwaExpbWl0cyB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuY29uc3QgbGluZVN0eWxlcyA9ICh0aGVtZSkgPT4gKHtcbiAgbGluZTogc3R5bGVzLmxpbmUodGhlbWUpLFxuICBkYXNoZWRMaW5lOiBzdHlsZXMuZGFzaGVkTGluZSh0aGVtZSksXG4gIGVuYWJsZWRBcnJvdzogc3R5bGVzLmFycm93KHRoZW1lKSxcbiAgZGlzYWJsZWRBcnJvdzogc3R5bGVzLmRpc2FibGVkQXJyb3codGhlbWUpLFxuICBkaXNhYmxlZDogc3R5bGVzLmRpc2FibGVkKHRoZW1lKSxcbiAgY29ycmVjdDogc3R5bGVzLmNvcnJlY3QodGhlbWUsICdzdHJva2UnKSxcbiAgY29ycmVjdEFycm93OiBzdHlsZXMuY29ycmVjdCh0aGVtZSksXG4gIGluY29ycmVjdDogc3R5bGVzLmluY29ycmVjdCh0aGVtZSwgJ3N0cm9rZScpLFxuICBpbmNvcnJlY3RBcnJvdzogc3R5bGVzLmluY29ycmVjdCh0aGVtZSksXG4gIG1pc3Npbmc6IHN0eWxlcy5taXNzaW5nKHRoZW1lLCAnc3Ryb2tlJyksXG4gIG1pc3NpbmdBcnJvdzogc3R5bGVzLm1pc3NpbmcodGhlbWUpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBBcnJvd2VkTGluZSA9IChwcm9wcykgPT4ge1xuICBjb25zdCBtYXJrZXJJZCA9IGdlblVpZCgpO1xuICBjb25zdCB7IGNsYXNzTmFtZSwgY2xhc3NlcywgY29ycmVjdG5lc3MsIGRpc2FibGVkLCBncmFwaFByb3BzLCBmaWxsID0gJ1NvbGlkJywgZnJvbSwgdG8sIC4uLnJlc3QgfSA9IHByb3BzO1xuICBjb25zdCB7IHNjYWxlIH0gPSBncmFwaFByb3BzO1xuICBjb25zdCB7IGRvbWFpbiwgcmFuZ2UgfSA9IGdldEFkanVzdGVkR3JhcGhMaW1pdHMoZ3JhcGhQcm9wcyk7XG4gIGNvbnN0IFtlRnJvbSwgZVRvXSA9IHRyaWcuZWRnZXMoZG9tYWluLCByYW5nZSkoZnJvbSwgdG8pO1xuICBjb25zdCBzdWZmaXggPSBjb3JyZWN0bmVzcyB8fCAoZGlzYWJsZWQgJiYgJ2Rpc2FibGVkJykgfHwgJ2VuYWJsZWQnO1xuXG4gIHJldHVybiAoXG4gICAgPGc+XG4gICAgICA8ZGVmcz5cbiAgICAgICAgPEFycm93TWFya2VyXG4gICAgICAgICAgc2l6ZT17dGhpbm5lclNoYXBlc05lZWRlZChncmFwaFByb3BzKSA/IDQgOiA1fVxuICAgICAgICAgIGlkPXtgJHtwcm9wcy5tYXJrZXJJZCB8fCBtYXJrZXJJZH0tJHtzdWZmaXh9YH1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlc1tgJHtzdWZmaXh9QXJyb3dgXSl9XG4gICAgICAgIC8+XG4gICAgICA8L2RlZnM+XG4gICAgICA8bGluZVxuICAgICAgICB4MT17c2NhbGUueChlRnJvbS54KX1cbiAgICAgICAgeTE9e3NjYWxlLnkoZUZyb20ueSl9XG4gICAgICAgIHgyPXtzY2FsZS54KGVUby54KX1cbiAgICAgICAgeTI9e3NjYWxlLnkoZVRvLnkpfVxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgICAgZmlsbCA9PT0gJ1NvbGlkJyA/IGNsYXNzZXMubGluZSA6IGNsYXNzZXMuZGFzaGVkTGluZSxcbiAgICAgICAgICBkaXNhYmxlZCAmJiBjbGFzc2VzLmRpc2FibGVkLFxuICAgICAgICAgIGNsYXNzZXNbY29ycmVjdG5lc3NdLFxuICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgKX1cbiAgICAgICAgbWFya2VyRW5kPXtgdXJsKCMke3Byb3BzLm1hcmtlcklkIHx8IG1hcmtlcklkfS0ke3N1ZmZpeH0pYH1cbiAgICAgICAgbWFya2VyU3RhcnQ9e2B1cmwoIyR7cHJvcHMubWFya2VySWQgfHwgbWFya2VySWR9LSR7c3VmZml4fSlgfVxuICAgICAgICB7Li4ucmVzdH1cbiAgICAgIC8+XG4gICAgPC9nPlxuICApO1xufTtcblxuQXJyb3dlZExpbmUucHJvcFR5cGVzID0ge1xuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIGZpbGw6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGNvcnJlY3RuZXNzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gIGdyYXBoUHJvcHM6IHR5cGVzLkdyYXBoUHJvcHNUeXBlLFxuICBmcm9tOiB0eXBlcy5Qb2ludFR5cGUsXG4gIHRvOiB0eXBlcy5Qb2ludFR5cGUsXG4gIG1hcmtlcklkOiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcblxuY29uc3QgU3R5bGVkQXJyb3dlZExpbmUgPSB3aXRoU3R5bGVzKGxpbmVTdHlsZXMpKEFycm93ZWRMaW5lKTtcblxuY29uc3QgTGluZSA9IGxpbmVCYXNlKFN0eWxlZEFycm93ZWRMaW5lKTtcbmNvbnN0IENvbXBvbmVudCA9IGxpbmVUb29sQ29tcG9uZW50KExpbmUpO1xuXG5leHBvcnQgZGVmYXVsdCBDb21wb25lbnQ7XG4iXX0=
@@ -1,16 +0,0 @@
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 _component = _interopRequireDefault(require("./component"));
11
-
12
- var _line = require("../shared/line");
13
-
14
- var tool = (0, _line.lineTool)('line', _component["default"]);
15
- exports.tool = tool;
16
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9saW5lL2luZGV4LmpzIl0sIm5hbWVzIjpbInRvb2wiLCJMaW5lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFTyxJQUFNQSxJQUFJLEdBQUcsb0JBQVMsTUFBVCxFQUFpQkMscUJBQWpCLENBQWIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGluZSBmcm9tICcuL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBsaW5lVG9vbCB9IGZyb20gJy4uL3NoYXJlZC9saW5lJztcblxuZXhwb3J0IGNvbnN0IHRvb2wgPSBsaW5lVG9vbCgnbGluZScsIExpbmUpO1xuIl19