@pie-element/explicit-constructed-response 11.1.2-next.2 → 11.1.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 (108) hide show
  1. package/CHANGELOG.json +1102 -0
  2. package/CHANGELOG.md +2194 -0
  3. package/LICENSE.md +5 -0
  4. package/README.md +1 -0
  5. package/configure/CHANGELOG.json +652 -0
  6. package/configure/CHANGELOG.md +1935 -0
  7. package/configure/lib/alternateResponses.js +199 -0
  8. package/configure/lib/alternateResponses.js.map +1 -0
  9. package/configure/lib/alternateSection.js +329 -0
  10. package/configure/lib/alternateSection.js.map +1 -0
  11. package/configure/lib/defaults.js +184 -0
  12. package/configure/lib/defaults.js.map +1 -0
  13. package/configure/lib/ecr-toolbar.js +181 -0
  14. package/configure/lib/ecr-toolbar.js.map +1 -0
  15. package/configure/lib/index.js +161 -0
  16. package/configure/lib/index.js.map +1 -0
  17. package/configure/lib/main.js +501 -0
  18. package/configure/lib/main.js.map +1 -0
  19. package/configure/lib/markupUtils.js +70 -0
  20. package/configure/lib/markupUtils.js.map +1 -0
  21. package/configure/lib/utils.js +15 -0
  22. package/configure/lib/utils.js.map +1 -0
  23. package/configure/package.json +22 -0
  24. package/controller/CHANGELOG.json +517 -0
  25. package/controller/CHANGELOG.md +1344 -0
  26. package/controller/lib/defaults.js +23 -0
  27. package/controller/lib/defaults.js.map +1 -0
  28. package/controller/lib/index.js +368 -0
  29. package/controller/lib/index.js.map +1 -0
  30. package/controller/package.json +18 -0
  31. package/docs/config-schema.json +2629 -0
  32. package/docs/config-schema.json.md +1941 -0
  33. package/docs/demo/config.js +8 -0
  34. package/docs/demo/generate.js +20 -0
  35. package/docs/demo/index.html +1 -0
  36. package/docs/demo/session.js +10 -0
  37. package/docs/pie-schema.json +1130 -0
  38. package/docs/pie-schema.json.md +814 -0
  39. package/lib/index.js +91 -0
  40. package/lib/index.js.map +1 -0
  41. package/lib/main.js +205 -0
  42. package/lib/main.js.map +1 -0
  43. package/lib/print.js +71 -0
  44. package/lib/print.js.map +1 -0
  45. package/module/configure.js +1 -0
  46. package/module/controller.js +6534 -0
  47. package/module/demo.js +45 -0
  48. package/module/element.js +1 -0
  49. package/module/index.html +21 -0
  50. package/module/manifest.json +18 -0
  51. package/module/print-demo.js +83 -0
  52. package/module/print.html +18 -0
  53. package/module/print.js +1 -0
  54. package/package.json +25 -92
  55. package/configure.js +0 -2
  56. package/controller.js +0 -1
  57. package/dist/_virtual/_rolldown/runtime.js +0 -4
  58. package/dist/author/alternateResponses.d.ts +0 -34
  59. package/dist/author/alternateResponses.js +0 -113
  60. package/dist/author/alternateSection.d.ts +0 -58
  61. package/dist/author/alternateSection.js +0 -213
  62. package/dist/author/defaults.d.ts +0 -186
  63. package/dist/author/defaults.js +0 -128
  64. package/dist/author/ecr-toolbar.d.ts +0 -41
  65. package/dist/author/ecr-toolbar.js +0 -100
  66. package/dist/author/index.d.ts +0 -42
  67. package/dist/author/index.js +0 -96
  68. package/dist/author/main.d.ts +0 -38
  69. package/dist/author/main.js +0 -291
  70. package/dist/author/markupUtils.d.ts +0 -14
  71. package/dist/author/markupUtils.js +0 -13
  72. package/dist/author/utils.d.ts +0 -9
  73. package/dist/author/utils.js +0 -7
  74. package/dist/browser/author/index.js +0 -3378
  75. package/dist/browser/author/index.js.map +0 -1
  76. package/dist/browser/browser-BC3WygxE.js +0 -360
  77. package/dist/browser/browser-BC3WygxE.js.map +0 -1
  78. package/dist/browser/controller/index.js +0 -4152
  79. package/dist/browser/controller/index.js.map +0 -1
  80. package/dist/browser/delivery/index.js +0 -96
  81. package/dist/browser/delivery/index.js.map +0 -1
  82. package/dist/browser/dist-B5QyKMGD.js +0 -45663
  83. package/dist/browser/dist-B5QyKMGD.js.map +0 -1
  84. package/dist/browser/dist-D9ARZhQk.js +0 -1426
  85. package/dist/browser/dist-D9ARZhQk.js.map +0 -1
  86. package/dist/browser/explicit-constructed-response.css +0 -2
  87. package/dist/browser/main-Czk7a-Zt.js +0 -959
  88. package/dist/browser/main-Czk7a-Zt.js.map +0 -1
  89. package/dist/browser/print/index.js +0 -40
  90. package/dist/browser/print/index.js.map +0 -1
  91. package/dist/controller/defaults.d.ts +0 -25
  92. package/dist/controller/defaults.js +0 -19
  93. package/dist/controller/index.d.ts +0 -64
  94. package/dist/controller/index.js +0 -139
  95. package/dist/delivery/index.d.ts +0 -20
  96. package/dist/delivery/index.js +0 -66
  97. package/dist/delivery/main.d.ts +0 -48
  98. package/dist/delivery/main.js +0 -115
  99. package/dist/explicit-constructed-response.css +0 -2
  100. package/dist/index.d.ts +0 -1
  101. package/dist/index.iife.d.ts +0 -8
  102. package/dist/index.iife.js +0 -393
  103. package/dist/index.js +0 -2
  104. package/dist/node_modules/.bun/he@1.2.0/node_modules/he/he.js +0 -3993
  105. package/dist/print/index.d.ts +0 -15
  106. package/dist/print/index.js +0 -40
  107. package/dist/runtime-support.d.ts +0 -12
  108. package/dist/runtime-support.js +0 -12
