@pie-element/hotspot 5.7.0 → 5.7.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.
Files changed (51) hide show
  1. package/configure/package.json +3 -3
  2. package/configure/src/defaults.js +2 -2
  3. package/configure/src/root.jsx +1 -1
  4. package/controller/package.json +2 -2
  5. package/controller/src/defaults.js +2 -2
  6. package/docs/demo/generate.js +7 -2
  7. package/package.json +7 -6
  8. package/configure/lib/button.js +0 -61
  9. package/configure/lib/button.js.map +0 -1
  10. package/configure/lib/defaults.js +0 -82
  11. package/configure/lib/defaults.js.map +0 -1
  12. package/configure/lib/hotspot-container.js +0 -398
  13. package/configure/lib/hotspot-container.js.map +0 -1
  14. package/configure/lib/hotspot-drawable.js +0 -445
  15. package/configure/lib/hotspot-drawable.js.map +0 -1
  16. package/configure/lib/hotspot-palette.js +0 -154
  17. package/configure/lib/hotspot-palette.js.map +0 -1
  18. package/configure/lib/hotspot-polygon.js +0 -202
  19. package/configure/lib/hotspot-polygon.js.map +0 -1
  20. package/configure/lib/hotspot-rectangle.js +0 -150
  21. package/configure/lib/hotspot-rectangle.js.map +0 -1
  22. package/configure/lib/index.js +0 -212
  23. package/configure/lib/index.js.map +0 -1
  24. package/configure/lib/root.js +0 -401
  25. package/configure/lib/root.js.map +0 -1
  26. package/configure/lib/upload-control.js +0 -68
  27. package/configure/lib/upload-control.js.map +0 -1
  28. package/configure/lib/utils.js +0 -160
  29. package/configure/lib/utils.js.map +0 -1
  30. package/controller/lib/defaults.js +0 -26
  31. package/controller/lib/defaults.js.map +0 -1
  32. package/controller/lib/index.js +0 -263
  33. package/controller/lib/index.js.map +0 -1
  34. package/controller/lib/utils.js +0 -50
  35. package/controller/lib/utils.js.map +0 -1
  36. package/lib/hotspot/container.js +0 -246
  37. package/lib/hotspot/container.js.map +0 -1
  38. package/lib/hotspot/icons.js +0 -8
  39. package/lib/hotspot/icons.js.map +0 -1
  40. package/lib/hotspot/image.js +0 -133
  41. package/lib/hotspot/image.js.map +0 -1
  42. package/lib/hotspot/index.js +0 -207
  43. package/lib/hotspot/index.js.map +0 -1
  44. package/lib/hotspot/polygon.js +0 -225
  45. package/lib/hotspot/polygon.js.map +0 -1
  46. package/lib/hotspot/rectangle.js +0 -207
  47. package/lib/hotspot/rectangle.js.map +0 -1
  48. package/lib/index.js +0 -114
  49. package/lib/index.js.map +0 -1
  50. package/lib/session-updater.js +0 -30
  51. package/lib/session-updater.js.map +0 -1
