@pie-element/drawing-response 4.6.0 → 4.6.1-beta.1
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/package.json +3 -3
- package/controller/package.json +1 -1
- package/package.json +5 -4
- package/configure/lib/button.js +0 -61
- package/configure/lib/button.js.map +0 -1
- package/configure/lib/defaults.js +0 -56
- package/configure/lib/defaults.js.map +0 -1
- package/configure/lib/image-container.js +0 -364
- package/configure/lib/image-container.js.map +0 -1
- package/configure/lib/index.js +0 -188
- package/configure/lib/index.js.map +0 -1
- package/configure/lib/root.js +0 -256
- package/configure/lib/root.js.map +0 -1
- package/controller/lib/defaults.js +0 -16
- package/controller/lib/defaults.js.map +0 -1
- package/controller/lib/index.js +0 -84
- package/controller/lib/index.js.map +0 -1
- package/lib/drawing-response/button.js +0 -74
- package/lib/drawing-response/button.js.map +0 -1
- package/lib/drawing-response/constants.js +0 -44
- package/lib/drawing-response/constants.js.map +0 -1
- package/lib/drawing-response/container.js +0 -342
- package/lib/drawing-response/container.js.map +0 -1
- package/lib/drawing-response/drawable-circle.js +0 -119
- package/lib/drawing-response/drawable-circle.js.map +0 -1
- package/lib/drawing-response/drawable-eraser.js +0 -100
- package/lib/drawing-response/drawable-eraser.js.map +0 -1
- package/lib/drawing-response/drawable-free-path.js +0 -112
- package/lib/drawing-response/drawable-free-path.js.map +0 -1
- package/lib/drawing-response/drawable-helper.js +0 -46
- package/lib/drawing-response/drawable-helper.js.map +0 -1
- package/lib/drawing-response/drawable-image.js +0 -60
- package/lib/drawing-response/drawable-image.js.map +0 -1
- package/lib/drawing-response/drawable-line.js +0 -114
- package/lib/drawing-response/drawable-line.js.map +0 -1
- package/lib/drawing-response/drawable-main.js +0 -406
- package/lib/drawing-response/drawable-main.js.map +0 -1
- package/lib/drawing-response/drawable-palette.js +0 -174
- package/lib/drawing-response/drawable-palette.js.map +0 -1
- package/lib/drawing-response/drawable-rectangle.js +0 -119
- package/lib/drawing-response/drawable-rectangle.js.map +0 -1
- package/lib/drawing-response/drawable-text.js +0 -378
- package/lib/drawing-response/drawable-text.js.map +0 -1
- package/lib/drawing-response/drawable-transformer.js +0 -95
- package/lib/drawing-response/drawable-transformer.js.map +0 -1
- package/lib/drawing-response/factory.js +0 -35
- package/lib/drawing-response/factory.js.map +0 -1
- package/lib/drawing-response/icon.js +0 -71
- package/lib/drawing-response/icon.js.map +0 -1
- package/lib/drawing-response/index.js +0 -125
- package/lib/drawing-response/index.js.map +0 -1
- package/lib/index.js +0 -118
- package/lib/index.js.map +0 -1
|
@@ -1,406 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = exports.DrawableMain = void 0;
|
|
9
|
-
|
|
10
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
19
|
-
|
|
20
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
21
|
-
|
|
22
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
23
|
-
|
|
24
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
25
|
-
|
|
26
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
27
|
-
|
|
28
|
-
var _react = _interopRequireDefault(require("react"));
|
|
29
|
-
|
|
30
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
31
|
-
|
|
32
|
-
var _omit = _interopRequireDefault(require("lodash/omit"));
|
|
33
|
-
|
|
34
|
-
var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
35
|
-
|
|
36
|
-
var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
37
|
-
|
|
38
|
-
var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
39
|
-
|
|
40
|
-
var _reactKonva = require("react-konva");
|
|
41
|
-
|
|
42
|
-
var _styles = require("@material-ui/core/styles");
|
|
43
|
-
|
|
44
|
-
var _drawableImage = _interopRequireDefault(require("./drawable-image"));
|
|
45
|
-
|
|
46
|
-
var _button = _interopRequireDefault(require("./button"));
|
|
47
|
-
|
|
48
|
-
var _factory = _interopRequireDefault(require("./factory"));
|
|
49
|
-
|
|
50
|
-
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; }
|
|
51
|
-
|
|
52
|
-
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; }
|
|
53
|
-
|
|
54
|
-
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); }; }
|
|
55
|
-
|
|
56
|
-
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; } }
|
|
57
|
-
|
|
58
|
-
var DrawableMain = /*#__PURE__*/function (_React$Component) {
|
|
59
|
-
(0, _inherits2["default"])(DrawableMain, _React$Component);
|
|
60
|
-
|
|
61
|
-
var _super = _createSuper(DrawableMain);
|
|
62
|
-
|
|
63
|
-
function DrawableMain(props) {
|
|
64
|
-
var _this;
|
|
65
|
-
|
|
66
|
-
(0, _classCallCheck2["default"])(this, DrawableMain);
|
|
67
|
-
_this = _super.call(this, props);
|
|
68
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSessionChange", function () {
|
|
69
|
-
var _this$props = _this.props,
|
|
70
|
-
onSessionChange = _this$props.onSessionChange,
|
|
71
|
-
session = _this$props.session,
|
|
72
|
-
TextEntry = _this$props.TextEntry;
|
|
73
|
-
var drawables = _this.state.drawables;
|
|
74
|
-
var newSession = {
|
|
75
|
-
drawables: drawables.map(function (d) {
|
|
76
|
-
return d.toJson();
|
|
77
|
-
}),
|
|
78
|
-
texts: TextEntry.all.map(function (text) {
|
|
79
|
-
return _objectSpread(_objectSpread(_objectSpread({}, text), TextEntry["text_".concat(text.id)] && TextEntry["text_".concat(text.id)].attrs), {}, {
|
|
80
|
-
value: TextEntry["textarea_".concat(text.id)] && TextEntry["textarea_".concat(text.id)].value
|
|
81
|
-
});
|
|
82
|
-
})
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
if (!(0, _isEqual["default"])(newSession, session)) {
|
|
86
|
-
onSessionChange(_objectSpread(_objectSpread({}, session), newSession));
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseOverElement", function () {
|
|
90
|
-
return _this.setState({
|
|
91
|
-
isOver: true
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseOutElement", function () {
|
|
95
|
-
return _this.setState({
|
|
96
|
-
isOver: false
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseDown", function (e) {
|
|
100
|
-
// ONLY IF MOBILE?
|
|
101
|
-
document.body.style.overflow = 'hidden';
|
|
102
|
-
var _this$state = _this.state,
|
|
103
|
-
newDrawable = _this$state.newDrawable,
|
|
104
|
-
textIsSelected = _this$state.textIsSelected;
|
|
105
|
-
var _this$props2 = _this.props,
|
|
106
|
-
toolActive = _this$props2.toolActive,
|
|
107
|
-
fillColor = _this$props2.fillColor,
|
|
108
|
-
outlineColor = _this$props2.outlineColor,
|
|
109
|
-
scale = _this$props2.scale;
|
|
110
|
-
|
|
111
|
-
if (newDrawable.length === 0 && !textIsSelected) {
|
|
112
|
-
var _e$target$getStage$ge = e.target.getStage().getPointerPosition(),
|
|
113
|
-
x = _e$target$getStage$ge.x,
|
|
114
|
-
y = _e$target$getStage$ge.y;
|
|
115
|
-
|
|
116
|
-
var _newDrawable = (0, _factory["default"])(toolActive.type, {
|
|
117
|
-
startx: x / scale,
|
|
118
|
-
starty: y / scale,
|
|
119
|
-
fillColor: fillColor,
|
|
120
|
-
outlineColor: outlineColor,
|
|
121
|
-
createdAt: new Date()
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
_this.setState({
|
|
125
|
-
newDrawable: [_newDrawable]
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseUp", function (e) {
|
|
130
|
-
// ONLY IF MOBILE?
|
|
131
|
-
document.body.style.overflow = 'initial';
|
|
132
|
-
var _this$state2 = _this.state,
|
|
133
|
-
newDrawable = _this$state2.newDrawable,
|
|
134
|
-
drawables = _this$state2.drawables;
|
|
135
|
-
var scale = _this.props.scale;
|
|
136
|
-
|
|
137
|
-
if (newDrawable.length === 1) {
|
|
138
|
-
var _e$target$getStage$ge2 = e.target.getStage().getPointerPosition(),
|
|
139
|
-
x = _e$target$getStage$ge2.x,
|
|
140
|
-
y = _e$target$getStage$ge2.y;
|
|
141
|
-
|
|
142
|
-
var drawableToAdd = newDrawable[0];
|
|
143
|
-
drawableToAdd.registerMovement(x / scale, y / scale);
|
|
144
|
-
drawables.push(drawableToAdd);
|
|
145
|
-
|
|
146
|
-
_this.setState({
|
|
147
|
-
newDrawable: [],
|
|
148
|
-
drawables: drawables
|
|
149
|
-
}, _this.handleSessionChange.bind((0, _assertThisInitialized2["default"])(_this), drawableToAdd));
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseMove", function (e) {
|
|
153
|
-
var newDrawable = _this.state.newDrawable;
|
|
154
|
-
var scale = _this.props.scale;
|
|
155
|
-
|
|
156
|
-
if (newDrawable.length === 1) {
|
|
157
|
-
var _e$target$getStage$ge3 = e.target.getStage().getPointerPosition(),
|
|
158
|
-
x = _e$target$getStage$ge3.x,
|
|
159
|
-
y = _e$target$getStage$ge3.y;
|
|
160
|
-
|
|
161
|
-
var updatedNewDrawable = newDrawable[0];
|
|
162
|
-
updatedNewDrawable.registerMovement(x / scale, y / scale);
|
|
163
|
-
|
|
164
|
-
_this.setState({
|
|
165
|
-
newDrawable: [updatedNewDrawable]
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleUndo", function () {
|
|
170
|
-
var drawables = _this.state.drawables;
|
|
171
|
-
var TextEntry = _this.props.TextEntry;
|
|
172
|
-
var newDrawables = (0, _toConsumableArray2["default"])(drawables);
|
|
173
|
-
var allData = [].concat((0, _toConsumableArray2["default"])(drawables), (0, _toConsumableArray2["default"])(TextEntry.all));
|
|
174
|
-
allData.sort(function (a, b) {
|
|
175
|
-
return new Date(a.createdAt) - new Date(b.createdAt);
|
|
176
|
-
});
|
|
177
|
-
var lastElement = allData[allData.length - 1];
|
|
178
|
-
|
|
179
|
-
if (lastElement && lastElement.type === 'text-entry') {
|
|
180
|
-
TextEntry.all.pop();
|
|
181
|
-
|
|
182
|
-
_this.setState({
|
|
183
|
-
updatedAt: new Date()
|
|
184
|
-
}, _this.handleSessionChange);
|
|
185
|
-
} else {
|
|
186
|
-
newDrawables.pop();
|
|
187
|
-
|
|
188
|
-
_this.setState({
|
|
189
|
-
drawables: newDrawables
|
|
190
|
-
}, _this.handleSessionChange);
|
|
191
|
-
}
|
|
192
|
-
});
|
|
193
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClearAll", function () {
|
|
194
|
-
var TextEntry = _this.props.TextEntry;
|
|
195
|
-
TextEntry.all = [];
|
|
196
|
-
|
|
197
|
-
_this.setState({
|
|
198
|
-
drawables: [],
|
|
199
|
-
updatedAt: new Date()
|
|
200
|
-
}, _this.handleSessionChange);
|
|
201
|
-
});
|
|
202
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "toggleTextSelected", function (textIsSelected) {
|
|
203
|
-
return _this.setState({
|
|
204
|
-
textIsSelected: textIsSelected
|
|
205
|
-
});
|
|
206
|
-
});
|
|
207
|
-
_this.state = {
|
|
208
|
-
drawables: [],
|
|
209
|
-
newDrawable: [],
|
|
210
|
-
textIsSelected: false
|
|
211
|
-
};
|
|
212
|
-
return _this;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
(0, _createClass2["default"])(DrawableMain, [{
|
|
216
|
-
key: "UNSAFE_componentWillReceiveProps",
|
|
217
|
-
value: function UNSAFE_componentWillReceiveProps(nextProps) {
|
|
218
|
-
if (nextProps.session) {
|
|
219
|
-
var TextEntry = nextProps.TextEntry;
|
|
220
|
-
var currentDrawables = this.state.drawables;
|
|
221
|
-
|
|
222
|
-
if (nextProps.session.drawables) {
|
|
223
|
-
var newDrawables = (0, _cloneDeep["default"])(nextProps.session.drawables);
|
|
224
|
-
var drawablesString = JSON.stringify(currentDrawables);
|
|
225
|
-
var sessionDrawableString = JSON.stringify((newDrawables || []).map(function (drawable) {
|
|
226
|
-
return (0, _omit["default"])(drawable, 'type');
|
|
227
|
-
}));
|
|
228
|
-
|
|
229
|
-
if (drawablesString !== sessionDrawableString) {
|
|
230
|
-
var drawableArray = nextProps.session.drawables;
|
|
231
|
-
this.setState({
|
|
232
|
-
drawables: drawableArray.map(function (drawable) {
|
|
233
|
-
return (0, _factory["default"])(drawable.type, drawable);
|
|
234
|
-
})
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
var currentTexts = TextEntry.all.map(function (text) {
|
|
239
|
-
return _objectSpread(_objectSpread(_objectSpread({}, text), TextEntry["text_".concat(text.id)] && TextEntry["text_".concat(text.id)].attrs), {}, {
|
|
240
|
-
value: TextEntry["textarea_".concat(text.id)] && TextEntry["textarea_".concat(text.id)].value
|
|
241
|
-
});
|
|
242
|
-
});
|
|
243
|
-
|
|
244
|
-
if (!(0, _isEqual["default"])(currentTexts, nextProps.session.texts)) {
|
|
245
|
-
TextEntry.setAll(nextProps.session.texts || []);
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
} else {
|
|
249
|
-
this.handleSessionChange();
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
}, {
|
|
253
|
-
key: "render",
|
|
254
|
-
value: function render() {
|
|
255
|
-
var _this2 = this;
|
|
256
|
-
|
|
257
|
-
var _this$props3 = this.props,
|
|
258
|
-
classes = _this$props3.classes,
|
|
259
|
-
disabled = _this$props3.disabled,
|
|
260
|
-
drawableDimensions = _this$props3.drawableDimensions,
|
|
261
|
-
fillColor = _this$props3.fillColor,
|
|
262
|
-
imageDimensions = _this$props3.imageDimensions,
|
|
263
|
-
imageUrl = _this$props3.imageUrl,
|
|
264
|
-
paintColor = _this$props3.paintColor,
|
|
265
|
-
outlineColor = _this$props3.outlineColor,
|
|
266
|
-
TextEntry = _this$props3.TextEntry,
|
|
267
|
-
_this$props3$backgrou = _this$props3.backgroundImageEnabled,
|
|
268
|
-
backgroundImageEnabled = _this$props3$backgrou === void 0 ? true : _this$props3$backgrou,
|
|
269
|
-
type = _this$props3.toolActive.type,
|
|
270
|
-
scale = _this$props3.scale;
|
|
271
|
-
var _this$state3 = this.state,
|
|
272
|
-
isOver = _this$state3.isOver,
|
|
273
|
-
newDrawable = _this$state3.newDrawable;
|
|
274
|
-
var draggable = type === 'Select';
|
|
275
|
-
var paint = type === 'PaintBucket';
|
|
276
|
-
var drawables = [].concat((0, _toConsumableArray2["default"])(this.state.drawables), (0, _toConsumableArray2["default"])(this.state.newDrawable));
|
|
277
|
-
var drawableProps = {
|
|
278
|
-
draggable: draggable && !disabled,
|
|
279
|
-
disabled: disabled,
|
|
280
|
-
paint: paint,
|
|
281
|
-
fillColor: fillColor,
|
|
282
|
-
forceUpdate: function forceUpdate() {
|
|
283
|
-
return _this2.setState({
|
|
284
|
-
updatedAt: new Date()
|
|
285
|
-
});
|
|
286
|
-
},
|
|
287
|
-
paintColor: paintColor,
|
|
288
|
-
outlineColor: outlineColor,
|
|
289
|
-
toggleTextSelected: this.toggleTextSelected,
|
|
290
|
-
handleSessionChange: this.handleSessionChange,
|
|
291
|
-
stage: this.stage,
|
|
292
|
-
onMouseOverElement: this.onMouseOverElement,
|
|
293
|
-
onMouseOutElement: this.onMouseOutElement,
|
|
294
|
-
scale: scale
|
|
295
|
-
};
|
|
296
|
-
var listeners = {};
|
|
297
|
-
|
|
298
|
-
if (!disabled) {
|
|
299
|
-
listeners = {
|
|
300
|
-
onMouseUp: this.handleMouseUp,
|
|
301
|
-
onTouchEnd: this.handleMouseUp,
|
|
302
|
-
onMouseMove: this.handleMouseMove,
|
|
303
|
-
onTouchMove: this.handleMouseMove
|
|
304
|
-
};
|
|
305
|
-
|
|
306
|
-
if (!draggable) {
|
|
307
|
-
listeners.onMouseDown = this.handleMouseDown;
|
|
308
|
-
listeners.onTouchStart = this.handleMouseDown;
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
var imageHeight = (imageDimensions === null || imageDimensions === void 0 ? void 0 : imageDimensions.height) * scale;
|
|
313
|
-
var imageWidth = (imageDimensions === null || imageDimensions === void 0 ? void 0 : imageDimensions.width) * scale;
|
|
314
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
315
|
-
className: classes.wrapper
|
|
316
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
317
|
-
className: classes.undoControls
|
|
318
|
-
}, /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
319
|
-
disabled: disabled,
|
|
320
|
-
onClick: this.handleUndo,
|
|
321
|
-
label: "Undo"
|
|
322
|
-
}), /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
323
|
-
disabled: disabled,
|
|
324
|
-
onClick: this.handleClearAll,
|
|
325
|
-
label: "Clear all"
|
|
326
|
-
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
327
|
-
className: classes.base
|
|
328
|
-
}, backgroundImageEnabled && imageUrl && /*#__PURE__*/_react["default"].createElement(_drawableImage["default"], {
|
|
329
|
-
dimensions: {
|
|
330
|
-
height: imageHeight,
|
|
331
|
-
width: imageWidth
|
|
332
|
-
},
|
|
333
|
-
url: imageUrl
|
|
334
|
-
}), TextEntry.renderTextareas(), /*#__PURE__*/_react["default"].createElement(_reactKonva.Stage, (0, _extends2["default"])({
|
|
335
|
-
scaleX: scale,
|
|
336
|
-
scaleY: scale,
|
|
337
|
-
ref: function ref(_ref2) {
|
|
338
|
-
_this2.stage = _ref2;
|
|
339
|
-
},
|
|
340
|
-
className: (0, _classnames2["default"])(classes.stage, (0, _defineProperty2["default"])({}, classes.active, draggable && (isOver || newDrawable && newDrawable.length === 1))),
|
|
341
|
-
height: drawableDimensions.height,
|
|
342
|
-
width: drawableDimensions.width
|
|
343
|
-
}, listeners), /*#__PURE__*/_react["default"].createElement(_reactKonva.Layer, {
|
|
344
|
-
ref: function ref(_ref) {
|
|
345
|
-
_this2.layer = _ref;
|
|
346
|
-
}
|
|
347
|
-
}, drawables.map(function (drawable, key) {
|
|
348
|
-
return drawable.render(_objectSpread(_objectSpread({}, drawableProps), {}, {
|
|
349
|
-
key: key
|
|
350
|
-
}));
|
|
351
|
-
}), TextEntry.render(drawableProps)))));
|
|
352
|
-
}
|
|
353
|
-
}]);
|
|
354
|
-
return DrawableMain;
|
|
355
|
-
}(_react["default"].Component);
|
|
356
|
-
|
|
357
|
-
exports.DrawableMain = DrawableMain;
|
|
358
|
-
|
|
359
|
-
var styles = function styles() {
|
|
360
|
-
return {
|
|
361
|
-
wrapper: {
|
|
362
|
-
display: 'flex',
|
|
363
|
-
flexWrap: 'wrap',
|
|
364
|
-
justifyContent: 'flex-end'
|
|
365
|
-
},
|
|
366
|
-
base: {
|
|
367
|
-
position: 'relative',
|
|
368
|
-
width: '100%'
|
|
369
|
-
},
|
|
370
|
-
stage: {
|
|
371
|
-
left: 0,
|
|
372
|
-
position: 'absolute',
|
|
373
|
-
touchAction: 'none',
|
|
374
|
-
top: 0
|
|
375
|
-
},
|
|
376
|
-
active: {
|
|
377
|
-
cursor: 'pointer'
|
|
378
|
-
},
|
|
379
|
-
undoControls: {
|
|
380
|
-
marginTop: -43,
|
|
381
|
-
width: 163
|
|
382
|
-
}
|
|
383
|
-
};
|
|
384
|
-
};
|
|
385
|
-
|
|
386
|
-
DrawableMain.propTypes = {
|
|
387
|
-
classes: _propTypes["default"].object.isRequired,
|
|
388
|
-
disabled: _propTypes["default"].bool,
|
|
389
|
-
drawableDimensions: _propTypes["default"].object.isRequired,
|
|
390
|
-
imageDimensions: _propTypes["default"].object.isRequired,
|
|
391
|
-
fillColor: _propTypes["default"].string.isRequired,
|
|
392
|
-
onSessionChange: _propTypes["default"].func.isRequired,
|
|
393
|
-
paintColor: _propTypes["default"].string.isRequired,
|
|
394
|
-
outlineColor: _propTypes["default"].string.isRequired,
|
|
395
|
-
imageUrl: _propTypes["default"].string.isRequired,
|
|
396
|
-
TextEntry: _propTypes["default"].object.isRequired,
|
|
397
|
-
toolActive: _propTypes["default"].object.isRequired,
|
|
398
|
-
session: _propTypes["default"].object.isRequired,
|
|
399
|
-
backgroundImageEnabled: _propTypes["default"].bool.isRequired,
|
|
400
|
-
scale: _propTypes["default"].number.isRequired
|
|
401
|
-
};
|
|
402
|
-
|
|
403
|
-
var _default = (0, _styles.withStyles)(styles)(DrawableMain);
|
|
404
|
-
|
|
405
|
-
exports["default"] = _default;
|
|
406
|
-
//# sourceMappingURL=drawable-main.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/drawable-main.jsx"],"names":["DrawableMain","props","onSessionChange","session","TextEntry","drawables","state","newSession","map","d","toJson","texts","all","text","id","attrs","value","setState","isOver","e","document","body","style","overflow","newDrawable","textIsSelected","toolActive","fillColor","outlineColor","scale","length","target","getStage","getPointerPosition","x","y","type","startx","starty","createdAt","Date","drawableToAdd","registerMovement","push","handleSessionChange","bind","updatedNewDrawable","newDrawables","allData","sort","a","b","lastElement","pop","updatedAt","nextProps","currentDrawables","drawablesString","JSON","stringify","sessionDrawableString","drawable","drawableArray","currentTexts","setAll","classes","disabled","drawableDimensions","imageDimensions","imageUrl","paintColor","backgroundImageEnabled","draggable","paint","drawableProps","forceUpdate","toggleTextSelected","stage","onMouseOverElement","onMouseOutElement","listeners","onMouseUp","handleMouseUp","onTouchEnd","onMouseMove","handleMouseMove","onTouchMove","onMouseDown","handleMouseDown","onTouchStart","imageHeight","height","imageWidth","width","wrapper","undoControls","handleUndo","handleClearAll","base","renderTextareas","ref","active","layer","key","render","React","Component","styles","display","flexWrap","justifyContent","position","left","touchAction","top","cursor","marginTop","propTypes","PropTypes","object","isRequired","bool","string","func","number"],"mappings":"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","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"],"file":"drawable-main.js"}
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
|
-
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
|
-
var _renderUi = require("@pie-lib/render-ui");
|
|
29
|
-
|
|
30
|
-
var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
|
|
31
|
-
|
|
32
|
-
var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
|
|
33
|
-
|
|
34
|
-
var _styles = require("@material-ui/core/styles");
|
|
35
|
-
|
|
36
|
-
var _classnames2 = _interopRequireDefault(require("classnames"));
|
|
37
|
-
|
|
38
|
-
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); }; }
|
|
39
|
-
|
|
40
|
-
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; } }
|
|
41
|
-
|
|
42
|
-
// TODO: Change Palette so will render inputs and colors dynamically
|
|
43
|
-
var Palette = /*#__PURE__*/function (_React$Component) {
|
|
44
|
-
(0, _inherits2["default"])(Palette, _React$Component);
|
|
45
|
-
|
|
46
|
-
var _super = _createSuper(Palette);
|
|
47
|
-
|
|
48
|
-
function Palette() {
|
|
49
|
-
var _this;
|
|
50
|
-
|
|
51
|
-
(0, _classCallCheck2["default"])(this, Palette);
|
|
52
|
-
|
|
53
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
54
|
-
args[_key] = arguments[_key];
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
58
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (name) {
|
|
59
|
-
return function (event) {
|
|
60
|
-
var value = event.target.value;
|
|
61
|
-
var _this$props = _this.props,
|
|
62
|
-
onFillColorChange = _this$props.onFillColorChange,
|
|
63
|
-
onOutlineColorChange = _this$props.onOutlineColorChange,
|
|
64
|
-
onPaintColorChange = _this$props.onPaintColorChange;
|
|
65
|
-
|
|
66
|
-
if (name === 'fill') {
|
|
67
|
-
onFillColorChange(value);
|
|
68
|
-
} else if (name === 'outline') {
|
|
69
|
-
onOutlineColorChange(value);
|
|
70
|
-
} else {
|
|
71
|
-
onPaintColorChange(value);
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
});
|
|
75
|
-
return _this;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
(0, _createClass2["default"])(Palette, [{
|
|
79
|
-
key: "render",
|
|
80
|
-
value: function render() {
|
|
81
|
-
var _this$props2 = this.props,
|
|
82
|
-
classes = _this$props2.classes,
|
|
83
|
-
fillColor = _this$props2.fillColor,
|
|
84
|
-
outlineColor = _this$props2.outlineColor,
|
|
85
|
-
fillList = _this$props2.fillList,
|
|
86
|
-
outlineList = _this$props2.outlineList;
|
|
87
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
88
|
-
className: classes.base
|
|
89
|
-
}, /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
|
|
90
|
-
label: "Fill Color",
|
|
91
|
-
className: classes.input
|
|
92
|
-
}, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
93
|
-
className: classes.select,
|
|
94
|
-
onChange: this.onChange('fill'),
|
|
95
|
-
value: fillColor
|
|
96
|
-
}, fillList.map(function (_ref) {
|
|
97
|
-
var value = _ref.value,
|
|
98
|
-
label = _ref.label;
|
|
99
|
-
return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
100
|
-
key: value,
|
|
101
|
-
value: value,
|
|
102
|
-
className: (0, _classnames2["default"])(classes.item, (0, _defineProperty2["default"])({}, classes.blackColorItem, value === 'black')),
|
|
103
|
-
style: {
|
|
104
|
-
backgroundColor: value
|
|
105
|
-
}
|
|
106
|
-
}, label);
|
|
107
|
-
}))), /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
|
|
108
|
-
label: "Outline Color",
|
|
109
|
-
className: classes.input
|
|
110
|
-
}, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
111
|
-
className: classes.select,
|
|
112
|
-
onChange: this.onChange('outline'),
|
|
113
|
-
value: outlineColor
|
|
114
|
-
}, outlineList.map(function (_ref2) {
|
|
115
|
-
var value = _ref2.value,
|
|
116
|
-
label = _ref2.label;
|
|
117
|
-
return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
118
|
-
key: value,
|
|
119
|
-
value: value,
|
|
120
|
-
className: classes.item,
|
|
121
|
-
style: {
|
|
122
|
-
border: "2px solid ".concat(value)
|
|
123
|
-
}
|
|
124
|
-
}, label);
|
|
125
|
-
}))));
|
|
126
|
-
}
|
|
127
|
-
}]);
|
|
128
|
-
return Palette;
|
|
129
|
-
}(_react["default"].Component);
|
|
130
|
-
|
|
131
|
-
var styles = function styles(theme) {
|
|
132
|
-
return {
|
|
133
|
-
base: {
|
|
134
|
-
marginTop: theme.spacing.unit * 2,
|
|
135
|
-
display: 'flex'
|
|
136
|
-
},
|
|
137
|
-
input: {
|
|
138
|
-
flex: 1,
|
|
139
|
-
fontSize: 'inherit',
|
|
140
|
-
width: '90%'
|
|
141
|
-
},
|
|
142
|
-
item: {
|
|
143
|
-
borderRadius: '2px',
|
|
144
|
-
fontSize: 'inherit',
|
|
145
|
-
height: '22px',
|
|
146
|
-
marginLeft: theme.spacing.unit * 2,
|
|
147
|
-
marginRight: theme.spacing.unit * 2,
|
|
148
|
-
marginTop: theme.spacing.unit * 2
|
|
149
|
-
},
|
|
150
|
-
blackColorItem: {
|
|
151
|
-
color: theme.palette.background.paper
|
|
152
|
-
},
|
|
153
|
-
select: {
|
|
154
|
-
fontSize: 'inherit',
|
|
155
|
-
transform: 'translate(0%, 40%)'
|
|
156
|
-
}
|
|
157
|
-
};
|
|
158
|
-
};
|
|
159
|
-
|
|
160
|
-
Palette.propTypes = {
|
|
161
|
-
classes: _propTypes["default"].object.isRequired,
|
|
162
|
-
fillColor: _propTypes["default"].string.isRequired,
|
|
163
|
-
fillList: _propTypes["default"].array.isRequired,
|
|
164
|
-
onFillColorChange: _propTypes["default"].func.isRequired,
|
|
165
|
-
onOutlineColorChange: _propTypes["default"].func.isRequired,
|
|
166
|
-
onPaintColorChange: _propTypes["default"].func.isRequired,
|
|
167
|
-
outlineColor: _propTypes["default"].string.isRequired,
|
|
168
|
-
outlineList: _propTypes["default"].array.isRequired
|
|
169
|
-
};
|
|
170
|
-
|
|
171
|
-
var _default = (0, _styles.withStyles)(styles)(Palette);
|
|
172
|
-
|
|
173
|
-
exports["default"] = _default;
|
|
174
|
-
//# sourceMappingURL=drawable-palette.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/drawable-palette.jsx"],"names":["Palette","name","event","value","target","props","onFillColorChange","onOutlineColorChange","onPaintColorChange","classes","fillColor","outlineColor","fillList","outlineList","base","input","select","onChange","map","label","item","blackColorItem","backgroundColor","border","React","Component","styles","theme","marginTop","spacing","unit","display","flex","fontSize","width","borderRadius","height","marginLeft","marginRight","color","palette","background","paper","transform","propTypes","PropTypes","object","isRequired","string","array","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\n\n// TODO: Change Palette so will render inputs and colors dynamically\nclass Palette extends React.Component {\n onChange = (name) => (event) => {\n const { value } = event.target;\n const { onFillColorChange, onOutlineColorChange, onPaintColorChange } = this.props;\n\n if (name === 'fill') {\n onFillColorChange(value);\n } else if (name === 'outline') {\n onOutlineColorChange(value);\n } else {\n onPaintColorChange(value);\n }\n };\n\n render() {\n const { classes, fillColor, outlineColor, fillList, outlineList } = this.props;\n\n return (\n <div className={classes.base}>\n <InputContainer label=\"Fill Color\" className={classes.input}>\n <Select className={classes.select} onChange={this.onChange('fill')} value={fillColor}>\n {fillList.map(({ value, label }) => (\n <MenuItem\n key={value}\n value={value}\n className={classnames(classes.item, {\n [classes.blackColorItem]: value === 'black',\n })}\n style={{ backgroundColor: value }}\n >\n {label}\n </MenuItem>\n ))}\n </Select>\n </InputContainer>\n\n <InputContainer label=\"Outline Color\" className={classes.input}>\n <Select className={classes.select} onChange={this.onChange('outline')} value={outlineColor}>\n {outlineList.map(({ value, label }) => (\n <MenuItem key={value} value={value} className={classes.item} style={{ border: `2px solid ${value}` }}>\n {label}\n </MenuItem>\n ))}\n </Select>\n </InputContainer>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n base: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n },\n input: {\n flex: 1,\n fontSize: 'inherit',\n width: '90%',\n },\n item: {\n borderRadius: '2px',\n fontSize: 'inherit',\n height: '22px',\n marginLeft: theme.spacing.unit * 2,\n marginRight: theme.spacing.unit * 2,\n marginTop: theme.spacing.unit * 2,\n },\n blackColorItem: {\n color: theme.palette.background.paper,\n },\n select: {\n fontSize: 'inherit',\n transform: 'translate(0%, 40%)',\n },\n});\n\nPalette.propTypes = {\n classes: PropTypes.object.isRequired,\n fillColor: PropTypes.string.isRequired,\n fillList: PropTypes.array.isRequired,\n onFillColorChange: PropTypes.func.isRequired,\n onOutlineColorChange: PropTypes.func.isRequired,\n onPaintColorChange: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n outlineList: PropTypes.array.isRequired,\n};\n\nexport default withStyles(styles)(Palette);\n"],"file":"drawable-palette.js"}
|