@pie-element/ebsr 14.5.0-beta.6 → 15.0.0-next.20261002094057

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 (120) hide show
  1. package/author.js +2 -0
  2. package/configure.js +2 -0
  3. package/controller.js +1 -0
  4. package/dist/author/defaults.d.ts +348 -0
  5. package/dist/author/defaults.js +161 -0
  6. package/dist/author/index.d.ts +34 -0
  7. package/dist/author/index.js +80 -0
  8. package/dist/author/main.d.ts +23 -0
  9. package/dist/author/main.js +123 -0
  10. package/dist/browser/assets/Symbola-4c507403.woff2 +0 -0
  11. package/dist/browser/author/index.js +35416 -0
  12. package/dist/browser/author/index.js.map +1 -0
  13. package/dist/browser/controller/index.js +257 -0
  14. package/dist/browser/controller/index.js.map +1 -0
  15. package/dist/browser/delivery/index.js +136 -0
  16. package/dist/browser/delivery/index.js.map +1 -0
  17. package/dist/browser/delivery-CjwSZ_Ea.js +1342 -0
  18. package/dist/browser/delivery-CjwSZ_Ea.js.map +1 -0
  19. package/dist/browser/dist-CHbLnyuX.js +111 -0
  20. package/dist/browser/dist-CHbLnyuX.js.map +1 -0
  21. package/dist/browser/dist-DCmVXYeO.js +1528 -0
  22. package/dist/browser/dist-DCmVXYeO.js.map +1 -0
  23. package/dist/browser/editor-runtime/assets/Symbola-4c507403.woff2 +0 -0
  24. package/dist/browser/editor-runtime/author/index.js +19007 -0
  25. package/dist/browser/editor-runtime/author/index.js.map +1 -0
  26. package/dist/browser/editor-runtime/controller/index.js +257 -0
  27. package/dist/browser/editor-runtime/controller/index.js.map +1 -0
  28. package/dist/browser/editor-runtime/delivery/index.js +136 -0
  29. package/dist/browser/editor-runtime/delivery/index.js.map +1 -0
  30. package/dist/browser/editor-runtime/delivery-Cu2sKbrZ.js +1342 -0
  31. package/dist/browser/editor-runtime/delivery-Cu2sKbrZ.js.map +1 -0
  32. package/dist/browser/editor-runtime/dist-CHbLnyuX.js +111 -0
  33. package/dist/browser/editor-runtime/dist-CHbLnyuX.js.map +1 -0
  34. package/dist/browser/editor-runtime/dist-DCmVXYeO.js +1528 -0
  35. package/dist/browser/editor-runtime/dist-DCmVXYeO.js.map +1 -0
  36. package/dist/browser/editor-runtime/print/index.js +107 -0
  37. package/dist/browser/editor-runtime/print/index.js.map +1 -0
  38. package/dist/browser/editor-runtime/private-tags-DKPdn8Av.js +9769 -0
  39. package/dist/browser/editor-runtime/private-tags-DKPdn8Av.js.map +1 -0
  40. package/dist/browser/print/index.js +107 -0
  41. package/dist/browser/print/index.js.map +1 -0
  42. package/dist/browser/private-tags-DbAMScCG.js +9769 -0
  43. package/dist/browser/private-tags-DbAMScCG.js.map +1 -0
  44. package/dist/controller/defaults.d.ts +15 -0
  45. package/dist/controller/defaults.js +26 -0
  46. package/dist/controller/index.d.ts +42 -0
  47. package/dist/controller/index.js +185 -0
  48. package/dist/controller/utils.d.ts +10 -0
  49. package/dist/controller/utils.js +8 -0
  50. package/dist/delivery/index.d.ts +26 -0
  51. package/dist/delivery/index.js +136 -0
  52. package/dist/index.d.ts +1 -0
  53. package/dist/index.iife.d.ts +8 -0
  54. package/dist/index.iife.js +165 -0
  55. package/dist/index.js +2 -0
  56. package/dist/print/index.d.ts +25 -0
  57. package/dist/print/index.js +107 -0
  58. package/dist/private-tags.d.ts +2 -0
  59. package/dist/private-tags.js +3 -0
  60. package/dist/runtime-support.d.ts +12 -0
  61. package/dist/runtime-support.js +12 -0
  62. package/module/print.js +18599 -1
  63. package/module/print.js.map +1 -0
  64. package/package.json +105 -18
  65. package/print.js +2 -0
  66. package/CHANGELOG.json +0 -1547
  67. package/CHANGELOG.md +0 -2330
  68. package/LICENSE.md +0 -5
  69. package/README.md +0 -62
  70. package/configure/CHANGELOG.json +0 -992
  71. package/configure/CHANGELOG.md +0 -2193
  72. package/configure/lib/defaults.js +0 -229
  73. package/configure/lib/defaults.js.map +0 -1
  74. package/configure/lib/index.js +0 -155
  75. package/configure/lib/index.js.map +0 -1
  76. package/configure/lib/main.js +0 -222
  77. package/configure/lib/main.js.map +0 -1
  78. package/configure/package.json +0 -23
  79. package/configure/src/__tests__/index.test.js +0 -492
  80. package/configure/src/defaults.js +0 -173
  81. package/configure/src/index.js +0 -175
  82. package/configure/src/main.jsx +0 -235
  83. package/controller/CHANGELOG.json +0 -552
  84. package/controller/CHANGELOG.md +0 -1324
  85. package/controller/lib/defaults.js +0 -31
  86. package/controller/lib/defaults.js.map +0 -1
  87. package/controller/lib/index.js +0 -448
  88. package/controller/lib/index.js.map +0 -1
  89. package/controller/lib/utils.js +0 -18
  90. package/controller/lib/utils.js.map +0 -1
  91. package/controller/package.json +0 -18
  92. package/controller/src/__tests__/index.test.js +0 -591
  93. package/controller/src/__tests__/utils.test.js +0 -48
  94. package/controller/src/defaults.js +0 -25
  95. package/controller/src/index.js +0 -442
  96. package/controller/src/utils.js +0 -18
  97. package/docs/config-schema.json +0 -5787
  98. package/docs/config-schema.json.md +0 -4278
  99. package/docs/demo/config.js +0 -8
  100. package/docs/demo/generate.js +0 -52
  101. package/docs/demo/index.html +0 -2
  102. package/docs/demo/session.js +0 -14
  103. package/docs/pie-schema.json +0 -2911
  104. package/docs/pie-schema.json.md +0 -2142
  105. package/ebsr.png +0 -0
  106. package/lib/index.js +0 -207
  107. package/lib/index.js.map +0 -1
  108. package/lib/print.js +0 -186
  109. package/lib/print.js.map +0 -1
  110. package/module/configure.js +0 -1
  111. package/module/controller.js +0 -5664
  112. package/module/demo.js +0 -77
  113. package/module/element.js +0 -1
  114. package/module/index.html +0 -21
  115. package/module/manifest.json +0 -14
  116. package/module/print-demo.js +0 -115
  117. package/module/print.html +0 -18
  118. package/src/__tests__/index.test.js +0 -129
  119. package/src/index.js +0 -222
  120. package/src/print.js +0 -207
