@pie-element/ebsr 14.3.2-beta.4 → 14.3.2-beta.6

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 CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [14.3.2-beta.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr@14.3.2-beta.5...@pie-element/ebsr@14.3.2-beta.6) (2026-09-24)
7
+
8
+ **Note:** Version bump only for package @pie-element/ebsr
9
+
10
+ ## [14.3.2-beta.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr@14.3.2-beta.4...@pie-element/ebsr@14.3.2-beta.5) (2026-09-17)
11
+
12
+ **Note:** Version bump only for package @pie-element/ebsr
13
+
6
14
  ## [14.3.2-beta.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr@14.3.2-beta.3...@pie-element/ebsr@14.3.2-beta.4) (2026-09-11)
7
15
 
8
16
  **Note:** Version bump only for package @pie-element/ebsr
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [13.4.0-beta.12](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-configure@13.4.0-beta.11...@pie-element/ebsr-configure@13.4.0-beta.12) (2026-09-24)
7
+
8
+ **Note:** Version bump only for package @pie-element/ebsr-configure
9
+
10
+ # [13.4.0-beta.11](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-configure@13.4.0-beta.10...@pie-element/ebsr-configure@13.4.0-beta.11) (2026-09-17)
11
+
12
+ **Note:** Version bump only for package @pie-element/ebsr-configure
13
+
6
14
  # [13.4.0-beta.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-configure@13.4.0-beta.9...@pie-element/ebsr-configure@13.4.0-beta.10) (2026-09-11)
7
15
 
8
16
  **Note:** Version bump only for package @pie-element/ebsr-configure
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/ebsr-configure",
3
3
  "private": true,
4
- "version": "13.4.0-beta.10",
4
+ "version": "13.4.0-beta.12",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
@@ -11,9 +11,9 @@
11
11
  "@emotion/style": "^0.8.0",
12
12
  "@mui/icons-material": "^7.3.4",
13
13
  "@mui/material": "^7.3.4",
14
- "@pie-element/multiple-choice": "^13.4.2-beta.4",
14
+ "@pie-element/multiple-choice": "^13.4.2-beta.6",
15
15
  "@pie-framework/pie-configure-events": "^1.2.0",
16
- "@pie-lib/config-ui": "13.1.0-beta.8",
16
+ "@pie-lib/config-ui": "13.0.22-beta.1",
17
17
  "lodash-es": "^4.17.23",
18
18
  "prop-types": "^15.8.1",
19
19
  "react": "18.3.1",
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [11.4.0-beta.12](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-controller@11.4.0-beta.11...@pie-element/ebsr-controller@11.4.0-beta.12) (2026-09-24)
7
+
8
+ **Note:** Version bump only for package @pie-element/ebsr-controller
9
+
10
+ # [11.4.0-beta.11](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-controller@11.4.0-beta.10...@pie-element/ebsr-controller@11.4.0-beta.11) (2026-09-17)
11
+
12
+ **Note:** Version bump only for package @pie-element/ebsr-controller
13
+
6
14
  # [11.4.0-beta.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/ebsr-controller@11.4.0-beta.9...@pie-element/ebsr-controller@11.4.0-beta.10) (2026-09-11)
7
15
 
8
16
  **Note:** Version bump only for package @pie-element/ebsr-controller
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/ebsr-controller",
3
3
  "private": true,
4
- "version": "11.4.0-beta.10",
4
+ "version": "11.4.0-beta.12",
5
5
  "description": "",
