@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.
Files changed (52) hide show
  1. package/configure/lib/button.js +51 -0
  2. package/configure/lib/button.js.map +1 -0
  3. package/configure/lib/defaults.js +56 -0
  4. package/configure/lib/defaults.js.map +1 -0
  5. package/configure/lib/image-container.js +318 -0
  6. package/configure/lib/image-container.js.map +1 -0
  7. package/configure/lib/index.js +141 -0
  8. package/configure/lib/index.js.map +1 -0
  9. package/configure/lib/root.js +220 -0
  10. package/configure/lib/root.js.map +1 -0
  11. package/configure/package.json +2 -2
  12. package/controller/lib/defaults.js +16 -0
  13. package/controller/lib/defaults.js.map +1 -0
  14. package/controller/lib/index.js +68 -0
  15. package/controller/lib/index.js.map +1 -0
  16. package/lib/drawing-response/button.js +64 -0
  17. package/lib/drawing-response/button.js.map +1 -0
  18. package/lib/drawing-response/constants.js +44 -0
  19. package/lib/drawing-response/constants.js.map +1 -0
  20. package/lib/drawing-response/container.js +298 -0
  21. package/lib/drawing-response/container.js.map +1 -0
  22. package/lib/drawing-response/drawable-circle.js +98 -0
  23. package/lib/drawing-response/drawable-circle.js.map +1 -0
  24. package/lib/drawing-response/drawable-eraser.js +80 -0
  25. package/lib/drawing-response/drawable-eraser.js.map +1 -0
  26. package/lib/drawing-response/drawable-free-path.js +90 -0
  27. package/lib/drawing-response/drawable-free-path.js.map +1 -0
  28. package/lib/drawing-response/drawable-helper.js +40 -0
  29. package/lib/drawing-response/drawable-helper.js.map +1 -0
  30. package/lib/drawing-response/drawable-image.js +51 -0
  31. package/lib/drawing-response/drawable-image.js.map +1 -0
  32. package/lib/drawing-response/drawable-line.js +93 -0
  33. package/lib/drawing-response/drawable-line.js.map +1 -0
  34. package/lib/drawing-response/drawable-main.js +349 -0
  35. package/lib/drawing-response/drawable-main.js.map +1 -0
  36. package/lib/drawing-response/drawable-palette.js +145 -0
  37. package/lib/drawing-response/drawable-palette.js.map +1 -0
  38. package/lib/drawing-response/drawable-rectangle.js +98 -0
  39. package/lib/drawing-response/drawable-rectangle.js.map +1 -0
  40. package/lib/drawing-response/drawable-text.js +328 -0
  41. package/lib/drawing-response/drawable-text.js.map +1 -0
  42. package/lib/drawing-response/drawable-transformer.js +75 -0
  43. package/lib/drawing-response/drawable-transformer.js.map +1 -0
  44. package/lib/drawing-response/factory.js +24 -0
  45. package/lib/drawing-response/factory.js.map +1 -0
  46. package/lib/drawing-response/icon.js +55 -0
  47. package/lib/drawing-response/icon.js.map +1 -0
  48. package/lib/drawing-response/index.js +102 -0
  49. package/lib/drawing-response/index.js.map +1 -0
  50. package/lib/index.js +87 -0
  51. package/lib/index.js.map +1 -0
  52. package/package.json +2 -2
