@pie-lib/plot 3.0.0-next.0 → 3.1.0-next.2

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/lib/root.js DELETED
@@ -1,455 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = exports.Root = void 0;
8
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
- var _react = _interopRequireDefault(require("react"));
16
- var _styles = require("@mui/material/styles");
17
- var _propTypes = _interopRequireDefault(require("prop-types"));
18
- var _d3Selection = require("d3-selection");
19
- var _renderUi = require("@pie-lib/render-ui");
20
- var _editableHtml = _interopRequireDefault(require("@pie-lib/editable-html"));
21
- var _types = require("./types");
22
- var _label = _interopRequireDefault(require("./label"));
23
- var _utils = require("./utils");
24
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
25
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
26
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
27
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
30
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
31
- var StyledRoot = (0, _styles.styled)('div')(function (_ref) {
32
- var theme = _ref.theme;
33
- return {
34
- border: "solid 1px ".concat(_renderUi.color.primaryLight()),
35
- color: _renderUi.color.defaults.TEXT,
36
- backgroundColor: theme.palette.common.white,
37
- touchAction: 'none',
38
- position: 'relative',
39
- boxSizing: 'unset' // to override the default border-box in IBX that breaks the component width layout
40
- };
41
- });
42
- var Wrapper = (0, _styles.styled)('div')({
43
- display: 'flex',
44
- position: 'relative'
45
- });
46
- var DefineChartSvg = (0, _styles.styled)('svg')({
47
- paddingLeft: '50px',
48
- overflow: 'visible'
49
- });
50
- var ChartSvg = (0, _styles.styled)('svg')({
51
- overflow: 'visible'
52
- });
53
- var GraphBox = (0, _styles.styled)('g')({
54
- cursor: 'pointer',
55
- userSelect: 'none'
56
- });
57
- var GraphTitle = (0, _styles.styled)('div')(function (_ref2) {
58
- var theme = _ref2.theme;
59
- return {
60
- color: _renderUi.color.defaults.TEXT,
61
- fontSize: theme.typography.fontSize + 2,
62
- padding: "".concat(theme.spacing(1.5), " ").concat(theme.spacing(0.5), " 0"),
63
- textAlign: 'center',
64
- '&.disabled': {
65
- pointerEvents: 'none'
66
- },
67
- '&.rightMargin': {
68
- marginRight: '74px'
69
- }
70
- };
71
- });
72
- var ChartTitle = (0, _styles.styled)('div')(function (_ref3) {
73
- var theme = _ref3.theme;
74
- return {
75
- color: _renderUi.color.defaults.TEXT,
76
- fontSize: theme.typography.fontSize + 4,
77
- padding: "".concat(theme.spacing(1.5), " ").concat(theme.spacing(0.5), " 0"),
78
- textAlign: 'center',
79
- '&.disabled': {
80
- pointerEvents: 'none'
81
- },
82
- '&.rightMargin': {
83
- marginRight: '74px'
84
- }
85
- };
86
- });
87
- var TopPixelGuides = (0, _styles.styled)('div')({
88
- display: 'flex',
89
- paddingTop: '6px'
90
- });
91
- var TopPixelIndicator = (0, _styles.styled)('div')({
92
- display: 'flex',
93
- flexDirection: 'column',
94
- alignItems: 'center',
95
- width: '100px',
96
- pointerEvents: 'none',
97
- userSelect: 'none'
98
- });
99
- var SidePixelGuides = (0, _styles.styled)('div')({
100
- width: '70px',
101
- display: 'flex',
102
- flexDirection: 'column',
103
- marginRight: '6px'
104
- });
105
- var SidePixelIndicator = (0, _styles.styled)('div')({
106
- textAlign: 'right',
107
- height: '20px',
108
- pointerEvents: 'none',
109
- userSelect: 'none',
110
- '&:not(:last-child)': {
111
- marginBottom: '80px'
112
- }
113
- });
114
- var Root = exports.Root = /*#__PURE__*/function (_React$Component) {
115
- function Root(props) {
116
- var _this;
117
- (0, _classCallCheck2["default"])(this, Root);
118
- _this = _callSuper(this, Root, [props]);
119
- (0, _defineProperty2["default"])(_this, "mouseMove", function (g) {
120
- var _this$props = _this.props,
121
- graphProps = _this$props.graphProps,
122
- onMouseMove = _this$props.onMouseMove;
123
- if (!onMouseMove) {
124
- return;
125
- }
126
- var scale = graphProps.scale,
127
- snap = graphProps.snap;
128
- var coords = (0, _d3Selection.mouse)(g.node());
129
- var x = scale.x.invert(coords[0]);
130
- var y = scale.y.invert(coords[1]);
131
- var snapped = {
132
- x: snap.x(x),
133
- y: snap.y(y)
134
- };
135
- onMouseMove(snapped);
136
- });
137
- (0, _defineProperty2["default"])(_this, "onChangeLabel", function (newValue, side) {
138
- var _this$props2 = _this.props,
139
- labels = _this$props2.labels,
140
- onChangeLabels = _this$props2.onChangeLabels,
141
- isChart = _this$props2.isChart;
142
- if (!onChangeLabels) {
143
- return;
144
- }
145
- if (isChart) {
146
- if (side === 'left') {
147
- onChangeLabels('range', newValue);
148
- } else {
149
- onChangeLabels('domain', newValue);
150
- }
151
- return;
152
- }
153
- onChangeLabels(_objectSpread(_objectSpread({}, labels), {}, (0, _defineProperty2["default"])({}, side, newValue)));
154
- });
155
- (0, _defineProperty2["default"])(_this, "measureTitleHeight", function () {
156
- var titleElement = _this.titleRef;
157
- if (titleElement) {
158
- var titleHeight = titleElement.clientHeight;
159
- _this.setState({
160
- titleHeight: titleHeight,
161
- prevTitle: _this.props.title
162
- });
163
- if (!_this.resizeObserver && typeof ResizeObserver !== 'undefined') {
164
- _this.setupVisibilityObserver();
165
- }
166
- }
167
- });
168
- (0, _defineProperty2["default"])(_this, "handleKeyDown", function () {
169
- setTimeout(function () {
170
- _this.measureTitleHeight();
171
- }, 0);
172
- });
173
- // handle edge case where chart is hidden with display:none and then shown with display:block
174
- (0, _defineProperty2["default"])(_this, "setupVisibilityObserver", function () {
175
- if (typeof ResizeObserver !== 'undefined' && _this.titleRef) {
176
- _this.resizeObserver = new ResizeObserver(function (entries) {
177
- var _iterator = _createForOfIteratorHelper(entries),
178
- _step;
179
- try {
180
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
181
- var entry = _step.value;
182
- var _entry$contentRect = entry.contentRect,
183
- width = _entry$contentRect.width,
184
- height = _entry$contentRect.height;
185
- // trigger if element becomes visible and we haven't measured this height yet
186
- if (width > 0 && height > 0) {
187
- setTimeout(function () {
188
- _this.measureTitleHeight();
189
- }, 10);
190
- break;
191
- }
192
- }
193
- } catch (err) {
194
- _iterator.e(err);
195
- } finally {
196
- _iterator.f();
197
- }
198
- });
199
- _this.resizeObserver.observe(_this.titleRef);
200
- }
201
- });
202
- (0, _defineProperty2["default"])(_this, "cleanupVisibilityObserver", function () {
203
- if (_this.resizeObserver) {
204
- _this.resizeObserver.disconnect();
205
- _this.resizeObserver = null;
206
- }
207
- });
208
- _this.state = {
209
- titleHeight: 0
210
- };
211
- _this.resizeObserver = null;
212
- return _this;
213
- }
214
- (0, _inherits2["default"])(Root, _React$Component);
215
- return (0, _createClass2["default"])(Root, [{
216
- key: "componentDidMount",
217
- value: function componentDidMount() {
218
- var g = (0, _d3Selection.select)(this.g);
219
- g.on('mousemove', this.mouseMove.bind(this, g));
220
- this.measureTitleHeight();
221
- this.setupVisibilityObserver();
222
- }
223
- }, {
224
- key: "componentWillUnmount",
225
- value: function componentWillUnmount() {
226
- var g = (0, _d3Selection.select)(this.g);
227
- g.on('mousemove', null);
228
- this.cleanupVisibilityObserver();
229
- }
230
- }, {
231
- key: "componentDidUpdate",
232
- value: function componentDidUpdate(prevProps) {
233
- if (prevProps.title !== this.props.title) {
234
- this.measureTitleHeight();
235
- }
236
- }
237
- }, {
238
- key: "render",
239
- value: function render() {
240
- var _this2 = this;
241
- var _this$props3 = this.props,
242
- disabledTitle = _this$props3.disabledTitle,
243
- disabledLabels = _this$props3.disabledLabels,
244
- labels = _this$props3.labels,
245
- labelsPlaceholders = _this$props3.labelsPlaceholders,
246
- titlePlaceholder = _this$props3.titlePlaceholder,
247
- graphProps = _this$props3.graphProps,
248
- children = _this$props3.children,
249
- defineChart = _this$props3.defineChart,
250
- onChangeTitle = _this$props3.onChangeTitle,
251
- isChart = _this$props3.isChart,
252
- showLabels = _this$props3.showLabels,
253
- showPixelGuides = _this$props3.showPixelGuides,
254
- showTitle = _this$props3.showTitle,
255
- title = _this$props3.title,
256
- rootRef = _this$props3.rootRef,
257
- _this$props3$mathMlOp = _this$props3.mathMlOptions,
258
- mathMlOptions = _this$props3$mathMlOp === void 0 ? {} : _this$props3$mathMlOp,
259
- labelsCharactersLimit = _this$props3.labelsCharactersLimit;
260
- var _graphProps$size = graphProps.size,
261
- _graphProps$size$widt = _graphProps$size.width,
262
- width = _graphProps$size$widt === void 0 ? 500 : _graphProps$size$widt,
263
- _graphProps$size$heig = _graphProps$size.height,
264
- height = _graphProps$size$heig === void 0 ? 500 : _graphProps$size$heig,
265
- domain = graphProps.domain,
266
- range = graphProps.range;
267
- var topPadding = 40;
268
- var leftPadding = (0, _utils.isEmptyString)((0, _utils.extractTextFromHTML)(labels === null || labels === void 0 ? void 0 : labels.left)) && (0, _utils.isEmptyObject)(labelsPlaceholders) ? 48 : 70;
269
- var rightPadding = (0, _utils.isEmptyString)((0, _utils.extractTextFromHTML)(labels === null || labels === void 0 ? void 0 : labels.right)) && (0, _utils.isEmptyObject)(labelsPlaceholders) ? 48 : 70;
270
- var finalWidth = width + leftPadding + rightPadding + (domain.padding || 0) * 2;
271
- var finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;
272
- var activeTitlePlugins = ['bold', 'italic', 'underline', 'superscript', 'subscript', 'strikethrough', 'math'
273
- // 'languageCharacters'
274
- ];
275
- var actualHeight = defineChart && showPixelGuides ? height - 160 : height;
276
- var nbOfVerticalLines = parseInt(width / 100);
277
- var nbOfHorizontalLines = parseInt(actualHeight / 100);
278
- var sideGridlinesPadding = parseInt(actualHeight % 100);
279
- var titleHeight = this.state.titleHeight;
280
- return /*#__PURE__*/_react["default"].createElement(StyledRoot, null, showPixelGuides && /*#__PURE__*/_react["default"].createElement(TopPixelGuides, {
281
- style: {
282
- marginLeft: isChart ? 80 : showLabels ? 30 : 10
283
- }
284
- }, (0, _toConsumableArray2["default"])(Array(nbOfVerticalLines + 1).keys()).map(function (value) {
285
- return /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
286
- "false": true,
287
- key: "top-guide-".concat(value)
288
- }, /*#__PURE__*/_react["default"].createElement(TopPixelIndicator, null, /*#__PURE__*/_react["default"].createElement("div", null, value * 100, "px"), /*#__PURE__*/_react["default"].createElement("div", null, "|")));
289
- })), showTitle && (disabledTitle ? /*#__PURE__*/_react["default"].createElement("div", {
290
- ref: function ref(r) {
291
- return _this2.titleRef = r;
292
- },
293
- style: _objectSpread(_objectSpread({}, isChart && {
294
- width: finalWidth
295
- }), (0, _utils.isEmptyString)((0, _utils.extractTextFromHTML)(title)) && {
296
- display: 'none'
297
- })
298
- }, isChart ? /*#__PURE__*/_react["default"].createElement(ChartTitle, {
299
- className: "disabled",
300
- dangerouslySetInnerHTML: {
301
- __html: title || ''
302
- }
303
- }) : /*#__PURE__*/_react["default"].createElement(GraphTitle, {
304
- className: "disabled",
305
- dangerouslySetInnerHTML: {
306
- __html: title || ''
307
- }
308
- })) : /*#__PURE__*/_react["default"].createElement("div", {
309
- ref: function ref(r) {
310
- return _this2.titleRef = r;
311
- }
312
- }, isChart ? /*#__PURE__*/_react["default"].createElement(ChartTitle, {
313
- className: showPixelGuides ? 'rightMargin' : ''
314
- }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
315
- style: isChart && {
316
- width: finalWidth
317
- },
318
- markup: title || '',
319
- onChange: onChangeTitle,
320
- placeholder: defineChart && titlePlaceholder || !disabledTitle && 'Click here to add a title for this graph',
321
- toolbarOpts: {
322
- noPadding: true,
323
- noBorder: true
324
- },
325
- activePlugins: activeTitlePlugins,
326
- disableScrollbar: true,
327
- onKeyDown: this.handleKeyDown
328
- })) : /*#__PURE__*/_react["default"].createElement(GraphTitle, {
329
- className: showPixelGuides ? 'rightMargin' : ''
330
- }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
331
- style: isChart && {
332
- width: finalWidth
333
- },
334
- markup: title || '',
335
- onChange: onChangeTitle,
336
- placeholder: defineChart && titlePlaceholder || !disabledTitle && 'Click here to add a title for this graph',
337
- toolbarOpts: {
338
- noPadding: true,
339
- noBorder: true
340
- },
341
- activePlugins: activeTitlePlugins,
342
- disableScrollbar: true,
343
- onKeyDown: this.handleKeyDown
344
- })))), showLabels && !isChart && /*#__PURE__*/_react["default"].createElement(_label["default"], {
345
- side: "top",
346
- text: labels.top,
347
- disabledLabel: disabledLabels,
348
- placeholder: labelsPlaceholders === null || labelsPlaceholders === void 0 ? void 0 : labelsPlaceholders.top,
349
- graphHeight: finalHeight,
350
- graphWidth: finalWidth,
351
- onChange: function onChange(value) {
352
- return _this2.onChangeLabel(value, 'top');
353
- },
354
- mathMlOptions: mathMlOptions,
355
- charactersLimit: labelsCharactersLimit
356
- }), /*#__PURE__*/_react["default"].createElement(Wrapper, null, showLabels && /*#__PURE__*/_react["default"].createElement(_label["default"], {
357
- side: "left",
358
- text: labels.left,
359
- disabledLabel: disabledLabels,
360
- placeholder: labelsPlaceholders === null || labelsPlaceholders === void 0 ? void 0 : labelsPlaceholders.left,
361
- graphHeight: finalHeight,
362
- graphWidth: finalWidth,
363
- isChartLeftLabel: isChart && !defineChart,
364
- isDefineChartLeftLabel: isChart && defineChart,
365
- onChange: function onChange(value) {
366
- return _this2.onChangeLabel(value, 'left');
367
- },
368
- mathMlOptions: mathMlOptions,
369
- charactersLimit: labelsCharactersLimit
370
- }), defineChart ? /*#__PURE__*/_react["default"].createElement(DefineChartSvg, {
371
- width: finalWidth,
372
- height: finalHeight
373
- }, /*#__PURE__*/_react["default"].createElement(GraphBox, {
374
- ref: function ref(r) {
375
- _this2.g = r;
376
- if (rootRef) {
377
- rootRef(r);
378
- }
379
- },
380
- transform: "translate(".concat(leftPadding + (domain.padding || 0), ", ").concat(topPadding + (range.padding || 0), ")")
381
- }, children)) : /*#__PURE__*/_react["default"].createElement(ChartSvg, {
382
- width: finalWidth,
383
- height: finalHeight
384
- }, /*#__PURE__*/_react["default"].createElement(GraphBox, {
385
- ref: function ref(r) {
386
- _this2.g = r;
387
- if (rootRef) {
388
- rootRef(r);
389
- }
390
- },
391
- transform: "translate(".concat(leftPadding + (domain.padding || 0), ", ").concat(topPadding + (range.padding || 0), ")")
392
- }, children)), showLabels && !isChart && /*#__PURE__*/_react["default"].createElement(_label["default"], {
393
- side: "right",
394
- text: labels.right,
395
- disabledLabel: disabledLabels,
396
- placeholder: labelsPlaceholders === null || labelsPlaceholders === void 0 ? void 0 : labelsPlaceholders.right,
397
- graphHeight: finalHeight,
398
- graphWidth: finalWidth,
399
- onChange: function onChange(value) {
400
- return _this2.onChangeLabel(value, 'right');
401
- },
402
- mathMlOptions: mathMlOptions,
403
- charactersLimit: labelsCharactersLimit
404
- }), showPixelGuides && /*#__PURE__*/_react["default"].createElement(SidePixelGuides, {
405
- style: {
406
- paddingTop: sideGridlinesPadding,
407
- marginTop: 31
408
- }
409
- }, (0, _toConsumableArray2["default"])(Array(nbOfHorizontalLines + 1).keys()).reverse().map(function (value) {
410
- return /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
411
- "false": true,
412
- key: "top-guide-".concat(value)
413
- }, /*#__PURE__*/_react["default"].createElement(SidePixelIndicator, null, "\u2501 ", value * 100, "px"));
414
- }))), showLabels && /*#__PURE__*/_react["default"].createElement(_label["default"], {
415
- side: "bottom",
416
- text: labels.bottom,
417
- disabledLabel: disabledLabels,
418
- placeholder: labelsPlaceholders === null || labelsPlaceholders === void 0 ? void 0 : labelsPlaceholders.bottom,
419
- graphHeight: finalHeight,
420
- graphWidth: finalWidth,
421
- titleHeight: titleHeight,
422
- isChartBottomLabel: isChart && !defineChart,
423
- isDefineChartBottomLabel: isChart && defineChart,
424
- onChange: function onChange(value) {
425
- return _this2.onChangeLabel(value, 'bottom');
426
- },
427
- mathMlOptions: mathMlOptions,
428
- charactersLimit: labelsCharactersLimit
429
- }));
430
- }
431
- }]);
432
- }(_react["default"].Component);
433
- (0, _defineProperty2["default"])(Root, "propTypes", {
434
- title: _propTypes["default"].string,
435
- children: _types.ChildrenType,
436
- defineChart: _propTypes["default"].bool,
437
- disabledLabels: _propTypes["default"].bool,
438
- disabledTitle: _propTypes["default"].bool,
439
- graphProps: _types.GraphPropsType.isRequired,
440
- isChart: _propTypes["default"].bool,
441
- labels: _propTypes["default"].object,
442
- labelsPlaceholders: _propTypes["default"].object,
443
- onChangeTitle: _propTypes["default"].func,
444
- onMouseMove: _propTypes["default"].func,
445
- showLabels: _propTypes["default"].bool,
446
- showTitle: _propTypes["default"].bool,
447
- showPixelGuides: _propTypes["default"].bool,
448
- rootRef: _propTypes["default"].func,
449
- onChangeLabels: _propTypes["default"].func,
450
- titlePlaceholder: _propTypes["default"].string,
451
- mathMlOptions: _propTypes["default"].object,
452
- labelsCharactersLimit: _propTypes["default"].number
453
- });
454
- var _default = exports["default"] = Root;
455
- //# sourceMappingURL=root.js.map
package/lib/root.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"root.js","names":["_react","_interopRequireDefault","require","_styles","_propTypes","_d3Selection","_renderUi","_editableHtml","_types","_label","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","Boolean","prototype","valueOf","StyledRoot","styled","_ref","theme","border","concat","color","primaryLight","defaults","TEXT","backgroundColor","palette","common","white","touchAction","position","boxSizing","Wrapper","display","DefineChartSvg","paddingLeft","overflow","ChartSvg","GraphBox","cursor","userSelect","GraphTitle","_ref2","fontSize","typography","padding","spacing","textAlign","pointerEvents","marginRight","ChartTitle","_ref3","TopPixelGuides","paddingTop","TopPixelIndicator","flexDirection","alignItems","width","SidePixelGuides","SidePixelIndicator","height","marginBottom","Root","exports","_React$Component","props","_this","_classCallCheck2","g","_this$props","graphProps","onMouseMove","scale","snap","coords","mouse","node","x","invert","y","snapped","newValue","side","_this$props2","labels","onChangeLabels","isChart","titleElement","titleRef","titleHeight","clientHeight","setState","prevTitle","title","resizeObserver","ResizeObserver","setupVisibilityObserver","setTimeout","measureTitleHeight","entries","_iterator","_step","entry","_entry$contentRect","contentRect","err","observe","disconnect","state","_inherits2","_createClass2","key","componentDidMount","select","on","mouseMove","bind","componentWillUnmount","cleanupVisibilityObserver","componentDidUpdate","prevProps","render","_this2","_this$props3","disabledTitle","disabledLabels","labelsPlaceholders","titlePlaceholder","children","defineChart","onChangeTitle","showLabels","showPixelGuides","showTitle","rootRef","_this$props3$mathMlOp","mathMlOptions","labelsCharactersLimit","_graphProps$size","size","_graphProps$size$widt","_graphProps$size$heig","domain","range","topPadding","leftPadding","isEmptyString","extractTextFromHTML","left","isEmptyObject","rightPadding","right","finalWidth","finalHeight","activeTitlePlugins","actualHeight","nbOfVerticalLines","parseInt","nbOfHorizontalLines","sideGridlinesPadding","createElement","style","marginLeft","_toConsumableArray2","map","Readable","ref","className","dangerouslySetInnerHTML","__html","markup","onChange","placeholder","toolbarOpts","noPadding","noBorder","activePlugins","disableScrollbar","onKeyDown","handleKeyDown","text","top","disabledLabel","graphHeight","graphWidth","onChangeLabel","charactersLimit","isChartLeftLabel","isDefineChartLeftLabel","transform","marginTop","reverse","bottom","isChartBottomLabel","isDefineChartBottomLabel","React","Component","PropTypes","string","ChildrenType","bool","GraphPropsType","isRequired","object","func","number","_default"],"sources":["../src/root.jsx"],"sourcesContent":["import React from 'react';\nimport { styled } from '@mui/material/styles';\nimport PropTypes from 'prop-types';\nimport { select, mouse } from 'd3-selection';\n\nimport { color, Readable } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { ChildrenType } from './types';\nimport { GraphPropsType } from './types';\nimport Label from './label';\nimport { extractTextFromHTML, isEmptyObject, isEmptyString } from './utils';\n\nconst StyledRoot = styled('div')(({ theme }) => ({\n border: `solid 1px ${color.primaryLight()}`,\n color: color.defaults.TEXT,\n backgroundColor: theme.palette.common.white,\n touchAction: 'none',\n position: 'relative',\n boxSizing: 'unset', // to override the default border-box in IBX that breaks the component width layout\n}));\n\nconst Wrapper = styled('div')({\n display: 'flex',\n position: 'relative',\n});\n\nconst DefineChartSvg = styled('svg')({\n paddingLeft: '50px',\n overflow: 'visible',\n});\n\nconst ChartSvg = styled('svg')({\n overflow: 'visible',\n});\n\nconst GraphBox = styled('g')({\n cursor: 'pointer',\n userSelect: 'none',\n});\n\nconst GraphTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 2,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst ChartTitle = styled('div')(({ theme }) => ({\n color: color.defaults.TEXT,\n fontSize: theme.typography.fontSize + 4,\n padding: `${theme.spacing(1.5)} ${theme.spacing(0.5)} 0`,\n textAlign: 'center',\n '&.disabled': {\n pointerEvents: 'none',\n },\n '&.rightMargin': {\n marginRight: '74px',\n },\n}));\n\nconst TopPixelGuides = styled('div')({\n display: 'flex',\n paddingTop: '6px',\n});\n\nconst TopPixelIndicator = styled('div')({\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n width: '100px',\n pointerEvents: 'none',\n userSelect: 'none',\n});\n\nconst SidePixelGuides = styled('div')({\n width: '70px',\n display: 'flex',\n flexDirection: 'column',\n marginRight: '6px',\n});\n\nconst SidePixelIndicator = styled('div')({\n textAlign: 'right',\n height: '20px',\n pointerEvents: 'none',\n userSelect: 'none',\n '&:not(:last-child)': {\n marginBottom: '80px',\n },\n});\n\nexport class Root extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n titleHeight: 0,\n };\n this.resizeObserver = null;\n }\n\n static propTypes = {\n title: PropTypes.string,\n children: ChildrenType,\n defineChart: PropTypes.bool,\n disabledLabels: PropTypes.bool,\n disabledTitle: PropTypes.bool,\n graphProps: GraphPropsType.isRequired,\n isChart: PropTypes.bool,\n labels: PropTypes.object,\n labelsPlaceholders: PropTypes.object,\n onChangeTitle: PropTypes.func,\n onMouseMove: PropTypes.func,\n showLabels: PropTypes.bool,\n showTitle: PropTypes.bool,\n showPixelGuides: PropTypes.bool,\n rootRef: PropTypes.func,\n onChangeLabels: PropTypes.func,\n titlePlaceholder: PropTypes.string,\n mathMlOptions: PropTypes.object,\n labelsCharactersLimit: PropTypes.number,\n };\n\n mouseMove = (g) => {\n const { graphProps, onMouseMove } = this.props;\n\n if (!onMouseMove) {\n return;\n }\n\n const { scale, snap } = graphProps;\n const coords = mouse(g.node());\n const x = scale.x.invert(coords[0]);\n const y = scale.y.invert(coords[1]);\n\n const snapped = {\n x: snap.x(x),\n y: snap.y(y),\n };\n\n onMouseMove(snapped);\n };\n\n componentDidMount() {\n const g = select(this.g);\n g.on('mousemove', this.mouseMove.bind(this, g));\n this.measureTitleHeight();\n this.setupVisibilityObserver();\n }\n\n componentWillUnmount() {\n const g = select(this.g);\n g.on('mousemove', null);\n this.cleanupVisibilityObserver();\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.title !== this.props.title) {\n this.measureTitleHeight();\n }\n }\n\n onChangeLabel = (newValue, side) => {\n const { labels, onChangeLabels, isChart } = this.props;\n\n if (!onChangeLabels) {\n return;\n }\n\n if (isChart) {\n if (side === 'left') {\n onChangeLabels('range', newValue);\n } else {\n onChangeLabels('domain', newValue);\n }\n\n return;\n }\n\n onChangeLabels({\n ...labels,\n [side]: newValue,\n });\n };\n\n measureTitleHeight = () => {\n const titleElement = this.titleRef;\n if (titleElement) {\n const titleHeight = titleElement.clientHeight;\n this.setState({ titleHeight, prevTitle: this.props.title });\n\n if (!this.resizeObserver && typeof ResizeObserver !== 'undefined') {\n this.setupVisibilityObserver();\n }\n }\n };\n\n handleKeyDown = () => {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 0);\n };\n\n // handle edge case where chart is hidden with display:none and then shown with display:block\n setupVisibilityObserver = () => {\n if (typeof ResizeObserver !== 'undefined' && this.titleRef) {\n this.resizeObserver = new ResizeObserver((entries) => {\n for (let entry of entries) {\n const { width, height } = entry.contentRect;\n // trigger if element becomes visible and we haven't measured this height yet\n if (width > 0 && height > 0) {\n setTimeout(() => {\n this.measureTitleHeight();\n }, 10);\n break;\n }\n }\n });\n\n this.resizeObserver.observe(this.titleRef);\n }\n };\n\n cleanupVisibilityObserver = () => {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n };\n\n render() {\n const {\n disabledTitle,\n disabledLabels,\n labels,\n labelsPlaceholders,\n titlePlaceholder,\n graphProps,\n children,\n defineChart,\n onChangeTitle,\n isChart,\n showLabels,\n showPixelGuides,\n showTitle,\n title,\n rootRef,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const {\n size: { width = 500, height = 500 },\n domain,\n range,\n } = graphProps;\n\n const topPadding = 40;\n const leftPadding = isEmptyString(extractTextFromHTML(labels?.left)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const rightPadding =\n isEmptyString(extractTextFromHTML(labels?.right)) && isEmptyObject(labelsPlaceholders) ? 48 : 70;\n const finalWidth = width + leftPadding + rightPadding + (domain.padding || 0) * 2;\n const finalHeight = height + topPadding * 2 + (range.padding || 0) * 2;\n\n const activeTitlePlugins = [\n 'bold',\n 'italic',\n 'underline',\n 'superscript',\n 'subscript',\n 'strikethrough',\n 'math',\n // 'languageCharacters'\n ];\n\n const actualHeight = defineChart && showPixelGuides ? height - 160 : height;\n const nbOfVerticalLines = parseInt(width / 100);\n const nbOfHorizontalLines = parseInt(actualHeight / 100);\n const sideGridlinesPadding = parseInt(actualHeight % 100);\n const { titleHeight } = this.state;\n \n return (\n <StyledRoot>\n {showPixelGuides && (\n <TopPixelGuides style={{ marginLeft: isChart ? 80 : showLabels ? 30 : 10 }}>\n {[...Array(nbOfVerticalLines + 1).keys()].map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <TopPixelIndicator>\n <div>{value * 100}px</div>\n <div>|</div>\n </TopPixelIndicator>\n </Readable>\n ))}\n </TopPixelGuides>\n )}\n {showTitle &&\n (disabledTitle ? (\n <div\n ref={(r) => (this.titleRef = r)}\n style={{\n ...(isChart && { width: finalWidth }),\n ...(isEmptyString(extractTextFromHTML(title)) && { display: 'none' }),\n }}\n >\n {isChart ? (\n <ChartTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n ) : (\n <GraphTitle className=\"disabled\" dangerouslySetInnerHTML={{ __html: title || '' }} />\n )}\n </div>\n ) : (\n <div ref={(r) => (this.titleRef = r)}>\n {isChart ? (\n <ChartTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) || (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </ChartTitle>\n ) : (\n <GraphTitle className={showPixelGuides ? 'rightMargin' : ''}>\n <EditableHtml\n style={\n isChart && {\n width: finalWidth,\n }\n }\n markup={title || ''}\n onChange={onChangeTitle}\n placeholder={\n (defineChart && titlePlaceholder) || (!disabledTitle && 'Click here to add a title for this graph')\n }\n toolbarOpts={{ noPadding: true, noBorder: true }}\n activePlugins={activeTitlePlugins}\n disableScrollbar\n onKeyDown={this.handleKeyDown}\n />\n </GraphTitle>\n )}\n </div>\n ))}\n {showLabels && !isChart && (\n <Label\n side=\"top\"\n text={labels.top}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.top}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'top')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n <Wrapper>\n {showLabels && (\n <Label\n side=\"left\"\n text={labels.left}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.left}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n isChartLeftLabel={isChart && !defineChart}\n isDefineChartLeftLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'left')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {defineChart ? (\n <DefineChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </DefineChartSvg>\n ) : (\n <ChartSvg width={finalWidth} height={finalHeight}>\n <GraphBox\n ref={(r) => {\n this.g = r;\n if (rootRef) {\n rootRef(r);\n }\n }}\n transform={`translate(${leftPadding + (domain.padding || 0)}, ${topPadding + (range.padding || 0)})`}\n >\n {children}\n </GraphBox>\n </ChartSvg>\n )}\n {showLabels && !isChart && (\n <Label\n side=\"right\"\n text={labels.right}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.right}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n onChange={(value) => this.onChangeLabel(value, 'right')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n {showPixelGuides && (\n <SidePixelGuides\n style={{\n paddingTop: sideGridlinesPadding,\n marginTop: 31,\n }}\n >\n {[...Array(nbOfHorizontalLines + 1).keys()].reverse().map((value) => (\n <Readable false key={`top-guide-${value}`}>\n <SidePixelIndicator>━ {value * 100}px</SidePixelIndicator>\n </Readable>\n ))}\n </SidePixelGuides>\n )}\n </Wrapper>\n {showLabels && (\n <Label\n side=\"bottom\"\n text={labels.bottom}\n disabledLabel={disabledLabels}\n placeholder={labelsPlaceholders?.bottom}\n graphHeight={finalHeight}\n graphWidth={finalWidth}\n titleHeight={titleHeight}\n isChartBottomLabel={isChart && !defineChart}\n isDefineChartBottomLabel={isChart && defineChart}\n onChange={(value) => this.onChangeLabel(value, 'bottom')}\n mathMlOptions={mathMlOptions}\n charactersLimit={labelsCharactersLimit}\n />\n )}\n </StyledRoot>\n );\n }\n}\n\nexport default Root;\n"],"mappings":"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","ignoreList":[]}