@pie-element/ebsr 7.0.22 → 7.0.24-next.2

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 (144) hide show
  1. package/CHANGELOG.md +0 -16
  2. package/configure/CHANGELOG.md +0 -16
  3. package/configure/lib/main.js +6 -4
  4. package/configure/lib/main.js.map +1 -1
  5. package/configure/node_modules/@pie-element/multiple-choice/CHANGELOG.json +1972 -0
  6. package/configure/node_modules/@pie-element/multiple-choice/CHANGELOG.md +1793 -0
  7. package/{LICENSE.md → configure/node_modules/@pie-element/multiple-choice/LICENSE.md} +0 -0
  8. package/configure/node_modules/@pie-element/multiple-choice/PRINT.md +35 -0
  9. package/configure/node_modules/@pie-element/multiple-choice/README.md +56 -0
  10. package/configure/node_modules/@pie-element/multiple-choice/choice.png +0 -0
  11. package/configure/node_modules/@pie-element/multiple-choice/configure/CHANGELOG.json +1387 -0
  12. package/configure/node_modules/@pie-element/multiple-choice/configure/CHANGELOG.md +1334 -0
  13. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/defaults.js +104 -0
  14. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/defaults.js.map +1 -0
  15. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/index.js +198 -0
  16. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/index.js.map +1 -0
  17. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/main.js +599 -0
  18. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/main.js.map +1 -0
  19. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/utils.js +18 -0
  20. package/configure/node_modules/@pie-element/multiple-choice/configure/lib/utils.js.map +1 -0
  21. package/configure/node_modules/@pie-element/multiple-choice/configure/package.json +20 -0
  22. package/configure/node_modules/@pie-element/multiple-choice/controller/CHANGELOG.json +527 -0
  23. package/configure/node_modules/@pie-element/multiple-choice/controller/CHANGELOG.md +768 -0
  24. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/defaults.js +18 -0
  25. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/defaults.js.map +1 -0
  26. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/index.js +305 -0
  27. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/index.js.map +1 -0
  28. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/utils.js +36 -0
  29. package/configure/node_modules/@pie-element/multiple-choice/controller/lib/utils.js.map +1 -0
  30. package/configure/node_modules/@pie-element/multiple-choice/controller/package.json +15 -0
  31. package/configure/node_modules/@pie-element/multiple-choice/docs/config-schema.json +353 -0
  32. package/configure/node_modules/@pie-element/multiple-choice/docs/config-schema.json.md +277 -0
  33. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/config.js +8 -0
  34. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/generate.js +52 -0
  35. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/index.html +1 -0
  36. package/configure/node_modules/@pie-element/multiple-choice/docs/demo/session.js +7 -0
  37. package/configure/node_modules/@pie-element/multiple-choice/docs/pie-schema.json +338 -0
  38. package/configure/node_modules/@pie-element/multiple-choice/docs/pie-schema.json.md +274 -0
  39. package/configure/node_modules/@pie-element/multiple-choice/lib/choice-input.js +298 -0
  40. package/configure/node_modules/@pie-element/multiple-choice/lib/choice-input.js.map +1 -0
  41. package/configure/node_modules/@pie-element/multiple-choice/lib/choice.js +157 -0
  42. package/configure/node_modules/@pie-element/multiple-choice/lib/choice.js.map +1 -0
  43. package/configure/node_modules/@pie-element/multiple-choice/lib/feedback-tick.js +174 -0
  44. package/configure/node_modules/@pie-element/multiple-choice/lib/feedback-tick.js.map +1 -0
  45. package/configure/node_modules/@pie-element/multiple-choice/lib/index.js +151 -0
  46. package/configure/node_modules/@pie-element/multiple-choice/lib/index.js.map +1 -0
  47. package/configure/node_modules/@pie-element/multiple-choice/lib/main.js +97 -0
  48. package/configure/node_modules/@pie-element/multiple-choice/lib/main.js.map +1 -0
  49. package/configure/node_modules/@pie-element/multiple-choice/lib/multiple-choice.js +254 -0
  50. package/configure/node_modules/@pie-element/multiple-choice/lib/multiple-choice.js.map +1 -0
  51. package/configure/node_modules/@pie-element/multiple-choice/lib/print.js +129 -0
  52. package/configure/node_modules/@pie-element/multiple-choice/lib/print.js.map +1 -0
  53. package/configure/node_modules/@pie-element/multiple-choice/lib/session-updater.js +35 -0
  54. package/configure/node_modules/@pie-element/multiple-choice/lib/session-updater.js.map +1 -0
  55. package/configure/node_modules/@pie-element/multiple-choice/module/configure.js +843 -0
  56. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/controller.js +17304 -17374
  57. package/configure/node_modules/@pie-element/multiple-choice/module/demo.js +77 -0
  58. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/element.js +42 -171
  59. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/index.html +1 -1
  60. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/manifest.json +4 -4
  61. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/print-demo.js +46 -46
  62. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/print.html +1 -1
  63. package/{module → configure/node_modules/@pie-element/multiple-choice/module}/print.js +70 -259
  64. package/configure/node_modules/@pie-element/multiple-choice/package.json +34 -0
  65. package/configure/node_modules/@pie-lib/math-rendering/CHANGELOG.json +672 -0
  66. package/configure/node_modules/@pie-lib/math-rendering/CHANGELOG.md +427 -0
  67. package/configure/node_modules/@pie-lib/math-rendering/LICENSE.md +5 -0
  68. package/configure/node_modules/@pie-lib/math-rendering/lib/index.js +30 -0
  69. package/configure/node_modules/@pie-lib/math-rendering/lib/index.js.map +1 -0
  70. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/chtml.js +316 -0
  71. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/chtml.js.map +1 -0
  72. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/index.js +23 -0
  73. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/index.js.map +1 -0
  74. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/mml.js +123 -0
  75. package/configure/node_modules/@pie-lib/math-rendering/lib/mstack/mml.js.map +1 -0
  76. package/configure/node_modules/@pie-lib/math-rendering/lib/normalization.js +103 -0
  77. package/configure/node_modules/@pie-lib/math-rendering/lib/normalization.js.map +1 -0
  78. package/configure/node_modules/@pie-lib/math-rendering/lib/render-math.js +275 -0
  79. package/configure/node_modules/@pie-lib/math-rendering/lib/render-math.js.map +1 -0
  80. package/configure/node_modules/@pie-lib/math-rendering/package.json +19 -0
  81. package/configure/node_modules/@pie-lib/math-rendering/playground/demo.html +872 -0
  82. package/configure/node_modules/@pie-lib/math-rendering/playground/demo.js +108 -0
  83. package/configure/node_modules/@pie-lib/math-rendering/playground/main.html +156 -0
  84. package/configure/node_modules/@pie-lib/math-rendering/playground/main.js +16 -0
  85. package/configure/node_modules/@pie-lib/math-rendering/playground/webpack.config.js +29 -0
  86. package/configure/node_modules/@pie-lib/math-rendering/src/index.js +4 -0
  87. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/chtml.js +215 -0
  88. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/index.js +13 -0
  89. package/configure/node_modules/@pie-lib/math-rendering/src/mstack/mml.js +24 -0
  90. package/configure/node_modules/@pie-lib/math-rendering/src/normalization.js +69 -0
  91. package/configure/node_modules/@pie-lib/math-rendering/src/render-math.js +234 -0
  92. package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.json +937 -0
  93. package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.md +602 -0
  94. package/configure/node_modules/@pie-lib/render-ui/LICENSE.md +5 -0
  95. package/configure/node_modules/@pie-lib/render-ui/README.md +33 -0
  96. package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js +146 -0
  97. package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js.map +1 -0
  98. package/configure/node_modules/@pie-lib/render-ui/lib/color.js +134 -0
  99. package/configure/node_modules/@pie-lib/render-ui/lib/color.js.map +1 -0
  100. package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js +160 -0
  101. package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js.map +1 -0
  102. package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js +24 -0
  103. package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js.map +1 -0
  104. package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js +102 -0
  105. package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js.map +1 -0
  106. package/configure/node_modules/@pie-lib/render-ui/lib/index.js +104 -0
  107. package/configure/node_modules/@pie-lib/render-ui/lib/index.js.map +1 -0
  108. package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js +60 -0
  109. package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js.map +1 -0
  110. package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js +133 -0
  111. package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js.map +1 -0
  112. package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js +162 -0
  113. package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js.map +1 -0
  114. package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js +28 -0
  115. package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js.map +1 -0
  116. package/configure/node_modules/@pie-lib/render-ui/lib/readable.js +28 -0
  117. package/configure/node_modules/@pie-lib/render-ui/lib/readable.js.map +1 -0
  118. package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js +160 -0
  119. package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js.map +1 -0
  120. package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js +206 -0
  121. package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js.map +1 -0
  122. package/configure/node_modules/@pie-lib/render-ui/package.json +30 -0
  123. package/configure/node_modules/@pie-lib/render-ui/src/collapsible/index.jsx +68 -0
  124. package/configure/node_modules/@pie-lib/render-ui/src/color.js +48 -0
  125. package/configure/node_modules/@pie-lib/render-ui/src/feedback.jsx +100 -0
  126. package/configure/node_modules/@pie-lib/render-ui/src/has-text.js +14 -0
  127. package/configure/node_modules/@pie-lib/render-ui/src/html-and-math.js +40 -0
  128. package/configure/node_modules/@pie-lib/render-ui/src/index.js +27 -0
  129. package/configure/node_modules/@pie-lib/render-ui/src/input-container.jsx +41 -0
  130. package/configure/node_modules/@pie-lib/render-ui/src/preview-layout.jsx +77 -0
  131. package/configure/node_modules/@pie-lib/render-ui/src/preview-prompt.jsx +90 -0
  132. package/configure/node_modules/@pie-lib/render-ui/src/purpose.jsx +19 -0
  133. package/configure/node_modules/@pie-lib/render-ui/src/readable.jsx +19 -0
  134. package/configure/node_modules/@pie-lib/render-ui/src/response-indicators.jsx +89 -0
  135. package/configure/node_modules/@pie-lib/render-ui/src/withUndoReset.jsx +118 -0
  136. package/configure/package.json +3 -3
  137. package/configure/src/__tests__/index.test.js +4 -2
  138. package/configure/src/main.jsx +8 -3
  139. package/controller/lib/index.js +79 -3
  140. package/controller/lib/index.js.map +1 -1
  141. package/controller/src/index.js +55 -0
  142. package/package.json +3 -3
  143. package/module/configure.js +0 -472
  144. package/module/demo.js +0 -77