@@ -0,0 +1,298 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.Container = void 0;
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 = _interopRequireWildcard(require("react"));
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+ var _styles = require("@material-ui/core/styles");
20
+ var _constants = _interopRequireDefault(require("./constants"));
21
+ var _button = _interopRequireDefault(require("./button"));
22
+ var _drawablePalette = _interopRequireDefault(require("./drawable-palette"));
23
+ var _drawableMain = _interopRequireDefault(require("./drawable-main"));
24
+ var _drawableText = _interopRequireDefault(require("./drawable-text"));
25
+ var _icon = _interopRequireDefault(require("./icon"));
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
28
+ 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); }; }
29
+ 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; } }
30
+ var TOOLS = _constants["default"].tools;
31
+ var ROGVAIV = ['red', 'orange', 'yellow', 'violet', 'blue', 'green', 'white', 'black'].map(function (c) {
32
+ return {
33
+ value: c,
34
+ label: c
35
+ };
36
+ });
37
+ var Container = /*#__PURE__*/function (_Component) {
38
+ (0, _inherits2["default"])(Container, _Component);
39
+ var _super = _createSuper(Container);
40
+ function Container(props) {
41
+ var _this;
42
+ (0, _classCallCheck2["default"])(this, Container);
43
+ _this = _super.call(this, props);
44
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "checkIfToolIsDisabled", function (type) {
45
+ if (_this.props.disabled) return true;
46
+ var toolActive = _this.state.toolActive;
47
+ // Text will never be disabled since on each "Text Entry" click a new text is added
48
+ if (type === 'Text') {
49
+ return false;
50
+ }
51
+ return type === toolActive.type;
52
+ });
53
+ var TextEntry = new _drawableText["default"]();
54
+ _this.state = {
55
+ scale: 1,
56
+ drawableDimensions: {
57
+ height: 0,
58
+ width: 0
59
+ },
60
+ toolActive: TOOLS[0],
61
+ fillColor: 'white',
62
+ fillColorList: [{
63
+ value: 'transparent',
64
+ label: 'no fill'
65
+ }, {
66
+ value: 'lightblue',
67
+ label: 'light blue'
68
+ }, {
69
+ value: 'lightyellow',
70
+ label: 'light yellow'
71
+ }].concat((0, _toConsumableArray2["default"])(ROGVAIV)),
72
+ outlineColor: 'black',
73
+ outlineColorList: ROGVAIV,
74
+ paintColor: 'red',
75
+ paintColorList: ROGVAIV,
76
+ TextEntry: TextEntry
77
+ };
78
+ return _this;
79
+ }
80
+ (0, _createClass2["default"])(Container, [{
81
+ key: "setDimensions",
82
+ value: function setDimensions() {
83
+ var _this2 = this;
84
+ var checkExist = setInterval(function () {
85
+ try {
86
+ var _this2$drawable$getBo = _this2.drawable.getBoundingClientRect(),
87
+ height = _this2$drawable$getBo.height,
88
+ width = _this2$drawable$getBo.width;
89
+ if (height !== 0 && width !== 0) {
90
+ _this2.setState({
91
+ drawableDimensions: {
92
+ height: height,
93
+ width: width
94
+ }
95
+ });
96
+ }
97
+ } catch (e) {
98
+ // eslint-disable-next-line no-console
99
+ console.warn('setDimensions Error: ', e);
100
+ } finally {
101
+ clearInterval(checkExist);
102
+ }
103
+ }, 100);
104
+ }
105
+ }, {
106
+ key: "componentDidMount",
107
+ value: function componentDidMount() {
108
+ var _this3 = this;
109
+ this.setDimensions();
110
+ this.observer = new MutationObserver(function (mutations) {
111
+ mutations.forEach(function () {
112
+ var _document$getElementB;
113
+ var target = (_document$getElementB = document.getElementById('question-container')) === null || _document$getElementB === void 0 || (_document$getElementB = _document$getElementB.style) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.cssText;
114
+ var zoom = target === null || target === void 0 ? void 0 : target.substring(target.indexOf('--pie-zoom') + 11, target.lastIndexOf('%'));
115
+ var zoomParsed = zoom === null || zoom === void 0 ? void 0 : zoom.replace(/\s/g, '');
116
+ if (zoomParsed) {
117
+ var newScale = parseFloat(zoomParsed) / 100;
118
+ if (newScale !== _this3.state.scale) {
119
+ _this3.setState({
120
+ scale: parseFloat(zoomParsed) / 100
121
+ });
122
+ }
123
+ } else if (!zoomParsed && _this3.state.scale !== 1) {
124
+ _this3.setState({
125
+ scale: 1
126
+ });
127
+ }
128
+ });
129
+ });
130
+ var target = document.getElementById('question-container');
131
+ if (target) {
132
+ this.observer.observe(target, {
133
+ attributes: true,
134
+ attributeFilter: ['style']
135
+ });
136
+ }
137
+ }
138
+ }, {
139
+ key: "componentWillUnmount",
140
+ value: function componentWillUnmount() {
141
+ var _this$observer;
142
+ var TextEntry = this.state.TextEntry;
143
+ TextEntry.removeEventListeners();
144
+ (_this$observer = this.observer) === null || _this$observer === void 0 ? void 0 : _this$observer.disconnect();
145
+ }
146
+ }, {
147
+ key: "handleMakeToolActive",
148
+ value: function handleMakeToolActive(tool) {
149
+ var TextEntry = this.state.TextEntry;
150
+ var type = tool.type;
151
+ if (type !== 'Text') {
152
+ this.setState({
153
+ toolActive: tool
154
+ });
155
+ } else {
156
+ TextEntry.addNewTextEntry();
157
+ // Force update
158
+ this.setState({
159
+ updatedAt: new Date()
160
+ });
161
+ }
162
+ }
163
+ }, {
164
+ key: "handleColorChange",
165
+ value: function handleColorChange(type, color) {
166
+ var cType = "".concat(type, "Color");
167
+ this.setState((0, _defineProperty2["default"])({}, cType, color));
168
+ }
169
+ }, {
170
+ key: "render",
171
+ value: function render() {
172
+ var _this4 = this;
173
+ var _this$props = this.props,
174
+ classes = _this$props.classes,
175
+ disabled = _this$props.disabled,
176
+ imageUrl = _this$props.imageUrl,
177
+ imageDimensions = _this$props.imageDimensions,
178
+ onSessionChange = _this$props.onSessionChange,
179
+ session = _this$props.session,
180
+ backgroundImageEnabled = _this$props.backgroundImageEnabled;
181
+ var _this$state = this.state,
182
+ drawableDimensions = _this$state.drawableDimensions,
183
+ toolActive = _this$state.toolActive,
184
+ fillColor = _this$state.fillColor,
185
+ fillColorList = _this$state.fillColorList,
186
+ outlineColor = _this$state.outlineColor,
187
+ outlineColorList = _this$state.outlineColorList,
188
+ paintColor = _this$state.paintColor,
189
+ paintColorList = _this$state.paintColorList,
190
+ TextEntry = _this$state.TextEntry;
191
+ var heightToUse = drawableDimensions.height * this.state.scale;
192
+ return /*#__PURE__*/_react["default"].createElement("div", {
193
+ className: classes.base
194
+ }, !disabled && /*#__PURE__*/_react["default"].createElement(_drawablePalette["default"], {
195
+ fillColor: fillColor,
196
+ fillList: fillColorList,
197
+ outlineColor: outlineColor,
198
+ outlineList: outlineColorList,
199
+ paintColor: paintColor,
200
+ paintList: paintColorList,
201
+ onFillColorChange: function onFillColorChange(color) {
202
+ return _this4.handleColorChange('fill', color);
203
+ },
204
+ onOutlineColorChange: function onOutlineColorChange(color) {
205
+ return _this4.handleColorChange('outline', color);
206
+ },
207
+ onPaintColorChange: function onPaintColorChange(color) {
208
+ return _this4.handleColorChange('paint', color);
209
+ }
210
+ }), /*#__PURE__*/_react["default"].createElement("div", {
211
+ className: classes.box
212
+ }, /*#__PURE__*/_react["default"].createElement("div", {
213
+ className: classes.toolbar
214
+ }, TOOLS.map(function (tool) {
215
+ var type = tool.type,
216
+ label = tool.label,
217
+ icon = tool.icon;
218
+ return /*#__PURE__*/_react["default"].createElement(_button["default"], {
219
+ title: label,
220
+ key: type,
221
+ disabled: _this4.checkIfToolIsDisabled(type),
222
+ onClick: function onClick() {
223
+ return _this4.handleMakeToolActive(tool);
224
+ },
225
+ label: /*#__PURE__*/_react["default"].createElement(_icon["default"], {
226
+ path: icon
227
+ })
228
+ });
229
+ })), /*#__PURE__*/_react["default"].createElement("div", {
230
+ ref: function ref(drawable) {
231
+ _this4.drawable = drawable;
232
+ },
233
+ className: classes.drawableHeight,
234
+ style: {
235
+ height: heightToUse,
236
+ maxHeight: heightToUse
237
+ }
238
+ }, /*#__PURE__*/_react["default"].createElement(_drawableMain["default"], {
239
+ scale: this.state.scale,
240
+ session: session,
241
+ disabled: disabled,
242
+ onSessionChange: onSessionChange,
243
+ fillColor: fillColor,
244
+ outlineColor: outlineColor,
245
+ paintColor: paintColor,
246
+ imageUrl: imageUrl,
247
+ drawableDimensions: drawableDimensions,
248
+ imageDimensions: imageDimensions,
249
+ toolActive: toolActive,
250
+ TextEntry: TextEntry,
251
+ backgroundImageEnabled: backgroundImageEnabled
252
+ }))));
253
+ }
254
+ }]);
255
+ return Container;
256
+ }(_react.Component);
257
+ exports.Container = Container;
258
+ (0, _defineProperty2["default"])(Container, "propTypes", {
259
+ classes: _propTypes["default"].object.isRequired,
260
+ disabled: _propTypes["default"].bool,
261
+ session: _propTypes["default"].object.isRequired,
262
+ onSessionChange: _propTypes["default"].func.isRequired,
263
+ imageDimensions: _propTypes["default"].object.isRequired,
264
+ imageUrl: _propTypes["default"].string.isRequired,
265
+ backgroundImageEnabled: _propTypes["default"].bool.isRequired
266
+ });
267
+ var styles = function styles(theme) {
268
+ return {
269
+ base: {
270
+ marginTop: theme.spacing.unit * 2
271
+ },
272
+ box: {
273
+ border: '1px solid #E0E1E6',
274
+ borderRadius: '5px',
275
+ marginTop: theme.spacing.unit * 2,
276
+ backgroundColor: '#ECEDF1'
277
+ },
278
+ drawableHeight: {
279
+ minHeight: 350,
280
+ backgroundColor: '#fff'
281
+ },
282
+ toolbar: {
283
+ borderBottom: '1px solid #E0E1E6',
284
+ borderTopLeftRadius: '5px',
285
+ borderTopRightRadius: '5px',
286
+ padding: '12px 8px 4px',
287
+ boxSizing: 'border-box',
288
+ maxWidth: 'calc(100% - 163px)',
289
+ // 163px is the width set on undoControls
290
+ '& button': {
291
+ marginBottom: '8px'
292
+ }
293
+ }
294
+ };
295
+ };
296
+ var _default = (0, _styles.withStyles)(styles)(Container);
297
+ exports["default"] = _default;
298
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_styles","_constants","_button","_drawablePalette","_drawableMain","_drawableText","_icon","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","TOOLS","constants","tools","ROGVAIV","map","c","value","label","Container","_Component","_inherits2","_super","props","_this","_classCallCheck2","_defineProperty2","_assertThisInitialized2","type","disabled","toolActive","state","TextEntry","DrawableText","scale","drawableDimensions","height","width","fillColor","fillColorList","concat","_toConsumableArray2","outlineColor","outlineColorList","paintColor","paintColorList","_createClass2","setDimensions","_this2","checkExist","setInterval","_this2$drawable$getBo","drawable","getBoundingClientRect","setState","console","warn","clearInterval","componentDidMount","_this3","observer","MutationObserver","mutations","forEach","_document$getElementB","target","document","getElementById","style","cssText","zoom","substring","indexOf","lastIndexOf","zoomParsed","replace","newScale","parseFloat","observe","attributes","attributeFilter","componentWillUnmount","_this$observer","removeEventListeners","disconnect","handleMakeToolActive","tool","addNewTextEntry","updatedAt","Date","handleColorChange","color","cType","render","_this4","_this$props","classes","imageUrl","imageDimensions","onSessionChange","session","backgroundImageEnabled","_this$state","heightToUse","createElement","className","base","fillList","outlineList","paintList","onFillColorChange","onOutlineColorChange","onPaintColorChange","box","toolbar","icon","title","checkIfToolIsDisabled","onClick","path","ref","drawableHeight","maxHeight","Component","exports","PropTypes","object","isRequired","bool","func","string","styles","theme","marginTop","spacing","unit","border","borderRadius","backgroundColor","minHeight","borderBottom","borderTopLeftRadius","borderTopRightRadius","padding","boxSizing","maxWidth","marginBottom","_default","withStyles"],"sources":["../../src/drawing-response/container.jsx"],"sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport constants from './constants';\nimport Button from './button';\nimport DrawablePalette from './drawable-palette';\nimport DrawableMain from './drawable-main';\nimport DrawableText from './drawable-text';\nimport Icon from './icon';\n\nconst { tools: TOOLS } = constants;\n\nconst ROGVAIV = ['red', 'orange', 'yellow', 'violet', 'blue', 'green', 'white', 'black'].map((c) => ({\n value: c,\n label: c,\n}));\n\nexport class Container extends Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n session: PropTypes.object.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n imageDimensions: PropTypes.object.isRequired,\n imageUrl: PropTypes.string.isRequired,\n backgroundImageEnabled: PropTypes.bool.isRequired,\n };\n\n constructor(props) {\n super(props);\n const TextEntry = new DrawableText();\n\n this.state = {\n scale: 1,\n drawableDimensions: {\n height: 0,\n width: 0,\n },\n toolActive: TOOLS[0],\n fillColor: 'white',\n fillColorList: [\n { value: 'transparent', label: 'no fill' },\n { value: 'lightblue', label: 'light blue' },\n { value: 'lightyellow', label: 'light yellow' },\n ...ROGVAIV,\n ],\n outlineColor: 'black',\n outlineColorList: ROGVAIV,\n paintColor: 'red',\n paintColorList: ROGVAIV,\n TextEntry,\n };\n }\n\n setDimensions() {\n const checkExist = setInterval(() => {\n try {\n const { height, width } = this.drawable.getBoundingClientRect();\n if (height !== 0 && width !== 0) {\n this.setState({\n drawableDimensions: {\n height,\n width,\n },\n });\n }\n } catch (e) {\n // eslint-disable-next-line no-console\n console.warn('setDimensions Error: ', e);\n } finally {\n clearInterval(checkExist);\n }\n }, 100);\n }\n\n componentDidMount() {\n this.setDimensions();\n\n this.observer = new MutationObserver((mutations) => {\n mutations.forEach(() => {\n const target = document.getElementById('question-container')?.style?.cssText;\n const zoom = target?.substring(target.indexOf('--pie-zoom') + 11, target.lastIndexOf('%'));\n const zoomParsed = zoom?.replace(/\\s/g, '');\n\n if (zoomParsed) {\n const newScale = parseFloat(zoomParsed) / 100;\n if (newScale !== this.state.scale) {\n this.setState({\n scale: parseFloat(zoomParsed) / 100,\n });\n }\n } else if (!zoomParsed && this.state.scale !== 1) {\n this.setState({\n scale: 1,\n });\n }\n });\n });\n\n const target = document.getElementById('question-container');\n if (target) {\n this.observer.observe(target, { attributes: true, attributeFilter: ['style'] });\n }\n }\n\n componentWillUnmount() {\n const { TextEntry } = this.state;\n\n TextEntry.removeEventListeners();\n this.observer?.disconnect();\n }\n\n handleMakeToolActive(tool) {\n const { TextEntry } = this.state;\n const { type } = tool;\n\n if (type !== 'Text') {\n this.setState({\n toolActive: tool,\n });\n } else {\n TextEntry.addNewTextEntry();\n // Force update\n this.setState({\n updatedAt: new Date(),\n });\n }\n }\n\n checkIfToolIsDisabled = (type) => {\n if (this.props.disabled) return true;\n\n const { toolActive } = this.state;\n // Text will never be disabled since on each \"Text Entry\" click a new text is added\n if (type === 'Text') {\n return false;\n }\n return type === toolActive.type;\n };\n\n handleColorChange(type, color) {\n const cType = `${type}Color`;\n this.setState({\n [cType]: color,\n });\n }\n\n render() {\n const { classes, disabled, imageUrl, imageDimensions, onSessionChange, session, backgroundImageEnabled } =\n this.props;\n const {\n drawableDimensions,\n toolActive,\n fillColor,\n fillColorList,\n outlineColor,\n outlineColorList,\n paintColor,\n paintColorList,\n TextEntry,\n } = this.state;\n\n const heightToUse = drawableDimensions.height * this.state.scale;\n\n return (\n <div className={classes.base}>\n {!disabled && (\n <DrawablePalette\n fillColor={fillColor}\n fillList={fillColorList}\n outlineColor={outlineColor}\n outlineList={outlineColorList}\n paintColor={paintColor}\n paintList={paintColorList}\n onFillColorChange={(color) => this.handleColorChange('fill', color)}\n onOutlineColorChange={(color) => this.handleColorChange('outline', color)}\n onPaintColorChange={(color) => this.handleColorChange('paint', color)}\n />\n )}\n\n <div className={classes.box}>\n <div className={classes.toolbar}>\n {TOOLS.map((tool) => {\n const { type, label, icon } = tool;\n\n return (\n <Button\n title={label}\n key={type}\n disabled={this.checkIfToolIsDisabled(type)}\n onClick={() => this.handleMakeToolActive(tool)}\n label={<Icon path={icon} />}\n />\n );\n })}\n </div>\n\n <div\n ref={(drawable) => {\n this.drawable = drawable;\n }}\n className={classes.drawableHeight}\n style={{ height: heightToUse, maxHeight: heightToUse }}\n >\n <DrawableMain\n scale={this.state.scale}\n session={session}\n disabled={disabled}\n onSessionChange={onSessionChange}\n fillColor={fillColor}\n outlineColor={outlineColor}\n paintColor={paintColor}\n imageUrl={imageUrl}\n drawableDimensions={drawableDimensions}\n imageDimensions={imageDimensions}\n toolActive={toolActive}\n TextEntry={TextEntry}\n backgroundImageEnabled={backgroundImageEnabled}\n />\n </div>\n </div>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n base: {\n marginTop: theme.spacing.unit * 2,\n },\n box: {\n border: '1px solid #E0E1E6',\n borderRadius: '5px',\n marginTop: theme.spacing.unit * 2,\n backgroundColor: '#ECEDF1',\n },\n drawableHeight: {\n minHeight: 350,\n backgroundColor: '#fff',\n },\n toolbar: {\n borderBottom: '1px solid #E0E1E6',\n borderTopLeftRadius: '5px',\n borderTopRightRadius: '5px',\n padding: '12px 8px 4px',\n boxSizing: 'border-box',\n maxWidth: 'calc(100% - 163px)', // 163px is the width set on undoControls\n '& button': {\n marginBottom: '8px',\n },\n },\n});\n\nexport default withStyles(styles)(Container);\n"],"mappings":"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"}
@@ -0,0 +1,98 @@
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 CircleDrawable = /*#__PURE__*/function (_DrawableHelper) {
21
+ (0, _inherits2["default"])(CircleDrawable, _DrawableHelper);
22
+ var _super = _createSuper(CircleDrawable);
23
+ function CircleDrawable(_props) {
24
+ var _this;
25
+ (0, _classCallCheck2["default"])(this, CircleDrawable);
26
+ _this = _super.call(this, _props, CircleDrawable.TYPE);
27
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleDragEnd", function (props, event) {
28
+ var deltaX = _this.startx - event.target.getX();
29
+ var deltaY = _this.starty - event.target.getY();
30
+ _this.startx = event.target.getX();
31
+ _this.starty = event.target.getY();
32
+ _this.x = _this.x - deltaX;
33
+ _this.y = _this.y - deltaY;
34
+ props.handleSessionChange();
35
+ });
36
+ var startx = _props.startx,
37
+ starty = _props.starty,
38
+ x = _props.x,
39
+ y = _props.y;
40
+ _this.startx = startx;
41
+ _this.starty = starty;
42
+ _this.x = x || startx;
43
+ _this.y = y || starty;
44
+ var dx = _this.startx - _this.x;
45
+ var dy = _this.starty - _this.y;
46
+ _this.radius = Math.sqrt(dx * dx + dy * dy);
47
+ return _this;
48
+ }
49
+ (0, _createClass2["default"])(CircleDrawable, [{
50
+ key: "registerMovement",
51
+ value: function registerMovement(x, y) {
52
+ this.x = x;
53
+ this.y = y;
54
+ var dx = this.startx - this.x;
55
+ var dy = this.starty - this.y;
56
+ this.radius = Math.sqrt(dx * dx + dy * dy);
57
+ }
58
+ }, {
59
+ key: "handleOnClick",
60
+ value: function handleOnClick(props) {
61
+ var paint = props.paint,
62
+ paintColor = props.paintColor,
63
+ forceUpdate = props.forceUpdate;
64
+ if (paint) {
65
+ this.paintColor = paintColor;
66
+ forceUpdate();
67
+ }
68
+ }
69
+ }, {
70
+ key: "render",
71
+ value: function render(props) {
72
+ var _this2 = this;
73
+ var draggable = props.draggable,
74
+ key = props.key,
75
+ onMouseOverElement = props.onMouseOverElement,
76
+ onMouseOutElement = props.onMouseOutElement;
77
+ return /*#__PURE__*/_react["default"].createElement(_reactKonva.Circle, {
78
+ key: key,
79
+ draggable: draggable,
80
+ radius: this.radius,
81
+ x: this.startx,
82
+ y: this.starty,
83
+ fill: this.paintColor || this.fillColor,
84
+ onClick: function onClick() {
85
+ return _this2.handleOnClick(props);
86
+ },
87
+ onDragEnd: this.handleDragEnd.bind(this, props),
88
+ onMouseEnter: onMouseOverElement,
89
+ onMouseLeave: onMouseOutElement,
90
+ stroke: this.outlineColor
91
+ });
92
+ }
93
+ }]);
94
+ return CircleDrawable;
95
+ }(_drawableHelper["default"]);
96
+ exports["default"] = CircleDrawable;
97
+ (0, _defineProperty2["default"])(CircleDrawable, "TYPE", 'CircleDrawable');
98
+ //# sourceMappingURL=drawable-circle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawable-circle.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","CircleDrawable","_DrawableHelper","_inherits2","_super","props","_this","_classCallCheck2","TYPE","_defineProperty2","_assertThisInitialized2","event","deltaX","startx","target","getX","deltaY","starty","getY","x","y","handleSessionChange","dx","dy","radius","Math","sqrt","_createClass2","key","value","registerMovement","handleOnClick","paint","paintColor","forceUpdate","render","_this2","draggable","onMouseOverElement","onMouseOutElement","createElement","Circle","fill","fillColor","onClick","onDragEnd","handleDragEnd","bind","onMouseEnter","onMouseLeave","stroke","outlineColor","DrawableHelper","exports"],"sources":["../../src/drawing-response/drawable-circle.jsx"],"sourcesContent":["import React from 'react';\nimport { Circle } from 'react-konva';\n\nimport DrawableHelper from './drawable-helper';\n\nexport default class CircleDrawable extends DrawableHelper {\n static TYPE = 'CircleDrawable';\n constructor(props) {\n super(props, CircleDrawable.TYPE);\n const { startx, starty, x, y } = props;\n\n this.startx = startx;\n this.starty = starty;\n this.x = x || startx;\n this.y = y || starty;\n\n const dx = this.startx - this.x;\n const dy = this.starty - this.y;\n\n this.radius = Math.sqrt(dx * dx + dy * dy);\n }\n\n registerMovement(x, y) {\n this.x = x;\n this.y = y;\n\n const dx = this.startx - this.x;\n const dy = this.starty - this.y;\n\n this.radius = Math.sqrt(dx * dx + dy * dy);\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 const deltaX = this.startx - event.target.getX();\n const deltaY = this.starty - event.target.getY();\n\n this.startx = event.target.getX();\n this.starty = event.target.getY();\n\n this.x = this.x - deltaX;\n this.y = this.y - deltaY;\n\n props.handleSessionChange();\n };\n\n render(props) {\n const { draggable, key, onMouseOverElement, onMouseOutElement } = props;\n\n return (\n <Circle\n key={key}\n draggable={draggable}\n radius={this.radius}\n x={this.startx}\n y={this.starty}\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.outlineColor}\n />\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,80 @@
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _react = _interopRequireDefault(require("react"));
17
+ var _reactKonva = require("react-konva");
18
+ var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
19
+ 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); }; }
20
+ 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; } }
21
+ var EraserDrawable = /*#__PURE__*/function (_DrawableHelper) {
22
+ (0, _inherits2["default"])(EraserDrawable, _DrawableHelper);
23
+ var _super = _createSuper(EraserDrawable);
24
+ function EraserDrawable(_props) {
25
+ var _this;
26
+ (0, _classCallCheck2["default"])(this, EraserDrawable);
27
+ _this = _super.call(this, _props, EraserDrawable.TYPE);
28
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleDragEnd", function (props, event) {
29
+ _this.posX = event.target.getX();
30
+ _this.posY = event.target.getY();
31
+ props.handleSessionChange();
32
+ });
33
+ var startx = _props.startx,
34
+ starty = _props.starty,
35
+ points = _props.points,
36
+ posX = _props.posX,
37
+ posY = _props.posY;
38
+ _this.points = points || [startx, starty];
39
+ _this.posX = posX || 0;
40
+ _this.posY = posY || 0;
41
+ return _this;
42
+ }
43
+ (0, _createClass2["default"])(EraserDrawable, [{
44
+ key: "registerMovement",
45
+ value: function registerMovement(x, y) {
46
+ this.points = [].concat((0, _toConsumableArray2["default"])(this.points), [x, y]);
47
+ }
48
+ }, {
49
+ key: "render",
50
+ value: function render(props) {
51
+ var draggable = props.draggable,
52
+ key = props.key,
53
+ onMouseOverElement = props.onMouseOverElement,
54
+ onMouseOutElement = props.onMouseOutElement;
55
+ return /*#__PURE__*/_react["default"].createElement(_reactKonva.Line, {
56
+ key: key,
57
+ draggable: draggable,
58
+ globalCompositeOperation: "destination-out",
59
+ tension: 0,
60
+ bezier: true,
61
+ points: this.points,
62
+ onDragEnd: this.handleDragEnd.bind(this, props),
63
+ onMouseEnter: onMouseOverElement,
64
+ onMouseLeave: onMouseOutElement,
65
+ strokeStyle: "#df4b26",
66
+ lineJoin: "round",
67
+ lineWidth: "5",
68
+ fill: "white",
69
+ stroke: "white",
70
+ strokeWidth: 5,
71
+ x: this.posX,
72
+ y: this.posY
73
+ });
74
+ }
75
+ }]);
76
+ return EraserDrawable;
77
+ }(_drawableHelper["default"]);
78
+ exports["default"] = EraserDrawable;
79
+ (0, _defineProperty2["default"])(EraserDrawable, "TYPE", 'EraserDrawable');
80
+ //# sourceMappingURL=drawable-eraser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawable-eraser.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","EraserDrawable","_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","render","draggable","onMouseOverElement","onMouseOutElement","createElement","Line","globalCompositeOperation","tension","bezier","onDragEnd","handleDragEnd","bind","onMouseEnter","onMouseLeave","strokeStyle","lineJoin","lineWidth","fill","stroke","strokeWidth","DrawableHelper","exports"],"sources":["../../src/drawing-response/drawable-eraser.jsx"],"sourcesContent":["import React from 'react';\nimport { Line } from 'react-konva';\n\nimport DrawableHelper from './drawable-helper';\n\nexport default class EraserDrawable extends DrawableHelper {\n static TYPE = 'EraserDrawable';\n constructor(props) {\n super(props, EraserDrawable.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 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 globalCompositeOperation=\"destination-out\"\n tension={0}\n bezier={true}\n points={this.points}\n onDragEnd={this.handleDragEnd.bind(this, props)}\n onMouseEnter={onMouseOverElement}\n onMouseLeave={onMouseOutElement}\n strokeStyle=\"#df4b26\"\n lineJoin=\"round\"\n lineWidth=\"5\"\n fill=\"white\"\n stroke=\"white\"\n strokeWidth={5}\n x={this.posX}\n y={this.posY}\n />\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,90 @@
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _react = _interopRequireDefault(require("react"));
17
+ var _reactKonva = require("react-konva");
18
+ var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
19
+ 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); }; }
20
+ 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; } }
21
+ var FreePathDrawable = /*#__PURE__*/function (_DrawableHelper) {
22
+ (0, _inherits2["default"])(FreePathDrawable, _DrawableHelper);
23
+ var _super = _createSuper(FreePathDrawable);
24
+ function FreePathDrawable(_props) {
25
+ var _this;
26
+ (0, _classCallCheck2["default"])(this, FreePathDrawable);
27
+ _this = _super.call(this, _props, FreePathDrawable.TYPE);
28
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleDragEnd", function (props, event) {
29
+ _this.posX = event.target.getX();
30
+ _this.posY = event.target.getY();
31
+ props.handleSessionChange();
32
+ });
33
+ var startx = _props.startx,
34
+ starty = _props.starty,
35
+ points = _props.points,
36
+ posX = _props.posX,
37
+ posY = _props.posY;
38
+ _this.points = points || [startx, starty];
39
+ _this.posX = posX || 0;
40
+ _this.posY = posY || 0;
41
+ return _this;
42
+ }
43
+ (0, _createClass2["default"])(FreePathDrawable, [{
44
+ key: "registerMovement",
45
+ value: function registerMovement(x, y) {
46
+ this.points = [].concat((0, _toConsumableArray2["default"])(this.points), [x, y]);
47
+ }
48
+ }, {
49
+ key: "handleOnClick",
50
+ value: function handleOnClick(props) {
51
+ var paint = props.paint,
52
+ paintColor = props.paintColor,
53
+ forceUpdate = props.forceUpdate;
54
+ if (paint) {
55
+ this.paintColor = paintColor;
56
+ forceUpdate();
57
+ }
58
+ }
59
+ }, {
60
+ key: "render",
61
+ value: function render(props) {
62
+ var _this2 = this;
63
+ var draggable = props.draggable,
64
+ key = props.key,
65
+ onMouseOverElement = props.onMouseOverElement,
66
+ onMouseOutElement = props.onMouseOutElement;
67
+ return /*#__PURE__*/_react["default"].createElement(_reactKonva.Line, {
68
+ key: key,
69
+ draggable: draggable,
70
+ tension: 0,
71
+ bezier: true,
72
+ points: this.points,
73
+ fill: this.paintColor || this.fillColor,
74
+ onClick: function onClick() {
75
+ return _this2.handleOnClick(props);
76
+ },
77
+ onDragEnd: this.handleDragEnd.bind(this, props),
78
+ onMouseEnter: onMouseOverElement,
79
+ onMouseLeave: onMouseOutElement,
80
+ stroke: this.paintColor || this.outlineColor,
81
+ x: this.posX,
82
+ y: this.posY
83
+ });
84
+ }
85
+ }]);
86
+ return FreePathDrawable;
87
+ }(_drawableHelper["default"]);
88
+ exports["default"] = FreePathDrawable;
89
+ (0, _defineProperty2["default"])(FreePathDrawable, "TYPE", 'FreePathDrawable');
90
+ //# sourceMappingURL=drawable-free-path.js.map