@pie-element/drawing-response 10.3.4-next.0 → 11.0.0-beta.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 (76) hide show
  1. package/configure/lib/button.js +23 -47
  2. package/configure/lib/button.js.map +1 -1
  3. package/configure/lib/defaults.js +2 -3
  4. package/configure/lib/defaults.js.map +1 -1
  5. package/configure/lib/image-container.js +238 -327
  6. package/configure/lib/image-container.js.map +1 -1
  7. package/configure/lib/index.js +115 -182
  8. package/configure/lib/index.js.map +1 -1
  9. package/configure/lib/root.js +194 -260
  10. package/configure/lib/root.js.map +1 -1
  11. package/configure/package.json +9 -7
  12. package/configure/src/__tests__/image-container.test.jsx +101 -37
  13. package/configure/src/__tests__/index.test.js +27 -5
  14. package/configure/src/__tests__/root.test.jsx +37 -21
  15. package/configure/src/button.jsx +14 -24
  16. package/configure/src/image-container.jsx +73 -77
  17. package/configure/src/index.js +12 -2
  18. package/configure/src/root.jsx +24 -25
  19. package/controller/lib/defaults.js +2 -3
  20. package/controller/lib/defaults.js.map +1 -1
  21. package/controller/lib/index.js +39 -65
  22. package/controller/lib/index.js.map +1 -1
  23. package/controller/package.json +1 -1
  24. package/lib/drawing-response/button.js +35 -60
  25. package/lib/drawing-response/button.js.map +1 -1
  26. package/lib/drawing-response/constants.js +2 -3
  27. package/lib/drawing-response/constants.js.map +1 -1
  28. package/lib/drawing-response/container.js +270 -351
  29. package/lib/drawing-response/container.js.map +1 -1
  30. package/lib/drawing-response/drawable-circle.js +65 -104
  31. package/lib/drawing-response/drawable-circle.js.map +1 -1
  32. package/lib/drawing-response/drawable-eraser.js +50 -86
  33. package/lib/drawing-response/drawable-eraser.js.map +1 -1
  34. package/lib/drawing-response/drawable-free-path.js +56 -97
  35. package/lib/drawing-response/drawable-free-path.js.map +1 -1
  36. package/lib/drawing-response/drawable-helper.js +16 -28
  37. package/lib/drawing-response/drawable-helper.js.map +1 -1
  38. package/lib/drawing-response/drawable-image.js +30 -49
  39. package/lib/drawing-response/drawable-image.js.map +1 -1
  40. package/lib/drawing-response/drawable-line.js +60 -99
  41. package/lib/drawing-response/drawable-line.js.map +1 -1
  42. package/lib/drawing-response/drawable-main.js +273 -345
  43. package/lib/drawing-response/drawable-main.js.map +1 -1
  44. package/lib/drawing-response/drawable-palette.js +123 -166
  45. package/lib/drawing-response/drawable-palette.js.map +1 -1
  46. package/lib/drawing-response/drawable-rectangle.js +65 -104
  47. package/lib/drawing-response/drawable-rectangle.js.map +1 -1
  48. package/lib/drawing-response/drawable-text.js +201 -313
  49. package/lib/drawing-response/drawable-text.js.map +1 -1
  50. package/lib/drawing-response/drawable-transformer.js +36 -79
  51. package/lib/drawing-response/drawable-transformer.js.map +1 -1
  52. package/lib/drawing-response/factory.js +6 -19
  53. package/lib/drawing-response/factory.js.map +1 -1
  54. package/lib/drawing-response/icon.js +8 -24
  55. package/lib/drawing-response/icon.js.map +1 -1
  56. package/lib/drawing-response/index.js +74 -116
  57. package/lib/drawing-response/index.js.map +1 -1
  58. package/lib/index.js +51 -102
  59. package/lib/index.js.map +1 -1
  60. package/package.json +13 -12
  61. package/src/__tests__/drawing-index-test.jsx +90 -27
  62. package/src/drawing-response/__tests__/container.test.jsx +56 -36
  63. package/src/drawing-response/__tests__/drawing-main.test.jsx +158 -139
  64. package/src/drawing-response/button.jsx +23 -34
  65. package/src/drawing-response/container.jsx +39 -40
  66. package/src/drawing-response/drawable-image.jsx +17 -20
  67. package/src/drawing-response/drawable-main.jsx +67 -60
  68. package/src/drawing-response/drawable-palette.jsx +48 -54
  69. package/src/drawing-response/drawable-text.jsx +26 -38
  70. package/src/drawing-response/index.jsx +21 -20
  71. package/src/index.js +17 -2
  72. package/configure/src/__tests__/__snapshots__/image-container.test.jsx.snap +0 -45
  73. package/configure/src/__tests__/__snapshots__/root.test.jsx.snap +0 -185
  74. package/src/__tests__/__snapshots__/drawing-index-test.jsx.snap +0 -23
  75. package/src/drawing-response/__tests__/__snapshots__/container.test.jsx.snap +0 -396
  76. package/src/drawing-response/__tests__/__snapshots__/drawing-main.test.jsx.snap +0 -247
