@arbisoft/react-design-tool 1.0.18 → 1.0.19
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/README.md +2 -2
- package/dist/cjs/index.js +61 -27
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +61 -27
- package/dist/esm/index.js.map +1 -1
- package/package.json +2 -2
package/dist/esm/index.js
CHANGED
|
@@ -2765,7 +2765,7 @@ var OpacityPicker = function OpacityPicker(_ref) {
|
|
|
2765
2765
|
src: IconOpacity
|
|
2766
2766
|
})), /*#__PURE__*/React.createElement(StyledText, {
|
|
2767
2767
|
fontFamily: fontFamily
|
|
2768
|
-
}, varient === 'opacity' ? "".concat(value * 100, "%") : value), rightChild && rightChild), opacityPickerVisible && /*#__PURE__*/React.createElement("div", {
|
|
2768
|
+
}, varient === 'opacity' ? "".concat(value * 100, "%") : Math.round(value)), rightChild && rightChild), opacityPickerVisible && /*#__PURE__*/React.createElement("div", {
|
|
2769
2769
|
style: {
|
|
2770
2770
|
position: 'absolute',
|
|
2771
2771
|
bottom: -50,
|
|
@@ -4202,31 +4202,35 @@ TextEditor.propTypes = propTypes$c;
|
|
|
4202
4202
|
|
|
4203
4203
|
var EditableText = function EditableText(_ref) {
|
|
4204
4204
|
var element = _ref.element,
|
|
4205
|
+
trRef = _ref.trRef,
|
|
4205
4206
|
onClick = _ref.onClick,
|
|
4206
4207
|
_onDragEnd = _ref.onDragEnd,
|
|
4207
4208
|
onTransformEnd = _ref.onTransformEnd,
|
|
4208
4209
|
id = _ref.id,
|
|
4209
4210
|
onTransform = _ref.onTransform,
|
|
4210
4211
|
onChangeTextContent = _ref.onChangeTextContent,
|
|
4211
|
-
onChangeTextProperty = _ref.onChangeTextProperty,
|
|
4212
4212
|
onDragMove = _ref.onDragMove;
|
|
4213
4213
|
var textRef = useRef();
|
|
4214
4214
|
var _useState = useState(element === null || element === void 0 ? void 0 : element.width),
|
|
4215
4215
|
_useState2 = _slicedToArray(_useState, 2),
|
|
4216
4216
|
textWidth = _useState2[0],
|
|
4217
4217
|
setTextWidth = _useState2[1];
|
|
4218
|
-
var _useState3 = useState(
|
|
4218
|
+
var _useState3 = useState(element === null || element === void 0 ? void 0 : element.fontSize),
|
|
4219
4219
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
4220
|
-
|
|
4221
|
-
|
|
4222
|
-
var _useState5 = useState(
|
|
4220
|
+
textFontSize = _useState4[0],
|
|
4221
|
+
setTextFontSize = _useState4[1];
|
|
4222
|
+
var _useState5 = useState(false),
|
|
4223
4223
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
4224
|
-
|
|
4225
|
-
|
|
4226
|
-
var _useState7 = useState(
|
|
4224
|
+
isEditing = _useState6[0],
|
|
4225
|
+
setIsEditing = _useState6[1];
|
|
4226
|
+
var _useState7 = useState(element === null || element === void 0 ? void 0 : element.text),
|
|
4227
4227
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
4228
|
-
|
|
4229
|
-
|
|
4228
|
+
text = _useState8[0],
|
|
4229
|
+
setText = _useState8[1];
|
|
4230
|
+
var _useState9 = useState(false),
|
|
4231
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
4232
|
+
isFontLoaded = _useState10[0],
|
|
4233
|
+
setIsFontLoaded = _useState10[1];
|
|
4230
4234
|
useEffect(function () {
|
|
4231
4235
|
setIsFontLoaded(false);
|
|
4232
4236
|
setTimeout(function () {
|
|
@@ -4236,23 +4240,49 @@ var EditableText = function EditableText(_ref) {
|
|
|
4236
4240
|
useEffect(function () {
|
|
4237
4241
|
setTextWidth(element === null || element === void 0 ? void 0 : element.width);
|
|
4238
4242
|
setText(element === null || element === void 0 ? void 0 : element.text);
|
|
4243
|
+
setTextFontSize(element === null || element === void 0 ? void 0 : element.fontSize);
|
|
4239
4244
|
}, [element]);
|
|
4240
4245
|
var tranform = function tranform(e) {
|
|
4241
|
-
var
|
|
4246
|
+
var transformer = trRef.current;
|
|
4247
|
+
var activeAnchor = transformer.getActiveAnchor();
|
|
4248
|
+
if (activeAnchor === 'middle-right' || activeAnchor === 'middle-left') {
|
|
4249
|
+
var node = e.target;
|
|
4250
|
+
var scaleX = sanitizeNumber(node.scaleX(), 1);
|
|
4251
|
+
var updatedWidth = sanitizeNumber(node.width() * scaleX, element.width);
|
|
4252
|
+
var updatedObject = _objectSpread2(_objectSpread2({}, node.attrs), {}, {
|
|
4253
|
+
width: updatedWidth,
|
|
4254
|
+
scaleX: 1,
|
|
4255
|
+
scaleY: 1
|
|
4256
|
+
});
|
|
4257
|
+
delete updatedObject['ref'];
|
|
4258
|
+
setTextWidth(updatedWidth);
|
|
4259
|
+
onTransform && onTransform(updatedObject);
|
|
4260
|
+
node.scaleX(1);
|
|
4261
|
+
node.scaleY(1);
|
|
4262
|
+
}
|
|
4263
|
+
};
|
|
4264
|
+
var handleTransformEnd = function handleTransformEnd(e) {
|
|
4265
|
+
var transformer = trRef.current;
|
|
4266
|
+
var activeAnchor = transformer.getActiveAnchor();
|
|
4267
|
+
if (activeAnchor === 'middle-right' || activeAnchor === 'middle-left') {
|
|
4268
|
+
onTransformEnd && onTransformEnd(e);
|
|
4269
|
+
return;
|
|
4270
|
+
}
|
|
4271
|
+
var node = textRef.current;
|
|
4272
|
+
var nodeAttrs = node.attrs;
|
|
4242
4273
|
var scaleX = sanitizeNumber(node.scaleX(), 1);
|
|
4243
|
-
var
|
|
4244
|
-
var
|
|
4274
|
+
var newFontSize = nodeAttrs.fontSize * scaleX;
|
|
4275
|
+
var updatedWidth = sanitizeNumber(node.width() * scaleX, nodeAttrs.width);
|
|
4276
|
+
node.scaleX(1);
|
|
4277
|
+
node.scaleY(1);
|
|
4278
|
+
var updatedObject = _objectSpread2(_objectSpread2({}, nodeAttrs), {}, {
|
|
4245
4279
|
width: updatedWidth,
|
|
4246
|
-
|
|
4247
|
-
scaleY: 1
|
|
4280
|
+
fontSize: newFontSize
|
|
4248
4281
|
});
|
|
4249
|
-
|
|
4282
|
+
setTextFontSize(newFontSize);
|
|
4250
4283
|
setTextWidth(updatedWidth);
|
|
4284
|
+
delete updatedObject['ref'];
|
|
4251
4285
|
onTransform && onTransform(updatedObject);
|
|
4252
|
-
node.scaleX(1);
|
|
4253
|
-
node.scaleY(1);
|
|
4254
|
-
};
|
|
4255
|
-
var transformEnd = function transformEnd(e) {
|
|
4256
4286
|
onTransformEnd && onTransformEnd(e);
|
|
4257
4287
|
};
|
|
4258
4288
|
var handleTextDblClick = function handleTextDblClick() {
|
|
@@ -4268,7 +4298,7 @@ var EditableText = function EditableText(_ref) {
|
|
|
4268
4298
|
var width = textRef === null || textRef === void 0 || (_textRef$current = textRef.current) === null || _textRef$current === void 0 ? void 0 : _textRef$current.getWidth();
|
|
4269
4299
|
if (width) {
|
|
4270
4300
|
setTextWidth(width);
|
|
4271
|
-
onChangeTextProperty('width', width);
|
|
4301
|
+
// onChangeTextProperty('width', width);
|
|
4272
4302
|
}
|
|
4273
4303
|
// const scaleX = sanitizeNumber(node?.scaleX(), 1);
|
|
4274
4304
|
// const updatedWidth = sanitizeNumber(node?.width() * scaleX, element?.width);
|
|
@@ -4285,6 +4315,7 @@ var EditableText = function EditableText(_ref) {
|
|
|
4285
4315
|
fontVariant: element === null || element === void 0 ? void 0 : element.fontWeight,
|
|
4286
4316
|
align: element === null || element === void 0 ? void 0 : element.textAlign,
|
|
4287
4317
|
width: textWidth,
|
|
4318
|
+
fontSize: textFontSize,
|
|
4288
4319
|
text: text,
|
|
4289
4320
|
fill: element === null || element === void 0 ? void 0 : element.color,
|
|
4290
4321
|
opacity: 0,
|
|
@@ -4299,6 +4330,7 @@ var EditableText = function EditableText(_ref) {
|
|
|
4299
4330
|
fontVariant: element === null || element === void 0 ? void 0 : element.fontWeight,
|
|
4300
4331
|
align: element === null || element === void 0 ? void 0 : element.textAlign,
|
|
4301
4332
|
width: textWidth,
|
|
4333
|
+
fontSize: textFontSize,
|
|
4302
4334
|
text: text,
|
|
4303
4335
|
fill: element === null || element === void 0 ? void 0 : element.color,
|
|
4304
4336
|
onClick: function onClick() {
|
|
@@ -4311,7 +4343,7 @@ var EditableText = function EditableText(_ref) {
|
|
|
4311
4343
|
return _onDragEnd && _onDragEnd(e);
|
|
4312
4344
|
},
|
|
4313
4345
|
onTransformEnd: function onTransformEnd(e) {
|
|
4314
|
-
|
|
4346
|
+
handleTransformEnd(e);
|
|
4315
4347
|
},
|
|
4316
4348
|
onDragMove: onDragMove,
|
|
4317
4349
|
onDblClick: handleTextDblClick,
|
|
@@ -4961,6 +4993,7 @@ var Editor = function Editor(_ref) {
|
|
|
4961
4993
|
});
|
|
4962
4994
|
case elementTypes.text:
|
|
4963
4995
|
return /*#__PURE__*/React.createElement(EditableText, {
|
|
4996
|
+
trRef: transformerRef,
|
|
4964
4997
|
key: el.id,
|
|
4965
4998
|
id: el.id,
|
|
4966
4999
|
element: el,
|
|
@@ -4975,8 +5008,7 @@ var Editor = function Editor(_ref) {
|
|
|
4975
5008
|
handleDragEnd(e);
|
|
4976
5009
|
},
|
|
4977
5010
|
onDragMove: handleDragging,
|
|
4978
|
-
onChangeTextContent: onChangeTextContent
|
|
4979
|
-
onChangeTextProperty: onChangeTextProperty
|
|
5011
|
+
onChangeTextContent: onChangeTextContent
|
|
4980
5012
|
});
|
|
4981
5013
|
default:
|
|
4982
5014
|
return null;
|
|
@@ -5065,7 +5097,7 @@ var Editor = function Editor(_ref) {
|
|
|
5065
5097
|
ref: transformerRef,
|
|
5066
5098
|
onTransform: handleResizing,
|
|
5067
5099
|
onTransformEnd: handleResizeEnd,
|
|
5068
|
-
enabledAnchors: selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable ? (selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.type) === (elementTypes === null || elementTypes === void 0 ? void 0 : elementTypes.text) ? ['middle-left', 'middle-right'] : ['top-left', 'top-right', 'bottom-left', 'bottom-right', 'middle-left', 'middle-right', 'top-center', 'bottom-center'] : [],
|
|
5100
|
+
enabledAnchors: selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable ? (selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.type) === (elementTypes === null || elementTypes === void 0 ? void 0 : elementTypes.text) ? ['top-left', 'top-right', 'bottom-left', 'bottom-right', 'middle-left', 'middle-right'] : ['top-left', 'top-right', 'bottom-left', 'bottom-right', 'middle-left', 'middle-right', 'top-center', 'bottom-center'] : [],
|
|
5069
5101
|
borderStroke: theme.color.primary,
|
|
5070
5102
|
borderStrokeWidth: 2
|
|
5071
5103
|
// add anchors
|
|
@@ -5080,7 +5112,9 @@ var Editor = function Editor(_ref) {
|
|
|
5080
5112
|
,
|
|
5081
5113
|
boundBoxFunc: function boundBoxFunc(oldBox, newBox) {
|
|
5082
5114
|
// limit resize
|
|
5083
|
-
if (!(selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable)
|
|
5115
|
+
if (!(selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable) ||
|
|
5116
|
+
// Handle element flliping
|
|
5117
|
+
newBox.width < 1 || newBox.height < 1) {
|
|
5084
5118
|
return oldBox;
|
|
5085
5119
|
}
|
|
5086
5120
|
return newBox;
|