@@ -1,959 +0,0 @@
1
- import { E as e, b as t, m as n, n as r, s as i, t as a } from "./browser-BC3WygxE.js";
2
- import { C as o, G as s, O as c, W as l, _ as u, at as d, g as f, h as p, it as m, m as h, p as g, q as _, t as v } from "./dist-B5QyKMGD.js";
3
- import { t as y } from "./dist-D9ARZhQk.js";
4
- import b, { useRef as x } from "react";
5
- import { jsx as S, jsxs as C } from "react/jsx-runtime";
6
- //#region ../../lib-react/correct-answer-toggle/dist/expander.js
7
- var w = /* @__PURE__ */ e(m(), 1), T = "height ease-in 300ms, opacity ease-in 300ms", E = _("div")(() => ({
8
- position: "relative",
9
- height: 0,
10
- overflow: "hidden",
11
- display: "flex",
12
- visibility: "hidden",
13
- width: 0,
14
- "&.enter": {
15
- transition: T,
16
- opacity: 1,
17
- height: "auto",
18
- width: "auto",
19
- visibility: "visible",
20
- minHeight: "25px"
21
- },
22
- "&.enter-done": {
23
- height: "auto",
24
- visibility: "visible",
25
- width: "auto",
26
- minHeight: "25px"
27
- },
28
- "&.exit": {
29
- transition: T,
30
- opacity: 0,
31
- height: 0,
32
- visibility: "visible",
33
- width: 0
34
- },
35
- "&.exit-done": {
36
- opacity: 0,
37
- visibility: "hidden",
38
- height: 0,
39
- width: 0
40
- }
41
- })), D = (e) => {
42
- let { show: t, children: n, className: r } = e, i = x(null);
43
- return /* @__PURE__ */ S(s, {
44
- nodeRef: i,
45
- in: t,
46
- appear: !0,
47
- mountOnEnter: !1,
48
- timeout: 300,
49
- classNames: {
50
- enter: "enter",
51
- enterDone: "enter-done",
52
- exit: "exit",
53
- exitDone: "exit-done"
54
- },
55
- children: /* @__PURE__ */ S(E, {
56
- ref: i,
57
- className: r,
58
- children: n
59
- })
60
- });
61
- };
62
- D.propTypes = {
63
- show: w.default.bool.isRequired,
64
- className: w.default.string,
65
- children: w.default.oneOfType([w.default.arrayOf(w.default.node), w.default.node]).isRequired
66
- };
67
- //#endregion
68
- //#region ../../lib-react/icons/dist/correct-response-icon.js
69
- var ee = ({ bgFill: e, fgFill: t }) => /* @__PURE__ */ C("svg", {
70
- preserveAspectRatio: "xMinYMin meet",
71
- version: "1.1",
72
- viewBox: "-283 359 34 35",
73
- style: { enableBackground: "new -283 359 34 35" },
74
- children: [
75
- /* @__PURE__ */ S("circle", {
76
- cx: "-266",
77
- cy: "375.9",
78
- r: "14",
79
- fill: e
80
- }),
81
- /* @__PURE__ */ S("path", {
82
- d: "M-280.5,375.9c0-8,6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5s-6.5,14.5-14.5,14.5S-280.5,383.9-280.5,375.9z\n M-279.5,375.9c0,7.4,6.1,13.5,13.5,13.5c7.4,0,13.5-6.1,13.5-13.5s-6.1-13.5-13.5-13.5C-273.4,362.4-279.5,368.5-279.5,375.9z",
83
- fill: e
84
- }),
85
- /* @__PURE__ */ S("polygon", {
86
- points: "-265.4,383.1 -258.6,377.2 -261.2,374.2 -264.3,376.9 -268.9,368.7 -272.4,370.6",
87
- fill: t
88
- })
89
- ]
90
- });
91
- ee.propTypes = {
92
- bgFill: w.default.string.isRequired,
93
- fgFill: w.default.string.isRequired
94
- };
95
- var O = ({ bgFill: e, fgFill: t, borderFill: n }) => /* @__PURE__ */ C("svg", {
96
- preserveAspectRatio: "xMinYMin meet",
97
- version: "1.1",
98
- viewBox: "-129.5 127 34 35",
99
- style: { enableBackground: "new -129.5 127 34 35" },
100
- children: [
101
- /* @__PURE__ */ S("path", {
102
- style: {
103
- fill: "#D0CAC5",
104
- stroke: "#E6E3E0",
105
- strokeWidth: .75,
106
- strokeMiterlimit: 10
107
- },
108
- d: "M-112.9,160.4c-8.5,0-15.5-6.9-15.5-15.5c0-8.5,6.9-15.5,15.5-15.5s15.5,6.9,15.5,15.5\n C-97.4,153.5-104.3,160.4-112.9,160.4z"
109
- }),
110
- /* @__PURE__ */ S("path", {
111
- style: {
112
- fill: "#B3ABA4",
113
- stroke: "#CDC7C2",
114
- strokeWidth: .5,
115
- strokeMiterlimit: 10
116
- },
117
- d: "M-113.2,159c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-105.2,159-113.2,159z"
118
- }),
119
- /* @__PURE__ */ S("circle", {
120
- cx: "-114.2",
121
- cy: "143.5",
122
- r: "14",
123
- fill: e
124
- }),
125
- /* @__PURE__ */ S("path", {
126
- d: "M-114.2,158c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-106.2,158-114.2,158z\n M-114.2,130c-7.4,0-13.5,6.1-13.5,13.5s6.1,13.5,13.5,13.5s13.5-6.1,13.5-13.5S-106.8,130-114.2,130z",
127
- fill: n
128
- }),
129
- /* @__PURE__ */ S("polygon", {
130
- points: "-114.8,150.7 -121.6,144.8 -119,141.8 -115.9,144.5 -111.3,136.3 -107.8,138.2",
131
- fill: t
132
- })
133
- ]
134
- });
135
- O.propTypes = {
136
- bgFill: w.default.string.isRequired,
137
- fgFill: w.default.string.isRequired,
138
- borderFill: w.default.string.isRequired
139
- };
140
- var te = _("div")(({ size: e }) => ({
141
- width: e || "25px",
142
- height: e || "25px"
143
- })), k = ({ open: e, size: t }) => /* @__PURE__ */ S(te, {
144
- size: t,
145
- children: e ? /* @__PURE__ */ S(ee, {
146
- bgFill: "#bce2ff",
147
- fgFill: "#1a9cff"
148
- }) : /* @__PURE__ */ S(O, {
149
- bgFill: "white",
150
- fgFill: "#1a9cff",
151
- borderFill: "#bce2ff"
152
- })
153
- });
154
- k.propTypes = {
155
- open: w.default.bool,
156
- size: w.default.string
157
- }, k.defaultProps = { open: !1 };
158
- //#endregion
159
- //#region ../../lib-react/correct-answer-toggle/dist/index.js
160
- var ne = /* @__PURE__ */ e(a(), 1);
161
- function A(e) {
162
- return typeof e == "function" || typeof e == "object" && !!e && typeof e.$$typeof == "symbol";
163
- }
164
- function j(e, t) {
165
- return !e || A(e) ? e : A(e.default) ? e.default : t && A(e[t]) ? e[t] : t && A(e[t]?.default) ? e[t].default : e;
166
- }
167
- var re = j(f, "Readable") || j(ie.Readable, "Readable"), M = g, N = M.default, ie = N && typeof N == "object" ? N : M, { translator: P } = y, ae = {
168
- WebkitTouchCallout: "none",
169
- WebkitUserSelect: "none",
170
- KhtmlUserSelect: "none",
171
- MozUserSelect: "none",
172
- msUserSelect: "none",
173
- userSelect: "none"
174
- }, oe = _("div")(() => ({
175
- width: "100%",
176
- cursor: "pointer"
177
- })), se = _("div")(() => ({
178
- margin: "0 auto",
179
- textAlign: "center",
180
- display: "flex"
181
- })), ce = _("div")(() => ({
182
- width: "fit-content",
183
- minWidth: "140px",
184
- alignSelf: "center",
185
- verticalAlign: "middle",
186
- color: `var(--correct-answer-toggle-label-color, ${l.text()})`,
187
- fontWeight: "normal",
188
- ...ae
189
- })), le = _("div")(() => ({
190
- position: "absolute",
191
- width: "25px",
192
- "&.enter": { opacity: "0" },
193
- "&.enter-active": {
194
- opacity: "1",
195
- transition: "opacity 0.3s ease-in"
196
- },
197
- "&.exit": { opacity: "1" },
198
- "&.exit-active": {
199
- opacity: "0",
200
- transition: "opacity 0.3s ease-in"
201
- }
202
- })), ue = _("div")(() => ({
203
- width: "25px",
204
- marginRight: "5px",
205
- display: "flex",
206
- alignItems: "center"
207
- })), de = class e extends b.Component {
208
- static propTypes = {
209
- onToggle: w.default.func,
210
- toggled: w.default.bool,
211
- show: w.default.bool,
212
- hideMessage: w.default.string,
213
- showMessage: w.default.string,
214
- className: w.default.string,
215
- language: w.default.string
216
- };
217
- static defaultProps = {
218
- showMessage: "Show correct answer",
219
- hideMessage: "Hide correct answer",
220
- show: !1,
221
- toggled: !1
222
- };
223
- constructor(t) {
224
- super(t), this.state = { show: t.show }, this.openIconRef = b.createRef(), this.closedIconRef = b.createRef(), e.defaultProps = {
225
- ...e.defaultProps,
226
- showMessage: P.t("common:showCorrectAnswer", { lng: t.language }),
227
- hideMessage: P.t("common:hideCorrectAnswer", { lng: t.language })
228
- };
229
- }
230
- onClick() {
231
- this.props.onToggle(!this.props.toggled);
232
- }
233
- onTouch(e) {
234
- e.preventDefault(), this.props.onToggle(!this.props.toggled);
235
- }
236
- UNSAFE_componentWillReceiveProps(t) {
237
- this.setState({ show: t.show }), t.language !== this.props?.language && (e.defaultProps = {
238
- ...e.defaultProps,
239
- showMessage: P.t("common:showCorrectAnswer", { lng: t.language }),
240
- hideMessage: P.t("common:hideCorrectAnswer", { lng: t.language })
241
- });
242
- }
243
- render() {
244
- let { className: e, toggled: t, hideMessage: n, showMessage: r } = this.props;
245
- return /* @__PURE__ */ S(oe, {
246
- className: e,
247
- children: /* @__PURE__ */ S(D, {
248
- show: this.state.show,
249
- children: /* @__PURE__ */ C(se, {
250
- onClick: this.onClick.bind(this),
251
- onTouchEnd: this.onTouch.bind(this),
252
- children: [/* @__PURE__ */ C(ue, { children: [/* @__PURE__ */ S(s, {
253
- nodeRef: this.openIconRef,
254
- timeout: 400,
255
- in: t,
256
- exit: !t,
257
- classNames: {
258
- enter: "enter",
259
- enterActive: "enter-active",
260
- exit: "exit",
261
- exitActive: "exit-active"
262
- },
263
- children: /* @__PURE__ */ S(le, {
264
- ref: this.openIconRef,
265
- children: /* @__PURE__ */ S(k, { open: t }, "correct-open")
266
- })
267
- }), /* @__PURE__ */ S(s, {
268
- nodeRef: this.closedIconRef,
269
- timeout: 5e3,
270
- in: !t,
271
- exit: t,
272
- classNames: {
273
- enter: "enter",
274
- enterActive: "enter-active",
275
- exit: "exit",
276
- exitActive: "exit-active"
277
- },
278
- children: /* @__PURE__ */ S(le, {
279
- ref: this.closedIconRef,
280
- children: /* @__PURE__ */ S(k, { open: t }, "correct-closed")
281
- })
282
- })] }), /* @__PURE__ */ S(re, {
283
- false: !0,
284
- children: /* @__PURE__ */ S(ce, {
285
- "aria-hidden": !this.state.show,
286
- children: t ? n : r
287
- })
288
- })]
289
- })
290
- })
291
- });
292
- }
293
- }, fe = /\{\{(\d+)\}\}/g, pe = (e, t) => e ? { markup: e.replace(fe, (e, n) => `<span data-component="${t}" data-id="${n}"></span>`) } : { markup: "" }, F = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), I = /* @__PURE__ */ F(((e, t) => {
294
- t.exports = {
295
- "border-radius": 1,
296
- "border-top-left-radius": 1,
297
- "border-top-right-radius": 1,
298
- "border-bottom-left-radius": 1,
299
- "border-bottom-right-radius": 1,
300
- "box-shadow": 1,
301
- order: 1,
302
- flex: function(e, t) {
303
- return [t + "box-flex"];
304
- },
305
- "box-flex": 1,
306
- "box-align": 1,
307
- animation: 1,
308
- "animation-duration": 1,
309
- "animation-name": 1,
310
- transition: 1,
311
- "transition-duration": 1,
312
- transform: 1,
313
- "transform-style": 1,
314
- "transform-origin": 1,
315
- "backface-visibility": 1,
316
- perspective: 1,
317
- "box-pack": 1
318
- };
319
- }));
320
- I();
321
- //#endregion
322
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/cssUnitless.js
323
- var L = /* @__PURE__ */ F(((e, t) => {
324
- t.exports = {
325
- animation: 1,
326
- "column-count": 1,
327
- columns: 1,
328
- "font-weight": 1,
329
- opacity: 1,
330
- "order ": 1,
331
- "z-index": 1,
332
- zoom: 1,
333
- flex: 1,
334
- "box-flex": 1,
335
- transform: 1,
336
- perspective: 1,
337
- "box-pack": 1,
338
- "box-align": 1,
339
- colspan: 1,
340
- rowspan: 1
341
- };
342
- }));
343
- L();
344
- //#endregion
345
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/toUpperFirst.js
346
- var R = /* @__PURE__ */ F(((e, t) => {
347
- t.exports = function(e) {
348
- return e.length ? e.charAt(0).toUpperCase() + e.substring(1) : e;
349
- };
350
- }));
351
- R();
352
- //#endregion
353
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/prefixInfo.js
354
- var z = /* @__PURE__ */ F(((e, t) => {
355
- var n = R(), r = /^(Moz|Webkit|Khtml|O|ms|Icab)(?=[A-Z])/, i = typeof document > "u" ? {} : document.documentElement.style;
356
- t.exports = (function() {
357
- var e = (function() {
358
- for (var e in i) if (r.test(e)) return e.match(r)[0];
359
- return "WebkitOpacity" in i ? "Webkit" : "KhtmlOpacity" in i ? "Khtml" : "";
360
- })();
361
- return {
362
- style: e,
363
- css: "-" + e.toLowerCase() + "-",
364
- dom: {
365
- Webkit: "WebKit",
366
- ms: "MS",
367
- o: "WebKit"
368
- }[e] || n(e)
369
- };
370
- })();
371
- }));
372
- z();
373
- //#endregion
374
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/hyphenRe.js
375
- var B = /* @__PURE__ */ F(((e, t) => {
376
- t.exports = /[-\s]+(.)?/g;
377
- }));
378
- B();
379
- //#endregion
380
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/camelize.js
381
- var V = /* @__PURE__ */ F(((e, t) => {
382
- var n = function(e, t) {
383
- return t ? t.toUpperCase() : "";
384
- }, r = B();
385
- t.exports = function(e) {
386
- return e ? e.replace(r, n) : "";
387
- };
388
- }));
389
- V();
390
- //#endregion
391
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/separate.js
392
- var H = /* @__PURE__ */ F(((e, t) => {
393
- var n = /::/g, r = /([A-Z]+)([A-Z][a-z])/g, i = /([a-z\d])([A-Z])/g, a = /_/g;
394
- t.exports = function(e, t) {
395
- return e ? e.replace(n, "/").replace(r, "$1_$2").replace(i, "$1_$2").replace(a, t || "-") : "";
396
- };
397
- }));
398
- H();
399
- //#endregion
400
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/hyphenate.js
401
- var U = /* @__PURE__ */ F(((e, t) => {
402
- var n = H();
403
- t.exports = function(e) {
404
- return n(e).toLowerCase();
405
- };
406
- }));
407
- U();
408
- //#endregion
409
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/stringUtils/toLowerFirst.js
410
- var me = /* @__PURE__ */ F(((e, t) => {
411
- t.exports = function(e) {
412
- return e.length ? e.charAt(0).toLowerCase() + e.substring(1) : e;
413
- };
414
- }));
415
- me();
416
- //#endregion
417
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/prefixer.js
418
- var he = /* @__PURE__ */ F(((e, t) => {
419
- var n = V(), r = U(), i = me(), a = R(), o = z(), s = I(), c = typeof document > "u" ? {} : document.documentElement.style;
420
- t.exports = function(e) {
421
- return function(t, l) {
422
- l ||= {};
423
- var u = i(n(t)), d = r(t), f = e ? u : d, p = o.style ? e ? o.style : o.css : "";
424
- if (u in c) return l.asString ? f : [f];
425
- var m = f, h = s[d], g = [];
426
- if (e && (m = a(f)), typeof h == "function") {
427
- var _ = h(f, p) || [];
428
- _ && !Array.isArray(_) && (_ = [_]), _.length && (_ = _.map(function(t) {
429
- return e ? i(n(t)) : r(t);
430
- })), g = g.concat(_);
431
- }
432
- return p && g.push(p + m), g.push(f), l.asString || g.length == 1 ? g[0] : g;
433
- };
434
- };
435
- }));
436
- he();
437
- //#endregion
438
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/cssPrefix.js
439
- var W = /* @__PURE__ */ F(((e, t) => {
440
- t.exports = he()();
441
- }));
442
- W();
443
- //#endregion
444
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/hasOwn.js
445
- var G = /* @__PURE__ */ F(((e, t) => {
446
- var n = Object.prototype.hasOwnProperty;
447
- t.exports = function(e, t) {
448
- return n.call(e, t);
449
- };
450
- }));
451
- G();
452
- //#endregion
453
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/isObject.js
454
- var ge = /* @__PURE__ */ F(((e, t) => {
455
- var n = Object.prototype.toString;
456
- t.exports = function(e) {
457
- return !!e && n.call(e) === "[object Object]";
458
- };
459
- }));
460
- ge();
461
- //#endregion
462
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/isFunction.js
463
- var _e = /* @__PURE__ */ F(((e, t) => {
464
- var n = Object.prototype.toString;
465
- t.exports = function(e) {
466
- return n.apply(e) === "[object Function]";
467
- };
468
- }));
469
- _e();
470
- //#endregion
471
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/toStyleObject.js
472
- var K = /* @__PURE__ */ F(((e, t) => {
473
- z();
474
- var n = W(), r = U(), i = V(), a = G(), o = ge(), s = _e(), c = function(e, t, r, i) {
475
- n(t).forEach(function(t) {
476
- e[i ? i(t) : t] = r;
477
- });
478
- }, l = function(e) {
479
- e = (e || "").split(";");
480
- var t = {};
481
- return e.forEach(function(e) {
482
- var n = e.split(":");
483
- n.length == 2 && (t[n[0].trim()] = n[1].trim());
484
- }), t;
485
- }, u = { cssUnitless: L() }, d = function(e, t, n, f) {
486
- typeof e == "string" && (e = l(e)), t ||= u, t.cssUnitless = t.cssUnitless || u.cssUnitless, f ||= {};
487
- var p = t.scope || {}, m = t.addUnits == null ? p && p.addUnits != null ? p.addUnits : !0 : t.addUnits, h = (t.cssUnitless == null ? p ? p.cssUnitless : null : t.cssUnitless) || {}, g = (t.cssUnit || p ? p.cssUnit : null) || "px", _ = t.prefixProperties || (p ? p.prefixProperties : null) || {}, v = t.camelize ? i : r, y, b, x, S, C, w, T, E;
488
- for (x in e) if (a(e, x)) {
489
- if (S = e[x], b = r(n ? n + x : x), y = !1, E = !1, s(S) && (T = S.call(p || e, S, x, b, e), o(T) && T.value != null ? (S = T.value, E = T.prefix, b = T.name ? r(T.name) : b) : S = T), C = typeof S, w = C == "number" || C == "string" && S != "" && S * 1 == S, S == null || b == null || b === "") continue;
490
- if ((w || C == "string") && (y = !0), !y && S.value != null && S.prefix && (y = !0, E = S.prefix, S = S.value), y) {
491
- if (E ||= !!_[b], w && (S = m && !(b in h) ? S + g : S + ""), (b == "border" || !b.indexOf("border") && !~b.indexOf("radius") && !~b.indexOf("width")) && w && (b += "-width"), !b.indexOf("border-radius-") && (b.replace(/border(-radius)(-(.*))/, function(e, t, n) {
492
- var r = {
493
- "-top": ["-top-left", "-top-right"],
494
- "-left": ["-top-left", "-bottom-left"],
495
- "-right": ["-top-right", "-bottom-right"],
496
- "-bottom": ["-bottom-left", "-bottom-right"]
497
- };
498
- n in r ? (b = [], r[n].forEach(function(e) {
499
- b.push("border" + e + t);
500
- })) : b = "border" + n + t;
501
- }), Array.isArray(b))) {
502
- b.forEach(function(e) {
503
- E ? c(f, e, S, v) : f[v(e)] = S;
504
- });
505
- continue;
506
- }
507
- E ? c(f, b, S, v) : f[v(b)] = S;
508
- } else d(S, t, b + "-", f);
509
- }
510
- return f;
511
- };
512
- t.exports = d;
513
- }));
514
- K();
515
- //#endregion
516
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/src/toStyleString.js
517
- var ve = /* @__PURE__ */ F(((e, t) => {
518
- var n = K(), r = G();
519
- t.exports = function(e, t) {
520
- e = n(e, t);
521
- var i = [], a;
522
- for (a in e) r(e, a) && i.push(a + ": " + e[a]);
523
- return i.join("; ");
524
- };
525
- }));
526
- ve();
527
- //#endregion
528
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/to-style@1.3.3/node_modules/to-style/index.js
529
- var ye = /* @__PURE__ */ F(((e, t) => {
530
- t.exports = {
531
- prefixProperties: I(),
532
- cssUnitless: L(),
533
- object: K(),
534
- string: ve()
535
- };
536
- }));
537
- ye();
538
- //#endregion
539
- //#region ../../lib-react/mask-markup/dist/serialization.js
540
- var be = ye(), xe = (0, ne.default)("@pie-lib:mask-markup:serialization"), Se = ["span"], Ce = [
541
- "em",
542
- "strong",
543
- "u"
544
- ], we = 3, Te = 8, Ee = 1, De = (e) => {
545
- if (!e.attributes || e.attributes.length <= 0) return;
546
- let t = {}, n;
547
- for (n = 0; n < e.attributes.length; n++) {
548
- let r = e.attributes[n];
549
- t[r.name] = r.value;
550
- }
551
- return t;
552
- }, Oe = (e) => Se.includes(e) ? "inline" : Ce.includes(e) ? "mark" : "block", ke = (e) => {
553
- let t = /([\w-]*)\s*:\s*([^;]*)/g, n, r = {};
554
- for (; n = t.exec(e);) r[n[1]] = n[2].trim();
555
- return r;
556
- }, Ae = (e) => (0, be.object)(e, {
557
- camelize: !0,
558
- addUnits: !1
559
- }), je = (e, t) => Ae(ke(e.getAttribute(t))), Me = (e, t, n) => {
560
- let r = e.getAttribute(n);
561
- return delete t.class, r;
562
- }, Ne = (e) => (t, n) => {
563
- if (!e.getAttribute) return t;
564
- if (e.getAttribute(n)) switch (n) {
565
- case "style":
566
- t.style = je(e, n);
567
- break;
568
- case "class":
569
- t.className = Me(e, t, n);
570
- break;
571
- default:
572
- t[n] = e.getAttribute(n);
573
- break;
574
- }
575
- return t;
576
- }, Pe = [
577
- "border",
578
- "class",
579
- "style"
580
- ], q = {
581
- b: "bold",
582
- em: "italic",
583
- u: "underline",
584
- s: "strikethrough",
585
- code: "code",
586
- strong: "strong"
587
- }, Fe = (e, t = []) => {
588
- if (e.nodeType === Te) return null;
589
- if (e.nodeType === we) {
590
- let n = { text: e.textContent };
591
- return t.length > 0 && (n.marks = t.map((e) => ({
592
- type: e,
593
- data: void 0
594
- }))), {
595
- object: "text",
596
- leaves: [n]
597
- };
598
- }
599
- if (e.nodeType === Ee) {
600
- let n = e.tagName.toLowerCase(), r = q[n];
601
- if (r) return xe("[deserialize] mark: ", r), {
602
- _flatten: !0,
603
- nodes: J(e.childNodes, [...t, r])
604
- };
605
- if (n === "math") return {
606
- isMath: !0,
607
- nodes: [e]
608
- };
609
- let i = De(e) || {};
610
- n === "audio" && i.controls === "" && (i.controls = !0);
611
- let a = Pe.reduce(Ne(e), { ...i }), o = Oe(n), s = J(e.childNodes, t);
612
- return {
613
- object: o,
614
- type: n,
615
- data: {
616
- dataset: { ...e.dataset },
617
- attributes: { ...a }
618
- },
619
- nodes: s
620
- };
621
- }
622
- return null;
623
- }, J = (e, t = []) => {
624
- let n = [];
625
- for (let r = 0; r < e.length; r++) {
626
- let i = Fe(e[r], t);
627
- i !== null && (i._flatten && i.nodes ? n.push(...i.nodes) : n.push(i));
628
- }
629
- return n;
630
- }, Ie = (e) => {
631
- if (!e || !e.trim()) return {
632
- object: "value",
633
- document: {
634
- object: "document",
635
- data: {},
636
- nodes: [{
637
- object: "block",
638
- type: "span",
639
- data: {},
640
- isVoid: !1,
641
- nodes: []
642
- }]
643
- }
644
- };
645
- let t = J(new DOMParser().parseFromString(e, "text/html").body.childNodes);
646
- return !t.some((e) => e.object === "block" || e.object === "inline") && t.length > 0 && (t = [{
647
- object: "block",
648
- type: "span",
649
- data: {},
650
- isVoid: !1,
651
- nodes: t
652
- }]), t.length === 0 && (t = [{
653
- object: "block",
654
- type: "span",
655
- data: {},
656
- isVoid: !1,
657
- nodes: []
658
- }]), {
659
- object: "value",
660
- document: {
661
- object: "document",
662
- data: {},
663
- nodes: t
664
- }
665
- };
666
- }, Le = _("div")(({ theme: e }) => ({
667
- paddingTop: e.spacing(.5),
668
- paddingBottom: e.spacing(.5)
669
- })), Re = _("span")(() => ({
670
- display: "inline-block",
671
- width: ".75em"
672
- })), ze = ["tbody", "tr"], Be = (e, t) => {
673
- let n = t.trim() === "", r = e && e.type;
674
- if (!(n && ze.includes(r))) return t;
675
- }, Ve = (e) => {
676
- let n = e.leaves.find((e) => t(e, "marks", []).length);
677
- return n ? n.marks[0] : null;
678
- }, He = (e, t, n, r, i, a) => {
679
- if (!t) return null;
680
- let o = [];
681
- return (e.nodes || []).forEach((e, s) => {
682
- let c = e.type ? `${e.type}-${s}` : `${s}`;
683
- if (e.isMath) return o.push(/* @__PURE__ */ S("span", { dangerouslySetInnerHTML: { __html: `<math displaystyle="true">${e.nodes[0].innerHTML}</math>` } })), o;
684
- if (r) {
685
- let i = r(e, t, n);
686
- if (i) {
687
- let t = e.data?.dataset?.component === "blank";
688
- t && o.push(/* @__PURE__ */ S(Re, {}, `spacer-${s}`)), o.push(i), t && o.push(/* @__PURE__ */ S(Re, {}, `spacer-${s}`));
689
- return;
690
- }
691
- }
692
- if (e.object === "text") {
693
- let t = e.leaves.reduce((e, t) => {
694
- let n = t.text, r = Be(i, n);
695
- return r ? e + r : e;
696
- }, ""), n = Ve(e);
697
- if (n) {
698
- let e;
699
- for (e in q) if (q[e] === n.type) {
700
- let n = e;
701
- o.push(/* @__PURE__ */ S(n, { children: t }, c));
702
- break;
703
- }
704
- } else t.length > 0 && o.push(t);
705
- } else {
706
- let i = He(e, t, n, r, e, a);
707
- if (e.type === "p" || e.type === "paragraph") o.push(/* @__PURE__ */ S(Le, { children: i }, c));
708
- else {
709
- let t = e.type;
710
- e.nodes && e.nodes.length > 0 ? o.push(/* @__PURE__ */ S(t, {
711
- ...e.data.attributes,
712
- children: i
713
- }, c)) : o.push(/* @__PURE__ */ S(t, { ...e.data.attributes }, c));
714
- }
715
- }
716
- }), o;
717
- }, Ue = _("div")(() => ({
718
- display: "initial",
719
- "&:not(.MathJax) table": { borderCollapse: "collapse" },
720
- "&:not(.MathJax) table td, &:not(.MathJax) table th": {
721
- padding: "8px 12px",
722
- textAlign: "left"
723
- }
724
- })), We = class extends b.Component {
725
- constructor(e) {
726
- super(e), this.internalContainerRef = b.createRef();
727
- }
728
- static propTypes = {
729
- renderChildren: w.default.func,
730
- layout: w.default.object,
731
- value: w.default.object,
732
- onChange: w.default.func,
733
- elementType: w.default.string,
734
- containerRef: w.default.oneOfType([w.default.func, w.default.shape({ current: w.default.instanceOf(Element) })])
735
- };
736
- componentDidMount() {
737
- let e = this.props.containerRef || this.internalContainerRef;
738
- e.current && typeof d == "function" && d(e.current);
739
- }
740
- handleChange = (e, t) => {
741
- let n = {
742
- ...this.props.value,
743
- [e]: t
744
- };
745
- this.props.onChange(n);
746
- };
747
- render() {
748
- let { value: e, layout: t, elementType: n, containerRef: r } = this.props, i = He(t, e, this.handleChange, this.props.renderChildren, null, n);
749
- return /* @__PURE__ */ S(Ue, {
750
- ref: r || this.internalContainerRef,
751
- children: i
752
- });
753
- }
754
- }, Ge = (e, t) => {
755
- let { markup: n } = pe(e, t);
756
- return Ie(n).document;
757
- }, Ke = (e, t) => class extends b.Component {
758
- static propTypes = {
759
- markup: w.default.string,
760
- layout: w.default.object,
761
- value: w.default.object,
762
- onChange: w.default.func,
763
- customMarkMarkupComponent: w.default.func,
764
- elementType: w.default.string
765
- };
766
- constructor(e) {
767
- super(e), this.containerRef = b.createRef();
768
- }
769
- componentDidUpdate(e) {
770
- if (this.props.markup !== e.markup) {
771
- let e = this.containerRef.current;
772
- (e && e.querySelectorAll("[data-latex][data-math-handled=\"true\"]") || []).forEach((e) => {
773
- let t = e.querySelector("mjx-container");
774
- t && e.removeChild(t), e.innerHTML = e.getAttribute("data-raw"), e.removeAttribute("data-math-handled");
775
- });
776
- }
777
- }
778
- render() {
779
- let { markup: n, layout: r, value: i, onChange: a, elementType: o } = this.props, s = r || Ge(n, e);
780
- return /* @__PURE__ */ S(We, {
781
- containerRef: this.containerRef,
782
- elementType: o,
783
- layout: s,
784
- value: i,
785
- onChange: a,
786
- renderChildren: t(this.props)
787
- });
788
- }
789
- };
790
- //#endregion
791
- //#region ../../lib-react/mask-markup/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js
792
- function qe(e) {
793
- var t, n, r = "";
794
- if (typeof e == "string" || typeof e == "number") r += e;
795
- else if (typeof e == "object") if (Array.isArray(e)) {
796
- var i = e.length;
797
- for (t = 0; t < i; t++) e[t] && (n = qe(e[t])) && (r && (r += " "), r += n);
798
- } else for (n in e) e[n] && (r && (r += " "), r += n);
799
- return r;
800
- }
801
- function Je() {
802
- for (var e, t, n = 0, r = "", i = arguments.length; n < i; n++) (e = arguments[n]) && (t = qe(e)) && (r && (r += " "), r += t);
803
- return r;
804
- }
805
- //#endregion
806
- //#region ../../lib-react/mask-markup/dist/constructed-response.js
807
- var Ye = _(v)(() => ({
808
- display: "inline-block",
809
- verticalAlign: "middle",
810
- margin: "4px",
811
- borderRadius: "4px",
812
- border: `1px solid ${l.black()}`,
813
- "&.correct": { border: `1px solid ${l.correct()}` },
814
- "&.incorrect": { border: `1px solid ${l.incorrect()}` }
815
- })), Xe = Ke("input", (e) => (t, n) => {
816
- let { adjustedLimit: r, disabled: i, feedback: a, showCorrectAnswer: o, maxLength: s, spellCheck: c, pluginProps: l, onChange: u } = e, d = t.data?.dataset || {};
817
- if (d.component === "input") {
818
- let f = (e.choices && d && e.choices[d.id] || [])[0], p = o ? f && f.label : n[d.id] || "", m = s && s[d.id], h = a && a[d.id], g = o || h === "correct", _ = !o && h === "incorrect";
819
- return /* @__PURE__ */ S(Ye, {
820
- id: d.id,
821
- disabled: o || i,
822
- disableUnderline: !0,
823
- onChange: (e) => {
824
- u({
825
- ...n,
826
- [d.id]: e
827
- });
828
- },
829
- markup: p || "",
830
- charactersLimit: r ? m : 25,
831
- activePlugins: ["languageCharacters"],
832
- pluginProps: l,
833
- languageCharactersProps: [{ language: "spanish" }],
834
- spellCheck: c,
835
- adjustWidthForLimit: !0,
836
- onKeyDown: (e) => {
837
- if (e.key === "Enter" || e.keyCode === 13) return !0;
838
- },
839
- autoWidthToolbar: !0,
840
- toolbarOpts: {
841
- minWidth: "auto",
842
- noBorder: !0,
843
- isHidden: !!l?.characters?.disabled
844
- },
845
- className: Je({
846
- correct: g,
847
- incorrect: _
848
- })
849
- }, `${t.type}-input-${d.id}`);
850
- }
851
- });
852
- //#endregion
853
- //#region src/delivery/main.tsx
854
- function Y(e) {
855
- return typeof e == "function" || typeof e == "object" && !!e && typeof e.$$typeof == "symbol";
856
- }
857
- function X(e, t) {
858
- return !e || Y(e) ? e : Y(e.default) ? e.default : t && Y(e[t]) ? e[t] : t && Y(e[t]?.default) ? e[t].default : e;
859
- }
860
- var Ze = X(o, "UiLayout") || X($.UiLayout, "UiLayout"), Z = X(u, "PreviewPrompt") || X($.PreviewPrompt, "PreviewPrompt"), Qe = X(c, "Collapsible") || X($.Collapsible, "Collapsible"), $e = g, Q = $e.default, $ = Q && typeof Q == "object" ? Q : $e, { translator: et } = y, tt = _(Ze)(({ alwaysShowCorrect: e }) => ({
861
- color: l.text(),
862
- backgroundColor: l.background(),
863
- ...e && { "& *": { borderColor: `${l.text()} !important` } }
864
- })), nt = _("div")(({ theme: e }) => ({ marginBottom: e.spacing(2) })), rt = _("div")(({ theme: e }) => ({ marginBottom: e.spacing(2) })), it = _("h2")({
865
- position: "absolute",
866
- left: "-10000px",
867
- top: "auto",
868
- width: "1px",
869
- height: "1px",
870
- overflow: "hidden"
871
- }), at = class extends b.Component {
872
- static propTypes = {
873
- alwaysShowCorrect: w.default.bool,
874
- animationsDisabled: w.default.bool,
875
- disabled: w.default.bool,
876
- displayType: w.default.string,
877
- feedback: w.default.object,
878
- language: w.default.string,
879
- markup: w.default.string,
880
- maxLengthPerChoice: w.default.array,
881
- maxLengthPerChoiceEnabled: w.default.bool,
882
- mode: w.default.string,
883
- note: w.default.string,
884
- onChange: w.default.func,
885
- playerSpellCheckEnabled: w.default.bool,
886
- prompt: w.default.string,
887
- rationale: w.default.string,
888
- role: w.default.string,
889
- showNote: w.default.bool,
890
- teacherInstructions: w.default.string,
891
- value: w.default.object,
892
- responseAreaInputConfiguration: w.default.object,
893
- model: w.default.object.isRequired
894
- };
895
- static defaultProps = { value: {} };
896
- state = { showCorrectAnswer: this.props.alwaysShowCorrect || !1 };
897
- getChangeSession = (e) => e && e.every((e, t, n) => e === n[0] && e === 1) ? this.props.onChange : n(this.props.onChange, 200, { maxWait: 200 });
898
- UNSAFE_componentWillReceiveProps(e) {
899
- let { maxLengthPerChoice: t, language: n } = this.props, { note: a } = this.props;
900
- i(e.feedback) && this.setState({ showCorrectAnswer: !1 }), e.alwaysShowCorrect && this.setState({ showCorrectAnswer: !0 }), t && !r(t, e.maxLengthPerChoice) && (this.changeSession = this.getChangeSession(e.maxLengthPerChoice)), a && n && n !== e.language && a === et.t("common:commonCorrectAnswerWithAlternates", { lng: n }) && (a = et.t("common:commonCorrectAnswerWithAlternates", { lng: e.language }));
901
- }
902
- toggleShowCorrect = () => {
903
- this.setState({ showCorrectAnswer: !this.state.showCorrectAnswer });
904
- };
905
- changeSession = this.getChangeSession(this.props.maxLengthPerChoice);
906
- onChange = (e) => {
907
- this.changeSession(e);
908
- };
909
- render() {
910
- let { showCorrectAnswer: e } = this.state, { alwaysShowCorrect: t, animationsDisabled: n, mode: r, displayType: i, role: a, language: o, maxLengthPerChoice: s, maxLengthPerChoiceEnabled: c, note: l, playerSpellCheckEnabled: u, prompt: d, rationale: f, showNote: m, teacherInstructions: g, responseAreaInputConfiguration: _, model: v, value: y } = this.props, { extraCSSRules: b } = v || {}, x = (e || r === "view" && a === "instructor") && m && l, w = /* @__PURE__ */ S(Z, {
911
- defaultClassName: "teacher-instructions",
912
- prompt: g
913
- }), T = /* @__PURE__ */ S(Z, { prompt: f }), E = f && (p(f) || h(f)), D = g && (p(g) || h(g));
914
- return /* @__PURE__ */ C(tt, {
915
- extraCSSRules: b,
916
- alwaysShowCorrect: t,
917
- style: { display: `${i}` },
918
- children: [
919
- r === "gather" && /* @__PURE__ */ S(it, { children: "Fill in the Blank Question" }),
920
- D && /* @__PURE__ */ S(rt, { children: n ? w : /* @__PURE__ */ S(Qe, {
921
- labels: {
922
- hidden: "Show Teacher Instructions",
923
- visible: "Hide Teacher Instructions"
924
- },
925
- children: w
926
- }) }),
927
- d && /* @__PURE__ */ S(Z, { prompt: d }),
928
- !t && r === "evaluate" && /* @__PURE__ */ S(de, {
929
- show: !0,
930
- toggled: e,
931
- onToggle: this.toggleShowCorrect,
932
- language: o
933
- }),
934
- /* @__PURE__ */ S(Xe, {
935
- ...this.props,
936
- onChange: this.onChange,
937
- showCorrectAnswer: e,
938
- value: y,
939
- maxLength: s,
940
- adjustedLimit: c,
941
- spellCheck: u,
942
- pluginProps: _
943
- }),
944
- x && /* @__PURE__ */ S(nt, { dangerouslySetInnerHTML: { __html: l } }),
945
- E && /* @__PURE__ */ S(rt, { children: n ? T : /* @__PURE__ */ S(Qe, {
946
- labels: {
947
- hidden: "Show Rationale",
948
- visible: "Hide Rationale"
949
- },
950
- children: T
951
- }) })
952
- ]
953
- });
954
- }
955
- };
956
- //#endregion
957
- export { at as t };
958
-
959
- //# sourceMappingURL=main-Czk7a-Zt.js.map