6
6
  "scripts": {
7
7
  "test": "echo \"Error: no test specified\" && exit 1"
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@pie-element/ebsr",
3
3
  "repository": "pie-framework/pie-elements",
4
- "version": "14.3.2-beta.4",
4
+ "version": "14.3.2-beta.6",
5
5
  "description": "",
6
6
  "publishConfig": {
7
7
  "access": "public"
8
8
  },
9
9
  "dependencies": {
10
- "@pie-element/multiple-choice": "^13.4.2-beta.4",
10
+ "@pie-element/multiple-choice": "^13.4.2-beta.6",
11
11
  "@pie-framework/pie-player-events": "^0.1.0",
12
12
  "@pie-lib/translator": "4.0.2",
13
13
  "classnames": "^2.2.6",
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "author": "pie framework developers",
18
18
  "license": "ISC",
19
- "gitHead": "ea2044e67d20167c0cdee2d96f4914a710255e54",
19
+ "gitHead": "c6bbb21417c58eaf8f617143437fb3ff85ae1cb4",
20
20
  "scripts": {
21
21
  "postpublish": "../../scripts/postpublish"
22
22
  },
@@ -1,229 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _lodashEs = require("lodash-es");
8
- const defaultConfig = {
9
- addChoiceButton: {
10
- settings: true,
11
- label: 'Add a Choice'
12
- },
13
- choiceMode: {
14
- settings: true,
15
- label: 'Response Type'
16
- },
17
- choicePrefix: {
18
- settings: true,
19
- label: 'Choice Labels'
20
- },
21
- deleteChoice: {
22
- settings: true
23
- },
24
- feedback: {
25
- settings: true,
26
- label: 'Feedback'
27
- },
28
- lockChoiceOrder: {
29
- settings: true,
30
- label: 'Lock Choice Order'
31
- },
32
- prompt: {
33
- settings: true,
34
- label: 'Prompt',
35
- inputConfiguration: {
36
- audio: {
37
- disabled: false
38
- },
39
- video: {
40
- disabled: false
41
- },
42
- image: {
43
- disabled: false
44
- }
45
- },
46
- required: false
47
- },
48
- rationale: {
49
- settings: true,
50
- label: 'Rationale',
51
- inputConfiguration: {
52
- audio: {
53
- disabled: false
54
- },
55
- video: {
56
- disabled: false
57
- },
58
- image: {
59
- disabled: false
60
- }
61
- },
62
- required: false
63
- },
64
- settingsPanelDisabled: true,
65
- studentInstructions: {
66
- settings: false,
67
- label: 'Student Instructions'
68
- },
69
- teacherInstructions: {
70
- settings: true,
71
- label: 'Teacher Instructions',
72
- inputConfiguration: {
73
- audio: {
74
- disabled: false
75
- },
76
- video: {
77
- disabled: false
78
- },
79
- image: {
80
- disabled: false
81
- }
82
- },
83
- required: false
84
- },
85
- choicesLayout: {
86
- settings: false,
87
- label: 'Choices Layout'
88
- },
89
- gridColumns: {
90
- label: 'Grid columns'
91
- },
92
- spellCheck: {
93
- label: 'Spellcheck',
94
- settings: false,
95
- enabled: true
96
- },
97
- maxImageWidth: {
98
- teacherInstructions: 300,
99
- prompt: 300,
100
- rationale: 636,
101
- choices: 636
102
- },
103
- maxImageHeight: {
104
- teacherInstructions: 300,
105
- prompt: 300,
106
- rationale: 300,
107
- choices: 300
108
- },
109
- mathMlOptions: {
110
- mmlOutput: false,
111
- mmlEditing: false
112
- },
113
- choices: {
114
- inputConfiguration: {
115
- audio: {
116
- disabled: false
117
- },
118
- video: {
119
- disabled: false
120
- },
121
- image: {
122
- disabled: false
123
- }
124
- }
125
- },
126
- baseInputConfiguration: {
127
- h3: {
128
- disabled: true
129
- },
130
- audio: {
131
- disabled: false
132
- },
133
- video: {
134
- disabled: false
135
- },
136
- image: {
137
- disabled: false
138
- },
139
- textAlign: {
140
- disabled: true
141
- },
142
- showParagraphs: {
143
- disabled: false
144
- },
145
- separateParagraphs: {
146
- disabled: true
147
- }
148
- }
149
- };
150
- const partModel = base => ({
151
- choiceMode: 'radio',
152
- choicePrefix: 'letters',
153
- choices: [],
154
- choicesLayout: 'vertical',
155
- feedbackEnabled: false,
156
- gridColumns: 2,
157
- prompt: '',
158
- promptEnabled: true,
159
- rationale: '',
160
- rationaleEnabled: true,
161
- spellCheckEnabled: true,
162
- studentInstructionsEnabled: true,
163
- teacherInstructions: '',
164
- teacherInstructionsEnabled: true,
165
- toolbarEditorPosition: 'bottom',
166
- ...base
167
- });
168
- var _default = exports.default = {
169
- model: {
170
- partLabels: false,
171
- partLabelType: 'Letters',
172
- // partialScoring: false,
173
- partA: partModel(),
174
- partB: partModel()
175
- },
176
- configuration: {
177
- baseInputConfiguration: {
178
- h3: {
179
- disabled: true
180
- },
181
- audio: {
182
- disabled: false
183
- },
184
- video: {
185
- disabled: false
186
- },
187
- image: {
188
- disabled: false
189
- },
190
- textAlign: {
191
- disabled: true
192
- },
193
- showParagraphs: {
194
- disabled: false
195
- },
196
- separateParagraphs: {
197
- disabled: true
198
- }
199
- },
200
- partialScoring: {
201
- label: 'Allow Partial Scoring',
202
- // this will turn off partial scoring toggle in the settings tab by default for the interaction
203
- // as we'd like partial scoring to be controlled from the environment entirely
204
- // if any other consumers would like to enable it for themselves, they can do so from their model directly.
205
- settings: false
206
- },
207
- scoringType: {
208
- settings: false,
209
- label: 'Scoring Type'
210
- },
211
- partA: (0, _lodashEs.cloneDeep)(defaultConfig),
212
- partB: (0, _lodashEs.cloneDeep)(defaultConfig),
213
- partLabels: {
214
- settings: true,
215
- label: 'Part Labels'
216
- },
217
- settingsPanelDisabled: false,
218
- language: {
219
- settings: false,
220
- label: 'Specify Language',
221
- enabled: false
222
- },
223
- languageChoices: {
224
- label: 'Language Choices',
225
- options: []
226
- }
227
- }
228
- };
229
- //# sourceMappingURL=defaults.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defaults.js","names":["_lodashEs","require","defaultConfig","addChoiceButton","settings","label","choiceMode","choicePrefix","deleteChoice","feedback","lockChoiceOrder","prompt","inputConfiguration","audio","disabled","video","image","required","rationale","settingsPanelDisabled","studentInstructions","teacherInstructions","choicesLayout","gridColumns","spellCheck","enabled","maxImageWidth","choices","maxImageHeight","mathMlOptions","mmlOutput","mmlEditing","baseInputConfiguration","h3","textAlign","showParagraphs","separateParagraphs","partModel","base","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","studentInstructionsEnabled","teacherInstructionsEnabled","toolbarEditorPosition","_default","exports","default","model","partLabels","partLabelType","partA","partB","configuration","partialScoring","scoringType","cloneDeep","language","languageChoices","options"],"sources":["../src/defaults.js"],"sourcesContent":["import { cloneDeep } from 'lodash-es';\n\nconst defaultConfig = {\n addChoiceButton: {\n settings: true,\n label: 'Add a Choice',\n },\n choiceMode: {\n settings: true,\n label: 'Response Type',\n },\n choicePrefix: {\n settings: true,\n label: 'Choice Labels',\n },\n deleteChoice: {\n settings: true,\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n },\n lockChoiceOrder: {\n settings: true,\n label: 'Lock Choice Order',\n },\n prompt: {\n settings: true,\n label: 'Prompt',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n settingsPanelDisabled: true,\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n choicesLayout: {\n settings: false,\n label: 'Choices Layout',\n },\n gridColumns: {\n label: 'Grid columns',\n },\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 636,\n choices: 636,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n choices: 300,\n },\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n choices: {\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n baseInputConfiguration: {\n h3: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n textAlign: { disabled: true },\n showParagraphs: { disabled: false },\n separateParagraphs: { disabled: true },\n },\n};\n\nconst partModel = (base) => ({\n choiceMode: 'radio',\n choicePrefix: 'letters',\n choices: [],\n choicesLayout: 'vertical',\n feedbackEnabled: false,\n gridColumns: 2,\n prompt: '',\n promptEnabled: true,\n rationale: '',\n rationaleEnabled: true,\n spellCheckEnabled: true,\n studentInstructionsEnabled: true,\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n ...base,\n});\n\nexport default {\n model: {\n partLabels: false,\n partLabelType: 'Letters',\n // partialScoring: false,\n partA: partModel(),\n partB: partModel(),\n },\n configuration: {\n baseInputConfiguration: {\n h3: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n textAlign: { disabled: true },\n showParagraphs: { disabled: false },\n separateParagraphs: { disabled: true },\n },\n partialScoring: {\n label: 'Allow Partial Scoring',\n // this will turn off partial scoring toggle in the settings tab by default for the interaction\n // as we'd like partial scoring to be controlled from the environment entirely\n // if any other consumers would like to enable it for themselves, they can do so from their model directly.\n settings: false,\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n partA: cloneDeep(defaultConfig),\n partB: cloneDeep(defaultConfig),\n partLabels: {\n settings: true,\n label: 'Part Labels',\n },\n settingsPanelDisabled: false,\n language: {\n settings: false,\n label: 'Specify Language',\n enabled: false,\n },\n languageChoices: {\n label: 'Language Choices',\n options: [],\n },\n },\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,155 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _client = require("react-dom/client");
11
- var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
12
- var _lib = _interopRequireDefault(require("@pie-element/multiple-choice/configure/lib"));
13
- var _lodashEs = require("lodash-es");
14
- var _main = _interopRequireDefault(require("./main"));
15
- var _defaults = _interopRequireDefault(require("./defaults"));
16
- const MODEL_UPDATED = _pieConfigureEvents.ModelUpdatedEvent.TYPE;
17
- const MC_TAG_NAME = 'ebsr-multiple-choice-configure';
18
- class EbsrMCConfigure extends _lib.default {}
19
- const defineMultipleChoice = () => {
20
- if (!customElements.get(MC_TAG_NAME)) {
21
- customElements.define(MC_TAG_NAME, EbsrMCConfigure);
22
- }
23
- };
24
- defineMultipleChoice();
25
- const prepareCustomizationObject = (config, model) => {
26
- const configuration = (0, _lodashEs.defaults)(config, _defaults.default.configuration);
27
- return {
28
- configuration,
29
- model
30
- };
31
- };
32
- const {
33
- model: modelDefault
34
- } = _defaults.default || {};
35
- class EbsrConfigure extends HTMLElement {
36
- constructor() {
37
- super();
38
- (0, _defineProperty2.default)(this, "onModelChanged", (m, reset) => {
39
- this._model = EbsrConfigure.createDefaultModel(m, this._model);
40
- this.dispatchModelUpdated(reset);
41
- this._render();
42
- });
43
- (0, _defineProperty2.default)(this, "onModelUpdated", e => {
44
- if (e.target === this) {
45
- return;
46
- }
47
- e.preventDefault();
48
- e.stopImmediatePropagation();
49
- const id = e.target && e.target.getAttribute('id');
50
- if (id) {
51
- if (e.update) {
52
- this._model[`part${id}`] = e.update;
53
- }
54
- this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model));
55
- }
56
- });
57
- this._root = null;
58
- this._model = EbsrConfigure.createDefaultModel();
59
- this._configuration = _defaults.default.configuration;
60
- this.onConfigurationChanged = this.onConfigurationChanged.bind(this);
61
- }
62
- set model(m) {
63
- this._model = EbsrConfigure.createDefaultModel(m, this._model);
64
- this._render();
65
- }
66
- dispatchModelUpdated(reset) {
67
- const resetValue = !!reset;
68
- this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, resetValue));
69
- }
70
- set configuration(c) {
71
- const info = prepareCustomizationObject(c, this._model);
72
- const newConfiguration = {
73
- ..._defaults.default.configuration,
74
- ...info.configuration
75
- };
76
- this._configuration = newConfiguration;
77
-
78
- // if language:enabled is true, then the corresponding default item model should include a language value;
79
- // if it is false, then the language field should be omitted from the item model.
80
- // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,
81
- // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).
82
- if (newConfiguration?.language?.enabled) {
83
- if (newConfiguration?.languageChoices?.options?.length) {
84
- this._model.language = newConfiguration?.languageChoices.options[0].value;
85
- }
86
- } else if (newConfiguration.language.settings && this._model.language) {
87
- this._configuration.language.enabled = true;
88
- if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {
89
- this._configuration.languageChoices.options = [];
90
- }
91
-
92
- // check if the language is already included in the languageChoices.options array
93
- // and if not, then add it.
94
- if (!this._configuration.languageChoices.options.find(option => option.value === this._model.language)) {
95
- this._configuration.languageChoices.options.push({
96
- value: this._model.language,
97
- label: this._model.language
98
- });
99
- }
100
- } else {
101
- delete this._model.language;
102
- }
103
- this._render();
104
- }
105
- onConfigurationChanged(c) {
106
- this._configuration = prepareCustomizationObject(c, this._model).configuration;
107
- if (this._model) {
108
- this.onModelChanged(this._model);
109
- }
110
- this._render();
111
- }
112
- connectedCallback() {
113
- this.addEventListener(MODEL_UPDATED, this.onModelUpdated);
114
- this._render();
115
- }
116
- _render() {
117
- let element = /*#__PURE__*/_react.default.createElement(_main.default, {
118
- model: this._model,
119
- configuration: this._configuration,
120
- onModelChanged: this.onModelChanged,
121
- onConfigurationChanged: this.onConfigurationChanged
122
- });
123
- if (!this._root) {
124
- this._root = (0, _client.createRoot)(this);
125
- }
126
- this._root.render(element);
127
- }
128
- disconnectedCallback() {
129
- this.removeEventListener(MODEL_UPDATED, this.onModelUpdated);
130
- if (this._root) {
131
- this._root.unmount();
132
- this._root = null;
133
- }
134
- }
135
- }
136
- exports.default = EbsrConfigure;
137
- (0, _defineProperty2.default)(EbsrConfigure, "createDefaultModel", ({
138
- partA = {},
139
- partB = {},
140
- ...model
141
- } = {}, defaults = modelDefault) => ({
142
- ...defaults,
143
- ...model,
144
- partA: {
145
- ...defaults.partA,
146
- ...partA,
147
- choicesLayout: partA.choicesLayout || partA.verticalMode === false && 'horizontal' || defaults.partA.choicesLayout
148
- },
149
- partB: {
150
- ...defaults.partB,
151
- ...partB,
152
- choicesLayout: partB.choicesLayout || partB.verticalMode === false && 'horizontal' || defaults.partB.choicesLayout
153
- }
154
- }));
155
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_client","_pieConfigureEvents","_lib","_lodashEs","_main","_defaults","MODEL_UPDATED","ModelUpdatedEvent","TYPE","MC_TAG_NAME","EbsrMCConfigure","MultipleChoiceConfigure","defineMultipleChoice","customElements","get","define","prepareCustomizationObject","config","model","configuration","defaults","sensibleDefaults","modelDefault","EbsrConfigure","HTMLElement","constructor","_defineProperty2","default","m","reset","_model","createDefaultModel","dispatchModelUpdated","_render","e","target","preventDefault","stopImmediatePropagation","id","getAttribute","update","dispatchEvent","_root","_configuration","onConfigurationChanged","bind","resetValue","c","info","newConfiguration","language","enabled","languageChoices","options","length","value","settings","find","option","push","label","onModelChanged","connectedCallback","addEventListener","onModelUpdated","element","React","createElement","Main","createRoot","render","disconnectedCallback","removeEventListener","unmount","exports","partA","partB","choicesLayout","verticalMode"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ModelUpdatedEvent } from '@pie-framework/pie-configure-events';\nimport MultipleChoiceConfigure from '@pie-element/multiple-choice/configure/lib';\nimport { defaults } from 'lodash-es';\nimport Main from './main';\n\nimport sensibleDefaults from './defaults';\n\nconst MODEL_UPDATED = ModelUpdatedEvent.TYPE;\nconst MC_TAG_NAME = 'ebsr-multiple-choice-configure';\n\nclass EbsrMCConfigure extends MultipleChoiceConfigure {}\nconst defineMultipleChoice = () => {\n if (!customElements.get(MC_TAG_NAME)) {\n customElements.define(MC_TAG_NAME, EbsrMCConfigure);\n }\n};\n\ndefineMultipleChoice();\n\nconst prepareCustomizationObject = (config, model) => {\n const configuration = defaults(config, sensibleDefaults.configuration);\n\n return {\n configuration,\n model,\n };\n};\n\nconst { model: modelDefault } = sensibleDefaults || {};\n\nexport default class EbsrConfigure extends HTMLElement {\n static createDefaultModel = ({ partA = {}, partB = {}, ...model } = {}, defaults = modelDefault) => ({\n ...defaults,\n ...model,\n partA: {\n ...defaults.partA,\n ...partA,\n choicesLayout:\n partA.choicesLayout || (partA.verticalMode === false && 'horizontal') || defaults.partA.choicesLayout,\n },\n partB: {\n ...defaults.partB,\n ...partB,\n choicesLayout:\n partB.choicesLayout || (partB.verticalMode === false && 'horizontal') || defaults.partB.choicesLayout,\n },\n });\n\n constructor() {\n super();\n this._root = null;\n\n this._model = EbsrConfigure.createDefaultModel();\n\n this._configuration = sensibleDefaults.configuration;\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(m) {\n this._model = EbsrConfigure.createDefaultModel(m, this._model);\n\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged = (m, reset) => {\n this._model = EbsrConfigure.createDefaultModel(m, this._model);\n\n this.dispatchModelUpdated(reset);\n this._render();\n };\n\n set configuration(c) {\n const info = prepareCustomizationObject(c, this._model);\n\n const newConfiguration = {\n ...sensibleDefaults.configuration,\n ...info.configuration,\n };\n\n this._configuration = newConfiguration;\n\n // if language:enabled is true, then the corresponding default item model should include a language value;\n // if it is false, then the language field should be omitted from the item model.\n // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,\n // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).\n if (newConfiguration?.language?.enabled) {\n if (newConfiguration?.languageChoices?.options?.length) {\n this._model.language = newConfiguration?.languageChoices.options[0].value;\n }\n } else if (newConfiguration.language.settings && this._model.language) {\n this._configuration.language.enabled = true;\n\n if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {\n this._configuration.languageChoices.options = [];\n }\n\n // check if the language is already included in the languageChoices.options array\n // and if not, then add it.\n if (!this._configuration.languageChoices.options.find((option) => option.value === this._model.language)) {\n this._configuration.languageChoices.options.push({\n value: this._model.language,\n label: this._model.language,\n });\n }\n } else {\n delete this._model.language;\n }\n\n this._render();\n }\n\n onConfigurationChanged(c) {\n this._configuration = prepareCustomizationObject(c, this._model).configuration;\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this._render();\n }\n\n onModelUpdated = (e) => {\n if (e.target === this) {\n return;\n }\n\n e.preventDefault();\n e.stopImmediatePropagation();\n\n const id = e.target && e.target.getAttribute('id');\n\n if (id) {\n if (e.update) {\n this._model[`part${id}`] = e.update;\n }\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n };\n\n connectedCallback() {\n this.addEventListener(MODEL_UPDATED, this.onModelUpdated);\n this._render();\n }\n\n _render() {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(element);\n }\n\n disconnectedCallback() {\n this.removeEventListener(MODEL_UPDATED, this.onModelUpdated);\n if (this._root) {\n this._root.unmount();\n this._root = null;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}