@@ -1,202 +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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _reactKonva = require("react-konva");
31
-
32
- var _index = require("@material-ui/core/styles/index");
33
-
34
- 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); }; }
35
-
36
- 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; } }
37
-
38
- var PolComponent = /*#__PURE__*/function (_React$Component) {
39
- (0, _inherits2["default"])(PolComponent, _React$Component);
40
-
41
- var _super = _createSuper(PolComponent);
42
-
43
- function PolComponent() {
44
- var _this;
45
-
46
- (0, _classCallCheck2["default"])(this, PolComponent);
47
-
48
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
49
- args[_key] = arguments[_key];
50
- }
51
-
52
- _this = _super.call.apply(_super, [this].concat(args));
53
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {});
54
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClick", function (e) {
55
- var points = _this.props.points;
56
- var xList = points.map(function (p) {
57
- return p.x;
58
- });
59
- var yList = points.map(function (p) {
60
- return p.y;
61
- });
62
- var width = Math.max.apply(Math, (0, _toConsumableArray2["default"])(xList)) - Math.min.apply(Math, (0, _toConsumableArray2["default"])(xList));
63
- var height = Math.max.apply(Math, (0, _toConsumableArray2["default"])(yList)) - Math.min.apply(Math, (0, _toConsumableArray2["default"])(yList));
64
- var _this$props = _this.props,
65
- isDrawing = _this$props.isDrawing,
66
- onClick = _this$props.onClick,
67
- id = _this$props.id;
68
-
69
- if (width < 0 && height < 0 && isDrawing) {
70
- return;
71
- }
72
-
73
- e.cancelBubble = true;
74
- onClick(id);
75
- });
76
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseEnter", function () {
77
- document.body.style.cursor = 'pointer';
78
- });
79
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseLeave", function () {
80
- document.body.style.cursor = 'default';
81
- });
82
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleOnDragEnd", function (e) {
83
- var _this$props2 = _this.props,
84
- onDragEnd = _this$props2.onDragEnd,
85
- id = _this$props2.id;
86
-
87
- var points = e.target.points() || _this.state.points;
88
-
89
- var newPoints = points.reduce(function (acc, currentPointCoordinate, index) {
90
- if (index % 2 === 0 && index + 1 < points.length) {
91
- acc.push({
92
- x: currentPointCoordinate + e.target.x(),
93
- y: points[index + 1] + e.target.y()
94
- });
95
- return acc;
96
- } else {
97
- return acc;
98
- }
99
- }, []);
100
- onDragEnd(id, {
101
- points: newPoints
102
- });
103
- });
104
- return _this;
105
- }
106
-
107
- (0, _createClass2["default"])(PolComponent, [{
108
- key: "render",
109
- value: function render() {
110
- var _this$props3 = this.props,
111
- classes = _this$props3.classes,
112
- correct = _this$props3.correct,
113
- hotspotColor = _this$props3.hotspotColor,
114
- outlineColor = _this$props3.outlineColor,
115
- _this$props3$strokeWi = _this$props3.strokeWidth,
116
- strokeWidth = _this$props3$strokeWi === void 0 ? 5 : _this$props3$strokeWi;
117
- var _this$state = this.state,
118
- points = _this$state.points,
119
- x = _this$state.x,
120
- y = _this$state.y;
121
- return /*#__PURE__*/_react["default"].createElement(_reactKonva.Group, null, /*#__PURE__*/_react["default"].createElement(_reactKonva.Line, {
122
- classes: classes.base,
123
- points: points,
124
- closed: true,
125
- fill: hotspotColor,
126
- onClick: this.handleClick,
127
- onTap: this.handleClick,
128
- draggable: true,
129
- stroke: outlineColor,
130
- strokeWidth: correct ? strokeWidth : 0,
131
- onMouseLeave: this.handleMouseLeave,
132
- onMouseEnter: this.handleMouseEnter,
133
- onDragEnd: this.handleOnDragEnd,
134
- x: x,
135
- y: y
136
- }));
137
- }
138
- }], [{
139
- key: "getDerivedStateFromProps",
140
- value: function getDerivedStateFromProps(nextProps) {
141
- var points = nextProps.points;
142
- var xList = points.map(function (p) {
143
- return p.x;
144
- });
145
- var yList = points.map(function (p) {
146
- return p.y;
147
- });
148
- var xOffset = Math.min.apply(Math, (0, _toConsumableArray2["default"])(xList));
149
- var yOffset = Math.max.apply(Math, (0, _toConsumableArray2["default"])(yList));
150
-
151
- if (points.length) {
152
- return {
153
- x: xOffset,
154
- y: yOffset,
155
- points: points.reduce(function (acc, point) {
156
- return acc.concat([point.x - xOffset, point.y - yOffset]);
157
- }, [])
158
- };
159
- }
160
-
161
- return {
162
- x: 0,
163
- y: 0,
164
- points: []
165
- };
166
- }
167
- }]);
168
- return PolComponent;
169
- }(_react["default"].Component);
170
-
171
- var styles = function styles() {
172
- return {
173
- base: {
174
- cursor: 'pointer',
175
- opacity: 0.5
176
- }
177
- };
178
- };
179
-
180
- PolComponent.propTypes = {
181
- classes: _propTypes["default"].object.isRequired,
182
- correct: _propTypes["default"].bool,
183
- isDrawing: _propTypes["default"].bool.isRequired,
184
- id: _propTypes["default"].string.isRequired,
185
- hotspotColor: _propTypes["default"].string.isRequired,
186
- onClick: _propTypes["default"].func.isRequired,
187
- onDragEnd: _propTypes["default"].func.isRequired,
188
- outlineColor: _propTypes["default"].string.isRequired,
189
- points: _propTypes["default"].arrayOf(_propTypes["default"].shape({
190
- x: _propTypes["default"].number,
191
- y: _propTypes["default"].number
192
- })).isRequired,
193
- strokeWidth: _propTypes["default"].number
194
- };
195
- PolComponent.defaultProps = {
196
- correct: false
197
- };
198
-
199
- var _default = (0, _index.withStyles)(styles)(PolComponent);
200
-
201
- exports["default"] = _default;
202
- //# sourceMappingURL=hotspot-polygon.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/hotspot-polygon.jsx"],"names":["PolComponent","e","points","props","xList","map","p","x","yList","y","width","Math","max","min","height","isDrawing","onClick","id","cancelBubble","document","body","style","cursor","onDragEnd","target","state","newPoints","reduce","acc","currentPointCoordinate","index","length","push","classes","correct","hotspotColor","outlineColor","strokeWidth","base","handleClick","handleMouseLeave","handleMouseEnter","handleOnDragEnd","nextProps","xOffset","yOffset","point","concat","React","Component","styles","opacity","propTypes","PropTypes","object","isRequired","bool","string","func","arrayOf","shape","number","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEMA,Y;;;;;;;;;;;;;;;8FA0BI,E;oGAEM,UAACC,CAAD,EAAO;AACnB,UAAQC,MAAR,GAAmB,MAAKC,KAAxB,CAAQD,MAAR;AACA,UAAME,KAAK,GAAGF,MAAM,CAACG,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,CAAT;AAAA,OAAX,CAAd;AACA,UAAMC,KAAK,GAAGN,MAAM,CAACG,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACG,CAAT;AAAA,OAAX,CAAd;AAEA,UAAMC,KAAK,GAAGC,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQP,KAAR,EAAJ,GAAqBO,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQP,KAAR,EAAvC;AACA,UAAMU,MAAM,GAAGH,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQH,KAAR,EAAJ,GAAqBG,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQH,KAAR,EAAxC;AAEA,wBAAmC,MAAKL,KAAxC;AAAA,UAAQY,SAAR,eAAQA,SAAR;AAAA,UAAmBC,OAAnB,eAAmBA,OAAnB;AAAA,UAA4BC,EAA5B,eAA4BA,EAA5B;;AAEA,UAAIP,KAAK,GAAG,CAAR,IAAaI,MAAM,GAAG,CAAtB,IAA2BC,SAA/B,EAA0C;AACxC;AACD;;AAEDd,MAAAA,CAAC,CAACiB,YAAF,GAAiB,IAAjB;AACAF,MAAAA,OAAO,CAACC,EAAD,CAAP;AACD,K;yGAEkB,YAAM;AACvBE,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;AACD,K;yGAEkB,YAAM;AACvBH,MAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd,CAAoBC,MAApB,GAA6B,SAA7B;AACD,K;wGAEiB,UAACrB,CAAD,EAAO;AACvB,yBAA0B,MAAKE,KAA/B;AAAA,UAAQoB,SAAR,gBAAQA,SAAR;AAAA,UAAmBN,EAAnB,gBAAmBA,EAAnB;;AACA,UAAMf,MAAM,GAAGD,CAAC,CAACuB,MAAF,CAAStB,MAAT,MAAqB,MAAKuB,KAAL,CAAWvB,MAA/C;;AAEA,UAAMwB,SAAS,GAAGxB,MAAM,CAACyB,MAAP,CAAc,UAACC,GAAD,EAAMC,sBAAN,EAA8BC,KAA9B,EAAwC;AACtE,YAAIA,KAAK,GAAG,CAAR,KAAc,CAAd,IAAmBA,KAAK,GAAG,CAAR,GAAY5B,MAAM,CAAC6B,MAA1C,EAAkD;AAChDH,UAAAA,GAAG,CAACI,IAAJ,CAAS;AACPzB,YAAAA,CAAC,EAAEsB,sBAAsB,GAAG5B,CAAC,CAACuB,MAAF,CAASjB,CAAT,EADrB;AAEPE,YAAAA,CAAC,EAAEP,MAAM,CAAC4B,KAAK,GAAG,CAAT,CAAN,GAAoB7B,CAAC,CAACuB,MAAF,CAASf,CAAT;AAFhB,WAAT;AAKA,iBAAOmB,GAAP;AACD,SAPD,MAOO;AACL,iBAAOA,GAAP;AACD;AACF,OAXiB,EAWf,EAXe,CAAlB;AAaAL,MAAAA,SAAS,CAACN,EAAD,EAAK;AACZf,QAAAA,MAAM,EAAEwB;AADI,OAAL,CAAT;AAGD,K;;;;;;WAED,kBAAS;AACP,yBAA0E,KAAKvB,KAA/E;AAAA,UAAQ8B,OAAR,gBAAQA,OAAR;AAAA,UAAiBC,OAAjB,gBAAiBA,OAAjB;AAAA,UAA0BC,YAA1B,gBAA0BA,YAA1B;AAAA,UAAwCC,YAAxC,gBAAwCA,YAAxC;AAAA,+CAAsDC,WAAtD;AAAA,UAAsDA,WAAtD,sCAAoE,CAApE;AACA,wBAAyB,KAAKZ,KAA9B;AAAA,UAAQvB,MAAR,eAAQA,MAAR;AAAA,UAAgBK,CAAhB,eAAgBA,CAAhB;AAAA,UAAmBE,CAAnB,eAAmBA,CAAnB;AAEA,0BACE,gCAAC,iBAAD,qBACE,gCAAC,gBAAD;AACE,QAAA,OAAO,EAAEwB,OAAO,CAACK,IADnB;AAEE,QAAA,MAAM,EAAEpC,MAFV;AAGE,QAAA,MAAM,EAAE,IAHV;AAIE,QAAA,IAAI,EAAEiC,YAJR;AAKE,QAAA,OAAO,EAAE,KAAKI,WALhB;AAME,QAAA,KAAK,EAAE,KAAKA,WANd;AAOE,QAAA,SAAS,MAPX;AAQE,QAAA,MAAM,EAAEH,YARV;AASE,QAAA,WAAW,EAAEF,OAAO,GAAGG,WAAH,GAAiB,CATvC;AAUE,QAAA,YAAY,EAAE,KAAKG,gBAVrB;AAWE,QAAA,YAAY,EAAE,KAAKC,gBAXrB;AAYE,QAAA,SAAS,EAAE,KAAKC,eAZlB;AAaE,QAAA,CAAC,EAAEnC,CAbL;AAcE,QAAA,CAAC,EAAEE;AAdL,QADF,CADF;AAoBD;;;WAnGD,kCAAgCkC,SAAhC,EAA2C;AACzC,UAAQzC,MAAR,GAAmByC,SAAnB,CAAQzC,MAAR;AACA,UAAME,KAAK,GAAGF,MAAM,CAACG,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACC,CAAT;AAAA,OAAX,CAAd;AACA,UAAMC,KAAK,GAAGN,MAAM,CAACG,GAAP,CAAW,UAACC,CAAD;AAAA,eAAOA,CAAC,CAACG,CAAT;AAAA,OAAX,CAAd;AAEA,UAAMmC,OAAO,GAAGjC,IAAI,CAACE,GAAL,OAAAF,IAAI,sCAAQP,KAAR,EAApB;AACA,UAAMyC,OAAO,GAAGlC,IAAI,CAACC,GAAL,OAAAD,IAAI,sCAAQH,KAAR,EAApB;;AAEA,UAAIN,MAAM,CAAC6B,MAAX,EAAmB;AACjB,eAAO;AACLxB,UAAAA,CAAC,EAAEqC,OADE;AAELnC,UAAAA,CAAC,EAAEoC,OAFE;AAGL3C,UAAAA,MAAM,EAAEA,MAAM,CAACyB,MAAP,CAAc,UAACC,GAAD,EAAMkB,KAAN,EAAgB;AACpC,mBAAOlB,GAAG,CAACmB,MAAJ,CAAW,CAACD,KAAK,CAACvC,CAAN,GAAUqC,OAAX,EAAoBE,KAAK,CAACrC,CAAN,GAAUoC,OAA9B,CAAX,CAAP;AACD,WAFO,EAEL,EAFK;AAHH,SAAP;AAOD;;AAED,aAAO;AACLtC,QAAAA,CAAC,EAAE,CADE;AAELE,QAAAA,CAAC,EAAE,CAFE;AAGLP,QAAAA,MAAM,EAAE;AAHH,OAAP;AAKD;;;EAxBwB8C,kBAAMC,S;;AAuGjC,IAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBZ,IAAAA,IAAI,EAAE;AACJhB,MAAAA,MAAM,EAAE,SADJ;AAEJ6B,MAAAA,OAAO,EAAE;AAFL;AADc,GAAP;AAAA,CAAf;;AAOAnD,YAAY,CAACoD,SAAb,GAAyB;AACvBnB,EAAAA,OAAO,EAAEoB,sBAAUC,MAAV,CAAiBC,UADH;AAEvBrB,EAAAA,OAAO,EAAEmB,sBAAUG,IAFI;AAGvBzC,EAAAA,SAAS,EAAEsC,sBAAUG,IAAV,CAAeD,UAHH;AAIvBtC,EAAAA,EAAE,EAAEoC,sBAAUI,MAAV,CAAiBF,UAJE;AAKvBpB,EAAAA,YAAY,EAAEkB,sBAAUI,MAAV,CAAiBF,UALR;AAMvBvC,EAAAA,OAAO,EAAEqC,sBAAUK,IAAV,CAAeH,UAND;AAOvBhC,EAAAA,SAAS,EAAE8B,sBAAUK,IAAV,CAAeH,UAPH;AAQvBnB,EAAAA,YAAY,EAAEiB,sBAAUI,MAAV,CAAiBF,UARR;AASvBrD,EAAAA,MAAM,EAAEmD,sBAAUM,OAAV,CACNN,sBAAUO,KAAV,CAAgB;AACdrD,IAAAA,CAAC,EAAE8C,sBAAUQ,MADC;AAEdpD,IAAAA,CAAC,EAAE4C,sBAAUQ;AAFC,GAAhB,CADM,EAKNN,UAdqB;AAevBlB,EAAAA,WAAW,EAAEgB,sBAAUQ;AAfA,CAAzB;AAkBA7D,YAAY,CAAC8D,YAAb,GAA4B;AAC1B5B,EAAAA,OAAO,EAAE;AADiB,CAA5B;;eAIe,uBAAWgB,MAAX,EAAmBlD,YAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Group, Line } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles/index';\n\nclass PolComponent extends React.Component {\n static getDerivedStateFromProps(nextProps) {\n const { points } = nextProps;\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const xOffset = Math.min(...xList);\n const yOffset = Math.max(...yList);\n\n if (points.length) {\n return {\n x: xOffset,\n y: yOffset,\n points: points.reduce((acc, point) => {\n return acc.concat([point.x - xOffset, point.y - yOffset]);\n }, []),\n };\n }\n\n return {\n x: 0,\n y: 0,\n points: [],\n };\n }\n\n state = {};\n\n handleClick = (e) => {\n const { points } = this.props;\n const xList = points.map((p) => p.x);\n const yList = points.map((p) => p.y);\n\n const width = Math.max(...xList) - Math.min(...xList);\n const height = Math.max(...yList) - Math.min(...yList);\n\n const { isDrawing, onClick, id } = this.props;\n\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n document.body.style.cursor = 'pointer';\n };\n\n handleMouseLeave = () => {\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e) => {\n const { onDragEnd, id } = this.props;\n const points = e.target.points() || this.state.points;\n\n const newPoints = points.reduce((acc, currentPointCoordinate, index) => {\n if (index % 2 === 0 && index + 1 < points.length) {\n acc.push({\n x: currentPointCoordinate + e.target.x(),\n y: points[index + 1] + e.target.y(),\n });\n\n return acc;\n } else {\n return acc;\n }\n }, []);\n\n onDragEnd(id, {\n points: newPoints,\n });\n };\n\n render() {\n const { classes, correct, hotspotColor, outlineColor, strokeWidth = 5 } = this.props;\n const { points, x, y } = this.state;\n\n return (\n <Group>\n <Line\n classes={classes.base}\n points={points}\n closed={true}\n fill={hotspotColor}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={outlineColor}\n strokeWidth={correct ? strokeWidth : 0}\n onMouseLeave={this.handleMouseLeave}\n onMouseEnter={this.handleMouseEnter}\n onDragEnd={this.handleOnDragEnd}\n x={x}\n y={y}\n />\n </Group>\n );\n }\n}\n\nconst styles = () => ({\n base: {\n cursor: 'pointer',\n opacity: 0.5,\n },\n});\n\nPolComponent.propTypes = {\n classes: PropTypes.object.isRequired,\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n hotspotColor: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n points: PropTypes.arrayOf(\n PropTypes.shape({\n x: PropTypes.number,\n y: PropTypes.number,\n }),\n ).isRequired,\n strokeWidth: PropTypes.number,\n};\n\nPolComponent.defaultProps = {\n correct: false,\n};\n\nexport default withStyles(styles)(PolComponent);\n"],"file":"hotspot-polygon.js"}
@@ -1,150 +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 _reactKonva = require("react-konva");
29
-
30
- var _index = require("@material-ui/core/styles/index");
31
-
32
- 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); }; }
33
-
34
- 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; } }
35
-
36
- var RectComponent = /*#__PURE__*/function (_React$Component) {
37
- (0, _inherits2["default"])(RectComponent, _React$Component);
38
-
39
- var _super = _createSuper(RectComponent);
40
-
41
- function RectComponent() {
42
- var _this;
43
-
44
- (0, _classCallCheck2["default"])(this, RectComponent);
45
-
46
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
47
- args[_key] = arguments[_key];
48
- }
49
-
50
- _this = _super.call.apply(_super, [this].concat(args));
51
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClick", function (e) {
52
- var _this$props = _this.props,
53
- width = _this$props.width,
54
- height = _this$props.height,
55
- isDrawing = _this$props.isDrawing,
56
- onClick = _this$props.onClick,
57
- id = _this$props.id;
58
-
59
- if (width < 0 && height < 0 && isDrawing) {
60
- return;
61
- }
62
-
63
- e.cancelBubble = true;
64
- onClick(id);
65
- });
66
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseEnter", function () {
67
- document.body.style.cursor = 'pointer';
68
- });
69
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMouseLeave", function () {
70
- document.body.style.cursor = 'default';
71
- });
72
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleOnDragEnd", function (e) {
73
- var _this$props2 = _this.props,
74
- onDragEnd = _this$props2.onDragEnd,
75
- id = _this$props2.id;
76
- onDragEnd(id, {
77
- x: e.target.x(),
78
- y: e.target.y()
79
- });
80
- });
81
- return _this;
82
- }
83
-
84
- (0, _createClass2["default"])(RectComponent, [{
85
- key: "render",
86
- value: function render() {
87
- var _this$props3 = this.props,
88
- classes = _this$props3.classes,
89
- correct = _this$props3.correct,
90
- height = _this$props3.height,
91
- hotspotColor = _this$props3.hotspotColor,
92
- outlineColor = _this$props3.outlineColor,
93
- width = _this$props3.width,
94
- x = _this$props3.x,
95
- y = _this$props3.y,
96
- _this$props3$strokeWi = _this$props3.strokeWidth,
97
- strokeWidth = _this$props3$strokeWi === void 0 ? 5 : _this$props3$strokeWi;
98
- return /*#__PURE__*/_react["default"].createElement(_reactKonva.Group, null, /*#__PURE__*/_react["default"].createElement(_reactKonva.Rect, {
99
- classes: classes.base,
100
- width: width,
101
- height: height,
102
- fill: hotspotColor,
103
- onClick: this.handleClick,
104
- onTap: this.handleClick,
105
- draggable: true,
106
- stroke: outlineColor,
107
- strokeWidth: correct ? strokeWidth : 0,
108
- onMouseLeave: this.handleMouseLeave,
109
- onMouseEnter: this.handleMouseEnter,
110
- onDragEnd: this.handleOnDragEnd,
111
- x: x,
112
- y: y
113
- }));
114
- }
115
- }]);
116
- return RectComponent;
117
- }(_react["default"].Component);
118
-
119
- var styles = function styles() {
120
- return {
121
- base: {
122
- cursor: 'pointer',
123
- opacity: 0.5
124
- }
125
- };
126
- };
127
-
128
- RectComponent.propTypes = {
129
- classes: _propTypes["default"].object.isRequired,
130
- correct: _propTypes["default"].bool,
131
- isDrawing: _propTypes["default"].bool.isRequired,
132
- id: _propTypes["default"].string.isRequired,
133
- height: _propTypes["default"].number.isRequired,
134
- hotspotColor: _propTypes["default"].string.isRequired,
135
- onClick: _propTypes["default"].func.isRequired,
136
- onDragEnd: _propTypes["default"].func.isRequired,
137
- outlineColor: _propTypes["default"].string.isRequired,
138
- width: _propTypes["default"].number.isRequired,
139
- x: _propTypes["default"].number.isRequired,
140
- y: _propTypes["default"].number.isRequired,
141
- strokeWidth: _propTypes["default"].number
142
- };
143
- RectComponent.defaultProps = {
144
- correct: false
145
- };
146
-
147
- var _default = (0, _index.withStyles)(styles)(RectComponent);
148
-
149
- exports["default"] = _default;
150
- //# sourceMappingURL=hotspot-rectangle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/hotspot-rectangle.jsx"],"names":["RectComponent","e","props","width","height","isDrawing","onClick","id","cancelBubble","document","body","style","cursor","onDragEnd","x","target","y","classes","correct","hotspotColor","outlineColor","strokeWidth","base","handleClick","handleMouseLeave","handleMouseEnter","handleOnDragEnd","React","Component","styles","opacity","propTypes","PropTypes","object","isRequired","bool","string","number","func","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Rect, Group } from 'react-konva';\nimport { withStyles } from '@material-ui/core/styles/index';\n\nclass RectComponent extends React.Component {\n handleClick = (e) => {\n const { width, height, isDrawing, onClick, id } = this.props;\n if (width < 0 && height < 0 && isDrawing) {\n return;\n }\n e.cancelBubble = true;\n onClick(id);\n };\n\n handleMouseEnter = () => {\n document.body.style.cursor = 'pointer';\n };\n\n handleMouseLeave = () => {\n document.body.style.cursor = 'default';\n };\n\n handleOnDragEnd = (e) => {\n const { onDragEnd, id } = this.props;\n\n onDragEnd(id, {\n x: e.target.x(),\n y: e.target.y(),\n });\n };\n\n render() {\n const { classes, correct, height, hotspotColor, outlineColor, width, x, y, strokeWidth = 5 } = this.props;\n\n return (\n <Group>\n <Rect\n classes={classes.base}\n width={width}\n height={height}\n fill={hotspotColor}\n onClick={this.handleClick}\n onTap={this.handleClick}\n draggable\n stroke={outlineColor}\n strokeWidth={correct ? strokeWidth : 0}\n onMouseLeave={this.handleMouseLeave}\n onMouseEnter={this.handleMouseEnter}\n onDragEnd={this.handleOnDragEnd}\n x={x}\n y={y}\n />\n </Group>\n );\n }\n}\n\nconst styles = () => ({\n base: {\n cursor: 'pointer',\n opacity: 0.5,\n },\n});\n\nRectComponent.propTypes = {\n classes: PropTypes.object.isRequired,\n correct: PropTypes.bool,\n isDrawing: PropTypes.bool.isRequired,\n id: PropTypes.string.isRequired,\n height: PropTypes.number.isRequired,\n hotspotColor: PropTypes.string.isRequired,\n onClick: PropTypes.func.isRequired,\n onDragEnd: PropTypes.func.isRequired,\n outlineColor: PropTypes.string.isRequired,\n width: PropTypes.number.isRequired,\n x: PropTypes.number.isRequired,\n y: PropTypes.number.isRequired,\n strokeWidth: PropTypes.number,\n};\n\nRectComponent.defaultProps = {\n correct: false,\n};\n\nexport default withStyles(styles)(RectComponent);\n"],"file":"hotspot-rectangle.js"}
@@ -1,212 +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 _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _reactDom = _interopRequireDefault(require("react-dom"));
29
-
30
- var _debug = _interopRequireDefault(require("debug"));
31
-
32
- var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
33
-
34
- var _root = _interopRequireDefault(require("./root"));
35
-
36
- var _defaults = _interopRequireDefault(require("./defaults"));
37
-
38
- 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; }
39
-
40
- 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; }
41
-
42
- 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); }; }
43
-
44
- 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; } }
45
-
46
- var log = (0, _debug["default"])('hotspot:configure');
47
-
48
- var HotspotConfigure = /*#__PURE__*/function (_HTMLElement) {
49
- (0, _inherits2["default"])(HotspotConfigure, _HTMLElement);
50
-
51
- var _super = _createSuper(HotspotConfigure);
52
-
53
- function HotspotConfigure() {
54
- var _this;
55
-
56
- (0, _classCallCheck2["default"])(this, HotspotConfigure);
57
- _this = _super.call(this);
58
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onConfigurationChanged", function (c) {
59
- _this._configuration = c;
60
-
61
- _this._render();
62
- });
63
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onModelChangedByConfig", function (m, propertyType) {
64
- var _model = m;
65
-
66
- if (propertyType === 'multipleCorrect') {
67
- var _ref = _model.shapes || {},
68
- _ref$rectangles = _ref.rectangles,
69
- rectangles = _ref$rectangles === void 0 ? [] : _ref$rectangles,
70
- _ref$polygons = _ref.polygons,
71
- polygons = _ref$polygons === void 0 ? [] : _ref$polygons;
72
-
73
- _model.shapes.rectangles = rectangles.map(function (shape) {
74
- return _objectSpread(_objectSpread({}, shape), {}, {
75
- correct: false
76
- });
77
- });
78
- _model.shapes.polygons = polygons.map(function (shape) {
79
- return _objectSpread(_objectSpread({}, shape), {}, {
80
- correct: false
81
- });
82
- });
83
- }
84
-
85
- _this.onModelChanged(_model);
86
- });
87
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onColorChanged", function (colorType, color) {
88
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, (0, _defineProperty2["default"])({}, colorType, color)));
89
- });
90
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onPromptChanged", function (prompt) {
91
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
92
- prompt: prompt
93
- }));
94
- });
95
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onRationaleChanged", function (rationale) {
96
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
97
- rationale: rationale
98
- }));
99
- });
100
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onTeacherInstructionsChanged", function (teacherInstructions) {
101
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
102
- teacherInstructions: teacherInstructions
103
- }));
104
- });
105
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onUpdateImageDimension", function (dimensions) {
106
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
107
- dimensions: dimensions
108
- }));
109
- });
110
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onUpdateShapes", function (shapes) {
111
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
112
- shapes: shapes
113
- }));
114
- });
115
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onImageUpload", function (imageUrl) {
116
- _this.onModelChanged(_objectSpread(_objectSpread({}, _this._model), {}, {
117
- imageUrl: imageUrl
118
- }));
119
- });
120
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "insertImage", function (handler) {
121
- _this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
122
- });
123
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onDeleteImage", function (src, done) {
124
- _this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
125
- });
126
- _this._model = HotspotConfigure.createDefaultModel();
127
- _this._configuration = _defaults["default"].configuration;
128
- _this.onModelChanged = _this.onModelChanged.bind((0, _assertThisInitialized2["default"])(_this));
129
- return _this;
130
- }
131
-
132
- (0, _createClass2["default"])(HotspotConfigure, [{
133
- key: "model",
134
- set: function set(s) {
135
- this._model = HotspotConfigure.createDefaultModel(s);
136
-
137
- this._render();
138
- }
139
- }, {
140
- key: "configuration",
141
- set: function set(c) {
142
- this._configuration = c;
143
-
144
- this._render();
145
- }
146
- }, {
147
- key: "dispatchModelUpdated",
148
- value: function dispatchModelUpdated(reset) {
149
- var resetValue = !!reset;
150
- this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, resetValue));
151
- }
152
- }, {
153
- key: "onModelChanged",
154
- value: function onModelChanged(m, reset) {
155
- this._model = m;
156
- this.dispatchModelUpdated(reset);
157
-
158
- this._render();
159
- }
160
- }, {
161
- key: "insertSound",
162
- value: function insertSound(handler) {
163
- this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
164
- }
165
- }, {
166
- key: "onDeleteSound",
167
- value: function onDeleteSound(src, done) {
168
- this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
169
- }
170
- }, {
171
- key: "_render",
172
- value: function _render() {
173
- log('_render');
174
-
175
- var element = /*#__PURE__*/_react["default"].createElement(_root["default"], {
176
- configuration: this._configuration,
177
- model: this._model,
178
- onColorChanged: this.onColorChanged,
179
- onImageUpload: this.onImageUpload,
180
- onRationaleChanged: this.onRationaleChanged,
181
- onConfigurationChanged: this.onConfigurationChanged,
182
- onPromptChanged: this.onPromptChanged,
183
- onUpdateImageDimension: this.onUpdateImageDimension,
184
- imageSupport: {
185
- add: this.insertImage,
186
- "delete": this.onDeleteImage
187
- },
188
- uploadSoundSupport: {
189
- add: this.insertSound.bind(this),
190
- "delete": this.onDeleteSound.bind(this)
191
- },
192
- onUpdateShapes: this.onUpdateShapes,
193
- onModelChangedByConfig: this.onModelChangedByConfig,
194
- onTeacherInstructionsChanged: this.onTeacherInstructionsChanged
195
- });
196
-
197
- _reactDom["default"].render(element, this);
198
- }
199
- }]);
200
- return HotspotConfigure;
201
- }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
202
-
203
- exports["default"] = HotspotConfigure;
204
- (0, _defineProperty2["default"])(HotspotConfigure, "createDefaultModel", function () {
205
- var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
206
- return _objectSpread(_objectSpread(_objectSpread({}, _defaults["default"].model), model), {}, {
207
- hotspotList: model.hotspotList || [model.hotspotColor] || _defaults["default"].model.hotspotList,
208
- outlineList: model.outlineList || [model.outlineColor] || _defaults["default"].model.outlineList,
209
- shapes: model.shapes || _defaults["default"].model.shapes || {}
210
- });
211
- });
212
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["log","HotspotConfigure","c","_configuration","_render","m","propertyType","_model","shapes","rectangles","polygons","map","shape","correct","onModelChanged","colorType","color","prompt","rationale","teacherInstructions","dimensions","imageUrl","handler","dispatchEvent","InsertImageEvent","src","done","DeleteImageEvent","createDefaultModel","sensibleDefaults","configuration","bind","s","reset","resetValue","ModelUpdatedEvent","dispatchModelUpdated","InsertSoundEvent","DeleteSoundEvent","element","React","createElement","Root","model","onColorChanged","onImageUpload","onRationaleChanged","onConfigurationChanged","onPromptChanged","onUpdateImageDimension","imageSupport","add","insertImage","onDeleteImage","uploadSoundSupport","insertSound","onDeleteSound","onUpdateShapes","onModelChangedByConfig","onTeacherInstructionsChanged","ReactDOM","render","HTMLElement","hotspotList","hotspotColor","outlineList","outlineColor"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAQA;;AACA;;;;;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,mBAAN,CAAZ;;IAEqBC,gB;;;;;AASnB,8BAAc;AAAA;;AAAA;AACZ;AADY,+GA6BW,UAACC,CAAD,EAAO;AAC9B,YAAKC,cAAL,GAAsBD,CAAtB;;AACA,YAAKE,OAAL;AACD,KAhCa;AAAA,+GAkCW,UAACC,CAAD,EAAIC,YAAJ,EAAqB;AAC5C,UAAMC,MAAM,GAAGF,CAAf;;AAEA,UAAIC,YAAY,KAAK,iBAArB,EAAwC;AACtC,mBAA2CC,MAAM,CAACC,MAAP,IAAiB,EAA5D;AAAA,mCAAQC,UAAR;AAAA,YAAQA,UAAR,gCAAqB,EAArB;AAAA,iCAAyBC,QAAzB;AAAA,YAAyBA,QAAzB,8BAAoC,EAApC;;AAEAH,QAAAA,MAAM,CAACC,MAAP,CAAcC,UAAd,GAA2BA,UAAU,CAACE,GAAX,CAAe,UAACC,KAAD;AAAA,iDAAiBA,KAAjB;AAAwBC,YAAAA,OAAO,EAAE;AAAjC;AAAA,SAAf,CAA3B;AACAN,QAAAA,MAAM,CAACC,MAAP,CAAcE,QAAd,GAAyBA,QAAQ,CAACC,GAAT,CAAa,UAACC,KAAD;AAAA,iDAAiBA,KAAjB;AAAwBC,YAAAA,OAAO,EAAE;AAAjC;AAAA,SAAb,CAAzB;AACD;;AAED,YAAKC,cAAL,CAAoBP,MAApB;AACD,KA7Ca;AAAA,uGA+CG,UAACQ,SAAD,EAAYC,KAAZ,EAAsB;AACrC,YAAKF,cAAL,iCACK,MAAKP,MADV,4CAEGQ,SAFH,EAEeC,KAFf;AAID,KApDa;AAAA,wGAsDI,UAACC,MAAD,EAAY;AAC5B,YAAKH,cAAL,iCACK,MAAKP,MADV;AAEEU,QAAAA,MAAM,EAANA;AAFF;AAID,KA3Da;AAAA,2GA6DO,UAACC,SAAD,EAAe;AAClC,YAAKJ,cAAL,iCACK,MAAKP,MADV;AAEEW,QAAAA,SAAS,EAATA;AAFF;AAID,KAlEa;AAAA,qHAoEiB,UAACC,mBAAD,EAAyB;AACtD,YAAKL,cAAL,iCACK,MAAKP,MADV;AAEEY,QAAAA,mBAAmB,EAAnBA;AAFF;AAID,KAzEa;AAAA,+GA2EW,UAACC,UAAD,EAAgB;AACvC,YAAKN,cAAL,iCACK,MAAKP,MADV;AAEEa,QAAAA,UAAU,EAAVA;AAFF;AAID,KAhFa;AAAA,uGAkFG,UAACZ,MAAD,EAAY;AAC3B,YAAKM,cAAL,iCACK,MAAKP,MADV;AAEEC,QAAAA,MAAM,EAANA;AAFF;AAID,KAvFa;AAAA,sGAyFE,UAACa,QAAD,EAAc;AAC5B,YAAKP,cAAL,iCACK,MAAKP,MADV;AAEEc,QAAAA,QAAQ,EAARA;AAFF;AAID,KA9Fa;AAAA,oGAgGA,UAACC,OAAD,EAAa;AACzB,YAAKC,aAAL,CAAmB,IAAIC,oCAAJ,CAAqBF,OAArB,CAAnB;AACD,KAlGa;AAAA,sGAoGE,UAACG,GAAD,EAAMC,IAAN,EAAe;AAC7B,YAAKH,aAAL,CAAmB,IAAII,oCAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB;AACD,KAtGa;AAEZ,UAAKnB,MAAL,GAAcN,gBAAgB,CAAC2B,kBAAjB,EAAd;AACA,UAAKzB,cAAL,GAAsB0B,qBAAiBC,aAAvC;AACA,UAAKhB,cAAL,GAAsB,MAAKA,cAAL,CAAoBiB,IAApB,gDAAtB;AAJY;AAKb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKzB,MAAL,GAAcN,gBAAgB,CAAC2B,kBAAjB,CAAoCI,CAApC,CAAd;;AACA,WAAK5B,OAAL;AACD;;;SAED,aAAkBF,CAAlB,EAAqB;AACnB,WAAKC,cAAL,GAAsBD,CAAtB;;AACA,WAAKE,OAAL;AACD;;;WAED,8BAAqB6B,KAArB,EAA4B;AAC1B,UAAMC,UAAU,GAAG,CAAC,CAACD,KAArB;AAEA,WAAKV,aAAL,CAAmB,IAAIY,qCAAJ,CAAsB,KAAK5B,MAA3B,EAAmC2B,UAAnC,CAAnB;AACD;;;WAED,wBAAe7B,CAAf,EAAkB4B,KAAlB,EAAyB;AACvB,WAAK1B,MAAL,GAAcF,CAAd;AACA,WAAK+B,oBAAL,CAA0BH,KAA1B;;AACA,WAAK7B,OAAL;AACD;;;WA6ED,qBAAYkB,OAAZ,EAAqB;AACnB,WAAKC,aAAL,CAAmB,IAAIc,oCAAJ,CAAqBf,OAArB,CAAnB;AACD;;;WAED,uBAAcG,GAAd,EAAmBC,IAAnB,EAAyB;AACvB,WAAKH,aAAL,CAAmB,IAAIe,oCAAJ,CAAqBb,GAArB,EAA0BC,IAA1B,CAAnB;AACD;;;WAED,mBAAU;AACR1B,MAAAA,GAAG,CAAC,SAAD,CAAH;;AACA,UAAIuC,OAAO,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACtCZ,QAAAA,aAAa,EAAE,KAAK3B,cADkB;AAEtCwC,QAAAA,KAAK,EAAE,KAAKpC,MAF0B;AAGtCqC,QAAAA,cAAc,EAAE,KAAKA,cAHiB;AAItCC,QAAAA,aAAa,EAAE,KAAKA,aAJkB;AAKtCC,QAAAA,kBAAkB,EAAE,KAAKA,kBALa;AAMtCC,QAAAA,sBAAsB,EAAE,KAAKA,sBANS;AAOtCC,QAAAA,eAAe,EAAE,KAAKA,eAPgB;AAQtCC,QAAAA,sBAAsB,EAAE,KAAKA,sBARS;AAStCC,QAAAA,YAAY,EAAE;AACZC,UAAAA,GAAG,EAAE,KAAKC,WADE;AAEZ,oBAAQ,KAAKC;AAFD,SATwB;AAatCC,QAAAA,kBAAkB,EAAE;AAClBH,UAAAA,GAAG,EAAE,KAAKI,WAAL,CAAiBxB,IAAjB,CAAsB,IAAtB,CADa;AAElB,oBAAQ,KAAKyB,aAAL,CAAmBzB,IAAnB,CAAwB,IAAxB;AAFU,SAbkB;AAiBtC0B,QAAAA,cAAc,EAAE,KAAKA,cAjBiB;AAkBtCC,QAAAA,sBAAsB,EAAE,KAAKA,sBAlBS;AAmBtCC,QAAAA,4BAA4B,EAAE,KAAKA;AAnBG,OAA1B,CAAd;;AAsBAC,2BAASC,MAAT,CAAgBtB,OAAhB,EAAyB,IAAzB;AACD;;;kDAlJ2CuB,W;;;iCAAzB7D,gB,wBACS;AAAA,MAAC0C,KAAD,uEAAS,EAAT;AAAA,uDACvBd,qBAAiBc,KADM,GAEvBA,KAFuB;AAG1BoB,IAAAA,WAAW,EAAEpB,KAAK,CAACoB,WAAN,IAAqB,CAACpB,KAAK,CAACqB,YAAP,CAArB,IAA6CnC,qBAAiBc,KAAjB,CAAuBoB,WAHvD;AAI1BE,IAAAA,WAAW,EAAEtB,KAAK,CAACsB,WAAN,IAAqB,CAACtB,KAAK,CAACuB,YAAP,CAArB,IAA6CrC,qBAAiBc,KAAjB,CAAuBsB,WAJvD;AAK1BzD,IAAAA,MAAM,EAAEmC,KAAK,CAACnC,MAAN,IAAgBqB,qBAAiBc,KAAjB,CAAuBnC,MAAvC,IAAiD;AAL/B;AAAA,C","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debug from 'debug';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\n\nimport Root from './root';\nimport sensibleDefaults from './defaults';\n\nconst log = debug('hotspot:configure');\n\nexport default class HotspotConfigure extends HTMLElement {\n static createDefaultModel = (model = {}) => ({\n ...sensibleDefaults.model,\n ...model,\n hotspotList: model.hotspotList || [model.hotspotColor] || sensibleDefaults.model.hotspotList,\n outlineList: model.outlineList || [model.outlineColor] || sensibleDefaults.model.outlineList,\n shapes: model.shapes || sensibleDefaults.model.shapes || {},\n });\n\n constructor() {\n super();\n this._model = HotspotConfigure.createDefaultModel();\n this._configuration = sensibleDefaults.configuration;\n this.onModelChanged = this.onModelChanged.bind(this);\n }\n\n set model(s) {\n this._model = HotspotConfigure.createDefaultModel(s);\n this._render();\n }\n\n set configuration(c) {\n this._configuration = c;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged(m, reset) {\n this._model = m;\n this.dispatchModelUpdated(reset);\n this._render();\n }\n\n onConfigurationChanged = (c) => {\n this._configuration = c;\n this._render();\n };\n\n onModelChangedByConfig = (m, propertyType) => {\n const _model = m;\n\n if (propertyType === 'multipleCorrect') {\n const { rectangles = [], polygons = [] } = _model.shapes || {};\n\n _model.shapes.rectangles = rectangles.map((shape) => ({ ...shape, correct: false }));\n _model.shapes.polygons = polygons.map((shape) => ({ ...shape, correct: false }));\n }\n\n this.onModelChanged(_model);\n };\n\n onColorChanged = (colorType, color) => {\n this.onModelChanged({\n ...this._model,\n [colorType]: color,\n });\n };\n\n onPromptChanged = (prompt) => {\n this.onModelChanged({\n ...this._model,\n prompt,\n });\n };\n\n onRationaleChanged = (rationale) => {\n this.onModelChanged({\n ...this._model,\n rationale,\n });\n };\n\n onTeacherInstructionsChanged = (teacherInstructions) => {\n this.onModelChanged({\n ...this._model,\n teacherInstructions,\n });\n };\n\n onUpdateImageDimension = (dimensions) => {\n this.onModelChanged({\n ...this._model,\n dimensions,\n });\n };\n\n onUpdateShapes = (shapes) => {\n this.onModelChanged({\n ...this._model,\n shapes,\n });\n };\n\n onImageUpload = (imageUrl) => {\n this.onModelChanged({\n ...this._model,\n imageUrl,\n });\n };\n\n insertImage = (handler) => {\n this.dispatchEvent(new InsertImageEvent(handler));\n };\n\n onDeleteImage = (src, done) => {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n };\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n _render() {\n log('_render');\n let element = React.createElement(Root, {\n configuration: this._configuration,\n model: this._model,\n onColorChanged: this.onColorChanged,\n onImageUpload: this.onImageUpload,\n onRationaleChanged: this.onRationaleChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n onPromptChanged: this.onPromptChanged,\n onUpdateImageDimension: this.onUpdateImageDimension,\n imageSupport: {\n add: this.insertImage,\n delete: this.onDeleteImage,\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n onUpdateShapes: this.onUpdateShapes,\n onModelChangedByConfig: this.onModelChangedByConfig,\n onTeacherInstructionsChanged: this.onTeacherInstructionsChanged,\n });\n\n ReactDOM.render(element, this);\n }\n}\n"],"file":"index.js"}