@@ -1,60 +1,43 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.generateId = exports["default"] = void 0;
9
-
7
+ exports.generateId = exports.default = void 0;
10
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
10
  var _react = _interopRequireDefault(require("react"));
19
-
20
11
  var _reactKonva = require("react-konva");
21
-
22
12
  var _translator = _interopRequireDefault(require("@pie-lib/translator"));
23
-
24
13
  var _drawableTransformer = _interopRequireDefault(require("./drawable-transformer"));
25
-
26
- 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; }
27
-
28
- 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; }
29
-
30
- var translator = _translator["default"].translator;
31
-
32
- var generateId = function generateId() {
33
- return Math.random().toString(36).substring(2) + new Date().getTime().toString(36);
34
- };
35
-
14
+ const {
15
+ translator
16
+ } = _translator.default;
17
+ const generateId = () => Math.random().toString(36).substring(2) + new Date().getTime().toString(36);
36
18
  exports.generateId = generateId;
37
-
38
- var TextDrawable = /*#__PURE__*/function () {
39
- function TextDrawable(props) {
40
- var _this = this;
41
-
42
- (0, _classCallCheck2["default"])(this, TextDrawable);
43
- (0, _defineProperty2["default"])(this, "removeEventListeners", function () {
44
- return _this.eventListenersDetachArray.forEach(function (fn) {
45
- return fn();
46
- });
47
- });
48
- (0, _defineProperty2["default"])(this, "setAll", function (all) {
49
- _this.all = all;
50
-
51
- _this.props.forceUpdate();
19
+ class TextDrawable {
20
+ static getTextareaNode(id) {
21
+ return `textarea_${id}`;
22
+ }
23
+ static getTextNode(id) {
24
+ return `text_${id}`;
25
+ }
26
+ static getTransformerNode(id) {
27
+ return `transformer_${id}`;
28
+ }
29
+ constructor(props) {
30
+ (0, _defineProperty2.default)(this, "removeEventListeners", () => this.eventListenersDetachArray.forEach(fn => fn()));
31
+ (0, _defineProperty2.default)(this, "setAll", all => {
32
+ this.all = all;
33
+ this.props.forceUpdate();
52
34
  });
53
- (0, _defineProperty2["default"])(this, "addNewTextEntry", function (language) {
54
- var all = _this.all;
55
- var id = generateId();
35
+ (0, _defineProperty2.default)(this, "addNewTextEntry", language => {
36
+ const all = this.all;
37
+ const id = generateId();
56
38
  all.push({
57
39
  id: id,
40
+ text: '',
58
41
  isDefault: true,
59
42
  label: translator.t('drawingResponse.onDoubleClick', {
60
43
  lng: language
@@ -68,36 +51,26 @@ var TextDrawable = /*#__PURE__*/function () {
68
51
  createdAt: new Date(),
69
52
  type: 'text-entry'
70
53
  });
71
-
72
- _this.props.handleSessionChange();
73
- });
74
- (0, _defineProperty2["default"])(this, "handleMouseDown", function () {
75
- return _this.props.toggleTextSelected(true);
76
- });
77
- (0, _defineProperty2["default"])(this, "handleMouseUp", function () {
78
- return _this.props.toggleTextSelected(false);
54
+ this.props.handleSessionChange();
79
55
  });
80
- (0, _defineProperty2["default"])(this, "handleClick", function (e, id) {
81
- var current = _this.all.filter(function (item) {
82
- return item.id === id;
83
- })[0];
84
-
56
+ (0, _defineProperty2.default)(this, "handleMouseDown", () => this.props.toggleTextSelected(true));
57
+ (0, _defineProperty2.default)(this, "handleMouseUp", () => this.props.toggleTextSelected(false));
58
+ (0, _defineProperty2.default)(this, "handleClick", (e, id) => {
59
+ const current = this.all.filter(item => item.id === id)[0];
85
60
  current.transformerVisible = true;
86
-
87
- _this.props.forceUpdate();
61
+ this.props.forceUpdate();
88
62
  });
89
- (0, _defineProperty2["default"])(this, "handleDblClick", function (e, text) {
90
- var id = text.id,
91
- isDefault = text.isDefault;
92
-
93
- _this.toggleTextarea(id, true);
94
-
95
- var textNode = _this[TextDrawable.getTextNode(id)];
96
-
97
- var textareaNode = _this[TextDrawable.getTextareaNode(id)];
98
-
99
- var areaPosition = textNode._lastPos;
100
- textareaNode.value = isDefault ? '' : textNode.text();
63
+ (0, _defineProperty2.default)(this, "handleDblClick", (e, text) => {
64
+ const {
65
+ id,
66
+ isDefault
67
+ } = text;
68
+ this.toggleTextarea(id, true);
69
+ const textNode = this[TextDrawable.getTextNode(id)];
70
+ const textareaNode = this[TextDrawable.getTextareaNode(id)];
71
+ if (!textNode || !textareaNode) return;
72
+ const areaPosition = textNode.getAbsolutePosition();
73
+ textareaNode.value = text.text || '';
101
74
  textareaNode.style.position = 'absolute';
102
75
  textareaNode.style.top = areaPosition.y + 'px';
103
76
  textareaNode.style.left = areaPosition.x + 'px';
@@ -116,269 +89,184 @@ var TextDrawable = /*#__PURE__*/function () {
116
89
  textareaNode.style.transformOrigin = 'left top';
117
90
  textareaNode.style.textAlign = textNode.align();
118
91
  textareaNode.style.color = textNode.fill();
119
- var rotation = textNode.rotation();
120
- var transform = '';
121
-
122
- if (rotation) {
123
- transform += 'rotateZ(' + rotation + 'deg)';
124
- }
125
-
126
- var px = 0;
127
- var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
128
-
129
- if (isFirefox) {
130
- px += 2 + Math.round(textNode.fontSize() / 20);
131
- }
132
-
133
- transform += 'translateY(-' + px + 'px)';
134
- textareaNode.style.transform = transform;
135
- textareaNode.style.height = 'auto';
136
- textareaNode.style.height = textareaNode.scrollHeight + 3 + 'px';
92
+ textareaNode.style.display = 'block';
93
+ let rotation = textNode.rotation();
94
+ textareaNode.style.transform = rotation ? `rotateZ(${rotation}deg)` : '';
137
95
  textareaNode.focus();
138
-
139
- var keyDownHandler = function keyDownHandler(e) {
140
- // hide on enter but don't hide on shift + enter
141
- if (e.keyCode === 13 && !e.shiftKey) {
142
- _this.toggleTextarea(id, false);
143
-
144
- _this.saveValue(id, textNode, textareaNode);
145
- } // on esc do not set value back to node
146
-
147
-
148
- if (e.keyCode === 27) {
149
- _this.toggleTextarea(id, false);
96
+ const keyDownHandler = e => {
97
+ if (e.key === 'Enter' && !e.shiftKey) {
98
+ this.saveValue(id, textareaNode);
99
+ }
100
+ if (e.key === 'Escape') {
101
+ this.toggleTextarea(id, false);
150
102
  }
151
103
  };
152
-
153
- textareaNode.addEventListener('keydown', keyDownHandler);
154
-
155
- _this.eventListenersDetachArray.push(function () {
156
- return textareaNode.removeEventListener('keydown', keyDownHandler);
157
- });
158
-
159
- var blurHandler = function blurHandler() {
160
- _this.showOnlyTextNodes();
161
-
162
- _this.saveValue(id, textNode, textareaNode);
104
+ const blurHandler = () => {
105
+ this.showOnlyTextNodes();
106
+ this.saveValue(id, textareaNode);
163
107
  };
164
-
108
+ textareaNode.addEventListener('keydown', keyDownHandler);
165
109
  textareaNode.addEventListener('blur', blurHandler);
166
-
167
- _this.eventListenersDetachArray.push(function () {
168
- return textareaNode.removeEventListener('blur', blurHandler);
110
+ this.eventListenersDetachArray.push(() => {
111
+ textareaNode.removeEventListener('keydown', keyDownHandler);
112
+ textareaNode.removeEventListener('blur', blurHandler);
169
113
  });
170
-
171
- _this.initializeDefault(id, isDefault);
172
-
173
- _this.props.forceUpdate();
114
+ this.initializeDefault(id, isDefault);
115
+ this.props.forceUpdate();
174
116
  });
175
- (0, _defineProperty2["default"])(this, "handleTransform", function (e, textNode) {
176
- _this[textNode].setAttrs({
177
- width: _this[textNode].width() * _this[textNode].scaleX(),
178
- scaleX: _this.props.scale
117
+ (0, _defineProperty2.default)(this, "handleTransform", (e, textNode) => {
118
+ this[textNode].setAttrs({
119
+ width: this[textNode].width() * this[textNode].scaleX(),
120
+ scaleX: this.props.scale
179
121
  });
180
122
  });
181
123
  this.all = props && props.all || [];
182
124
  this.eventListenersDetachArray = [];
183
125
  }
184
-
185
- (0, _createClass2["default"])(TextDrawable, [{
186
- key: "showOnlyTextNodes",
187
- value: function showOnlyTextNodes() {
188
- this.all.map(function (item) {
189
- item.textVisible = true;
190
- item.transformerVisible = false;
191
- item.textareaVisible = false;
192
- });
193
- }
194
- }, {
195
- key: "toggleTextarea",
196
- value: function toggleTextarea(id, value) {
197
- this.all = this.all.map(function (item) {
198
- if (item.id === id) {
199
- return _objectSpread(_objectSpread({}, item), {}, {
200
- textVisible: !value,
201
- transformerVisible: !value,
202
- textareaVisible: value
203
- });
204
- }
205
-
206
- return item;
207
- });
208
- this.props.forceUpdate();
209
- }
210
- }, {
211
- key: "initializeDefault",
212
- value: function initializeDefault(id, isDefault) {
213
- if (isDefault) {
214
- var current = this.all.filter(function (item) {
215
- return item.id === id;
216
- })[0];
217
- current.isDefault = false;
126
+ showOnlyTextNodes() {
127
+ this.all.map(item => {
128
+ item.textVisible = true;
129
+ item.transformerVisible = false;
130
+ item.textareaVisible = false;
131
+ });
132
+ }
133
+ toggleTextarea(id, value) {
134
+ this.all = this.all.map(item => {
135
+ if (item.id === id) {
136
+ return {
137
+ ...item,
138
+ textVisible: !value,
139
+ transformerVisible: !value,
140
+ textareaVisible: value
141
+ };
218
142
  }
143
+ return item;
144
+ });
145
+ this.props.forceUpdate();
146
+ }
147
+ initializeDefault(id, isDefault) {
148
+ if (isDefault) {
149
+ const current = this.all.filter(item => item.id === id)[0];
150
+ current.isDefault = false;
219
151
  }
220
- }, {
221
- key: "saveValue",
222
- value: function saveValue(id, textNode, textareaNode) {
223
- if (textareaNode.value) {
224
- textNode.text(textareaNode.value);
225
- } else {
226
- this.all = this.all.filter(function (text) {
227
- return text.id !== id;
228
- });
229
- this.props.forceUpdate();
230
- }
231
-
232
- this.props.handleSessionChange();
152
+ }
153
+ saveValue(id, textareaNode) {
154
+ const value = textareaNode.value;
155
+ this.all = this.all.map(t => t.id === id ? {
156
+ ...t,
157
+ text: value
158
+ } : t);
159
+ if (!value) {
160
+ this.all = this.all.filter(t => t.id !== id);
233
161
  }
234
- }, {
235
- key: "renderTextareas",
236
- value: function renderTextareas() {
237
- var _this2 = this;
238
-
239
- return this.all.map(function (text) {
240
- var id = text.id,
241
- textareaVisible = text.textareaVisible;
242
- var textareaNode = "textarea_".concat(id);
243
- return /*#__PURE__*/_react["default"].createElement("textarea", {
244
- key: textareaNode,
245
- ref: function ref(textarea) {
246
- _this2[textareaNode] = textarea;
247
- },
248
- style: {
249
- display: "".concat(textareaVisible ? 'block' : 'none')
250
- }
251
- });
162
+ this.toggleTextarea(id, false);
163
+ this.props.handleSessionChange();
164
+ this.props.forceUpdate();
165
+ }
166
+ renderTextareas() {
167
+ return this.all.map(text => {
168
+ const {
169
+ id,
170
+ textareaVisible
171
+ } = text;
172
+ const textareaNode = `textarea_${id}`;
173
+ return /*#__PURE__*/_react.default.createElement("textarea", {
174
+ key: textareaNode,
175
+ ref: textarea => {
176
+ this[textareaNode] = textarea;
177
+ },
178
+ style: {
179
+ display: `${textareaVisible ? 'block' : 'none'}`
180
+ }
252
181
  });
182
+ });
183
+ }
184
+ setInitialProps(props) {
185
+ if (!this.props) {
186
+ this.props = props;
253
187
  }
254
- }, {
255
- key: "setInitialProps",
256
- value: function setInitialProps(props) {
257
- if (!this.props) {
258
- this.props = props;
188
+ }
189
+ render(props) {
190
+ this.setInitialProps(props);
191
+ if (props.stage) {
192
+ const newStage = props.stage;
193
+
194
+ // setting the handler only once
195
+ if (newStage !== this.stage) {
196
+ const stageClickHandler = e => {
197
+ if (e.target !== this.stage) {
198
+ return;
199
+ }
200
+ this.showOnlyTextNodes();
201
+ this.props.forceUpdate();
202
+ };
203
+ newStage.on('click', stageClickHandler);
204
+ this.eventListenersDetachArray.push(() => newStage.off('click', stageClickHandler));
259
205
  }
206
+ this.stage = newStage;
260
207
  }
261
- }, {
262
- key: "render",
263
- value: function render(props) {
264
- var _this3 = this;
265
-
266
- this.setInitialProps(props);
267
-
268
- if (props.stage) {
269
- var newStage = props.stage; // setting the handler only once
270
-
271
- if (newStage !== this.stage) {
272
- var stageClickHandler = function stageClickHandler(e) {
273
- if (e.target !== _this3.stage) {
274
- return;
275
- }
276
-
277
- _this3.showOnlyTextNodes();
278
-
279
- _this3.props.forceUpdate();
280
- };
281
-
282
- newStage.on('click', stageClickHandler);
283
- this.eventListenersDetachArray.push(function () {
284
- return newStage.off('click', stageClickHandler);
285
- });
286
- }
287
-
288
- this.stage = newStage;
208
+ return this.all.map(text => {
209
+ const {
210
+ id,
211
+ label,
212
+ x,
213
+ y,
214
+ width,
215
+ textVisible,
216
+ rotation,
217
+ transformerVisible
218
+ } = text;
219
+ const textNode = `text_${id}`;
220
+ const transformerNode = `transformer_${id}`;
221
+ let extraProps = {};
222
+ if (!props.disabled) {
223
+ extraProps = {
224
+ onClick: e => this.handleClick(e, id),
225
+ onTap: e => this.handleClick(e, id),
226
+ onDblClick: e => this.handleDblClick(e, text),
227
+ onDblTap: e => this.handleDblClick(e, text),
228
+ onTransform: e => this.handleTransform(e, textNode),
229
+ onTransformEnd: this.props.handleSessionChange,
230
+ onMouseDown: this.handleMouseDown,
231
+ onTouchStart: this.handleMouseDown,
232
+ onMouseUp: this.handleMouseUp,
233
+ onTouchEnd: this.handleMouseUp,
234
+ onDragEnd: this.props.handleSessionChange,
235
+ onMouseEnter: this.props.onMouseOverElement,
236
+ onMouseLeave: this.props.onMouseOutElement
237
+ };
289
238
  }
290
-
291
- return this.all.map(function (text) {
292
- var id = text.id,
293
- label = text.label,
294
- x = text.x,
295
- y = text.y,
296
- width = text.width,
297
- textVisible = text.textVisible,
298
- rotation = text.rotation,
299
- transformerVisible = text.transformerVisible;
300
- var textNode = "text_".concat(id);
301
- var transformerNode = "transformer_".concat(id);
302
- var extraProps = {};
303
-
304
- if (!props.disabled) {
305
- extraProps = {
306
- onClick: function onClick(e) {
307
- return _this3.handleClick(e, id);
308
- },
309
- onTap: function onTap(e) {
310
- return _this3.handleClick(e, id);
311
- },
312
- onDblClick: function onDblClick(e) {
313
- return _this3.handleDblClick(e, text);
314
- },
315
- onDblTap: function onDblTap(e) {
316
- return _this3.handleDblClick(e, text);
317
- },
318
- onTransform: function onTransform(e) {
319
- return _this3.handleTransform(e, textNode);
320
- },
321
- onTransformEnd: _this3.props.handleSessionChange,
322
- onMouseDown: _this3.handleMouseDown,
323
- onTouchStart: _this3.handleMouseDown,
324
- onMouseUp: _this3.handleMouseUp,
325
- onTouchEnd: _this3.handleMouseUp,
326
- onDragEnd: _this3.props.handleSessionChange,
327
- onMouseEnter: _this3.props.onMouseOverElement,
328
- onMouseLeave: _this3.props.onMouseOutElement
329
- };
330
- }
331
-
332
- if (rotation) {
333
- extraProps.rotation = rotation;
334
- }
335
-
336
- return [/*#__PURE__*/_react["default"].createElement(_reactKonva.Text, (0, _extends2["default"])({
337
- key: id,
338
- bubbles: true,
339
- id: id,
340
- ref: function ref(text) {
341
- _this3[textNode] = text;
342
- },
343
- text: text.text || label,
344
- name: textNode,
345
- x: x,
346
- y: y,
347
- width: width,
348
- draggable: !props.disabled,
349
- visible: textVisible,
350
- fontSize: 16
351
- }, extraProps)), transformerVisible && /*#__PURE__*/_react["default"].createElement(_drawableTransformer["default"], {
352
- key: "transformer_".concat(id),
353
- ref: function ref(text) {
354
- _this3[transformerNode] = text;
355
- },
356
- selectedShapeName: textNode,
357
- onMouseDown: _this3.handleMouseDown,
358
- onTouchStart: _this3.handleMouseDown,
359
- onMouseUp: _this3.handleMouseUp,
360
- onTouchEnd: _this3.handleMouseUp
361
- })];
362
- });
363
- }
364
- }], [{
365
- key: "getTextareaNode",
366
- value: function getTextareaNode(id) {
367
- return "textarea_".concat(id);
368
- }
369
- }, {
370
- key: "getTextNode",
371
- value: function getTextNode(id) {
372
- return "text_".concat(id);
373
- }
374
- }, {
375
- key: "getTransformerNode",
376
- value: function getTransformerNode(id) {
377
- return "transformer_".concat(id);
378
- }
379
- }]);
380
- return TextDrawable;
381
- }();
382
-
383
- exports["default"] = TextDrawable;
239
+ if (rotation) {
240
+ extraProps.rotation = rotation;
241
+ }
242
+ return [/*#__PURE__*/_react.default.createElement(_reactKonva.Text, (0, _extends2.default)({
243
+ key: id,
244
+ bubbles: true,
245
+ id: id,
246
+ ref: text => {
247
+ this[textNode] = text;
248
+ },
249
+ text: text.text || label,
250
+ name: textNode,
251
+ x: x,
252
+ y: y,
253
+ width: width,
254
+ draggable: !props.disabled,
255
+ visible: textVisible,
256
+ fontSize: 16
257
+ }, extraProps)), transformerVisible && /*#__PURE__*/_react.default.createElement(_drawableTransformer.default, {
258
+ key: `transformer_${id}`,
259
+ ref: text => {
260
+ this[transformerNode] = text;
261
+ },
262
+ selectedShapeName: textNode,
263
+ onMouseDown: this.handleMouseDown,
264
+ onTouchStart: this.handleMouseDown,
265
+ onMouseUp: this.handleMouseUp,
266
+ onTouchEnd: this.handleMouseUp
267
+ })];
268
+ });
269
+ }
270
+ }
271
+ exports.default = TextDrawable;
384
272
  //# sourceMappingURL=drawable-text.js.map