@pie-element/drawing-response 3.6.0 → 3.6.1-beta.587
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/CHANGELOG.md +507 -0
- package/configure/CHANGELOG.md +446 -0
- package/configure/lib/button.js.map +1 -1
- package/configure/lib/defaults.js +22 -7
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/image-container.js +44 -24
- package/configure/lib/image-container.js.map +1 -1
- package/configure/lib/index.js +65 -12
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/root.js +78 -48
- package/configure/lib/root.js.map +1 -1
- package/configure/package.json +4 -4
- package/configure/src/__tests__/__snapshots__/image-container.test.jsx.snap +3 -2
- package/configure/src/__tests__/__snapshots__/root.test.jsx.snap +38 -18
- package/configure/src/__tests__/image-container.test.jsx +42 -35
- package/configure/src/__tests__/index.test.js +7 -7
- package/configure/src/__tests__/root.test.jsx +18 -25
- package/configure/src/button.jsx +4 -4
- package/configure/src/defaults.js +25 -10
- package/configure/src/image-container.jsx +80 -59
- package/configure/src/index.js +46 -14
- package/configure/src/root.jsx +72 -76
- package/controller/CHANGELOG.md +58 -0
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +13 -12
- package/controller/lib/index.js.map +1 -1
- package/controller/package.json +1 -1
- package/controller/src/__tests__/index.test.js +35 -34
- package/controller/src/defaults.js +2 -2
- package/controller/src/index.js +13 -17
- package/docs/config-schema.json +111 -1
- package/docs/config-schema.json.md +87 -3
- package/docs/demo/config.js +2 -2
- package/docs/demo/generate.js +5 -2
- package/docs/demo/session.js +4 -4
- package/docs/pie-schema.json +70 -6
- package/docs/pie-schema.json.md +55 -4
- package/lib/drawing-response/button.js.map +1 -1
- package/lib/drawing-response/constants.js.map +1 -1
- package/lib/drawing-response/container.js +80 -25
- package/lib/drawing-response/container.js.map +1 -1
- package/lib/drawing-response/drawable-circle.js +1 -1
- package/lib/drawing-response/drawable-circle.js.map +1 -1
- package/lib/drawing-response/drawable-eraser.js +1 -1
- package/lib/drawing-response/drawable-eraser.js.map +1 -1
- package/lib/drawing-response/drawable-free-path.js +1 -1
- package/lib/drawing-response/drawable-free-path.js.map +1 -1
- package/lib/drawing-response/drawable-helper.js.map +1 -1
- package/lib/drawing-response/drawable-image.js +1 -0
- package/lib/drawing-response/drawable-image.js.map +1 -1
- package/lib/drawing-response/drawable-line.js +1 -1
- package/lib/drawing-response/drawable-line.js.map +1 -1
- package/lib/drawing-response/drawable-main.js +46 -16
- package/lib/drawing-response/drawable-main.js.map +1 -1
- package/lib/drawing-response/drawable-palette.js +7 -2
- package/lib/drawing-response/drawable-palette.js.map +1 -1
- package/lib/drawing-response/drawable-rectangle.js +1 -1
- package/lib/drawing-response/drawable-rectangle.js.map +1 -1
- package/lib/drawing-response/drawable-text.js +15 -5
- package/lib/drawing-response/drawable-text.js.map +1 -1
- package/lib/drawing-response/drawable-transformer.js +1 -1
- package/lib/drawing-response/drawable-transformer.js.map +1 -1
- package/lib/drawing-response/factory.js.map +1 -1
- package/lib/drawing-response/icon.js.map +1 -1
- package/lib/drawing-response/index.js +11 -15
- package/lib/drawing-response/index.js.map +1 -1
- package/lib/index.js +4 -1
- package/lib/index.js.map +1 -1
- package/package.json +5 -4
- package/src/__tests__/drawing-index-test.jsx +4 -4
- package/src/drawing-response/__tests__/__snapshots__/container.test.jsx.snap +174 -290
- package/src/drawing-response/__tests__/__snapshots__/drawing-main.test.jsx.snap +26 -2
- package/src/drawing-response/__tests__/container.test.jsx +9 -2
- package/src/drawing-response/__tests__/drawable-helper.test.jsx +1 -1
- package/src/drawing-response/__tests__/drawing-main.test.jsx +74 -86
- package/src/drawing-response/button.jsx +5 -8
- package/src/drawing-response/constants.js +42 -34
- package/src/drawing-response/container.jsx +93 -70
- package/src/drawing-response/drawable-image.jsx +5 -4
- package/src/drawing-response/drawable-main.jsx +46 -17
- package/src/drawing-response/drawable-palette.jsx +18 -35
- package/src/drawing-response/drawable-text.jsx +34 -48
- package/src/drawing-response/drawable-transformer.jsx +3 -1
- package/src/drawing-response/factory.js +3 -11
- package/src/drawing-response/icon.jsx +19 -20
- package/src/drawing-response/index.jsx +14 -20
- package/src/index.js +8 -11
package/docs/pie-schema.json
CHANGED
|
@@ -53,11 +53,6 @@
|
|
|
53
53
|
"type": "string",
|
|
54
54
|
"title": "teacherInstructions"
|
|
55
55
|
},
|
|
56
|
-
"rationaleEnabled": {
|
|
57
|
-
"description": "Indicates if Rationale are enabled",
|
|
58
|
-
"type": "boolean",
|
|
59
|
-
"title": "rationaleEnabled"
|
|
60
|
-
},
|
|
61
56
|
"studentInstructionsEnabled": {
|
|
62
57
|
"description": "Indicates if Student Instructions are enabled",
|
|
63
58
|
"type": "boolean",
|
|
@@ -68,6 +63,31 @@
|
|
|
68
63
|
"type": "boolean",
|
|
69
64
|
"title": "teacherInstructionsEnabled"
|
|
70
65
|
},
|
|
66
|
+
"spellCheckEnabled": {
|
|
67
|
+
"description": "Indicates if spellcheck is enabled for the author. Default value is true",
|
|
68
|
+
"type": "boolean",
|
|
69
|
+
"title": "spellCheckEnabled"
|
|
70
|
+
},
|
|
71
|
+
"backgroundImageEnabled": {
|
|
72
|
+
"description": "Indicates if Background Image is enabled",
|
|
73
|
+
"type": "boolean",
|
|
74
|
+
"title": "backgroundImageEnabled"
|
|
75
|
+
},
|
|
76
|
+
"toolbarEditorPosition": {
|
|
77
|
+
"description": "Indicates the editor's toolbar position which can be 'bottom' or 'top'",
|
|
78
|
+
"default": ": 'bottom'",
|
|
79
|
+
"enum": [
|
|
80
|
+
"bottom",
|
|
81
|
+
"top"
|
|
82
|
+
],
|
|
83
|
+
"type": "string",
|
|
84
|
+
"title": "toolbarEditorPosition"
|
|
85
|
+
},
|
|
86
|
+
"rubricEnabled": {
|
|
87
|
+
"description": "Indicates if Rubric is enabled",
|
|
88
|
+
"type": "boolean",
|
|
89
|
+
"title": "rubricEnabled"
|
|
90
|
+
},
|
|
71
91
|
"id": {
|
|
72
92
|
"description": "Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.",
|
|
73
93
|
"type": "string",
|
|
@@ -80,10 +100,12 @@
|
|
|
80
100
|
}
|
|
81
101
|
},
|
|
82
102
|
"required": [
|
|
103
|
+
"backgroundImageEnabled",
|
|
83
104
|
"element",
|
|
84
105
|
"id",
|
|
85
106
|
"imageDimensions",
|
|
86
|
-
"
|
|
107
|
+
"rubricEnabled",
|
|
108
|
+
"spellCheckEnabled",
|
|
87
109
|
"studentInstructionsEnabled",
|
|
88
110
|
"teacherInstructionsEnabled"
|
|
89
111
|
],
|
|
@@ -125,6 +147,48 @@
|
|
|
125
147
|
}
|
|
126
148
|
}
|
|
127
149
|
},
|
|
150
|
+
"ConfigureMaxImageDimensionsProp": {
|
|
151
|
+
"title": "ConfigureMaxImageDimensionsProp",
|
|
152
|
+
"type": "object",
|
|
153
|
+
"properties": {
|
|
154
|
+
"teacherInstructions": {
|
|
155
|
+
"description": "Indicates the max dimension for images in teacher instructions",
|
|
156
|
+
"type": "number",
|
|
157
|
+
"title": "teacherInstructions"
|
|
158
|
+
},
|
|
159
|
+
"prompt": {
|
|
160
|
+
"description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
|
|
161
|
+
"type": "number",
|
|
162
|
+
"title": "prompt"
|
|
163
|
+
},
|
|
164
|
+
"rationale": {
|
|
165
|
+
"description": "Indicates the max dimension for images in rationale",
|
|
166
|
+
"type": "number",
|
|
167
|
+
"title": "rationale"
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
"ConfigureWithForceProp": {
|
|
172
|
+
"title": "ConfigureWithForceProp",
|
|
173
|
+
"type": "object",
|
|
174
|
+
"properties": {
|
|
175
|
+
"settings": {
|
|
176
|
+
"description": "Indicates if the item has to be displayed in the Settings Panel",
|
|
177
|
+
"type": "boolean",
|
|
178
|
+
"title": "settings"
|
|
179
|
+
},
|
|
180
|
+
"label": {
|
|
181
|
+
"description": "Indicates the label for the item that has to be displayed in the Settings Panel",
|
|
182
|
+
"type": "string",
|
|
183
|
+
"title": "label"
|
|
184
|
+
},
|
|
185
|
+
"forceEnabled": {
|
|
186
|
+
"description": "Indicates the value for the toggle; if true, this property will not be visible in Settings Panel",
|
|
187
|
+
"type": "boolean",
|
|
188
|
+
"title": "forceEnabled"
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
},
|
|
128
192
|
"Dimension": {
|
|
129
193
|
"title": "Dimension",
|
|
130
194
|
"type": "object",
|
package/docs/pie-schema.json.md
CHANGED
|
@@ -38,10 +38,6 @@ Indicates student instructions
|
|
|
38
38
|
|
|
39
39
|
Indicates teacher instructions
|
|
40
40
|
|
|
41
|
-
# `rationaleEnabled` (boolean, required)
|
|
42
|
-
|
|
43
|
-
Indicates if Rationale are enabled
|
|
44
|
-
|
|
45
41
|
# `studentInstructionsEnabled` (boolean, required)
|
|
46
42
|
|
|
47
43
|
Indicates if Student Instructions are enabled
|
|
@@ -50,6 +46,29 @@ Indicates if Student Instructions are enabled
|
|
|
50
46
|
|
|
51
47
|
Indicates if Teacher Instructions are enabled
|
|
52
48
|
|
|
49
|
+
# `spellCheckEnabled` (boolean, required)
|
|
50
|
+
|
|
51
|
+
Indicates if spellcheck is enabled for the author. Default value is true
|
|
52
|
+
|
|
53
|
+
# `backgroundImageEnabled` (boolean, required)
|
|
54
|
+
|
|
55
|
+
Indicates if Background Image is enabled
|
|
56
|
+
|
|
57
|
+
# `toolbarEditorPosition` (string, enum)
|
|
58
|
+
|
|
59
|
+
Indicates the editor's toolbar position which can be 'bottom' or 'top'
|
|
60
|
+
|
|
61
|
+
This element must be one of the following enum values:
|
|
62
|
+
|
|
63
|
+
* `bottom`
|
|
64
|
+
* `top`
|
|
65
|
+
|
|
66
|
+
Default: `": 'bottom'"`
|
|
67
|
+
|
|
68
|
+
# `rubricEnabled` (boolean, required)
|
|
69
|
+
|
|
70
|
+
Indicates if Rubric is enabled
|
|
71
|
+
|
|
53
72
|
# `id` (string, required)
|
|
54
73
|
|
|
55
74
|
Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.
|
|
@@ -93,6 +112,38 @@ Indicates if the item has to be displayed in the Settings Panel
|
|
|
93
112
|
|
|
94
113
|
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
95
114
|
|
|
115
|
+
## `ConfigureMaxImageDimensionsProp` (object)
|
|
116
|
+
|
|
117
|
+
Properties of the `ConfigureMaxImageDimensionsProp` object:
|
|
118
|
+
|
|
119
|
+
### `teacherInstructions` (number)
|
|
120
|
+
|
|
121
|
+
Indicates the max dimension for images in teacher instructions
|
|
122
|
+
|
|
123
|
+
### `prompt` (number)
|
|
124
|
+
|
|
125
|
+
Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
|
|
126
|
+
|
|
127
|
+
### `rationale` (number)
|
|
128
|
+
|
|
129
|
+
Indicates the max dimension for images in rationale
|
|
130
|
+
|
|
131
|
+
## `ConfigureWithForceProp` (object)
|
|
132
|
+
|
|
133
|
+
Properties of the `ConfigureWithForceProp` object:
|
|
134
|
+
|
|
135
|
+
### `settings` (boolean)
|
|
136
|
+
|
|
137
|
+
Indicates if the item has to be displayed in the Settings Panel
|
|
138
|
+
|
|
139
|
+
### `label` (string)
|
|
140
|
+
|
|
141
|
+
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
142
|
+
|
|
143
|
+
### `forceEnabled` (boolean)
|
|
144
|
+
|
|
145
|
+
Indicates the value for the toggle; if true, this property will not be visible in Settings Panel
|
|
146
|
+
|
|
96
147
|
## `Dimension` (object)
|
|
97
148
|
|
|
98
149
|
Properties of the `Dimension` object:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/button.jsx"],"names":["RawButton","classes","className","label","onClick","disabled","title","addButton","propTypes","PropTypes","object","isRequired","string","bool","oneOfType","func","defaultProps","styles","fontSize","marginLeft","minWidth","height","width","ButtonStyled"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,SAAZ,QAAYA,SAAZ;AAAA,MAAuBC,KAAvB,QAAuBA,KAAvB;AAAA,MAA8BC,OAA9B,QAA8BA,OAA9B;AAAA,MAAuCC,QAAvC,QAAuCA,QAAvC;AAAA,MAAiDC,KAAjD,QAAiDA,KAAjD;AAAA,sBAChB,gCAAC,kBAAD;AACE,IAAA,KAAK,EAAEA,KADT;AAEE,IAAA,OAAO,EAAEF,OAFX;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAE,4BAAWJ,OAAO,CAACM,SAAnB,EAA8BL,SAA9B,CAJb;AAKE,IAAA,IAAI,EAAC,OALP;AAME,IAAA,OAAO,EAAC,WANV;AAOE,IAAA,KAAK,EAAC;AAPR,KASGC,KATH,CADgB;AAAA,CAAlB;;AAcAH,SAAS,CAACQ,SAAV,GAAsB;AACpBP,EAAAA,OAAO,EAAEQ,sBAAUC,MAAV,CAAiBC,UADN;AAEpBT,EAAAA,SAAS,EAAEO,sBAAUG,MAFD;AAGpBP,EAAAA,QAAQ,EAAEI,sBAAUI,IAHA;AAIpBV,EAAAA,KAAK,EAAEM,sBAAUK,SAAV,CAAoB,
|
|
1
|
+
{"version":3,"sources":["../../src/drawing-response/button.jsx"],"names":["RawButton","classes","className","label","onClick","disabled","title","addButton","propTypes","PropTypes","object","isRequired","string","bool","oneOfType","func","defaultProps","styles","fontSize","marginLeft","minWidth","height","width","ButtonStyled"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,SAAZ,QAAYA,SAAZ;AAAA,MAAuBC,KAAvB,QAAuBA,KAAvB;AAAA,MAA8BC,OAA9B,QAA8BA,OAA9B;AAAA,MAAuCC,QAAvC,QAAuCA,QAAvC;AAAA,MAAiDC,KAAjD,QAAiDA,KAAjD;AAAA,sBAChB,gCAAC,kBAAD;AACE,IAAA,KAAK,EAAEA,KADT;AAEE,IAAA,OAAO,EAAEF,OAFX;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAE,4BAAWJ,OAAO,CAACM,SAAnB,EAA8BL,SAA9B,CAJb;AAKE,IAAA,IAAI,EAAC,OALP;AAME,IAAA,OAAO,EAAC,WANV;AAOE,IAAA,KAAK,EAAC;AAPR,KASGC,KATH,CADgB;AAAA,CAAlB;;AAcAH,SAAS,CAACQ,SAAV,GAAsB;AACpBP,EAAAA,OAAO,EAAEQ,sBAAUC,MAAV,CAAiBC,UADN;AAEpBT,EAAAA,SAAS,EAAEO,sBAAUG,MAFD;AAGpBP,EAAAA,QAAQ,EAAEI,sBAAUI,IAHA;AAIpBV,EAAAA,KAAK,EAAEM,sBAAUK,SAAV,CAAoB,CAACL,sBAAUG,MAAX,EAAmBH,sBAAUC,MAA7B,CAApB,CAJa;AAKpBN,EAAAA,OAAO,EAAEK,sBAAUM,IALC;AAMpBT,EAAAA,KAAK,EAAEG,sBAAUG;AANG,CAAtB;AASAZ,SAAS,CAACgB,YAAV,GAAyB;AACvBd,EAAAA,SAAS,EAAE,EADY;AAEvBG,EAAAA,QAAQ,EAAE,KAFa;AAGvBF,EAAAA,KAAK,EAAE,KAHgB;AAIvBC,EAAAA,OAAO,EAAE,mBAAM,CAAE,CAJM;AAKvBE,EAAAA,KAAK,EAAE;AALgB,CAAzB;;AAQA,IAAMW,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBV,IAAAA,SAAS,EAAE;AACTW,MAAAA,QAAQ,EAAE,OADD;AAETC,MAAAA,UAAU,EAAE,CAFH;AAGTC,MAAAA,QAAQ,EAAE,EAHD;AAITC,MAAAA,MAAM,EAAE,EAJC;AAMT,gBAAU;AACR,iBAAS;AACPC,UAAAA,KAAK,EAAE,kBADA;AAEPD,UAAAA,MAAM,EAAE;AAFD;AADD;AAND;AADS,GAAP;AAAA,CAAf;;AAgBA,IAAME,YAAY,GAAG,wBAAWN,MAAX,EAAmBjB,SAAnB,CAArB;eAEeuB,Y","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Button from '@material-ui/core/Button';\n\nconst RawButton = ({ classes, className, label, onClick, disabled, title }) => (\n <Button\n title={title}\n onClick={onClick}\n disabled={disabled}\n className={classNames(classes.addButton, className)}\n size=\"small\"\n variant=\"contained\"\n color=\"default\"\n >\n {label}\n </Button>\n);\n\nRawButton.propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n onClick: PropTypes.func,\n title: PropTypes.string,\n};\n\nRawButton.defaultProps = {\n className: '',\n disabled: false,\n label: 'Add',\n onClick: () => {},\n title: '',\n};\n\nconst styles = () => ({\n addButton: {\n fontSize: '0.9em',\n marginLeft: 8,\n minWidth: 32,\n height: 32,\n\n '& span': {\n '& svg': {\n width: '1.3em !important',\n height: '1.3em !important',\n },\n },\n },\n});\n\nconst ButtonStyled = withStyles(styles)(RawButton);\n\nexport default ButtonStyled;\n"],"file":"button.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/constants.js"],"names":["tools","type","label","icon"],"mappings":";;;;;;eAAe;AACbA,EAAAA,KAAK,EAAE,
|
|
1
|
+
{"version":3,"sources":["../../src/drawing-response/constants.js"],"names":["tools","type","label","icon"],"mappings":";;;;;;eAAe;AACbA,EAAAA,KAAK,EAAE,CACL;AACEC,IAAAA,IAAI,EAAE,QADR;AAEEC,IAAAA,KAAK,EAAE,QAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GADK,EAML;AACEF,IAAAA,IAAI,EAAE,kBADR;AAEEC,IAAAA,KAAK,EAAE,WAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GANK,EAWL;AACEF,IAAAA,IAAI,EAAE,cADR;AAEEC,IAAAA,KAAK,EAAE,MAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GAXK,EAgBL;AACEF,IAAAA,IAAI,EAAE,mBADR;AAEEC,IAAAA,KAAK,EAAE,WAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GAhBK,EAqBL;AACEF,IAAAA,IAAI,EAAE,gBADR;AAEEC,IAAAA,KAAK,EAAE,QAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GArBK,EA0BL;AACEF,IAAAA,IAAI,EAAE,MADR;AAEEC,IAAAA,KAAK,EAAE,YAFT;AAGEC,IAAAA,IAAI,EAAE;AAHR,GA1BK,EA+BL;AACE;AACA;AACA;AACA;AACA;AACAF,IAAAA,IAAI,EAAE,gBANR;AAOEC,IAAAA,KAAK,EAAE,QAPT;AAQEC,IAAAA,IAAI,EAAE;AARR,GA/BK;AADM,C","sourcesContent":["export default {\n tools: [\n {\n type: 'Select',\n label: 'Select',\n icon: 'mdiCursorDefault',\n },\n {\n type: 'FreePathDrawable',\n label: 'Free Draw',\n icon: 'mdiPencil',\n },\n {\n type: 'LineDrawable',\n label: 'Line',\n icon: 'mdiMinus',\n },\n {\n type: 'RectangleDrawable',\n label: 'Rectangle',\n icon: 'mdiRectangle',\n },\n {\n type: 'CircleDrawable',\n label: 'Circle',\n icon: 'mdiCircle',\n },\n {\n type: 'Text',\n label: 'Text Entry',\n icon: 'mdiFormatColorText',\n },\n {\n // ,{\n // type: 'PaintBucket',\n // label: 'Paint Bucket',\n // icon: 'mdiFormatColorFill'\n // },\n type: 'EraserDrawable',\n label: 'Eraser',\n icon: 'mdiEraser',\n },\n ],\n};\n"],"file":"constants.js"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
-
|
|
5
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
4
|
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
@@ -43,9 +43,13 @@ var _drawableText = _interopRequireDefault(require("./drawable-text"));
|
|
|
43
43
|
|
|
44
44
|
var _icon = _interopRequireDefault(require("./icon"));
|
|
45
45
|
|
|
46
|
+
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); }
|
|
47
|
+
|
|
48
|
+
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; }
|
|
49
|
+
|
|
46
50
|
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); }; }
|
|
47
51
|
|
|
48
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
52
|
+
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; } }
|
|
49
53
|
|
|
50
54
|
var TOOLS = _constants["default"].tools;
|
|
51
55
|
var ROGVAIV = ['red', 'orange', 'yellow', 'violet', 'blue', 'green', 'white', 'black'].map(function (c) {
|
|
@@ -77,6 +81,7 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
77
81
|
});
|
|
78
82
|
var TextEntry = new _drawableText["default"]();
|
|
79
83
|
_this.state = {
|
|
84
|
+
scale: 1,
|
|
80
85
|
drawableDimensions: {
|
|
81
86
|
height: 0,
|
|
82
87
|
width: 0
|
|
@@ -88,10 +93,10 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
88
93
|
label: 'no fill'
|
|
89
94
|
}, {
|
|
90
95
|
value: 'lightblue',
|
|
91
|
-
label: '
|
|
96
|
+
label: 'light blue'
|
|
92
97
|
}, {
|
|
93
98
|
value: 'lightyellow',
|
|
94
|
-
label: '
|
|
99
|
+
label: 'light yellow'
|
|
95
100
|
}].concat((0, _toConsumableArray2["default"])(ROGVAIV)),
|
|
96
101
|
outlineColor: 'black',
|
|
97
102
|
outlineColorList: ROGVAIV,
|
|
@@ -132,13 +137,49 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
132
137
|
}, {
|
|
133
138
|
key: "componentDidMount",
|
|
134
139
|
value: function componentDidMount() {
|
|
140
|
+
var _this3 = this;
|
|
141
|
+
|
|
135
142
|
this.setDimensions();
|
|
143
|
+
this.observer = new MutationObserver(function (mutations) {
|
|
144
|
+
mutations.forEach(function () {
|
|
145
|
+
var _document$getElementB, _document$getElementB2;
|
|
146
|
+
|
|
147
|
+
var target = (_document$getElementB = document.getElementById('question-container')) === null || _document$getElementB === void 0 ? void 0 : (_document$getElementB2 = _document$getElementB.style) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.cssText;
|
|
148
|
+
var zoom = target === null || target === void 0 ? void 0 : target.substring(target.indexOf('--pie-zoom') + 11, target.lastIndexOf('%'));
|
|
149
|
+
var zoomParsed = zoom === null || zoom === void 0 ? void 0 : zoom.replace(/\s/g, '');
|
|
150
|
+
|
|
151
|
+
if (zoomParsed) {
|
|
152
|
+
var newScale = parseFloat(zoomParsed) / 100;
|
|
153
|
+
|
|
154
|
+
if (newScale !== _this3.state.scale) {
|
|
155
|
+
_this3.setState({
|
|
156
|
+
scale: parseFloat(zoomParsed) / 100
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
} else if (!zoomParsed && _this3.state.scale !== 1) {
|
|
160
|
+
_this3.setState({
|
|
161
|
+
scale: 1
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
});
|
|
166
|
+
var target = document.getElementById('question-container');
|
|
167
|
+
|
|
168
|
+
if (target) {
|
|
169
|
+
this.observer.observe(target, {
|
|
170
|
+
attributes: true,
|
|
171
|
+
attributeFilter: ['style']
|
|
172
|
+
});
|
|
173
|
+
}
|
|
136
174
|
}
|
|
137
175
|
}, {
|
|
138
176
|
key: "componentWillUnmount",
|
|
139
177
|
value: function componentWillUnmount() {
|
|
178
|
+
var _this$observer;
|
|
179
|
+
|
|
140
180
|
var TextEntry = this.state.TextEntry;
|
|
141
181
|
TextEntry.removeEventListeners();
|
|
182
|
+
(_this$observer = this.observer) === null || _this$observer === void 0 ? void 0 : _this$observer.disconnect();
|
|
142
183
|
}
|
|
143
184
|
}, {
|
|
144
185
|
key: "handleMakeToolActive",
|
|
@@ -167,7 +208,7 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
167
208
|
}, {
|
|
168
209
|
key: "render",
|
|
169
210
|
value: function render() {
|
|
170
|
-
var
|
|
211
|
+
var _this4 = this;
|
|
171
212
|
|
|
172
213
|
var _this$props = this.props,
|
|
173
214
|
classes = _this$props.classes,
|
|
@@ -175,7 +216,8 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
175
216
|
imageUrl = _this$props.imageUrl,
|
|
176
217
|
imageDimensions = _this$props.imageDimensions,
|
|
177
218
|
onSessionChange = _this$props.onSessionChange,
|
|
178
|
-
session = _this$props.session
|
|
219
|
+
session = _this$props.session,
|
|
220
|
+
backgroundImageEnabled = _this$props.backgroundImageEnabled;
|
|
179
221
|
var _this$state = this.state,
|
|
180
222
|
drawableDimensions = _this$state.drawableDimensions,
|
|
181
223
|
toolActive = _this$state.toolActive,
|
|
@@ -186,9 +228,10 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
186
228
|
paintColor = _this$state.paintColor,
|
|
187
229
|
paintColorList = _this$state.paintColorList,
|
|
188
230
|
TextEntry = _this$state.TextEntry;
|
|
231
|
+
var heightToUse = drawableDimensions.height * this.state.scale;
|
|
189
232
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
190
233
|
className: classes.base
|
|
191
|
-
}, /*#__PURE__*/_react["default"].createElement(_drawablePalette["default"], {
|
|
234
|
+
}, !disabled && /*#__PURE__*/_react["default"].createElement(_drawablePalette["default"], {
|
|
192
235
|
fillColor: fillColor,
|
|
193
236
|
fillList: fillColorList,
|
|
194
237
|
outlineColor: outlineColor,
|
|
@@ -196,39 +239,44 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
196
239
|
paintColor: paintColor,
|
|
197
240
|
paintList: paintColorList,
|
|
198
241
|
onFillColorChange: function onFillColorChange(color) {
|
|
199
|
-
return
|
|
242
|
+
return _this4.handleColorChange('fill', color);
|
|
200
243
|
},
|
|
201
244
|
onOutlineColorChange: function onOutlineColorChange(color) {
|
|
202
|
-
return
|
|
245
|
+
return _this4.handleColorChange('outline', color);
|
|
203
246
|
},
|
|
204
247
|
onPaintColorChange: function onPaintColorChange(color) {
|
|
205
|
-
return
|
|
248
|
+
return _this4.handleColorChange('paint', color);
|
|
206
249
|
}
|
|
207
250
|
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
208
251
|
className: classes.box
|
|
209
252
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
210
253
|
className: classes.toolbar
|
|
211
|
-
},
|
|
254
|
+
}, TOOLS.map(function (tool) {
|
|
212
255
|
var type = tool.type,
|
|
213
256
|
label = tool.label,
|
|
214
257
|
icon = tool.icon;
|
|
215
258
|
return /*#__PURE__*/_react["default"].createElement(_button["default"], {
|
|
216
259
|
title: label,
|
|
217
260
|
key: type,
|
|
218
|
-
disabled:
|
|
261
|
+
disabled: _this4.checkIfToolIsDisabled(type),
|
|
219
262
|
onClick: function onClick() {
|
|
220
|
-
return
|
|
263
|
+
return _this4.handleMakeToolActive(tool);
|
|
221
264
|
},
|
|
222
265
|
label: /*#__PURE__*/_react["default"].createElement(_icon["default"], {
|
|
223
266
|
path: icon
|
|
224
267
|
})
|
|
225
268
|
});
|
|
226
|
-
}))
|
|
269
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
227
270
|
ref: function ref(drawable) {
|
|
228
|
-
|
|
271
|
+
_this4.drawable = drawable;
|
|
229
272
|
},
|
|
230
|
-
className: classes.drawableHeight
|
|
273
|
+
className: classes.drawableHeight,
|
|
274
|
+
style: {
|
|
275
|
+
height: heightToUse,
|
|
276
|
+
maxHeight: heightToUse
|
|
277
|
+
}
|
|
231
278
|
}, /*#__PURE__*/_react["default"].createElement(_drawableMain["default"], {
|
|
279
|
+
scale: this.state.scale,
|
|
232
280
|
session: session,
|
|
233
281
|
disabled: disabled,
|
|
234
282
|
onSessionChange: onSessionChange,
|
|
@@ -239,7 +287,8 @@ var Container = /*#__PURE__*/function (_Component) {
|
|
|
239
287
|
drawableDimensions: drawableDimensions,
|
|
240
288
|
imageDimensions: imageDimensions,
|
|
241
289
|
toolActive: toolActive,
|
|
242
|
-
TextEntry: TextEntry
|
|
290
|
+
TextEntry: TextEntry,
|
|
291
|
+
backgroundImageEnabled: backgroundImageEnabled
|
|
243
292
|
}))));
|
|
244
293
|
}
|
|
245
294
|
}]);
|
|
@@ -253,7 +302,8 @@ exports.Container = Container;
|
|
|
253
302
|
session: _propTypes["default"].object.isRequired,
|
|
254
303
|
onSessionChange: _propTypes["default"].func.isRequired,
|
|
255
304
|
imageDimensions: _propTypes["default"].object.isRequired,
|
|
256
|
-
imageUrl: _propTypes["default"].string.isRequired
|
|
305
|
+
imageUrl: _propTypes["default"].string.isRequired,
|
|
306
|
+
backgroundImageEnabled: _propTypes["default"].bool.isRequired
|
|
257
307
|
});
|
|
258
308
|
|
|
259
309
|
var styles = function styles(theme) {
|
|
@@ -264,19 +314,24 @@ var styles = function styles(theme) {
|
|
|
264
314
|
box: {
|
|
265
315
|
border: '1px solid #E0E1E6',
|
|
266
316
|
borderRadius: '5px',
|
|
267
|
-
marginTop: theme.spacing.unit * 2
|
|
317
|
+
marginTop: theme.spacing.unit * 2,
|
|
318
|
+
backgroundColor: '#ECEDF1'
|
|
268
319
|
},
|
|
269
320
|
drawableHeight: {
|
|
270
|
-
minHeight: 350
|
|
321
|
+
minHeight: 350,
|
|
322
|
+
backgroundColor: '#fff'
|
|
271
323
|
},
|
|
272
324
|
toolbar: {
|
|
273
|
-
backgroundColor: '#ECEDF1',
|
|
274
325
|
borderBottom: '1px solid #E0E1E6',
|
|
275
326
|
borderTopLeftRadius: '5px',
|
|
276
327
|
borderTopRightRadius: '5px',
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
328
|
+
padding: '12px 8px 4px',
|
|
329
|
+
boxSizing: 'border-box',
|
|
330
|
+
maxWidth: 'calc(100% - 163px)',
|
|
331
|
+
// 163px is the width set on undoControls
|
|
332
|
+
'& button': {
|
|
333
|
+
marginBottom: '8px'
|
|
334
|
+
}
|
|
280
335
|
}
|
|
281
336
|
};
|
|
282
337
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/container.jsx"],"names":["TOOLS","constants","tools","ROGVAIV","map","c","value","label","Container","props","type","disabled","toolActive","state","TextEntry","DrawableText","drawableDimensions","height","width","fillColor","fillColorList","outlineColor","outlineColorList","paintColor","paintColorList","checkExist","setInterval","drawable","getBoundingClientRect","setState","e","console","warn","clearInterval","setDimensions","removeEventListeners","tool","addNewTextEntry","updatedAt","Date","color","cType","classes","imageUrl","imageDimensions","onSessionChange","session","base","handleColorChange","box","toolbar","icon","checkIfToolIsDisabled","handleMakeToolActive","drawableHeight","Component","PropTypes","object","isRequired","bool","func","string","styles","theme","marginTop","spacing","unit","border","borderRadius","minHeight","backgroundColor","borderBottom","borderTopLeftRadius","borderTopRightRadius","display","justifyContent","padding"],"mappings":"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","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 = [\n 'red',\n 'orange',\n 'yellow',\n 'violet',\n 'blue',\n 'green',\n 'white',\n 'black'\n].map(c => ({ value: c, label: c }));\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 };\n\n constructor(props) {\n super(props);\n const TextEntry = new DrawableText();\n\n this.state = {\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: 'lightblue' },\n { value: 'lightyellow', label: 'lightyellow' },\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\n componentWillUnmount() {\n const { TextEntry } = this.state;\n\n TextEntry.removeEventListeners();\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\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 {\n classes,\n disabled,\n imageUrl,\n imageDimensions,\n onSessionChange,\n session\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 return (\n <div className={classes.base}>\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 =>\n this.handleColorChange('outline', color)\n }\n onPaintColorChange={color => this.handleColorChange('paint', color)}\n />\n\n <div className={classes.box}>\n <div className={classes.toolbar}>\n <div>\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 </div>\n\n <div\n ref={drawable => {\n this.drawable = drawable;\n }}\n className={classes.drawableHeight}\n >\n <DrawableMain\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 />\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 },\n drawableHeight: {\n minHeight: 350\n },\n toolbar: {\n backgroundColor: '#ECEDF1',\n borderBottom: '1px solid #E0E1E6',\n borderTopLeftRadius: '5px',\n borderTopRightRadius: '5px',\n display: 'flex',\n justifyContent: 'space-between',\n padding: '12px 8px'\n }\n});\n\nexport default withStyles(styles)(Container);\n"],"file":"container.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/drawing-response/container.jsx"],"names":["TOOLS","constants","tools","ROGVAIV","map","c","value","label","Container","props","type","disabled","toolActive","state","TextEntry","DrawableText","scale","drawableDimensions","height","width","fillColor","fillColorList","outlineColor","outlineColorList","paintColor","paintColorList","checkExist","setInterval","drawable","getBoundingClientRect","setState","e","console","warn","clearInterval","setDimensions","observer","MutationObserver","mutations","forEach","target","document","getElementById","style","cssText","zoom","substring","indexOf","lastIndexOf","zoomParsed","replace","newScale","parseFloat","observe","attributes","attributeFilter","removeEventListeners","disconnect","tool","addNewTextEntry","updatedAt","Date","color","cType","classes","imageUrl","imageDimensions","onSessionChange","session","backgroundImageEnabled","heightToUse","base","handleColorChange","box","toolbar","icon","checkIfToolIsDisabled","handleMakeToolActive","drawableHeight","maxHeight","Component","PropTypes","object","isRequired","bool","func","string","styles","theme","marginTop","spacing","unit","border","borderRadius","backgroundColor","minHeight","borderBottom","borderTopLeftRadius","borderTopRightRadius","padding","boxSizing","maxWidth","marginBottom"],"mappings":"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","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"],"file":"container.js"}
|
|
@@ -29,7 +29,7 @@ var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
|
|
|
29
29
|
|
|
30
30
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
31
31
|
|
|
32
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
32
|
+
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; } }
|
|
33
33
|
|
|
34
34
|
var CircleDrawable = /*#__PURE__*/function (_DrawableHelper) {
|
|
35
35
|
(0, _inherits2["default"])(CircleDrawable, _DrawableHelper);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/drawable-circle.jsx"],"names":["CircleDrawable","props","TYPE","event","deltaX","startx","target","getX","deltaY","starty","getY","x","y","handleSessionChange","dx","dy","radius","Math","sqrt","paint","paintColor","forceUpdate","draggable","key","onMouseOverElement","onMouseOutElement","fillColor","handleOnClick","handleDragEnd","bind","outlineColor","DrawableHelper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;IAEqBA,c;;;;;AAEnB,0BAAYC,MAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,MAAN,EAAaD,cAAc,CAACE,IAA5B;AADiB,sGAkCH,UAACD,KAAD,EAAQE,KAAR,EAAkB;AAChC,UAAMC,MAAM,GAAG,MAAKC,MAAL,GAAcF,KAAK,CAACG,MAAN,CAAaC,IAAb,EAA7B;AACA,UAAMC,MAAM,GAAG,MAAKC,MAAL,GAAcN,KAAK,CAACG,MAAN,CAAaI,IAAb,EAA7B;AAEA,YAAKL,MAAL,GAAcF,KAAK,CAACG,MAAN,CAAaC,IAAb,EAAd;AACA,YAAKE,MAAL,GAAcN,KAAK,CAACG,MAAN,CAAaI,IAAb,EAAd;AAEA,YAAKC,CAAL,GAAS,MAAKA,CAAL,GAASP,MAAlB;AACA,YAAKQ,CAAL,GAAS,MAAKA,CAAL,GAASJ,MAAlB;AAEAP,MAAAA,KAAK,CAACY,mBAAN;AACD,KA7CkB;
|
|
1
|
+
{"version":3,"sources":["../../src/drawing-response/drawable-circle.jsx"],"names":["CircleDrawable","props","TYPE","event","deltaX","startx","target","getX","deltaY","starty","getY","x","y","handleSessionChange","dx","dy","radius","Math","sqrt","paint","paintColor","forceUpdate","draggable","key","onMouseOverElement","onMouseOutElement","fillColor","handleOnClick","handleDragEnd","bind","outlineColor","DrawableHelper"],"mappings":"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","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"],"file":"drawable-circle.js"}
|
|
@@ -31,7 +31,7 @@ var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
|
|
|
31
31
|
|
|
32
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
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 {
|
|
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
35
|
|
|
36
36
|
var EraserDrawable = /*#__PURE__*/function (_DrawableHelper) {
|
|
37
37
|
(0, _inherits2["default"])(EraserDrawable, _DrawableHelper);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/drawing-response/drawable-eraser.jsx"],"names":["EraserDrawable","props","TYPE","event","posX","target","getX","posY","getY","handleSessionChange","startx","starty","points","x","y","draggable","key","onMouseOverElement","onMouseOutElement","handleDragEnd","bind","DrawableHelper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;IAEqBA,c;;;;;AAEnB,0BAAYC,MAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,MAAN,EAAaD,cAAc,CAACE,IAA5B;AADiB,sGAaH,UAACD,KAAD,EAAQE,KAAR,EAAkB;AAChC,YAAKC,IAAL,GAAYD,KAAK,CAACE,MAAN,CAAaC,IAAb,EAAZ;AACA,YAAKC,IAAL,GAAYJ,KAAK,CAACE,MAAN,CAAaG,IAAb,EAAZ;AAEAP,MAAAA,KAAK,CAACQ,mBAAN;AACD,KAlBkB;
|
|
1
|
+
{"version":3,"sources":["../../src/drawing-response/drawable-eraser.jsx"],"names":["EraserDrawable","props","TYPE","event","posX","target","getX","posY","getY","handleSessionChange","startx","starty","points","x","y","draggable","key","onMouseOverElement","onMouseOutElement","handleDragEnd","bind","DrawableHelper"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;IAEqBA,c;;;;;AAEnB,0BAAYC,MAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,MAAN,EAAaD,cAAc,CAACE,IAA5B;AADiB,sGAaH,UAACD,KAAD,EAAQE,KAAR,EAAkB;AAChC,YAAKC,IAAL,GAAYD,KAAK,CAACE,MAAN,CAAaC,IAAb,EAAZ;AACA,YAAKC,IAAL,GAAYJ,KAAK,CAACE,MAAN,CAAaG,IAAb,EAAZ;AAEAP,MAAAA,KAAK,CAACQ,mBAAN;AACD,KAlBkB;AAEjB,QAAQC,MAAR,GAA+CT,MAA/C,CAAQS,MAAR;AAAA,QAAgBC,MAAhB,GAA+CV,MAA/C,CAAgBU,MAAhB;AAAA,QAAwBC,MAAxB,GAA+CX,MAA/C,CAAwBW,MAAxB;AAAA,QAAgCR,IAAhC,GAA+CH,MAA/C,CAAgCG,IAAhC;AAAA,QAAsCG,IAAtC,GAA+CN,MAA/C,CAAsCM,IAAtC;AAEA,UAAKK,MAAL,GAAcA,MAAM,IAAI,CAACF,MAAD,EAASC,MAAT,CAAxB;AACA,UAAKP,IAAL,GAAYA,IAAI,IAAI,CAApB;AACA,UAAKG,IAAL,GAAYA,IAAI,IAAI,CAApB;AANiB;AAOlB;;;;WAED,0BAAiBM,CAAjB,EAAoBC,CAApB,EAAuB;AACrB,WAAKF,MAAL,iDAAkB,KAAKA,MAAvB,IAA+BC,CAA/B,EAAkCC,CAAlC;AACD;;;WASD,gBAAOb,KAAP,EAAc;AACZ,UAAQc,SAAR,GAAkEd,KAAlE,CAAQc,SAAR;AAAA,UAAmBC,GAAnB,GAAkEf,KAAlE,CAAmBe,GAAnB;AAAA,UAAwBC,kBAAxB,GAAkEhB,KAAlE,CAAwBgB,kBAAxB;AAAA,UAA4CC,iBAA5C,GAAkEjB,KAAlE,CAA4CiB,iBAA5C;AAEA,0BACE,gCAAC,gBAAD;AACE,QAAA,GAAG,EAAEF,GADP;AAEE,QAAA,SAAS,EAAED,SAFb;AAGE,QAAA,wBAAwB,EAAC,iBAH3B;AAIE,QAAA,OAAO,EAAE,CAJX;AAKE,QAAA,MAAM,EAAE,IALV;AAME,QAAA,MAAM,EAAE,KAAKH,MANf;AAOE,QAAA,SAAS,EAAE,KAAKO,aAAL,CAAmBC,IAAnB,CAAwB,IAAxB,EAA8BnB,KAA9B,CAPb;AAQE,QAAA,YAAY,EAAEgB,kBARhB;AASE,QAAA,YAAY,EAAEC,iBAThB;AAUE,QAAA,WAAW,EAAC,SAVd;AAWE,QAAA,QAAQ,EAAC,OAXX;AAYE,QAAA,SAAS,EAAC,GAZZ;AAaE,QAAA,IAAI,EAAC,OAbP;AAcE,QAAA,MAAM,EAAC,OAdT;AAeE,QAAA,WAAW,EAAE,CAff;AAgBE,QAAA,CAAC,EAAE,KAAKd,IAhBV;AAiBE,QAAA,CAAC,EAAE,KAAKG;AAjBV,QADF;AAqBD;;;EA9CyCc,0B;;;iCAAvBrB,c,UACL,gB","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"],"file":"drawable-eraser.js"}
|
|
@@ -31,7 +31,7 @@ var _drawableHelper = _interopRequireDefault(require("./drawable-helper"));
|
|
|
31
31
|
|
|
32
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
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 {
|
|
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
35
|
|
|
36
36
|
var FreePathDrawable = /*#__PURE__*/function (_DrawableHelper) {
|
|
37
37
|
(0, _inherits2["default"])(FreePathDrawable, _DrawableHelper);
|