@arbisoft/react-design-tool 1.0.3 → 1.0.4
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 +93 -36
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.js +94 -37
- package/dist/esm/index.js.map +1 -1
- package/package.json +27 -15
package/README.md
CHANGED
|
@@ -35,12 +35,12 @@ yarn add @arbisoft/react-design-tool
|
|
|
35
35
|
```
|
|
36
36
|
#### Required Dependencies:
|
|
37
37
|
```bash
|
|
38
|
-
npm install konva prop-types qrcode react-konva react-konva-utils styled-components
|
|
38
|
+
npm install konva prop-types qrcode react-konva react-konva-utils styled-components @emotion/is-prop-valid
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
OR
|
|
42
42
|
```bash
|
|
43
|
-
yarn add konva prop-types qrcode react-konva react-konva-utils styled-components
|
|
43
|
+
yarn add konva prop-types qrcode react-konva react-konva-utils styled-components @emotion/is-prop-valid
|
|
44
44
|
|
|
45
45
|
```
|
|
46
46
|
## 🚀 Quick Start
|
package/dist/cjs/index.js
CHANGED
|
@@ -616,7 +616,7 @@ var propTypes$y = {
|
|
|
616
616
|
pillActiveColor: PropTypes.string
|
|
617
617
|
};
|
|
618
618
|
|
|
619
|
-
var _templateObject$s, _templateObject2$m, _templateObject3$
|
|
619
|
+
var _templateObject$s, _templateObject2$m, _templateObject3$c;
|
|
620
620
|
var SideBarItem = styled.div(_templateObject$s || (_templateObject$s = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100px;\n min-height: 100px;\n background-color: ", ";\n margin-bottom: 2px;\n cursor: pointer;\n transition: background-color 0.2s ease-in-out;\n\n &:hover {\n background-color: ", ";\n }\n"])), function (_ref) {
|
|
621
621
|
var isSelected = _ref.isSelected,
|
|
622
622
|
pillActiveColor = _ref.pillActiveColor;
|
|
@@ -630,23 +630,23 @@ var SideBarIcon = styled.img(_templateObject2$m || (_templateObject2$m = _tagged
|
|
|
630
630
|
isSelected = _ref3$isSelected === void 0 ? false : _ref3$isSelected;
|
|
631
631
|
return isSelected ? 'brightness(0) invert(1)' : 'none';
|
|
632
632
|
}, SideBarItem);
|
|
633
|
-
var SideBarText = styled.p(_templateObject3$
|
|
633
|
+
var SideBarText = styled.p(_templateObject3$c || (_templateObject3$c = _taggedTemplateLiteral(["\n color: ", ";\n font-size: 12px;\n font-family: ", ";\n font-weight: ", ";\n line-height: 109.023%;\n text-align: center;\n\n ", ":hover & {\n color: ", ";\n }\n"])), function (_ref4) {
|
|
634
634
|
var _ref4$isSelected = _ref4.isSelected,
|
|
635
635
|
isSelected = _ref4$isSelected === void 0 ? false : _ref4$isSelected;
|
|
636
636
|
return isSelected ? theme.color.white : theme.color.gray_535354;
|
|
637
637
|
}, theme.fonts.primary, theme.fontWeights[400], SideBarItem, theme.color.white);
|
|
638
638
|
|
|
639
639
|
var SideBarPill = function SideBarPill(_ref) {
|
|
640
|
-
var
|
|
641
|
-
_ref$isSelected = _ref.isSelected,
|
|
640
|
+
var _ref$isSelected = _ref.isSelected,
|
|
642
641
|
isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
|
|
643
642
|
_ref$onClick = _ref.onClick,
|
|
644
643
|
_onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
|
|
645
644
|
icon = _ref.icon,
|
|
646
645
|
text = _ref.text,
|
|
647
|
-
pillActiveColor = _ref.pillActiveColor
|
|
646
|
+
pillActiveColor = _ref.pillActiveColor,
|
|
647
|
+
id = _ref.id;
|
|
648
648
|
return /*#__PURE__*/React.createElement(SideBarItem, {
|
|
649
|
-
key:
|
|
649
|
+
key: id,
|
|
650
650
|
isSelected: isSelected,
|
|
651
651
|
onClick: function onClick() {
|
|
652
652
|
return _onClick();
|
|
@@ -759,6 +759,8 @@ var IconHeart = "data:image/svg+xml,%3Csvg%20width%3D%2247%22%20height%3D%2247%2
|
|
|
759
759
|
|
|
760
760
|
var IconUnlock = "data:image/svg+xml,%3Csvg%20width%3D%2217%22%20height%3D%2216%22%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M8.66368%202.01017C9.32164%201.94371%209.98083%202.1241%2010.5133%202.51632C11.0457%202.90854%2011.4134%203.4846%2011.545%204.13269C11.6183%204.49351%2011.9702%204.72662%2012.331%204.65336C12.6918%204.58009%2012.925%204.22819%2012.8517%203.86736C12.6543%202.89524%2012.1027%202.03114%2011.3041%201.44281C10.5054%200.854482%209.51663%200.583899%208.52969%200.68359C7.54691%200.782861%206.63577%201.24224%205.97161%201.97299L5.96306%201.98228C5.29856%202.71803%204.93098%203.67431%204.93156%204.66567L4.93156%206.66675H4.26489C3.16032%206.66675%202.26489%207.56218%202.26489%208.66675V13.3334C2.26489%2014.438%203.16032%2015.3334%204.26489%2015.3334H13.5982C14.7028%2015.3334%2015.5982%2014.438%2015.5982%2013.3334V8.66675C15.5982%207.56218%2014.7028%206.66675%2013.5982%206.66675H6.26489L6.26489%204.66601C6.26423%204.00811%206.50679%203.37331%206.94572%202.88356L6.95268%202.87597C7.39593%202.3852%208.00572%202.07663%208.66368%202.01017ZM4.26489%208.00008C3.8967%208.00008%203.59823%208.29856%203.59823%208.66675V13.3334C3.59823%2013.7016%203.8967%2014.0001%204.26489%2014.0001H13.5982C13.9664%2014.0001%2014.2649%2013.7016%2014.2649%2013.3334V8.66675C14.2649%208.29856%2013.9664%208.00008%2013.5982%208.00008H4.26489Z%22%20fill%3D%22%234D6277%22%2F%3E%3C%2Fsvg%3E";
|
|
761
761
|
|
|
762
|
+
var IconCross = "data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xml%3Aspace%3D%22preserve%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20enable-background%3D%22new%200%200%2024%2024%22%3E%3Cpath%20d%3D%22M5.3%2018.7c.2.2.4.3.7.3s.5-.1.7-.3l5.3-5.3%205.3%205.3c.2.2.5.3.7.3s.5-.1.7-.3c.4-.4.4-1%200-1.4L13.4%2012l5.3-5.3c.4-.4.4-1%200-1.4s-1-.4-1.4%200L12%2010.6%206.7%205.3c-.4-.4-1-.4-1.4%200s-.4%201%200%201.4l5.3%205.3-5.3%205.3c-.4.4-.4%201%200%201.4z%22%20id%3D%22_icons%22%20fill%3D%22%23ffffff%22%20class%3D%22fill-000000%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E";
|
|
763
|
+
|
|
762
764
|
var EditorBg = "/images/small-dots.png";
|
|
763
765
|
|
|
764
766
|
var topTabBarpadding = '11.51px 14.16px';
|
|
@@ -1880,6 +1882,7 @@ var SideBar = function SideBar(_ref) {
|
|
|
1880
1882
|
}
|
|
1881
1883
|
return /*#__PURE__*/React.createElement(SideBarPill, {
|
|
1882
1884
|
key: item === null || item === void 0 ? void 0 : item.id,
|
|
1885
|
+
id: item === null || item === void 0 ? void 0 : item.id,
|
|
1883
1886
|
isSelected: selectedSideBarItem === (item === null || item === void 0 ? void 0 : item.id),
|
|
1884
1887
|
onClick: function onClick() {
|
|
1885
1888
|
return onClickSinglePill(item === null || item === void 0 ? void 0 : item.id);
|
|
@@ -1954,13 +1957,13 @@ var propTypes$x = {
|
|
|
1954
1957
|
onChangeCuttingGuideProp: PropTypes.func
|
|
1955
1958
|
};
|
|
1956
1959
|
|
|
1957
|
-
var _templateObject$r, _templateObject2$l, _templateObject3$
|
|
1960
|
+
var _templateObject$r, _templateObject2$l, _templateObject3$b, _templateObject4$5, _templateObject5$3;
|
|
1958
1961
|
var Container$4 = styled.div(_templateObject$r || (_templateObject$r = _taggedTemplateLiteral(["\n flex: 1;\n display: flex;\n background-color: ", ";\n background-image: ", ";\n position: relative;\n flex-direction: column;\n overflow: hidden;\n"])), theme.color.white_F7F7F7, function (_ref) {
|
|
1959
1962
|
var selectedTab = _ref.selectedTab;
|
|
1960
1963
|
return selectedTab ? 'none' : "url(".concat(EditorBg, ")");
|
|
1961
1964
|
});
|
|
1962
|
-
var InnerContainer = styled.div(_templateObject2$l || (_templateObject2$l = _taggedTemplateLiteral(["\n // display: flex;\n // flex-direction: column;\n // overflow: auto;\n // flex: 1;\n // align-items: center;\n // justify-content: center;\n // flex-grow: 1;\n // background: green;\n // // min-height: 100px;\n\n display: grid;\n place-items: center;\n overflow: auto;\n flex: 1;\n"])));
|
|
1963
|
-
var InnerContainerWrapper = styled.div(_templateObject3$
|
|
1965
|
+
var InnerContainer = styled.div(_templateObject2$l || (_templateObject2$l = _taggedTemplateLiteral(["\n // display: flex;\n // flex-direction: column;\n // overflow: auto;\n // flex: 1;\n // align-items: center;\n // justify-content: center;\n // flex-grow: 1;\n // background: green;\n // // min-height: 100px;\n\n display: grid;\n place-items: center;\n overflow: auto;\n flex: 1;\n position: relative;\n"])));
|
|
1966
|
+
var InnerContainerWrapper = styled.div(_templateObject3$b || (_templateObject3$b = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n overflow: auto;\n flex: 1;\n justify-content: center;\n min-height: ", "px;\n height: ", "px;\n min-width: ", "px;\n width: ", "px;\n"])), function (_ref2) {
|
|
1964
1967
|
var editorHeight = _ref2.editorHeight;
|
|
1965
1968
|
return editorHeight || 500;
|
|
1966
1969
|
}, function (_ref3) {
|
|
@@ -2073,7 +2076,7 @@ var propTypes$u = {
|
|
|
2073
2076
|
};
|
|
2074
2077
|
|
|
2075
2078
|
var _templateObject$p;
|
|
2076
|
-
var StyledContainer$6 = styled.div(_templateObject$p || (_templateObject$p = _taggedTemplateLiteral(["\n border: 1px solid ", ";\n border-radius: 8px;\n background-color: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n display: flex;\n align-items: center;\n justify-content: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n cursor: ", ";\n gap: ", ";\n opacity: ", ";\n pointer-events: ", ";\n"])), theme.color.gray_200, theme.color.white, function (_ref) {
|
|
2079
|
+
var StyledContainer$6 = styled.div(_templateObject$p || (_templateObject$p = _taggedTemplateLiteral(["\n border: 1px solid ", ";\n border-radius: 8px;\n background-color: ", ";\n height: ", ";\n margin-left: ", ";\n margin-right: ", ";\n display: flex;\n align-items: center;\n justify-content: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n cursor: ", ";\n gap: ", ";\n opacity: ", ";\n pointer-events: ", ";\n position: relative;\n"])), theme.color.gray_200, theme.color.white, function (_ref) {
|
|
2077
2080
|
var _ref$height = _ref.height,
|
|
2078
2081
|
height = _ref$height === void 0 ? 40 : _ref$height;
|
|
2079
2082
|
return "".concat(height, "px");
|
|
@@ -2127,14 +2130,14 @@ var propTypes$t = {
|
|
|
2127
2130
|
disabled: PropTypes.bool
|
|
2128
2131
|
};
|
|
2129
2132
|
|
|
2130
|
-
var _templateObject$o, _templateObject2$j, _templateObject3$
|
|
2133
|
+
var _templateObject$o, _templateObject2$j, _templateObject3$a, _templateObject4$4, _templateObject5$2, _templateObject6;
|
|
2131
2134
|
var Wrapper = styled.div(_templateObject$o || (_templateObject$o = _taggedTemplateLiteral(["\n position: relative;\n display: inline-block;\n cursor: ", ";\n"])), function (_ref) {
|
|
2132
2135
|
var disabled = _ref.disabled;
|
|
2133
2136
|
return disabled ? 'not-allowed' : 'pointer';
|
|
2134
2137
|
});
|
|
2135
2138
|
var TooltipText = styled.div(_templateObject2$j || (_templateObject2$j = _taggedTemplateLiteral(["\n visibility: hidden;\n background-color: rgba(0, 0, 0, 0.7);\n color: white;\n text-align: center;\n padding: 4px 10px;\n border-radius: 4px;\n position: absolute;\n z-index: 9999;\n white-space: nowrap;\n opacity: 0;\n transition: all 0.1s;\n font-size: 13px;\n font-family: ", ";\n font-weight: ", ";\n\n ", "\n ", "\n ", "\n ", "\n\n ", ":hover & {\n visibility: visible;\n opacity: 1;\n }\n"])), theme.fonts.primary, theme.fontWeights[400], function (_ref2) {
|
|
2136
2139
|
var position = _ref2.position;
|
|
2137
|
-
return position === 'top' && styled.css(_templateObject3$
|
|
2140
|
+
return position === 'top' && styled.css(_templateObject3$a || (_templateObject3$a = _taggedTemplateLiteral(["\n bottom: 110%;\n left: 50%;\n transform: translateX(-50%);\n "])));
|
|
2138
2141
|
}, function (_ref3) {
|
|
2139
2142
|
var position = _ref3.position;
|
|
2140
2143
|
return position === 'right' && styled.css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteral(["\n top: 50%;\n left: 105%;\n transform: translateY(-50%);\n "])));
|
|
@@ -2215,10 +2218,10 @@ var propTypes$s = {
|
|
|
2215
2218
|
tooltip: PropTypes.string
|
|
2216
2219
|
};
|
|
2217
2220
|
|
|
2218
|
-
var _templateObject$n, _templateObject2$i, _templateObject3$
|
|
2221
|
+
var _templateObject$n, _templateObject2$i, _templateObject3$9, _templateObject4$3;
|
|
2219
2222
|
var DropDownItem = styled.div(_templateObject$n || (_templateObject$n = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
|
|
2220
2223
|
var IconWrapper$3 = styled.img(_templateObject2$i || (_templateObject2$i = _taggedTemplateLiteral(["\n object-fit: contain;\n"])));
|
|
2221
|
-
var DropDownList = styled.div(_templateObject3$
|
|
2224
|
+
var DropDownList = styled.div(_templateObject3$9 || (_templateObject3$9 = _taggedTemplateLiteral(["\n position: absolute;\n left: 0;\n top: 50;\n background-color: white;\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);\n border-radius: 4px;\n margin-top: 5px;\n z-index: 10;\n width: 100%;\n max-height: 200px;\n overflow-y: auto;\n z-index: 9999;\n"])));
|
|
2222
2225
|
|
|
2223
2226
|
// Individual option in the dropdown
|
|
2224
2227
|
var DropDownOption = styled.div(_templateObject4$3 || (_templateObject4$3 = _taggedTemplateLiteral(["\n padding: 8px 16px;\n cursor: pointer;\n font-size: 14px;\n color: #333;\n &:hover {\n background-color: #f0f0f0;\n }\n &:active {\n background-color: #e0e0e0;\n }\n"])));
|
|
@@ -2289,9 +2292,10 @@ var DropDown = function DropDown(_ref) {
|
|
|
2289
2292
|
};
|
|
2290
2293
|
DropDown.propTypes = propTypes$s;
|
|
2291
2294
|
|
|
2292
|
-
var _templateObject$m, _templateObject2$h;
|
|
2295
|
+
var _templateObject$m, _templateObject2$h, _templateObject3$8;
|
|
2293
2296
|
var Label$1 = styled.p(_templateObject$m || (_templateObject$m = _taggedTemplateLiteral(["\n color: ", ";\n font-size: 14px;\n font-weight: ", ";\n font-family: ", ";\n"])), theme.color.gray_700, theme.fontWeights[400], theme.fonts.primary);
|
|
2294
2297
|
var RowContainer$4 = styled.div(_templateObject2$h || (_templateObject2$h = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n align-items: center;\n flex-wrap: wrap;\n gap: 2px;\n"])));
|
|
2298
|
+
var RemoveButton = styled.div(_templateObject3$8 || (_templateObject3$8 = _taggedTemplateLiteral(["\n height: 20px;\n width: 20px;\n border-radius: 20px;\n position: absolute;\n right: -7px;\n top: -7px;\n background: #ff4d4d;\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
|
|
2295
2299
|
|
|
2296
2300
|
var propTypes$r = {
|
|
2297
2301
|
backgroundColor: PropTypes.string,
|
|
@@ -2933,7 +2937,9 @@ var TemplateToolBar = function TemplateToolBar(_ref) {
|
|
|
2933
2937
|
setLoadingUploadImage = _ref.setLoadingUploadImage,
|
|
2934
2938
|
cuttingGuideStroke = _ref.cuttingGuideStroke,
|
|
2935
2939
|
cuttingGuideStrokeColor = _ref.cuttingGuideStrokeColor,
|
|
2936
|
-
onChangeCuttingGuideProp = _ref.onChangeCuttingGuideProp
|
|
2940
|
+
onChangeCuttingGuideProp = _ref.onChangeCuttingGuideProp,
|
|
2941
|
+
canvasBackgroundImage = _ref.canvasBackgroundImage,
|
|
2942
|
+
onRemoveBackgroundImage = _ref.onRemoveBackgroundImage;
|
|
2937
2943
|
var selectBackgroundColor = function selectBackgroundColor(e) {
|
|
2938
2944
|
onSetBackgroundColor(e);
|
|
2939
2945
|
};
|
|
@@ -3005,8 +3011,19 @@ var TemplateToolBar = function TemplateToolBar(_ref) {
|
|
|
3005
3011
|
onClick: handleBackgroundUpload,
|
|
3006
3012
|
tooltip: TEXT_DICTIONARY === null || TEXT_DICTIONARY === void 0 || (_TEXT_DICTIONARY$lang3 = TEXT_DICTIONARY[languageLocale]) === null || _TEXT_DICTIONARY$lang3 === void 0 ? void 0 : _TEXT_DICTIONARY$lang3.BACKGROUND_IMAGE,
|
|
3007
3013
|
tooltipPosition: 'bottom'
|
|
3014
|
+
}, canvasBackgroundImage && /*#__PURE__*/React.createElement(RemoveButton, {
|
|
3015
|
+
onClick: function onClick(e) {
|
|
3016
|
+
onRemoveBackgroundImage && onRemoveBackgroundImage();
|
|
3017
|
+
e.stopPropagation();
|
|
3018
|
+
}
|
|
3008
3019
|
}, /*#__PURE__*/React.createElement(StyledImage, {
|
|
3009
|
-
src:
|
|
3020
|
+
src: IconCross,
|
|
3021
|
+
height: 15,
|
|
3022
|
+
width: 15
|
|
3023
|
+
})), /*#__PURE__*/React.createElement(StyledImage, {
|
|
3024
|
+
src: (canvasBackgroundImage === null || canvasBackgroundImage === void 0 ? void 0 : canvasBackgroundImage.src) || IconBackgroundImage,
|
|
3025
|
+
height: 24,
|
|
3026
|
+
width: 24
|
|
3010
3027
|
})), /*#__PURE__*/React.createElement(OpacityPicker, {
|
|
3011
3028
|
tooltip: TEXT_DICTIONARY === null || TEXT_DICTIONARY === void 0 || (_TEXT_DICTIONARY$lang4 = TEXT_DICTIONARY[languageLocale]) === null || _TEXT_DICTIONARY$lang4 === void 0 ? void 0 : _TEXT_DICTIONARY$lang4.BACKGROUND_IMAGE_OPACITY,
|
|
3012
3029
|
gap: 10,
|
|
@@ -3486,7 +3503,8 @@ var TopToolBar = function TopToolBar(_ref) {
|
|
|
3486
3503
|
setLoadingUploadImage = _ref.setLoadingUploadImage,
|
|
3487
3504
|
cuttingGuideStroke = _ref.cuttingGuideStroke,
|
|
3488
3505
|
cuttingGuideStrokeColor = _ref.cuttingGuideStrokeColor,
|
|
3489
|
-
onChangeCuttingGuideProp = _ref.onChangeCuttingGuideProp
|
|
3506
|
+
onChangeCuttingGuideProp = _ref.onChangeCuttingGuideProp,
|
|
3507
|
+
onRemoveBackgroundImage = _ref.onRemoveBackgroundImage;
|
|
3490
3508
|
return /*#__PURE__*/React.createElement(ToolBarWrapper, {
|
|
3491
3509
|
disabled: selectedElement && !(selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable)
|
|
3492
3510
|
}, selectedElement && !(selectedElement !== null && selectedElement !== void 0 && selectedElement.draggable) && /*#__PURE__*/React.createElement(OverlayBlocker, {
|
|
@@ -3507,7 +3525,8 @@ var TopToolBar = function TopToolBar(_ref) {
|
|
|
3507
3525
|
setLoadingUploadImage: setLoadingUploadImage,
|
|
3508
3526
|
cuttingGuideStroke: cuttingGuideStroke,
|
|
3509
3527
|
cuttingGuideStrokeColor: cuttingGuideStrokeColor,
|
|
3510
|
-
onChangeCuttingGuideProp: onChangeCuttingGuideProp
|
|
3528
|
+
onChangeCuttingGuideProp: onChangeCuttingGuideProp,
|
|
3529
|
+
onRemoveBackgroundImage: onRemoveBackgroundImage
|
|
3511
3530
|
}) : selectedTab === (sideBarpillsList === null || sideBarpillsList === void 0 ? void 0 : sideBarpillsList.text) ? /*#__PURE__*/React.createElement(TextToolBar, {
|
|
3512
3531
|
fontFamily: isElementOfSameType(selectedElement, elementTypes.text) ? selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.fontFamily : defaultTextProps === null || defaultTextProps === void 0 ? void 0 : defaultTextProps.fontFamily,
|
|
3513
3532
|
fontSize: isElementOfSameType(selectedElement, elementTypes.text) ? selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.fontSize : defaultTextProps === null || defaultTextProps === void 0 ? void 0 : defaultTextProps.fontSize,
|
|
@@ -4643,7 +4662,8 @@ var Editor = function Editor(_ref) {
|
|
|
4643
4662
|
cuttingGuideStrokeColor = _ref.cuttingGuideStrokeColor,
|
|
4644
4663
|
onChangeCuttingGuideProp = _ref.onChangeCuttingGuideProp,
|
|
4645
4664
|
onSave = _ref.onSave,
|
|
4646
|
-
saveButtonText = _ref.saveButtonText
|
|
4665
|
+
saveButtonText = _ref.saveButtonText,
|
|
4666
|
+
onRemoveBackgroundImage = _ref.onRemoveBackgroundImage;
|
|
4647
4667
|
var transformerRef = React.useRef(null);
|
|
4648
4668
|
React.useEffect(function () {
|
|
4649
4669
|
if (transformerRef !== null && transformerRef !== void 0 && transformerRef.current) {
|
|
@@ -4966,7 +4986,8 @@ var Editor = function Editor(_ref) {
|
|
|
4966
4986
|
setLoadingUploadImage: setLoadingUploadImage,
|
|
4967
4987
|
cuttingGuideStroke: cuttingGuideStroke,
|
|
4968
4988
|
cuttingGuideStrokeColor: cuttingGuideStrokeColor,
|
|
4969
|
-
onChangeCuttingGuideProp: onChangeCuttingGuideProp
|
|
4989
|
+
onChangeCuttingGuideProp: onChangeCuttingGuideProp,
|
|
4990
|
+
onRemoveBackgroundImage: onRemoveBackgroundImage
|
|
4970
4991
|
}), /*#__PURE__*/React.createElement(InnerContainer, null, /*#__PURE__*/React.createElement(InnerContainerWrapper, {
|
|
4971
4992
|
editorHeight: editorHeight + 50,
|
|
4972
4993
|
editorWidth: editorWidth
|
|
@@ -5714,7 +5735,8 @@ var Overlay = function Overlay(_ref) {
|
|
|
5714
5735
|
background: backgroundColor,
|
|
5715
5736
|
display: 'flex',
|
|
5716
5737
|
alignItems: 'center',
|
|
5717
|
-
justifyContent: 'center'
|
|
5738
|
+
justifyContent: 'center',
|
|
5739
|
+
zIndex: 99999
|
|
5718
5740
|
}
|
|
5719
5741
|
}, children);
|
|
5720
5742
|
};
|
|
@@ -5756,6 +5778,27 @@ var LoadingSpinner = function LoadingSpinner(_ref) {
|
|
|
5756
5778
|
};
|
|
5757
5779
|
LoadingSpinner.propTypes = propTypes;
|
|
5758
5780
|
|
|
5781
|
+
function memoize(fn) {
|
|
5782
|
+
var cache = Object.create(null);
|
|
5783
|
+
return function (arg) {
|
|
5784
|
+
if (cache[arg] === undefined) cache[arg] = fn(arg);
|
|
5785
|
+
return cache[arg];
|
|
5786
|
+
};
|
|
5787
|
+
}
|
|
5788
|
+
|
|
5789
|
+
// eslint-disable-next-line no-undef
|
|
5790
|
+
var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23
|
|
5791
|
+
|
|
5792
|
+
var isPropValid = /* #__PURE__ */memoize(function (prop) {
|
|
5793
|
+
return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111
|
|
5794
|
+
/* o */
|
|
5795
|
+
&& prop.charCodeAt(1) === 110
|
|
5796
|
+
/* n */
|
|
5797
|
+
&& prop.charCodeAt(2) < 91;
|
|
5798
|
+
}
|
|
5799
|
+
/* Z+1 */
|
|
5800
|
+
);
|
|
5801
|
+
|
|
5759
5802
|
/**
|
|
5760
5803
|
* @typedef {Object} StudioProps
|
|
5761
5804
|
* @property {string} [title]
|
|
@@ -5784,8 +5827,7 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
5784
5827
|
_ref$elementsList = _ref.elementsList,
|
|
5785
5828
|
elementsList = _ref$elementsList === void 0 ? defaultElements : _ref$elementsList,
|
|
5786
5829
|
uploadImageCallBack = _ref.uploadImageCallBack,
|
|
5787
|
-
|
|
5788
|
-
customImages = _ref$customImages === void 0 ? [] : _ref$customImages,
|
|
5830
|
+
customImages = _ref.customImages,
|
|
5789
5831
|
_ref$defaultImages = _ref.defaultImages,
|
|
5790
5832
|
defaultImages = _ref$defaultImages === void 0 ? defaultSideBarImagesList : _ref$defaultImages,
|
|
5791
5833
|
disableWhiteLabel = _ref.disableWhiteLabel,
|
|
@@ -5895,7 +5937,7 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
5895
5937
|
_useState46 = _slicedToArray(_useState45, 2),
|
|
5896
5938
|
selectedElement = _useState46[0],
|
|
5897
5939
|
setSelectedElement = _useState46[1];
|
|
5898
|
-
var _useState47 = React.useState(customImages),
|
|
5940
|
+
var _useState47 = React.useState(customImages || []),
|
|
5899
5941
|
_useState48 = _slicedToArray(_useState47, 2),
|
|
5900
5942
|
customImagesList = _useState48[0],
|
|
5901
5943
|
setCustomImagesList = _useState48[1];
|
|
@@ -5946,17 +5988,18 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
5946
5988
|
}()
|
|
5947
5989
|
};
|
|
5948
5990
|
});
|
|
5991
|
+
// console.log(isPropValid('onClick'));
|
|
5949
5992
|
React.useEffect(function () {
|
|
5950
5993
|
setLanguageLocale(validateLocale(locale));
|
|
5951
5994
|
}, [locale]);
|
|
5952
5995
|
React.useEffect(function () {
|
|
5953
|
-
setCustomImagesList(
|
|
5996
|
+
setCustomImagesList(customImages);
|
|
5954
5997
|
}, [customImages]);
|
|
5955
5998
|
React.useEffect(function () {
|
|
5956
5999
|
setLoadingFonts(true);
|
|
5957
|
-
loadAllGoogleFonts().then(function (
|
|
6000
|
+
loadAllGoogleFonts().then(function () {
|
|
5958
6001
|
// eslint-disable-next-line no-console
|
|
5959
|
-
console.log(msg);
|
|
6002
|
+
// console.log(msg);
|
|
5960
6003
|
})["catch"](function (err) {
|
|
5961
6004
|
// eslint-disable-next-line no-console
|
|
5962
6005
|
console.error('❌ Error loading fonts:', err);
|
|
@@ -5975,12 +6018,13 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
5975
6018
|
var LoadImages = function LoadImages(elems) {
|
|
5976
6019
|
setLoadingImages(true);
|
|
5977
6020
|
preloadRelevantImages(elems).then(function (_ref2) {
|
|
5978
|
-
var
|
|
5979
|
-
errors = _ref2.errors;
|
|
5980
|
-
// eslint-disable-next-line no-console
|
|
5981
|
-
console.log('✅ Loaded images:', successes);
|
|
6021
|
+
var errors = _ref2.errors;
|
|
5982
6022
|
// eslint-disable-next-line no-console
|
|
5983
|
-
console.log('
|
|
6023
|
+
// console.log('✅ Loaded images:', successes);
|
|
6024
|
+
if ((errors === null || errors === void 0 ? void 0 : errors.length) > 0) {
|
|
6025
|
+
// eslint-disable-next-line no-console
|
|
6026
|
+
console.log('❌ Failed images:', errors);
|
|
6027
|
+
}
|
|
5984
6028
|
})["catch"](function (err) {
|
|
5985
6029
|
// eslint-disable-next-line no-console
|
|
5986
6030
|
console.error('Something went really wrong:', err);
|
|
@@ -6166,6 +6210,16 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
6166
6210
|
};
|
|
6167
6211
|
saveHistory([].concat(_toConsumableArray(elemClone), [newElement]));
|
|
6168
6212
|
};
|
|
6213
|
+
var onRemoveBackgroundImage = function onRemoveBackgroundImage() {
|
|
6214
|
+
var elemClone = JSON.parse(JSON.stringify(elements));
|
|
6215
|
+
var backgroundImageIndex = elemClone.findIndex(function (e) {
|
|
6216
|
+
return (e === null || e === void 0 ? void 0 : e.type) === (elementTypes === null || elementTypes === void 0 ? void 0 : elementTypes.backgroundImage);
|
|
6217
|
+
});
|
|
6218
|
+
if (backgroundImageIndex > -1) {
|
|
6219
|
+
elemClone.splice(backgroundImageIndex, 1);
|
|
6220
|
+
saveHistory(elemClone);
|
|
6221
|
+
}
|
|
6222
|
+
};
|
|
6169
6223
|
var onChangeBackgroundImageOpacity = function onChangeBackgroundImageOpacity(val) {
|
|
6170
6224
|
var backgroundImageIndex = elements === null || elements === void 0 ? void 0 : elements.findIndex(function (e) {
|
|
6171
6225
|
return (e === null || e === void 0 ? void 0 : e.type) === (elementTypes === null || elementTypes === void 0 ? void 0 : elementTypes.backgroundImage);
|
|
@@ -6582,7 +6636,9 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
6582
6636
|
return _ref4.apply(this, arguments);
|
|
6583
6637
|
};
|
|
6584
6638
|
}();
|
|
6585
|
-
return /*#__PURE__*/React.createElement(
|
|
6639
|
+
return /*#__PURE__*/React.createElement(styled.StyleSheetManager, {
|
|
6640
|
+
shouldForwardProp: isPropValid
|
|
6641
|
+
}, /*#__PURE__*/React.createElement(StudioWrapper, null, /*#__PURE__*/React.createElement(SideBar, {
|
|
6586
6642
|
selectedSideBarItem: selectedTab,
|
|
6587
6643
|
onClickPill: onSelectedTab,
|
|
6588
6644
|
languageLocale: languageLocale,
|
|
@@ -6684,11 +6740,12 @@ var Studio = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
6684
6740
|
setLoadingUploadImage: setLoadingUploadImage,
|
|
6685
6741
|
onSave: onSave && onSaveProgress,
|
|
6686
6742
|
saveButtonText: saveButtonText,
|
|
6687
|
-
languageLocale: languageLocale
|
|
6743
|
+
languageLocale: languageLocale,
|
|
6744
|
+
onRemoveBackgroundImage: onRemoveBackgroundImage
|
|
6688
6745
|
}), (loadingFonts || loadingImages || loadingUploadImage || loading) && /*#__PURE__*/React.createElement(Overlay, null, /*#__PURE__*/React.createElement(LoadingSpinner, {
|
|
6689
6746
|
size: "60px",
|
|
6690
6747
|
color: theme.color.secondary
|
|
6691
|
-
})));
|
|
6748
|
+
}))));
|
|
6692
6749
|
});
|
|
6693
6750
|
Studio.propTypes = propTypes$A;
|
|
6694
6751
|
Studio.displayName = 'Studio';
|