package/author.js ADDED
@@ -0,0 +1,2 @@
1
+ export { default } from './dist/author/index.js';
2
+ export * from './dist/author/index.js';
package/configure.js ADDED
@@ -0,0 +1,2 @@
1
+ export { default } from './dist/author/index.js';
2
+ export * from './dist/author/index.js';
package/controller.js ADDED
@@ -0,0 +1 @@
1
+ export * from './dist/controller/index.js';
@@ -0,0 +1,348 @@
1
+ /**
2
+ * @synced-from pie-elements/packages/ebsr/configure/src/defaults.js
3
+ * @auto-generated
4
+ *
5
+ * This file is automatically synced from pie-elements and converted to TypeScript.
6
+ * Manual edits will be overwritten on next sync.
7
+ * To make changes, edit the upstream JavaScript file and run sync again.
8
+ */
9
+ declare const _default: {
10
+ model: {
11
+ partLabels: boolean;
12
+ partLabelType: string;
13
+ partA: any;
14
+ partB: any;
15
+ };
16
+ configuration: {
17
+ baseInputConfiguration: {
18
+ h3: {
19
+ disabled: boolean;
20
+ };
21
+ audio: {
22
+ disabled: boolean;
23
+ };
24
+ video: {
25
+ disabled: boolean;
26
+ };
27
+ image: {
28
+ disabled: boolean;
29
+ };
30
+ textAlign: {
31
+ disabled: boolean;
32
+ };
33
+ showParagraphs: {
34
+ disabled: boolean;
35
+ };
36
+ separateParagraphs: {
37
+ disabled: boolean;
38
+ };
39
+ };
40
+ partialScoring: {
41
+ label: string;
42
+ settings: boolean;
43
+ };
44
+ scoringType: {
45
+ settings: boolean;
46
+ label: string;
47
+ };
48
+ partA: {
49
+ addChoiceButton: {
50
+ settings: boolean;
51
+ label: string;
52
+ };
53
+ choiceMode: {
54
+ settings: boolean;
55
+ label: string;
56
+ };
57
+ choicePrefix: {
58
+ settings: boolean;
59
+ label: string;
60
+ };
61
+ deleteChoice: {
62
+ settings: boolean;
63
+ };
64
+ feedback: {
65
+ settings: boolean;
66
+ label: string;
67
+ };
68
+ lockChoiceOrder: {
69
+ settings: boolean;
70
+ label: string;
71
+ };
72
+ prompt: {
73
+ settings: boolean;
74
+ label: string;
75
+ inputConfiguration: {
76
+ audio: {
77
+ disabled: boolean;
78
+ };
79
+ video: {
80
+ disabled: boolean;
81
+ };
82
+ image: {
83
+ disabled: boolean;
84
+ };
85
+ };
86
+ required: boolean;
87
+ };
88
+ rationale: {
89
+ settings: boolean;
90
+ label: string;
91
+ inputConfiguration: {
92
+ audio: {
93
+ disabled: boolean;
94
+ };
95
+ video: {
96
+ disabled: boolean;
97
+ };
98
+ image: {
99
+ disabled: boolean;
100
+ };
101
+ };
102
+ required: boolean;
103
+ };
104
+ settingsPanelDisabled: boolean;
105
+ studentInstructions: {
106
+ settings: boolean;
107
+ label: string;
108
+ };
109
+ teacherInstructions: {
110
+ settings: boolean;
111
+ label: string;
112
+ inputConfiguration: {
113
+ audio: {
114
+ disabled: boolean;
115
+ };
116
+ video: {
117
+ disabled: boolean;
118
+ };
119
+ image: {
120
+ disabled: boolean;
121
+ };
122
+ };
123
+ required: boolean;
124
+ };
125
+ choicesLayout: {
126
+ settings: boolean;
127
+ label: string;
128
+ };
129
+ gridColumns: {
130
+ label: string;
131
+ };
132
+ spellCheck: {
133
+ label: string;
134
+ settings: boolean;
135
+ enabled: boolean;
136
+ };
137
+ maxImageWidth: {
138
+ teacherInstructions: number;
139
+ prompt: number;
140
+ rationale: number;
141
+ choices: number;
142
+ };
143
+ maxImageHeight: {
144
+ teacherInstructions: number;
145
+ prompt: number;
146
+ rationale: number;
147
+ choices: number;
148
+ };
149
+ mathMlOptions: {
150
+ mmlOutput: boolean;
151
+ mmlEditing: boolean;
152
+ };
153
+ choices: {
154
+ inputConfiguration: {
155
+ audio: {
156
+ disabled: boolean;
157
+ };
158
+ video: {
159
+ disabled: boolean;
160
+ };
161
+ image: {
162
+ disabled: boolean;
163
+ };
164
+ };
165
+ };
166
+ baseInputConfiguration: {
167
+ h3: {
168
+ disabled: boolean;
169
+ };
170
+ audio: {
171
+ disabled: boolean;
172
+ };
173
+ video: {
174
+ disabled: boolean;
175
+ };
176
+ image: {
177
+ disabled: boolean;
178
+ };
179
+ textAlign: {
180
+ disabled: boolean;
181
+ };
182
+ showParagraphs: {
183
+ disabled: boolean;
184
+ };
185
+ separateParagraphs: {
186
+ disabled: boolean;
187
+ };
188
+ };
189
+ };
190
+ partB: {
191
+ addChoiceButton: {
192
+ settings: boolean;
193
+ label: string;
194
+ };
195
+ choiceMode: {
196
+ settings: boolean;
197
+ label: string;
198
+ };
199
+ choicePrefix: {
200
+ settings: boolean;
201
+ label: string;
202
+ };
203
+ deleteChoice: {
204
+ settings: boolean;
205
+ };
206
+ feedback: {
207
+ settings: boolean;
208
+ label: string;
209
+ };
210
+ lockChoiceOrder: {
211
+ settings: boolean;
212
+ label: string;
213
+ };
214
+ prompt: {
215
+ settings: boolean;
216
+ label: string;
217
+ inputConfiguration: {
218
+ audio: {
219
+ disabled: boolean;
220
+ };
221
+ video: {
222
+ disabled: boolean;
223
+ };
224
+ image: {
225
+ disabled: boolean;
226
+ };
227
+ };
228
+ required: boolean;
229
+ };
230
+ rationale: {
231
+ settings: boolean;
232
+ label: string;
233
+ inputConfiguration: {
234
+ audio: {
235
+ disabled: boolean;
236
+ };
237
+ video: {
238
+ disabled: boolean;
239
+ };
240
+ image: {
241
+ disabled: boolean;
242
+ };
243
+ };
244
+ required: boolean;
245
+ };
246
+ settingsPanelDisabled: boolean;
247
+ studentInstructions: {
248
+ settings: boolean;
249
+ label: string;
250
+ };
251
+ teacherInstructions: {
252
+ settings: boolean;
253
+ label: string;
254
+ inputConfiguration: {
255
+ audio: {
256
+ disabled: boolean;
257
+ };
258
+ video: {
259
+ disabled: boolean;
260
+ };
261
+ image: {
262
+ disabled: boolean;
263
+ };
264
+ };
265
+ required: boolean;
266
+ };
267
+ choicesLayout: {
268
+ settings: boolean;
269
+ label: string;
270
+ };
271
+ gridColumns: {
272
+ label: string;
273
+ };
274
+ spellCheck: {
275
+ label: string;
276
+ settings: boolean;
277
+ enabled: boolean;
278
+ };
279
+ maxImageWidth: {
280
+ teacherInstructions: number;
281
+ prompt: number;
282
+ rationale: number;
283
+ choices: number;
284
+ };
285
+ maxImageHeight: {
286
+ teacherInstructions: number;
287
+ prompt: number;
288
+ rationale: number;
289
+ choices: number;
290
+ };
291
+ mathMlOptions: {
292
+ mmlOutput: boolean;
293
+ mmlEditing: boolean;
294
+ };
295
+ choices: {
296
+ inputConfiguration: {
297
+ audio: {
298
+ disabled: boolean;
299
+ };
300
+ video: {
301
+ disabled: boolean;
302
+ };
303
+ image: {
304
+ disabled: boolean;
305
+ };
306
+ };
307
+ };
308
+ baseInputConfiguration: {
309
+ h3: {
310
+ disabled: boolean;
311
+ };
312
+ audio: {
313
+ disabled: boolean;
314
+ };
315
+ video: {
316
+ disabled: boolean;
317
+ };
318
+ image: {
319
+ disabled: boolean;
320
+ };
321
+ textAlign: {
322
+ disabled: boolean;
323
+ };
324
+ showParagraphs: {
325
+ disabled: boolean;
326
+ };
327
+ separateParagraphs: {
328
+ disabled: boolean;
329
+ };
330
+ };
331
+ };
332
+ partLabels: {
333
+ settings: boolean;
334
+ label: string;
335
+ };
336
+ settingsPanelDisabled: boolean;
337
+ language: {
338
+ settings: boolean;
339
+ label: string;
340
+ enabled: boolean;
341
+ };
342
+ languageChoices: {
343
+ label: string;
344
+ options: never[];
345
+ };
346
+ };
347
+ };
348
+ export default _default;
@@ -0,0 +1,161 @@
1
+ import { cloneDeep as e } from "@pie-element/shared-lodash";
2
+ //#region src/author/defaults.ts
3
+ var t = {
4
+ addChoiceButton: {
5
+ settings: !0,
6
+ label: "Add a Choice"
7
+ },
8
+ choiceMode: {
9
+ settings: !0,
10
+ label: "Response Type"
11
+ },
12
+ choicePrefix: {
13
+ settings: !0,
14
+ label: "Choice Labels"
15
+ },
16
+ deleteChoice: { settings: !0 },
17
+ feedback: {
18
+ settings: !0,
19
+ label: "Feedback"
20
+ },
21
+ lockChoiceOrder: {
22
+ settings: !0,
23
+ label: "Lock Choice Order"
24
+ },
25
+ prompt: {
26
+ settings: !0,
27
+ label: "Prompt",
28
+ inputConfiguration: {
29
+ audio: { disabled: !1 },
30
+ video: { disabled: !1 },
31
+ image: { disabled: !1 }
32
+ },
33
+ required: !1
34
+ },
35
+ rationale: {
36
+ settings: !0,
37
+ label: "Rationale",
38
+ inputConfiguration: {
39
+ audio: { disabled: !1 },
40
+ video: { disabled: !1 },
41
+ image: { disabled: !1 }
42
+ },
43
+ required: !1
44
+ },
45
+ settingsPanelDisabled: !0,
46
+ studentInstructions: {
47
+ settings: !1,
48
+ label: "Student Instructions"
49
+ },
50
+ teacherInstructions: {
51
+ settings: !0,
52
+ label: "Teacher Instructions",
53
+ inputConfiguration: {
54
+ audio: { disabled: !1 },
55
+ video: { disabled: !1 },
56
+ image: { disabled: !1 }
57
+ },
58
+ required: !1
59
+ },
60
+ choicesLayout: {
61
+ settings: !1,
62
+ label: "Choices Layout"
63
+ },
64
+ gridColumns: { label: "Grid columns" },
65
+ spellCheck: {
66
+ label: "Spellcheck",
67
+ settings: !1,
68
+ enabled: !0
69
+ },
70
+ maxImageWidth: {
71
+ teacherInstructions: 300,
72
+ prompt: 300,
73
+ rationale: 636,
74
+ choices: 636
75
+ },
76
+ maxImageHeight: {
77
+ teacherInstructions: 300,
78
+ prompt: 300,
79
+ rationale: 300,
80
+ choices: 300
81
+ },
82
+ mathMlOptions: {
83
+ mmlOutput: !1,
84
+ mmlEditing: !1
85
+ },
86
+ choices: { inputConfiguration: {
87
+ audio: { disabled: !1 },
88
+ video: { disabled: !1 },
89
+ image: { disabled: !1 }
90
+ } },
91
+ baseInputConfiguration: {
92
+ h3: { disabled: !0 },
93
+ audio: { disabled: !1 },
94
+ video: { disabled: !1 },
95
+ image: { disabled: !1 },
96
+ textAlign: { disabled: !0 },
97
+ showParagraphs: { disabled: !1 },
98
+ separateParagraphs: { disabled: !0 }
99
+ }
100
+ }, n = (e) => ({
101
+ choiceMode: "radio",
102
+ choicePrefix: "letters",
103
+ choices: [],
104
+ choicesLayout: "vertical",
105
+ feedbackEnabled: !1,
106
+ gridColumns: 2,
107
+ prompt: "",
108
+ promptEnabled: !0,
109
+ rationale: "",
110
+ rationaleEnabled: !0,
111
+ spellCheckEnabled: !0,
112
+ studentInstructionsEnabled: !0,
113
+ teacherInstructions: "",
114
+ teacherInstructionsEnabled: !0,
115
+ toolbarEditorPosition: "bottom",
116
+ ...e
117
+ }), r = {
118
+ model: {
119
+ partLabels: !1,
120
+ partLabelType: "Letters",
121
+ partA: n(),
122
+ partB: n()
123
+ },
124
+ configuration: {
125
+ baseInputConfiguration: {
126
+ h3: { disabled: !0 },
127
+ audio: { disabled: !1 },
128
+ video: { disabled: !1 },
129
+ image: { disabled: !1 },
130
+ textAlign: { disabled: !0 },
131
+ showParagraphs: { disabled: !1 },
132
+ separateParagraphs: { disabled: !0 }
133
+ },
134
+ partialScoring: {
135
+ label: "Allow Partial Scoring",
136
+ settings: !1
137
+ },
138
+ scoringType: {
139
+ settings: !1,
140
+ label: "Scoring Type"
141
+ },
142
+ partA: e(t),
143
+ partB: e(t),
144
+ partLabels: {
145
+ settings: !0,
146
+ label: "Part Labels"
147
+ },
148
+ settingsPanelDisabled: !1,
149
+ language: {
150
+ settings: !1,
151
+ label: "Specify Language",
152
+ enabled: !1
153
+ },
154
+ languageChoices: {
155
+ label: "Language Choices",
156
+ options: []
157
+ }
158
+ }
159
+ };
160
+ //#endregion
161
+ export { r as default };
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @synced-from pie-elements/packages/ebsr/configure/src/index.js
3
+ * @auto-generated
4
+ *
5
+ * This file is automatically synced from pie-elements and converted to TypeScript.
6
+ * Manual edits will be overwritten on next sync.
7
+ * To make changes, edit the upstream JavaScript file and run sync again.
8
+ */
9
+ export default class EbsrConfigure extends HTMLElement {
10
+ static createDefaultModel: ({ partA, partB, ...model }?: {
11
+ partA?: {} | undefined;
12
+ partB?: {} | undefined;
13
+ }, defaults?: {
14
+ partLabels: boolean;
15
+ partLabelType: string;
16
+ partA: any;
17
+ partB: any;
18
+ }) => {
19
+ partA: any;
20
+ partB: any;
21
+ partLabels: boolean;
22
+ partLabelType: string;
23
+ };
24
+ constructor();
25
+ set model(m: any);
26
+ dispatchModelUpdated(reset: any): void;
27
+ onModelChanged: any;
28
+ set configuration(c: any);
29
+ onConfigurationChanged(c: any): void;
30
+ onModelUpdated: any;
31
+ connectedCallback(): void;
32
+ _render(): void;
33
+ disconnectedCallback(): void;
34
+ }
@@ -0,0 +1,80 @@
1
+ import { EBSR_MULTIPLE_CHOICE_CONFIGURE_TAG as e } from "../private-tags.js";
2
+ import { Main as t } from "./main.js";
3
+ import n from "./defaults.js";
4
+ import { defaults as r } from "@pie-element/shared-lodash";
5
+ import i from "react";
6
+ import { createRoot as a } from "react-dom/client";
7
+ import { ModelUpdatedEvent as o } from "@pie-element/shared-configure-events";
8
+ import s from "@pie-element/multiple-choice/author";
9
+ //#region src/author/index.ts
10
+ var c = o.TYPE, l = e, u = class extends s {};
11
+ customElements.get(l) || customElements.define(l, u);
12
+ var d = (e, t) => ({
13
+ configuration: r(e, n.configuration),
14
+ model: t
15
+ }), { model: f } = n || {}, p = class e extends HTMLElement {
16
+ static createDefaultModel = ({ partA: e = {}, partB: t = {}, ...n } = {}, r = f) => ({
17
+ ...r,
18
+ ...n,
19
+ partA: {
20
+ ...r.partA,
21
+ ...e,
22
+ choicesLayout: e.choicesLayout || e.verticalMode === !1 && "horizontal" || r.partA.choicesLayout
23
+ },
24
+ partB: {
25
+ ...r.partB,
26
+ ...t,
27
+ choicesLayout: t.choicesLayout || t.verticalMode === !1 && "horizontal" || r.partB.choicesLayout
28
+ }
29
+ });
30
+ constructor() {
31
+ super(), this._root = null, this._model = e.createDefaultModel(), this._configuration = n.configuration, this.onConfigurationChanged = this.onConfigurationChanged.bind(this);
32
+ }
33
+ set model(t) {
34
+ this._model = e.createDefaultModel(t, this._model), this._render();
35
+ }
36
+ dispatchModelUpdated(e) {
37
+ let t = !!e;
38
+ this.dispatchEvent(new o(this._model, t));
39
+ }
40
+ onModelChanged = (t, n) => {
41
+ this._model = e.createDefaultModel(t, this._model), this.dispatchModelUpdated(n), this._render();
42
+ };
43
+ set configuration(e) {
44
+ let t = d(e, this._model), r = {
45
+ ...n.configuration,
46
+ ...t.configuration
47
+ };
48
+ this._configuration = r, r?.language?.enabled ? r?.languageChoices?.options?.length && (this._model.language = r?.languageChoices.options[0].value) : r.language.settings && this._model.language ? (this._configuration.language.enabled = !0, (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) && (this._configuration.languageChoices.options = []), this._configuration.languageChoices.options.find((e) => e.value === this._model.language) || this._configuration.languageChoices.options.push({
49
+ value: this._model.language,
50
+ label: this._model.language
51
+ })) : delete this._model.language, this._render();
52
+ }
53
+ onConfigurationChanged(e) {
54
+ this._configuration = d(e, this._model).configuration, this._model && this.onModelChanged(this._model), this._render();
55
+ }
56
+ onModelUpdated = (e) => {
57
+ if (e.target === this) return;
58
+ e.preventDefault(), e.stopImmediatePropagation();
59
+ let t = e.target && e.target.getAttribute("id");
60
+ t && (e.update && (this._model[`part${t}`] = e.update), this.dispatchEvent(new o(this._model)));
61
+ };
62
+ connectedCallback() {
63
+ this.addEventListener(c, this.onModelUpdated), this._render();
64
+ }
65
+ _render() {
66
+ let e = i.createElement(t, {
67
+ model: this._model,
68
+ configuration: this._configuration,
69
+ multipleChoiceTagName: l,
70
+ onModelChanged: this.onModelChanged,
71
+ onConfigurationChanged: this.onConfigurationChanged
72
+ });
73
+ this._root ||= a(this), this._root.render(e);
74
+ }
75
+ disconnectedCallback() {
76
+ this.removeEventListener(c, this.onModelUpdated), this._root &&= (this._root.unmount(), null);
77
+ }
78
+ };
79
+ //#endregion
80
+ export { p as default };
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @synced-from pie-elements/packages/ebsr/configure/src/main.jsx
3
+ * @auto-generated
4
+ *
5
+ * This file is automatically synced from pie-elements and converted to TypeScript.
6
+ * Manual edits will be overwritten on next sync.
7
+ * To make changes, edit the upstream JavaScript file and run sync again.
8
+ */
9
+ import React from 'react';
10
+ import PropTypes from 'prop-types';
11
+ export declare class Main extends React.Component {
12
+ static propTypes: {
13
+ configuration: PropTypes.Requireable<object>;
14
+ model: PropTypes.Requireable<object>;
15
+ multipleChoiceTagName: PropTypes.Requireable<string>;
16
+ onModelChanged: PropTypes.Requireable<(...args: any[]) => any>;
17
+ onConfigurationChanged: PropTypes.Requireable<(...args: any[]) => any>;
18
+ };
19
+ removeExtraChoices: any;
20
+ onModelChanged: any;
21
+ render(): React.JSX.Element;
22
+ }
23
+ export default Main;