@pie-element/drawing-response 4.6.1-beta.1 → 4.6.1-beta.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/configure/lib/button.js +51 -0
- package/configure/lib/button.js.map +1 -0
- package/configure/lib/defaults.js +56 -0
- package/configure/lib/defaults.js.map +1 -0
- package/configure/lib/image-container.js +318 -0
- package/configure/lib/image-container.js.map +1 -0
- package/configure/lib/index.js +141 -0
- package/configure/lib/index.js.map +1 -0
- package/configure/lib/root.js +220 -0
- package/configure/lib/root.js.map +1 -0
- package/configure/package.json +2 -2
- package/controller/lib/defaults.js +16 -0
- package/controller/lib/defaults.js.map +1 -0
- package/controller/lib/index.js +68 -0
- package/controller/lib/index.js.map +1 -0
- package/lib/drawing-response/button.js +64 -0
- package/lib/drawing-response/button.js.map +1 -0
- package/lib/drawing-response/constants.js +44 -0
- package/lib/drawing-response/constants.js.map +1 -0
- package/lib/drawing-response/container.js +298 -0
- package/lib/drawing-response/container.js.map +1 -0
- package/lib/drawing-response/drawable-circle.js +98 -0
- package/lib/drawing-response/drawable-circle.js.map +1 -0
- package/lib/drawing-response/drawable-eraser.js +80 -0
- package/lib/drawing-response/drawable-eraser.js.map +1 -0
- package/lib/drawing-response/drawable-free-path.js +90 -0
- package/lib/drawing-response/drawable-free-path.js.map +1 -0
- package/lib/drawing-response/drawable-helper.js +40 -0
- package/lib/drawing-response/drawable-helper.js.map +1 -0
- package/lib/drawing-response/drawable-image.js +51 -0
- package/lib/drawing-response/drawable-image.js.map +1 -0
- package/lib/drawing-response/drawable-line.js +93 -0
- package/lib/drawing-response/drawable-line.js.map +1 -0
- package/lib/drawing-response/drawable-main.js +349 -0
- package/lib/drawing-response/drawable-main.js.map +1 -0
- package/lib/drawing-response/drawable-palette.js +145 -0
- package/lib/drawing-response/drawable-palette.js.map +1 -0
- package/lib/drawing-response/drawable-rectangle.js +98 -0
- package/lib/drawing-response/drawable-rectangle.js.map +1 -0
- package/lib/drawing-response/drawable-text.js +328 -0
- package/lib/drawing-response/drawable-text.js.map +1 -0
- package/lib/drawing-response/drawable-transformer.js +75 -0
- package/lib/drawing-response/drawable-transformer.js.map +1 -0
- package/lib/drawing-response/factory.js +24 -0
- package/lib/drawing-response/factory.js.map +1 -0
- package/lib/drawing-response/icon.js +55 -0
- package/lib/drawing-response/icon.js.map +1 -0
- package/lib/drawing-response/index.js +102 -0
- package/lib/drawing-response/index.js.map +1 -0
- package/lib/index.js +87 -0
- package/lib/index.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawable-free-path.js","names":["_react","_interopRequireDefault","require","_reactKonva","_drawableHelper","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","FreePathDrawable","_DrawableHelper","_inherits2","_super","props","_this","_classCallCheck2","TYPE","_defineProperty2","_assertThisInitialized2","event","posX","target","getX","posY","getY","handleSessionChange","startx","starty","points","_createClass2","key","value","registerMovement","x","y","concat","_toConsumableArray2","handleOnClick","paint","paintColor","forceUpdate","render","_this2","draggable","onMouseOverElement","onMouseOutElement","createElement","Line","tension","bezier","fill","fillColor","onClick","onDragEnd","handleDragEnd","bind","onMouseEnter","onMouseLeave","stroke","outlineColor","DrawableHelper","exports"],"sources":["../../src/drawing-response/drawable-free-path.jsx"],"sourcesContent":["import React from 'react';\nimport { Line } from 'react-konva';\n\nimport DrawableHelper from './drawable-helper';\n\nexport default class FreePathDrawable extends DrawableHelper {\n static TYPE = 'FreePathDrawable';\n\n constructor(props) {\n super(props, FreePathDrawable.TYPE);\n const { startx, starty, points, posX, posY } = props;\n\n this.points = points || [startx, starty];\n this.posX = posX || 0;\n this.posY = posY || 0;\n }\n\n registerMovement(x, y) {\n this.points = [...this.points, x, y];\n }\n\n handleOnClick(props) {\n const { paint, paintColor, forceUpdate } = props;\n\n if (paint) {\n this.paintColor = paintColor;\n forceUpdate();\n }\n }\n\n handleDragEnd = (props, event) => {\n this.posX = event.target.getX();\n this.posY = event.target.getY();\n\n props.handleSessionChange();\n };\n\n render(props) {\n const { draggable, key, onMouseOverElement, onMouseOutElement } = props;\n\n return (\n <Line\n key={key}\n draggable={draggable}\n tension={0}\n bezier={true}\n points={this.points}\n fill={this.paintColor || this.fillColor}\n onClick={() => this.handleOnClick(props)}\n onDragEnd={this.handleDragEnd.bind(this, props)}\n onMouseEnter={onMouseOverElement}\n onMouseLeave={onMouseOutElement}\n stroke={this.paintColor || this.outlineColor}\n x={this.posX}\n y={this.posY}\n />\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
/**
|
|
11
|
+
* Not using React in order to avoid performance issues.
|
|
12
|
+
* If you switch this class to a React one make sure that
|
|
13
|
+
* this interaction will not have performance leaks in pie-website nor in pits.
|
|
14
|
+
*/
|
|
15
|
+
var DrawableHelper = /*#__PURE__*/function () {
|
|
16
|
+
function DrawableHelper(props, type) {
|
|
17
|
+
(0, _classCallCheck2["default"])(this, DrawableHelper);
|
|
18
|
+
var startx = props.startx,
|
|
19
|
+
starty = props.starty,
|
|
20
|
+
fillColor = props.fillColor,
|
|
21
|
+
outlineColor = props.outlineColor,
|
|
22
|
+
createdAt = props.createdAt;
|
|
23
|
+
this.startx = startx;
|
|
24
|
+
this.starty = starty;
|
|
25
|
+
this.createdAt = createdAt;
|
|
26
|
+
this.fillColor = fillColor;
|
|
27
|
+
this.outlineColor = outlineColor;
|
|
28
|
+
this.type = type;
|
|
29
|
+
}
|
|
30
|
+
(0, _createClass2["default"])(DrawableHelper, [{
|
|
31
|
+
key: "toJson",
|
|
32
|
+
value: function toJson() {
|
|
33
|
+
var base = JSON.parse(JSON.stringify(this));
|
|
34
|
+
return base;
|
|
35
|
+
}
|
|
36
|
+
}]);
|
|
37
|
+
return DrawableHelper;
|
|
38
|
+
}();
|
|
39
|
+
exports["default"] = DrawableHelper;
|
|
40
|
+
//# sourceMappingURL=drawable-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawable-helper.js","names":["DrawableHelper","props","type","_classCallCheck2","startx","starty","fillColor","outlineColor","createdAt","_createClass2","key","value","toJson","base","JSON","parse","stringify","exports"],"sources":["../../src/drawing-response/drawable-helper.jsx"],"sourcesContent":["/**\n * Not using React in order to avoid performance issues.\n * If you switch this class to a React one make sure that\n * this interaction will not have performance leaks in pie-website nor in pits.\n */\nexport default class DrawableHelper {\n constructor(props, type) {\n const { startx, starty, fillColor, outlineColor, createdAt } = props;\n this.startx = startx;\n this.starty = starty;\n this.createdAt = createdAt;\n this.fillColor = fillColor;\n this.outlineColor = outlineColor;\n this.type = type;\n }\n\n toJson() {\n const base = JSON.parse(JSON.stringify(this));\n return base;\n }\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAJA,IAKqBA,cAAc;EACjC,SAAAA,eAAYC,KAAK,EAAEC,IAAI,EAAE;IAAA,IAAAC,gBAAA,mBAAAH,cAAA;IACvB,IAAQI,MAAM,GAAiDH,KAAK,CAA5DG,MAAM;MAAEC,MAAM,GAAyCJ,KAAK,CAApDI,MAAM;MAAEC,SAAS,GAA8BL,KAAK,CAA5CK,SAAS;MAAEC,YAAY,GAAgBN,KAAK,CAAjCM,YAAY;MAAEC,SAAS,GAAKP,KAAK,CAAnBO,SAAS;IAC1D,IAAI,CAACJ,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACG,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACF,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAChC,IAAI,CAACL,IAAI,GAAGA,IAAI;EAClB;EAAC,IAAAO,aAAA,aAAAT,cAAA;IAAAU,GAAA;IAAAC,KAAA,EAED,SAAAC,OAAA,EAAS;MACP,IAAMC,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,SAAS,CAAC,IAAI,CAAC,CAAC;MAC7C,OAAOH,IAAI;IACb;EAAC;EAAA,OAAAb,cAAA;AAAA;AAAAiB,OAAA,cAAAjB,cAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _styles = require("@material-ui/core/styles");
|
|
11
|
+
var DrawableImage = function DrawableImage(_ref) {
|
|
12
|
+
var classes = _ref.classes,
|
|
13
|
+
url = _ref.url,
|
|
14
|
+
_ref$dimensions = _ref.dimensions,
|
|
15
|
+
height = _ref$dimensions.height,
|
|
16
|
+
width = _ref$dimensions.width;
|
|
17
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
18
|
+
className: classes.imageContainer
|
|
19
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
|
20
|
+
alt: "drawing-response-image",
|
|
21
|
+
className: classes.image,
|
|
22
|
+
src: url,
|
|
23
|
+
style: {
|
|
24
|
+
height: height,
|
|
25
|
+
maxWidth: width,
|
|
26
|
+
maxHeight: 350,
|
|
27
|
+
width: width
|
|
28
|
+
}
|
|
29
|
+
}));
|
|
30
|
+
};
|
|
31
|
+
var styles = function styles() {
|
|
32
|
+
return {
|
|
33
|
+
image: {
|
|
34
|
+
alignItems: 'center',
|
|
35
|
+
display: 'flex',
|
|
36
|
+
justifyContent: 'center'
|
|
37
|
+
},
|
|
38
|
+
imageContainer: {
|
|
39
|
+
position: 'relative',
|
|
40
|
+
width: 'fit-content'
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
DrawableImage.propTypes = {
|
|
45
|
+
classes: _propTypes["default"].object.isRequired,
|
|
46
|
+
dimensions: _propTypes["default"].object.isRequired,
|
|
47
|
+
url: _propTypes["default"].string.isRequired
|
|
48
|
+
};
|
|
49
|
+
var _default = (0, _styles.withStyles)(styles)(DrawableImage);
|
|
50
|
+
exports["default"] = _default;
|
|
51
|
+
//# sourceMappingURL=drawable-image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawable-image.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","DrawableImage","_ref","classes","url","_ref$dimensions","dimensions","height","width","createElement","className","imageContainer","alt","image","src","style","maxWidth","maxHeight","styles","alignItems","display","justifyContent","position","propTypes","PropTypes","object","isRequired","string","_default","withStyles","exports"],"sources":["../../src/drawing-response/drawable-image.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nconst DrawableImage = ({ classes, url, dimensions: { height, width } }) => (\n <div className={classes.imageContainer}>\n <img\n alt=\"drawing-response-image\"\n className={classes.image}\n src={url}\n style={{\n height,\n maxWidth: width,\n maxHeight: 350,\n width,\n }}\n />\n </div>\n);\n\nconst styles = () => ({\n image: {\n alignItems: 'center',\n display: 'flex',\n justifyContent: 'center',\n },\n imageContainer: {\n position: 'relative',\n width: 'fit-content',\n },\n});\n\nDrawableImage.propTypes = {\n classes: PropTypes.object.isRequired,\n dimensions: PropTypes.object.isRequired,\n url: PropTypes.string.isRequired,\n};\n\nexport default withStyles(styles)(DrawableImage);\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAMG,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;EAAA,IAAMC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,GAAG,GAAAF,IAAA,CAAHE,GAAG;IAAAC,eAAA,GAAAH,IAAA,CAAEI,UAAU;IAAIC,MAAM,GAAAF,eAAA,CAANE,MAAM;IAAEC,KAAK,GAAAH,eAAA,CAALG,KAAK;EAAA,oBAChEZ,MAAA,YAAAa,aAAA;IAAKC,SAAS,EAAEP,OAAO,CAACQ;EAAe,gBACrCf,MAAA,YAAAa,aAAA;IACEG,GAAG,EAAC,wBAAwB;IAC5BF,SAAS,EAAEP,OAAO,CAACU,KAAM;IACzBC,GAAG,EAAEV,GAAI;IACTW,KAAK,EAAE;MACLR,MAAM,EAANA,MAAM;MACNS,QAAQ,EAAER,KAAK;MACfS,SAAS,EAAE,GAAG;MACdT,KAAK,EAALA;IACF;EAAE,CACH,CACE,CAAC;AAAA,CACP;AAED,IAAMU,MAAM,GAAG,SAATA,MAAMA,CAAA;EAAA,OAAU;IACpBL,KAAK,EAAE;MACLM,UAAU,EAAE,QAAQ;MACpBC,OAAO,EAAE,MAAM;MACfC,cAAc,EAAE;IAClB,CAAC;IACDV,cAAc,EAAE;MACdW,QAAQ,EAAE,UAAU;MACpBd,KAAK,EAAE;IACT;EACF,CAAC;AAAA,CAAC;AAEFP,aAAa,CAACsB,SAAS,GAAG;EACxBpB,OAAO,EAAEqB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACpCpB,UAAU,EAAEkB,qBAAS,CAACC,MAAM,CAACC,UAAU;EACvCtB,GAAG,EAAEoB,qBAAS,CAACG,MAAM,CAACD;AACxB,CAAC;AAAC,IAAAE,QAAA,GAEa,IAAAC,kBAAU,EAACX,MAAM,CAAC,CAACjB,aAAa,CAAC;AAAA6B,OAAA,cAAAF,QAAA"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
11
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
12
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
14
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
+
var _react = _interopRequireDefault(require("react"));
|
|
16
|
+
var _reactKonva = require("react-konva");
|
|
17
|
+
var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
|
|
18
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
19
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
20
|
+
var LineDrawable = /*#__PURE__*/function (_DrawableHelper) {
|
|
21
|
+
(0, _inherits2["default"])(LineDrawable, _DrawableHelper);
|
|
22
|
+
var _super = _createSuper(LineDrawable);
|
|
23
|
+
function LineDrawable(_props) {
|
|
24
|
+
var _this;
|
|
25
|
+
(0, _classCallCheck2["default"])(this, LineDrawable);
|
|
26
|
+
_this = _super.call(this, _props, LineDrawable.TYPE);
|
|
27
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleDragEnd", function (props, event) {
|
|
28
|
+
_this.posX = event.target.getX();
|
|
29
|
+
_this.posY = event.target.getY();
|
|
30
|
+
props.handleSessionChange();
|
|
31
|
+
});
|
|
32
|
+
var startx = _props.startx,
|
|
33
|
+
starty = _props.starty,
|
|
34
|
+
x = _props.x,
|
|
35
|
+
y = _props.y,
|
|
36
|
+
posX = _props.posX,
|
|
37
|
+
posY = _props.posY;
|
|
38
|
+
_this.x = x || startx;
|
|
39
|
+
_this.y = y || starty;
|
|
40
|
+
_this.posX = posX || 0;
|
|
41
|
+
_this.posY = posY || 0;
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
(0, _createClass2["default"])(LineDrawable, [{
|
|
45
|
+
key: "registerMovement",
|
|
46
|
+
value: function registerMovement(x, y) {
|
|
47
|
+
this.x = x;
|
|
48
|
+
this.y = y;
|
|
49
|
+
}
|
|
50
|
+
}, {
|
|
51
|
+
key: "handleOnClick",
|
|
52
|
+
value: function handleOnClick(props) {
|
|
53
|
+
var paint = props.paint,
|
|
54
|
+
paintColor = props.paintColor,
|
|
55
|
+
forceUpdate = props.forceUpdate;
|
|
56
|
+
if (paint) {
|
|
57
|
+
this.paintColor = paintColor;
|
|
58
|
+
forceUpdate();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, {
|
|
62
|
+
key: "render",
|
|
63
|
+
value: function render(props) {
|
|
64
|
+
var _this2 = this;
|
|
65
|
+
var draggable = props.draggable,
|
|
66
|
+
key = props.key,
|
|
67
|
+
onMouseOverElement = props.onMouseOverElement,
|
|
68
|
+
onMouseOutElement = props.onMouseOutElement;
|
|
69
|
+
var points = [this.startx, this.starty, this.x, this.y];
|
|
70
|
+
return /*#__PURE__*/_react["default"].createElement(_reactKonva.Arrow, {
|
|
71
|
+
key: key,
|
|
72
|
+
draggable: draggable,
|
|
73
|
+
points: points,
|
|
74
|
+
fill: this.paintColor || this.outlineColor,
|
|
75
|
+
onClick: function onClick() {
|
|
76
|
+
return _this2.handleOnClick(props);
|
|
77
|
+
},
|
|
78
|
+
stroke: this.paintColor || this.outlineColor,
|
|
79
|
+
onDragEnd: this.handleDragEnd.bind(this, props),
|
|
80
|
+
onMouseEnter: onMouseOverElement,
|
|
81
|
+
onMouseLeave: onMouseOutElement,
|
|
82
|
+
x: this.posX,
|
|
83
|
+
y: this.posY,
|
|
84
|
+
pointerWidth: 0,
|
|
85
|
+
pointerLength: 0
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}]);
|
|
89
|
+
return LineDrawable;
|
|
90
|
+
}(_drawableHelper["default"]);
|
|
91
|
+
exports["default"] = LineDrawable;
|
|
92
|
+
(0, _defineProperty2["default"])(LineDrawable, "TYPE", 'LineDrawable');
|
|
93
|
+
//# sourceMappingURL=drawable-line.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawable-line.js","names":["_react","_interopRequireDefault","require","_reactKonva","_drawableHelper","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","LineDrawable","_DrawableHelper","_inherits2","_super","props","_this","_classCallCheck2","TYPE","_defineProperty2","_assertThisInitialized2","event","posX","target","getX","posY","getY","handleSessionChange","startx","starty","x","y","_createClass2","key","value","registerMovement","handleOnClick","paint","paintColor","forceUpdate","render","_this2","draggable","onMouseOverElement","onMouseOutElement","points","createElement","Arrow","fill","outlineColor","onClick","stroke","onDragEnd","handleDragEnd","bind","onMouseEnter","onMouseLeave","pointerWidth","pointerLength","DrawableHelper","exports"],"sources":["../../src/drawing-response/drawable-line.jsx"],"sourcesContent":["import React from 'react';\nimport { Arrow } from 'react-konva';\n\nimport DrawableHelper from './drawable-helper';\n\nexport default class LineDrawable extends DrawableHelper {\n static TYPE = 'LineDrawable';\n\n constructor(props) {\n super(props, LineDrawable.TYPE);\n const { startx, starty, x, y, posX, posY } = props;\n\n this.x = x || startx;\n this.y = y || starty;\n this.posX = posX || 0;\n this.posY = posY || 0;\n }\n\n registerMovement(x, y) {\n this.x = x;\n this.y = y;\n }\n\n handleOnClick(props) {\n const { paint, paintColor, forceUpdate } = props;\n\n if (paint) {\n this.paintColor = paintColor;\n forceUpdate();\n }\n }\n\n handleDragEnd = (props, event) => {\n this.posX = event.target.getX();\n this.posY = event.target.getY();\n\n props.handleSessionChange();\n };\n\n render(props) {\n const { draggable, key, onMouseOverElement, onMouseOutElement } = props;\n const points = [this.startx, this.starty, this.x, this.y];\n\n return (\n <Arrow\n key={key}\n draggable={draggable}\n points={points}\n fill={this.paintColor || this.outlineColor}\n onClick={() => this.handleOnClick(props)}\n stroke={this.paintColor || this.outlineColor}\n onDragEnd={this.handleDragEnd.bind(this, props)}\n onMouseEnter={onMouseOverElement}\n onMouseLeave={onMouseOutElement}\n x={this.posX}\n y={this.posY}\n pointerWidth={0}\n pointerLength={0}\n />\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAH,sBAAA,CAAAC,OAAA;AAA+C,SAAAG,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,mBAAAP,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA;AAAA,IAE1BC,YAAY,0BAAAC,eAAA;EAAA,IAAAC,UAAA,aAAAF,YAAA,EAAAC,eAAA;EAAA,IAAAE,MAAA,GAAAzB,YAAA,CAAAsB,YAAA;EAG/B,SAAAA,aAAYI,MAAK,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,YAAA;IACjBK,KAAA,GAAAF,MAAA,CAAAL,IAAA,OAAMM,MAAK,EAAEJ,YAAY,CAACO,IAAI;IAAE,IAAAC,gBAAA,iBAAAC,uBAAA,aAAAJ,KAAA,oBAuBlB,UAACD,KAAK,EAAEM,KAAK,EAAK;MAChCL,KAAA,CAAKM,IAAI,GAAGD,KAAK,CAACE,MAAM,CAACC,IAAI,CAAC,CAAC;MAC/BR,KAAA,CAAKS,IAAI,GAAGJ,KAAK,CAACE,MAAM,CAACG,IAAI,CAAC,CAAC;MAE/BX,KAAK,CAACY,mBAAmB,CAAC,CAAC;IAC7B,CAAC;IA3BC,IAAQC,MAAM,GAA+Bb,MAAK,CAA1Ca,MAAM;MAAEC,MAAM,GAAuBd,MAAK,CAAlCc,MAAM;MAAEC,CAAC,GAAoBf,MAAK,CAA1Be,CAAC;MAAEC,CAAC,GAAiBhB,MAAK,CAAvBgB,CAAC;MAAET,IAAI,GAAWP,MAAK,CAApBO,IAAI;MAAEG,IAAI,GAAKV,MAAK,CAAdU,IAAI;IAExCT,KAAA,CAAKc,CAAC,GAAGA,CAAC,IAAIF,MAAM;IACpBZ,KAAA,CAAKe,CAAC,GAAGA,CAAC,IAAIF,MAAM;IACpBb,KAAA,CAAKM,IAAI,GAAGA,IAAI,IAAI,CAAC;IACrBN,KAAA,CAAKS,IAAI,GAAGA,IAAI,IAAI,CAAC;IAAC,OAAAT,KAAA;EACxB;EAAC,IAAAgB,aAAA,aAAArB,YAAA;IAAAsB,GAAA;IAAAC,KAAA,EAED,SAAAC,iBAAiBL,CAAC,EAAEC,CAAC,EAAE;MACrB,IAAI,CAACD,CAAC,GAAGA,CAAC;MACV,IAAI,CAACC,CAAC,GAAGA,CAAC;IACZ;EAAC;IAAAE,GAAA;IAAAC,KAAA,EAED,SAAAE,cAAcrB,KAAK,EAAE;MACnB,IAAQsB,KAAK,GAA8BtB,KAAK,CAAxCsB,KAAK;QAAEC,UAAU,GAAkBvB,KAAK,CAAjCuB,UAAU;QAAEC,WAAW,GAAKxB,KAAK,CAArBwB,WAAW;MAEtC,IAAIF,KAAK,EAAE;QACT,IAAI,CAACC,UAAU,GAAGA,UAAU;QAC5BC,WAAW,CAAC,CAAC;MACf;IACF;EAAC;IAAAN,GAAA;IAAAC,KAAA,EASD,SAAAM,OAAOzB,KAAK,EAAE;MAAA,IAAA0B,MAAA;MACZ,IAAQC,SAAS,GAAiD3B,KAAK,CAA/D2B,SAAS;QAAET,GAAG,GAA4ClB,KAAK,CAApDkB,GAAG;QAAEU,kBAAkB,GAAwB5B,KAAK,CAA/C4B,kBAAkB;QAAEC,iBAAiB,GAAK7B,KAAK,CAA3B6B,iBAAiB;MAC7D,IAAMC,MAAM,GAAG,CAAC,IAAI,CAACjB,MAAM,EAAE,IAAI,CAACC,MAAM,EAAE,IAAI,CAACC,CAAC,EAAE,IAAI,CAACC,CAAC,CAAC;MAEzD,oBACE/C,MAAA,YAAA8D,aAAA,CAAC3D,WAAA,CAAA4D,KAAK;QACJd,GAAG,EAAEA,GAAI;QACTS,SAAS,EAAEA,SAAU;QACrBG,MAAM,EAAEA,MAAO;QACfG,IAAI,EAAE,IAAI,CAACV,UAAU,IAAI,IAAI,CAACW,YAAa;QAC3CC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAMT,MAAI,CAACL,aAAa,CAACrB,KAAK,CAAC;QAAA,CAAC;QACzCoC,MAAM,EAAE,IAAI,CAACb,UAAU,IAAI,IAAI,CAACW,YAAa;QAC7CG,SAAS,EAAE,IAAI,CAACC,aAAa,CAACC,IAAI,CAAC,IAAI,EAAEvC,KAAK,CAAE;QAChDwC,YAAY,EAAEZ,kBAAmB;QACjCa,YAAY,EAAEZ,iBAAkB;QAChCd,CAAC,EAAE,IAAI,CAACR,IAAK;QACbS,CAAC,EAAE,IAAI,CAACN,IAAK;QACbgC,YAAY,EAAE,CAAE;QAChBC,aAAa,EAAE;MAAE,CAClB,CAAC;IAEN;EAAC;EAAA,OAAA/C,YAAA;AAAA,EAvDuCgD,0BAAc;AAAAC,OAAA,cAAAjD,YAAA;AAAA,IAAAQ,gBAAA,aAAnCR,YAAY,UACjB,cAAc"}
|
|
@@ -0,0 +1,349 @@
|
|
|
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.DrawableMain = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
14
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
15
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
+
var _react = _interopRequireDefault(require("react"));
|
|
18
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
|
+
var _omit = _interopRequireDefault(require("lodash/omit"));
|
|
20
|
+
var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
21
|
+
var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
22
|
+
var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
23
|
+
var _reactKonva = require("react-konva");
|
|
24
|
+
var _styles = require("@material-ui/core/styles");
|
|
25
|
+
var _drawableImage = _interopRequireDefault(require("./drawable-image"));
|
|
26
|
+
var _button = _interopRequireDefault(require("./button"));
|
|
27
|
+
var _factory = _interopRequireDefault(require("./factory"));
|
|
28
|
+
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; }
|
|
29
|
+
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; }
|
|
30
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
31
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
32
|
+
var DrawableMain = /*#__PURE__*/function (_React$Component) {
|
|
33
|
+
(0, _inherits2["default"])(DrawableMain, _React$Component);
|
|
34
|
+
var _super = _createSuper(DrawableMain);
|
|
35
|
+
function DrawableMain(props) {
|
|
36
|
+
var _this;
|
|
37
|
+
(0, _classCallCheck2["default"])(this, DrawableMain);
|
|
38
|
+
_this = _super.call(this, props);
|
|
39
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSessionChange", function () {
|
|
40
|
+
var _this$props = _this.props,
|
|
41
|
+
onSessionChange = _this$props.onSessionChange,
|
|
42
|
+
session = _this$props.session,
|
|
43
|
+
TextEntry = _this$props.TextEntry;
|
|
44
|
+
var drawables = _this.state.drawables;
|
|
45
|
+
var newSession = {
|
|
46
|
+
drawables: drawables.map(function (d) {
|
|
47
|
+
return d.toJson();
|
|
48
|
+
}),
|
|
49
|
+
texts: TextEntry.all.map(function (text) {
|
|
50
|
+
return _objectSpread(_objectSpread(_objectSpread({}, text), TextEntry["text_".concat(text.id)] && TextEntry["text_".concat(text.id)].attrs), {}, {
|
|
51
|
+
value: TextEntry["textarea_".concat(text.id)] && TextEntry["textarea_".concat(text.id)].value
|
|
52
|
+
});
|
|
53
|
+
})
|
|
54
|
+
};
|
|
55
|
+
if (!(0, _isEqual["default"])(newSession, session)) {
|
|
56
|
+
onSessionChange(_objectSpread(_objectSpread({}, session), newSession));
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseOverElement", function () {
|
|
60
|
+
return _this.setState({
|
|
61
|
+
isOver: true
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseOutElement", function () {
|
|
65
|
+
return _this.setState({
|
|
66
|
+
isOver: false
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseDown", function (e) {
|
|
70
|
+
// ONLY IF MOBILE?
|
|
71
|
+
document.body.style.overflow = 'hidden';
|
|
72
|
+
var _this$state = _this.state,
|
|
73
|
+
newDrawable = _this$state.newDrawable,
|
|
74
|
+
textIsSelected = _this$state.textIsSelected;
|
|
75
|
+
var _this$props2 = _this.props,
|
|
76
|
+
toolActive = _this$props2.toolActive,
|
|
77
|
+
fillColor = _this$props2.fillColor,
|
|
78
|
+
outlineColor = _this$props2.outlineColor,
|
|
79
|
+
scale = _this$props2.scale;
|
|
80
|
+
if (newDrawable.length === 0 && !textIsSelected) {
|
|
81
|
+
var _e$target$getStage$ge = e.target.getStage().getPointerPosition(),
|
|
82
|
+
x = _e$target$getStage$ge.x,
|
|
83
|
+
y = _e$target$getStage$ge.y;
|
|
84
|
+
var _newDrawable = (0, _factory["default"])(toolActive.type, {
|
|
85
|
+
startx: x / scale,
|
|
86
|
+
starty: y / scale,
|
|
87
|
+
fillColor: fillColor,
|
|
88
|
+
outlineColor: outlineColor,
|
|
89
|
+
createdAt: new Date()
|
|
90
|
+
});
|
|
91
|
+
_this.setState({
|
|
92
|
+
newDrawable: [_newDrawable]
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseUp", function (e) {
|
|
97
|
+
// ONLY IF MOBILE?
|
|
98
|
+
document.body.style.overflow = 'initial';
|
|
99
|
+
var _this$state2 = _this.state,
|
|
100
|
+
newDrawable = _this$state2.newDrawable,
|
|
101
|
+
drawables = _this$state2.drawables;
|
|
102
|
+
var scale = _this.props.scale;
|
|
103
|
+
if (newDrawable.length === 1) {
|
|
104
|
+
var _e$target$getStage$ge2 = e.target.getStage().getPointerPosition(),
|
|
105
|
+
x = _e$target$getStage$ge2.x,
|
|
106
|
+
y = _e$target$getStage$ge2.y;
|
|
107
|
+
var drawableToAdd = newDrawable[0];
|
|
108
|
+
drawableToAdd.registerMovement(x / scale, y / scale);
|
|
109
|
+
drawables.push(drawableToAdd);
|
|
110
|
+
_this.setState({
|
|
111
|
+
newDrawable: [],
|
|
112
|
+
drawables: drawables
|
|
113
|
+
}, _this.handleSessionChange.bind((0, _assertThisInitialized2["default"])(_this), drawableToAdd));
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseMove", function (e) {
|
|
117
|
+
var newDrawable = _this.state.newDrawable;
|
|
118
|
+
var scale = _this.props.scale;
|
|
119
|
+
if (newDrawable.length === 1) {
|
|
120
|
+
var _e$target$getStage$ge3 = e.target.getStage().getPointerPosition(),
|
|
121
|
+
x = _e$target$getStage$ge3.x,
|
|
122
|
+
y = _e$target$getStage$ge3.y;
|
|
123
|
+
var updatedNewDrawable = newDrawable[0];
|
|
124
|
+
updatedNewDrawable.registerMovement(x / scale, y / scale);
|
|
125
|
+
_this.setState({
|
|
126
|
+
newDrawable: [updatedNewDrawable]
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleUndo", function () {
|
|
131
|
+
var drawables = _this.state.drawables;
|
|
132
|
+
var TextEntry = _this.props.TextEntry;
|
|
133
|
+
var newDrawables = (0, _toConsumableArray2["default"])(drawables);
|
|
134
|
+
var allData = [].concat((0, _toConsumableArray2["default"])(drawables), (0, _toConsumableArray2["default"])(TextEntry.all));
|
|
135
|
+
allData.sort(function (a, b) {
|
|
136
|
+
return new Date(a.createdAt) - new Date(b.createdAt);
|
|
137
|
+
});
|
|
138
|
+
var lastElement = allData[allData.length - 1];
|
|
139
|
+
if (lastElement && lastElement.type === 'text-entry') {
|
|
140
|
+
TextEntry.all.pop();
|
|
141
|
+
_this.setState({
|
|
142
|
+
updatedAt: new Date()
|
|
143
|
+
}, _this.handleSessionChange);
|
|
144
|
+
} else {
|
|
145
|
+
newDrawables.pop();
|
|
146
|
+
_this.setState({
|
|
147
|
+
drawables: newDrawables
|
|
148
|
+
}, _this.handleSessionChange);
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClearAll", function () {
|
|
152
|
+
var TextEntry = _this.props.TextEntry;
|
|
153
|
+
TextEntry.all = [];
|
|
154
|
+
_this.setState({
|
|
155
|
+
drawables: [],
|
|
156
|
+
updatedAt: new Date()
|
|
157
|
+
}, _this.handleSessionChange);
|
|
158
|
+
});
|
|
159
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "toggleTextSelected", function (textIsSelected) {
|
|
160
|
+
return _this.setState({
|
|
161
|
+
textIsSelected: textIsSelected
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
_this.state = {
|
|
165
|
+
drawables: [],
|
|
166
|
+
newDrawable: [],
|
|
167
|
+
textIsSelected: false
|
|
168
|
+
};
|
|
169
|
+
return _this;
|
|
170
|
+
}
|
|
171
|
+
(0, _createClass2["default"])(DrawableMain, [{
|
|
172
|
+
key: "UNSAFE_componentWillReceiveProps",
|
|
173
|
+
value: function UNSAFE_componentWillReceiveProps(nextProps) {
|
|
174
|
+
if (nextProps.session) {
|
|
175
|
+
var TextEntry = nextProps.TextEntry;
|
|
176
|
+
var currentDrawables = this.state.drawables;
|
|
177
|
+
if (nextProps.session.drawables) {
|
|
178
|
+
var newDrawables = (0, _cloneDeep["default"])(nextProps.session.drawables);
|
|
179
|
+
var drawablesString = JSON.stringify(currentDrawables);
|
|
180
|
+
var sessionDrawableString = JSON.stringify((newDrawables || []).map(function (drawable) {
|
|
181
|
+
return (0, _omit["default"])(drawable, 'type');
|
|
182
|
+
}));
|
|
183
|
+
if (drawablesString !== sessionDrawableString) {
|
|
184
|
+
var drawableArray = nextProps.session.drawables;
|
|
185
|
+
this.setState({
|
|
186
|
+
drawables: drawableArray.map(function (drawable) {
|
|
187
|
+
return (0, _factory["default"])(drawable.type, drawable);
|
|
188
|
+
})
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
var currentTexts = TextEntry.all.map(function (text) {
|
|
192
|
+
return _objectSpread(_objectSpread(_objectSpread({}, text), TextEntry["text_".concat(text.id)] && TextEntry["text_".concat(text.id)].attrs), {}, {
|
|
193
|
+
value: TextEntry["textarea_".concat(text.id)] && TextEntry["textarea_".concat(text.id)].value
|
|
194
|
+
});
|
|
195
|
+
});
|
|
196
|
+
if (!(0, _isEqual["default"])(currentTexts, nextProps.session.texts)) {
|
|
197
|
+
TextEntry.setAll(nextProps.session.texts || []);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
} else {
|
|
201
|
+
this.handleSessionChange();
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}, {
|
|
205
|
+
key: "render",
|
|
206
|
+
value: function render() {
|
|
207
|
+
var _this2 = this;
|
|
208
|
+
var _this$props3 = this.props,
|
|
209
|
+
classes = _this$props3.classes,
|
|
210
|
+
disabled = _this$props3.disabled,
|
|
211
|
+
drawableDimensions = _this$props3.drawableDimensions,
|
|
212
|
+
fillColor = _this$props3.fillColor,
|
|
213
|
+
imageDimensions = _this$props3.imageDimensions,
|
|
214
|
+
imageUrl = _this$props3.imageUrl,
|
|
215
|
+
paintColor = _this$props3.paintColor,
|
|
216
|
+
outlineColor = _this$props3.outlineColor,
|
|
217
|
+
TextEntry = _this$props3.TextEntry,
|
|
218
|
+
_this$props3$backgrou = _this$props3.backgroundImageEnabled,
|
|
219
|
+
backgroundImageEnabled = _this$props3$backgrou === void 0 ? true : _this$props3$backgrou,
|
|
220
|
+
type = _this$props3.toolActive.type,
|
|
221
|
+
scale = _this$props3.scale;
|
|
222
|
+
var _this$state3 = this.state,
|
|
223
|
+
isOver = _this$state3.isOver,
|
|
224
|
+
newDrawable = _this$state3.newDrawable;
|
|
225
|
+
var draggable = type === 'Select';
|
|
226
|
+
var paint = type === 'PaintBucket';
|
|
227
|
+
var drawables = [].concat((0, _toConsumableArray2["default"])(this.state.drawables), (0, _toConsumableArray2["default"])(this.state.newDrawable));
|
|
228
|
+
var drawableProps = {
|
|
229
|
+
draggable: draggable && !disabled,
|
|
230
|
+
disabled: disabled,
|
|
231
|
+
paint: paint,
|
|
232
|
+
fillColor: fillColor,
|
|
233
|
+
forceUpdate: function forceUpdate() {
|
|
234
|
+
return _this2.setState({
|
|
235
|
+
updatedAt: new Date()
|
|
236
|
+
});
|
|
237
|
+
},
|
|
238
|
+
paintColor: paintColor,
|
|
239
|
+
outlineColor: outlineColor,
|
|
240
|
+
toggleTextSelected: this.toggleTextSelected,
|
|
241
|
+
handleSessionChange: this.handleSessionChange,
|
|
242
|
+
stage: this.stage,
|
|
243
|
+
onMouseOverElement: this.onMouseOverElement,
|
|
244
|
+
onMouseOutElement: this.onMouseOutElement,
|
|
245
|
+
scale: scale
|
|
246
|
+
};
|
|
247
|
+
var listeners = {};
|
|
248
|
+
if (!disabled) {
|
|
249
|
+
listeners = {
|
|
250
|
+
onMouseUp: this.handleMouseUp,
|
|
251
|
+
onTouchEnd: this.handleMouseUp,
|
|
252
|
+
onMouseMove: this.handleMouseMove,
|
|
253
|
+
onTouchMove: this.handleMouseMove
|
|
254
|
+
};
|
|
255
|
+
if (!draggable) {
|
|
256
|
+
listeners.onMouseDown = this.handleMouseDown;
|
|
257
|
+
listeners.onTouchStart = this.handleMouseDown;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
var imageHeight = (imageDimensions === null || imageDimensions === void 0 ? void 0 : imageDimensions.height) * scale;
|
|
261
|
+
var imageWidth = (imageDimensions === null || imageDimensions === void 0 ? void 0 : imageDimensions.width) * scale;
|
|
262
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
263
|
+
className: classes.wrapper
|
|
264
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
265
|
+
className: classes.undoControls
|
|
266
|
+
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
267
|
+
disabled: disabled,
|
|
268
|
+
onClick: this.handleUndo,
|
|
269
|
+
label: "Undo"
|
|
270
|
+
}), /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
271
|
+
disabled: disabled,
|
|
272
|
+
onClick: this.handleClearAll,
|
|
273
|
+
label: "Clear all"
|
|
274
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
275
|
+
className: classes.base
|
|
276
|
+
}, backgroundImageEnabled && imageUrl && /*#__PURE__*/_react["default"].createElement(_drawableImage["default"], {
|
|
277
|
+
dimensions: {
|
|
278
|
+
height: imageHeight,
|
|
279
|
+
width: imageWidth
|
|
280
|
+
},
|
|
281
|
+
url: imageUrl
|
|
282
|
+
}), TextEntry.renderTextareas(), /*#__PURE__*/_react["default"].createElement(_reactKonva.Stage, (0, _extends2["default"])({
|
|
283
|
+
scaleX: scale,
|
|
284
|
+
scaleY: scale,
|
|
285
|
+
ref: function ref(_ref2) {
|
|
286
|
+
_this2.stage = _ref2;
|
|
287
|
+
},
|
|
288
|
+
className: (0, _classnames2["default"])(classes.stage, (0, _defineProperty2["default"])({}, classes.active, draggable && (isOver || newDrawable && newDrawable.length === 1))),
|
|
289
|
+
height: drawableDimensions.height,
|
|
290
|
+
width: drawableDimensions.width
|
|
291
|
+
}, listeners), /*#__PURE__*/_react["default"].createElement(_reactKonva.Layer, {
|
|
292
|
+
ref: function ref(_ref) {
|
|
293
|
+
_this2.layer = _ref;
|
|
294
|
+
}
|
|
295
|
+
}, drawables.map(function (drawable, key) {
|
|
296
|
+
return drawable.render(_objectSpread(_objectSpread({}, drawableProps), {}, {
|
|
297
|
+
key: key
|
|
298
|
+
}));
|
|
299
|
+
}), TextEntry.render(drawableProps)))));
|
|
300
|
+
}
|
|
301
|
+
}]);
|
|
302
|
+
return DrawableMain;
|
|
303
|
+
}(_react["default"].Component);
|
|
304
|
+
exports.DrawableMain = DrawableMain;
|
|
305
|
+
var styles = function styles() {
|
|
306
|
+
return {
|
|
307
|
+
wrapper: {
|
|
308
|
+
display: 'flex',
|
|
309
|
+
flexWrap: 'wrap',
|
|
310
|
+
justifyContent: 'flex-end'
|
|
311
|
+
},
|
|
312
|
+
base: {
|
|
313
|
+
position: 'relative',
|
|
314
|
+
width: '100%'
|
|
315
|
+
},
|
|
316
|
+
stage: {
|
|
317
|
+
left: 0,
|
|
318
|
+
position: 'absolute',
|
|
319
|
+
touchAction: 'none',
|
|
320
|
+
top: 0
|
|
321
|
+
},
|
|
322
|
+
active: {
|
|
323
|
+
cursor: 'pointer'
|
|
324
|
+
},
|
|
325
|
+
undoControls: {
|
|
326
|
+
marginTop: -43,
|
|
327
|
+
width: 163
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
};
|
|
331
|
+
DrawableMain.propTypes = {
|
|
332
|
+
classes: _propTypes["default"].object.isRequired,
|
|
333
|
+
disabled: _propTypes["default"].bool,
|
|
334
|
+
drawableDimensions: _propTypes["default"].object.isRequired,
|
|
335
|
+
imageDimensions: _propTypes["default"].object.isRequired,
|
|
336
|
+
fillColor: _propTypes["default"].string.isRequired,
|
|
337
|
+
onSessionChange: _propTypes["default"].func.isRequired,
|
|
338
|
+
paintColor: _propTypes["default"].string.isRequired,
|
|
339
|
+
outlineColor: _propTypes["default"].string.isRequired,
|
|
340
|
+
imageUrl: _propTypes["default"].string.isRequired,
|
|
341
|
+
TextEntry: _propTypes["default"].object.isRequired,
|
|
342
|
+
toolActive: _propTypes["default"].object.isRequired,
|
|
343
|
+
session: _propTypes["default"].object.isRequired,
|
|
344
|
+
backgroundImageEnabled: _propTypes["default"].bool.isRequired,
|
|
345
|
+
scale: _propTypes["default"].number.isRequired
|
|
346
|
+
};
|
|
347
|
+
var _default = (0, _styles.withStyles)(styles)(DrawableMain);
|
|
348
|
+
exports["default"] = _default;
|
|
349
|
+
//# sourceMappingURL=drawable-main.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawable-main.js","names":["_react","_interopRequireDefault","require","_propTypes","_omit","_cloneDeep","_isEqual","_classnames2","_reactKonva","_styles","_drawableImage","_button","_factory","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","DrawableMain","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","_assertThisInitialized2","_this$props","onSessionChange","session","TextEntry","drawables","state","newSession","map","d","toJson","texts","all","text","concat","id","attrs","value","isEqual","setState","isOver","document","body","style","overflow","_this$state","newDrawable","textIsSelected","_this$props2","toolActive","fillColor","outlineColor","scale","_e$target$getStage$ge","getStage","getPointerPosition","x","y","factory","type","startx","starty","createdAt","Date","_this$state2","_e$target$getStage$ge2","drawableToAdd","registerMovement","handleSessionChange","bind","_e$target$getStage$ge3","updatedNewDrawable","newDrawables","_toConsumableArray2","allData","sort","a","b","lastElement","pop","updatedAt","_createClass2","UNSAFE_componentWillReceiveProps","nextProps","currentDrawables","cloneDeep","drawablesString","JSON","stringify","sessionDrawableString","drawable","omit","drawableArray","currentTexts","setAll","render","_this2","_this$props3","classes","disabled","drawableDimensions","imageDimensions","imageUrl","paintColor","_this$props3$backgrou","backgroundImageEnabled","_this$state3","draggable","paint","drawableProps","forceUpdate","toggleTextSelected","stage","onMouseOverElement","onMouseOutElement","listeners","onMouseUp","handleMouseUp","onTouchEnd","onMouseMove","handleMouseMove","onTouchMove","onMouseDown","handleMouseDown","onTouchStart","imageHeight","height","imageWidth","width","createElement","className","wrapper","undoControls","onClick","handleUndo","label","handleClearAll","base","dimensions","url","renderTextareas","Stage","_extends2","scaleX","scaleY","ref","classnames","active","Layer","layer","React","Component","exports","styles","display","flexWrap","justifyContent","position","left","touchAction","top","cursor","marginTop","propTypes","PropTypes","isRequired","bool","string","func","number","_default","withStyles"],"sources":["../../src/drawing-response/drawable-main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport omit from 'lodash/omit';\nimport cloneDeep from 'lodash/cloneDeep';\nimport isEqual from 'lodash/isEqual';\nimport classnames from 'classnames';\nimport { Layer, Stage } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport ImageBackground from './drawable-image';\nimport Button from './button';\nimport factory from './factory';\n\nexport class DrawableMain extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n drawables: [],\n newDrawable: [],\n textIsSelected: false\n };\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.session) {\n const { TextEntry } = nextProps;\n const { drawables: currentDrawables } = this.state;\n\n if (nextProps.session.drawables) {\n const newDrawables = cloneDeep(nextProps.session.drawables);\n const drawablesString = JSON.stringify(currentDrawables);\n const sessionDrawableString = JSON.stringify(\n (newDrawables || []).map(drawable => omit(drawable, 'type'))\n );\n\n if (drawablesString !== sessionDrawableString) {\n const drawableArray = nextProps.session.drawables;\n\n this.setState({\n drawables: drawableArray.map(drawable =>\n factory(drawable.type, drawable)\n )\n });\n }\n\n const currentTexts = TextEntry.all.map(text => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] &&\n TextEntry[`text_${text.id}`].attrs),\n value:\n TextEntry[`textarea_${text.id}`] &&\n TextEntry[`textarea_${text.id}`].value\n }));\n\n if (!isEqual(currentTexts, nextProps.session.texts)) {\n TextEntry.setAll(nextProps.session.texts || []);\n }\n }\n } else {\n this.handleSessionChange();\n }\n }\n\n handleSessionChange = () => {\n const { onSessionChange, session, TextEntry } = this.props;\n const { drawables } = this.state;\n\n const newSession = {\n drawables: drawables.map(d => d.toJson()),\n texts: TextEntry.all.map(text => ({\n ...text,\n ...(TextEntry[`text_${text.id}`] && TextEntry[`text_${text.id}`].attrs),\n value:\n TextEntry[`textarea_${text.id}`] &&\n TextEntry[`textarea_${text.id}`].value\n }))\n };\n\n if (!isEqual(newSession, session)) {\n onSessionChange({\n ...session,\n ...newSession\n });\n }\n };\n\n onMouseOverElement = () => this.setState({ isOver: true });\n\n onMouseOutElement = () => this.setState({ isOver: false });\n\n handleMouseDown = e => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'hidden';\n\n const { newDrawable, textIsSelected } = this.state;\n const { toolActive, fillColor, outlineColor, scale } = this.props;\n\n if (newDrawable.length === 0 && !textIsSelected) {\n const { x, y } = e.target.getStage().getPointerPosition();\n\n const newDrawable = factory(toolActive.type, {\n startx: x / scale,\n starty: y / scale,\n fillColor,\n outlineColor,\n createdAt: new Date()\n });\n\n this.setState({\n newDrawable: [newDrawable]\n });\n }\n };\n\n handleMouseUp = e => {\n // ONLY IF MOBILE?\n document.body.style.overflow = 'initial';\n\n const { newDrawable, drawables } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const { x, y } = e.target.getStage().getPointerPosition();\n const drawableToAdd = newDrawable[0];\n\n drawableToAdd.registerMovement(x / scale, y / scale);\n drawables.push(drawableToAdd);\n\n this.setState(\n {\n newDrawable: [],\n drawables\n },\n this.handleSessionChange.bind(this, drawableToAdd)\n );\n }\n };\n\n handleMouseMove = e => {\n const { newDrawable } = this.state;\n const { scale } = this.props;\n\n if (newDrawable.length === 1) {\n const { x, y } = e.target.getStage().getPointerPosition();\n const updatedNewDrawable = newDrawable[0];\n\n updatedNewDrawable.registerMovement(x / scale, y / scale);\n\n this.setState({\n newDrawable: [updatedNewDrawable]\n });\n }\n };\n\n handleUndo = () => {\n const { drawables } = this.state;\n const { TextEntry } = this.props;\n\n const newDrawables = [...drawables];\n const allData = [...drawables, ...TextEntry.all];\n\n allData.sort((a, b) => new Date(a.createdAt) - new Date(b.createdAt));\n const lastElement = allData[allData.length - 1];\n\n if (lastElement && lastElement.type === 'text-entry') {\n TextEntry.all.pop();\n this.setState({ updatedAt: new Date() }, this.handleSessionChange);\n } else {\n newDrawables.pop();\n this.setState({ drawables: newDrawables }, this.handleSessionChange);\n }\n };\n\n handleClearAll = () => {\n const { TextEntry } = this.props;\n\n TextEntry.all = [];\n this.setState(\n { drawables: [], updatedAt: new Date() },\n this.handleSessionChange\n );\n };\n\n toggleTextSelected = textIsSelected => this.setState({ textIsSelected });\n\n render() {\n const {\n classes,\n disabled,\n drawableDimensions,\n fillColor,\n imageDimensions,\n imageUrl,\n paintColor,\n outlineColor,\n TextEntry,\n backgroundImageEnabled = true,\n toolActive: { type },\n scale\n } = this.props;\n const { isOver, newDrawable } = this.state;\n\n const draggable = type === 'Select';\n const paint = type === 'PaintBucket';\n const drawables = [...this.state.drawables, ...this.state.newDrawable];\n\n const drawableProps = {\n draggable: draggable && !disabled,\n disabled,\n paint,\n fillColor,\n forceUpdate: () => this.setState({ updatedAt: new Date() }),\n paintColor,\n outlineColor,\n toggleTextSelected: this.toggleTextSelected,\n handleSessionChange: this.handleSessionChange,\n stage: this.stage,\n onMouseOverElement: this.onMouseOverElement,\n onMouseOutElement: this.onMouseOutElement,\n scale\n };\n\n let listeners = {};\n\n if (!disabled) {\n listeners = {\n onMouseUp: this.handleMouseUp,\n onTouchEnd: this.handleMouseUp,\n onMouseMove: this.handleMouseMove,\n onTouchMove: this.handleMouseMove,\n };\n\n if (!draggable) {\n listeners.onMouseDown = this.handleMouseDown;\n listeners.onTouchStart = this.handleMouseDown;\n }\n }\n\n const imageHeight = imageDimensions?.height * scale;\n const imageWidth = imageDimensions?.width * scale;\n\n return (\n <div className={classes.wrapper}>\n <div className={classes.undoControls}>\n <Button disabled={disabled} onClick={this.handleUndo} label=\"Undo\"/>\n <Button disabled={disabled} onClick={this.handleClearAll} label=\"Clear all\"/>\n </div>\n <div className={classes.base}>\n {backgroundImageEnabled && imageUrl && (\n <ImageBackground\n dimensions={{ height: imageHeight, width: imageWidth }}\n url={imageUrl}/>\n )}\n\n {TextEntry.renderTextareas()}\n\n <Stage\n scaleX={scale}\n scaleY={scale}\n ref={ref => {\n this.stage = ref;\n }}\n className={classnames(classes.stage, {\n [classes.active]:\n draggable &&\n (isOver || (newDrawable && newDrawable.length === 1))\n })}\n height={drawableDimensions.height}\n width={drawableDimensions.width}\n {...listeners}\n >\n <Layer\n ref={ref => {\n this.layer = ref;\n }}\n >\n {drawables.map((drawable, key) =>\n drawable.render({ ...drawableProps, key })\n )}\n {/* Text Entry is a special case */}\n {TextEntry.render(drawableProps)}\n </Layer>\n </Stage>\n </div>\n </div>\n );\n }\n}\n\nconst styles = () => ({\n wrapper: {\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'flex-end'\n },\n base: {\n position: 'relative',\n width: '100%'\n },\n stage: {\n left: 0,\n position: 'absolute',\n touchAction: 'none',\n top: 0\n },\n active: {\n cursor: 'pointer'\n },\n undoControls: {\n marginTop: -43,\n width: 163\n }\n});\n\nDrawableMain.propTypes = {\n classes: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n drawableDimensions: PropTypes.object.isRequired,\n imageDimensions: PropTypes.object.isRequired,\n fillColor: PropTypes.string.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n paintColor: PropTypes.string.isRequired,\n outlineColor: PropTypes.string.isRequired,\n imageUrl: PropTypes.string.isRequired,\n TextEntry: PropTypes.object.isRequired,\n toolActive: PropTypes.object.isRequired,\n session: PropTypes.object.isRequired,\n backgroundImageEnabled: PropTypes.bool.isRequired,\n scale: PropTypes.number.isRequired\n};\n\nexport default withStyles(styles)(DrawableMain);\n"],"mappings":"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"}
|