@@ -0,0 +1,338 @@
1
+ {
2
+ "description": "Model for the Choice Interaction",
3
+ "additionalProperties": false,
4
+ "type": "object",
5
+ "properties": {
6
+ "choiceMode": {
7
+ "description": "Indicates the choices are single or multiple selection",
8
+ "enum": [
9
+ "checkbox",
10
+ "radio"
11
+ ],
12
+ "type": "string",
13
+ "title": "choiceMode"
14
+ },
15
+ "choicePrefix": {
16
+ "description": "What key should be displayed before choices. If undefined no key will be displayed.",
17
+ "default": ": 'letters'",
18
+ "enum": [
19
+ "letters",
20
+ "numbers"
21
+ ],
22
+ "type": "string",
23
+ "title": "choicePrefix"
24
+ },
25
+ "choices": {
26
+ "description": "The choice options for the question",
27
+ "type": "array",
28
+ "items": {
29
+ "title": "Choice",
30
+ "type": "object",
31
+ "properties": {
32
+ "correct": {
33
+ "description": "Indicates if the choice is correct",
34
+ "type": "boolean",
35
+ "title": "correct"
36
+ },
37
+ "value": {
38
+ "description": "the value that will be stored if this choice is selected",
39
+ "type": "string",
40
+ "title": "value"
41
+ },
42
+ "label": {
43
+ "description": "the text label that will be presented to the user for this choice",
44
+ "type": "string",
45
+ "title": "label"
46
+ },
47
+ "feedback": {
48
+ "description": "The type of feedback to use:\n `default` = a standard feedback message\n `custom` = a customized feedback message",
49
+ "title": "Feedback",
50
+ "type": "object",
51
+ "properties": {
52
+ "type": {
53
+ "default": "default",
54
+ "enum": [
55
+ "custom",
56
+ "default",
57
+ "none"
58
+ ],
59
+ "type": "string",
60
+ "title": "type"
61
+ },
62
+ "value": {
63
+ "description": "Value for feedback",
64
+ "type": "string",
65
+ "title": "value"
66
+ },
67
+ "custom": {
68
+ "description": "Custom value for feedback",
69
+ "type": "string",
70
+ "title": "custom"
71
+ }
72
+ },
73
+ "required": [
74
+ "type"
75
+ ]
76
+ },
77
+ "rationale": {
78
+ "description": "Rationale for the Choice",
79
+ "type": "string",
80
+ "title": "rationale"
81
+ }
82
+ },
83
+ "required": [
84
+ "label",
85
+ "value"
86
+ ]
87
+ },
88
+ "title": "choices"
89
+ },
90
+ "prompt": {
91
+ "description": "The question prompt or item stem",
92
+ "type": "string",
93
+ "title": "prompt"
94
+ },
95
+ "promptEnabled": {
96
+ "description": "Determines if prompt should show",
97
+ "type": "boolean",
98
+ "title": "promptEnabled"
99
+ },
100
+ "choicesLayout": {
101
+ "description": "Indicates the layout of choices for player",
102
+ "default": ": 'vertical'",
103
+ "enum": [
104
+ "grid",
105
+ "horizontal",
106
+ "vertical"
107
+ ],
108
+ "type": "string",
109
+ "title": "choicesLayout"
110
+ },
111
+ "gridColumns": {
112
+ "description": "Indicates the number of columns for the grid layout",
113
+ "default": ": 2",
114
+ "type": "number",
115
+ "title": "gridColumns"
116
+ },
117
+ "toolbarEditorPosition": {
118
+ "description": "Indicates the editor's toolbar position which can be 'bottom' or 'top'",
119
+ "default": ": 'bottom'",
120
+ "enum": [
121
+ "bottom",
122
+ "top"
123
+ ],
124
+ "type": "string",
125
+ "title": "toolbarEditorPosition"
126
+ },
127
+ "lockChoiceOrder": {
128
+ "description": "Indicates the order of choices should be randomly ordered when presented to user",
129
+ "type": "boolean",
130
+ "title": "lockChoiceOrder"
131
+ },
132
+ "partialScoring": {
133
+ "description": "Indicates that the item should use partial scoring",
134
+ "type": "boolean",
135
+ "title": "partialScoring"
136
+ },
137
+ "scoringType": {
138
+ "description": "Indicates scoring type",
139
+ "enum": [
140
+ "auto",
141
+ "rubric"
142
+ ],
143
+ "type": "string",
144
+ "title": "scoringType"
145
+ },
146
+ "studentInstructions": {
147
+ "description": "Indicates student instructions",
148
+ "type": "string",
149
+ "title": "studentInstructions"
150
+ },
151
+ "teacherInstructions": {
152
+ "description": "Indicates teacher instructions",
153
+ "type": "string",
154
+ "title": "teacherInstructions"
155
+ },
156
+ "feedbackEnabled": {
157
+ "description": "Indicates if feedback is enabled",
158
+ "type": "boolean",
159
+ "title": "feedbackEnabled"
160
+ },
161
+ "rationaleEnabled": {
162
+ "description": "Indicates if Rationale are enabled",
163
+ "type": "boolean",
164
+ "title": "rationaleEnabled"
165
+ },
166
+ "spellCheckEnabled": {
167
+ "description": "Indicates if spellcheck is enabled for the author. Default value is true",
168
+ "type": "boolean",
169
+ "title": "spellCheckEnabled"
170
+ },
171
+ "studentInstructionsEnabled": {
172
+ "description": "Indicates if Student Instructions are enabled",
173
+ "type": "boolean",
174
+ "title": "studentInstructionsEnabled"
175
+ },
176
+ "teacherInstructionsEnabled": {
177
+ "description": "Indicates if Teacher Instructions are enabled",
178
+ "type": "boolean",
179
+ "title": "teacherInstructionsEnabled"
180
+ },
181
+ "accessibilityLabelsEnabled": {
182
+ "description": "Indicates if Accessibility Labels are enabled",
183
+ "type": "boolean",
184
+ "title": "accessibilityLabelsEnabled"
185
+ },
186
+ "id": {
187
+ "description": "Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.",
188
+ "type": "string",
189
+ "title": "id"
190
+ },
191
+ "element": {
192
+ "description": "The html Element tag name",
193
+ "type": "string",
194
+ "title": "element"
195
+ }
196
+ },
197
+ "required": [
198
+ "accessibilityLabelsEnabled",
199
+ "choices",
200
+ "element",
201
+ "feedbackEnabled",
202
+ "id",
203
+ "rationaleEnabled",
204
+ "spellCheckEnabled",
205
+ "studentInstructionsEnabled",
206
+ "teacherInstructionsEnabled"
207
+ ],
208
+ "definitions": {
209
+ "ConfigureProp": {
210
+ "title": "ConfigureProp",
211
+ "type": "object",
212
+ "properties": {
213
+ "settings": {
214
+ "description": "Indicates if the item has to be displayed in the Settings Panel",
215
+ "type": "boolean",
216
+ "title": "settings"
217
+ },
218
+ "label": {
219
+ "description": "Indicates the label for the item that has to be displayed in the Settings Panel",
220
+ "type": "string",
221
+ "title": "label"
222
+ }
223
+ }
224
+ },
225
+ "ConfigurePropWithEnabled": {
226
+ "title": "ConfigurePropWithEnabled",
227
+ "type": "object",
228
+ "properties": {
229
+ "settings": {
230
+ "description": "Indicates if the item has to be displayed in the Settings Panel",
231
+ "type": "boolean",
232
+ "title": "settings"
233
+ },
234
+ "label": {
235
+ "description": "Indicates the label for the item that has to be displayed in the Settings Panel",
236
+ "type": "string",
237
+ "title": "label"
238
+ },
239
+ "enabled": {
240
+ "description": "Indicates the value of the item if it affects config-ui\n(eg.: if item is a switch and displaying an input on the config-ui depends on the switch value: on/off)",
241
+ "type": "boolean",
242
+ "title": "enabled"
243
+ }
244
+ }
245
+ },
246
+ "Choice": {
247
+ "title": "Choice",
248
+ "type": "object",
249
+ "properties": {
250
+ "correct": {
251
+ "description": "Indicates if the choice is correct",
252
+ "type": "boolean",
253
+ "title": "correct"
254
+ },
255
+ "value": {
256
+ "description": "the value that will be stored if this choice is selected",
257
+ "type": "string",
258
+ "title": "value"
259
+ },
260
+ "label": {
261
+ "description": "the text label that will be presented to the user for this choice",
262
+ "type": "string",
263
+ "title": "label"
264
+ },
265
+ "feedback": {
266
+ "description": "The type of feedback to use:\n `default` = a standard feedback message\n `custom` = a customized feedback message",
267
+ "title": "Feedback",
268
+ "type": "object",
269
+ "properties": {
270
+ "type": {
271
+ "default": "default",
272
+ "enum": [
273
+ "custom",
274
+ "default",
275
+ "none"
276
+ ],
277
+ "type": "string",
278
+ "title": "type"
279
+ },
280
+ "value": {
281
+ "description": "Value for feedback",
282
+ "type": "string",
283
+ "title": "value"
284
+ },
285
+ "custom": {
286
+ "description": "Custom value for feedback",
287
+ "type": "string",
288
+ "title": "custom"
289
+ }
290
+ },
291
+ "required": [
292
+ "type"
293
+ ]
294
+ },
295
+ "rationale": {
296
+ "description": "Rationale for the Choice",
297
+ "type": "string",
298
+ "title": "rationale"
299
+ }
300
+ },
301
+ "required": [
302
+ "label",
303
+ "value"
304
+ ]
305
+ },
306
+ "Feedback": {
307
+ "description": "The type of feedback to use:\n `default` = a standard feedback message\n `custom` = a customized feedback message",
308
+ "title": "Feedback",
309
+ "type": "object",
310
+ "properties": {
311
+ "type": {
312
+ "default": "default",
313
+ "enum": [
314
+ "custom",
315
+ "default",
316
+ "none"
317
+ ],
318
+ "type": "string",
319
+ "title": "type"
320
+ },
321
+ "value": {
322
+ "description": "Value for feedback",
323
+ "type": "string",
324
+ "title": "value"
325
+ },
326
+ "custom": {
327
+ "description": "Custom value for feedback",
328
+ "type": "string",
329
+ "title": "custom"
330
+ }
331
+ },
332
+ "required": [
333
+ "type"
334
+ ]
335
+ }
336
+ },
337
+ "$schema": "http://json-schema.org/draft-07/schema#"
338
+ }
@@ -0,0 +1,274 @@
1
+ Model for the Choice Interaction
2
+
3
+ The schema defines the following properties:
4
+
5
+ # `choiceMode` (string, enum)
6
+
7
+ Indicates the choices are single or multiple selection
8
+
9
+ This element must be one of the following enum values:
10
+
11
+ * `checkbox`
12
+ * `radio`
13
+
14
+ # `choicePrefix` (string, enum)
15
+
16
+ What key should be displayed before choices. If undefined no key will be displayed.
17
+
18
+ This element must be one of the following enum values:
19
+
20
+ * `letters`
21
+ * `numbers`
22
+
23
+ Default: `": 'letters'"`
24
+
25
+ # `choices` (array, required)
26
+
27
+ The choice options for the question
28
+
29
+ The object is an array with all elements of the type `object`.
30
+
31
+ The array object has the following properties:
32
+
33
+ ## `correct` (boolean)
34
+
35
+ Indicates if the choice is correct
36
+
37
+ ## `value` (string, required)
38
+
39
+ the value that will be stored if this choice is selected
40
+
41
+ ## `label` (string, required)
42
+
43
+ the text label that will be presented to the user for this choice
44
+
45
+ ## `feedback` (object)
46
+
47
+ The type of feedback to use:
48
+ `default` = a standard feedback message
49
+ `custom` = a customized feedback message
50
+
51
+ Properties of the `feedback` object:
52
+
53
+ ### `type` (string, enum, required)
54
+
55
+ This element must be one of the following enum values:
56
+
57
+ * `custom`
58
+ * `default`
59
+ * `none`
60
+
61
+ Default: `"default"`
62
+
63
+ ### `value` (string)
64
+
65
+ Value for feedback
66
+
67
+ ### `custom` (string)
68
+
69
+ Custom value for feedback
70
+
71
+ ## `rationale` (string)
72
+
73
+ Rationale for the Choice
74
+
75
+ # `prompt` (string)
76
+
77
+ The question prompt or item stem
78
+
79
+ # `promptEnabled` (boolean)
80
+
81
+ Determines if prompt should show
82
+
83
+ # `choicesLayout` (string, enum)
84
+
85
+ Indicates the layout of choices for player
86
+
87
+ This element must be one of the following enum values:
88
+
89
+ * `grid`
90
+ * `horizontal`
91
+ * `vertical`
92
+
93
+ Default: `": 'vertical'"`
94
+
95
+ # `gridColumns` (number)
96
+
97
+ Indicates the number of columns for the grid layout
98
+
99
+ Default: `": 2"`
100
+
101
+ # `toolbarEditorPosition` (string, enum)
102
+
103
+ Indicates the editor's toolbar position which can be 'bottom' or 'top'
104
+
105
+ This element must be one of the following enum values:
106
+
107
+ * `bottom`
108
+ * `top`
109
+
110
+ Default: `": 'bottom'"`
111
+
112
+ # `lockChoiceOrder` (boolean)
113
+
114
+ Indicates the order of choices should be randomly ordered when presented to user
115
+
116
+ # `partialScoring` (boolean)
117
+
118
+ Indicates that the item should use partial scoring
119
+
120
+ # `scoringType` (string, enum)
121
+
122
+ Indicates scoring type
123
+
124
+ This element must be one of the following enum values:
125
+
126
+ * `auto`
127
+ * `rubric`
128
+
129
+ # `studentInstructions` (string)
130
+
131
+ Indicates student instructions
132
+
133
+ # `teacherInstructions` (string)
134
+
135
+ Indicates teacher instructions
136
+
137
+ # `feedbackEnabled` (boolean, required)
138
+
139
+ Indicates if feedback is enabled
140
+
141
+ # `rationaleEnabled` (boolean, required)
142
+
143
+ Indicates if Rationale are enabled
144
+
145
+ # `spellCheckEnabled` (boolean, required)
146
+
147
+ Indicates if spellcheck is enabled for the author. Default value is true
148
+
149
+ # `studentInstructionsEnabled` (boolean, required)
150
+
151
+ Indicates if Student Instructions are enabled
152
+
153
+ # `teacherInstructionsEnabled` (boolean, required)
154
+
155
+ Indicates if Teacher Instructions are enabled
156
+
157
+ # `accessibilityLabelsEnabled` (boolean, required)
158
+
159
+ Indicates if Accessibility Labels are enabled
160
+
161
+ # `id` (string, required)
162
+
163
+ Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.
164
+
165
+ # `element` (string, required)
166
+
167
+ The html Element tag name
168
+
169
+ ---
170
+
171
+ # Sub Schemas
172
+
173
+ The schema defines the following additional types:
174
+
175
+ ## `ConfigureProp` (object)
176
+
177
+ Properties of the `ConfigureProp` object:
178
+
179
+ ### `settings` (boolean)
180
+
181
+ Indicates if the item has to be displayed in the Settings Panel
182
+
183
+ ### `label` (string)
184
+
185
+ Indicates the label for the item that has to be displayed in the Settings Panel
186
+
187
+ ## `ConfigurePropWithEnabled` (object)
188
+
189
+ Properties of the `ConfigurePropWithEnabled` object:
190
+
191
+ ### `settings` (boolean)
192
+
193
+ Indicates if the item has to be displayed in the Settings Panel
194
+
195
+ ### `label` (string)
196
+
197
+ Indicates the label for the item that has to be displayed in the Settings Panel
198
+
199
+ ### `enabled` (boolean)
200
+
201
+ Indicates the value of the item if it affects config-ui
202
+ (eg.: if item is a switch and displaying an input on the config-ui depends on the switch value: on/off)
203
+
204
+ ## `Choice` (object)
205
+
206
+ Properties of the `Choice` object:
207
+
208
+ ### `correct` (boolean)
209
+
210
+ Indicates if the choice is correct
211
+
212
+ ### `value` (string, required)
213
+
214
+ the value that will be stored if this choice is selected
215
+
216
+ ### `label` (string, required)
217
+
218
+ the text label that will be presented to the user for this choice
219
+
220
+ ### `feedback` (object)
221
+
222
+ The type of feedback to use:
223
+ `default` = a standard feedback message
224
+ `custom` = a customized feedback message
225
+
226
+ Properties of the `feedback` object:
227
+
228
+ #### `type` (string, enum, required)
229
+
230
+ This element must be one of the following enum values:
231
+
232
+ * `custom`
233
+ * `default`
234
+ * `none`
235
+
236
+ Default: `"default"`
237
+
238
+ #### `value` (string)
239
+
240
+ Value for feedback
241
+
242
+ #### `custom` (string)
243
+
244
+ Custom value for feedback
245
+
246
+ ### `rationale` (string)
247
+
248
+ Rationale for the Choice
249
+
250
+ ## `Feedback` (object)
251
+
252
+ The type of feedback to use:
253
+ `default` = a standard feedback message
254
+ `custom` = a customized feedback message
255
+
256
+ Properties of the `Feedback` object:
257
+
258
+ ### `type` (string, enum, required)
259
+
260
+ This element must be one of the following enum values:
261
+
262
+ * `custom`
263
+ * `default`
264
+ * `none`
265
+
266
+ Default: `"default"`
267
+
268
+ ### `value` (string)
269
+
270
+ Value for feedback
271
+
272
+ ### `custom` (string)
273
+
274
+ Custom value for feedback