@pie-element/extended-text-entry 9.0.1-next.8 → 9.1.0

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,24 @@
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
+ # [9.1.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry@9.0.0...@pie-element/extended-text-entry@9.1.0) (2023-02-28)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * update pie-libs ([110161a](https://github.com/pie-framework/pie-elements/commit/110161ad113e76b5fdb6fc06e233889befbc366a))
12
+
13
+
14
+ ### Features
15
+
16
+ * add back forceEnabled functionality with documentation ([10a5502](https://github.com/pie-framework/pie-elements/commit/10a55021ca455b27dc5e5a38436648a1fd2f9d36))
17
+ * Use a common structre for elements, styling and cleanup WIP ([3aa9002](https://github.com/pie-framework/pie-elements/commit/3aa9002e350e7f4b19f79fc18efb8ddff6586899))
18
+ * **extended-text-entry:** add aria attributes to extended-text-entry) ([10b396c](https://github.com/pie-framework/pie-elements/commit/10b396cfb51866ed860a58ab5924246909621c9d))
19
+
20
+
21
+
22
+
23
+
6
24
  # [9.0.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry@8.4.0...@pie-element/extended-text-entry@9.0.0) (2023-02-22)
7
25
 
8
26
 
@@ -3,6 +3,18 @@
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
+ # [8.1.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-configure@8.0.0...@pie-element/extended-text-entry-configure@8.1.0) (2023-02-28)
7
+
8
+
9
+ ### Features
10
+
11
+ * add back forceEnabled functionality with documentation ([10a5502](https://github.com/pie-framework/pie-elements/commit/10a55021ca455b27dc5e5a38436648a1fd2f9d36))
12
+ * Use a common structre for elements, styling and cleanup WIP ([3aa9002](https://github.com/pie-framework/pie-elements/commit/3aa9002e350e7f4b19f79fc18efb8ddff6586899))
13
+
14
+
15
+
16
+
17
+
6
18
  # [8.0.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-configure@7.4.0...@pie-element/extended-text-entry-configure@8.0.0) (2023-02-22)
7
19
 
8
20
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["ExtendedTextEntry","_configuration","defaults","configuration","withRubric","forceEnabled","settings","_model","createDefaultModel","m","render","c","rubricEnabled","dispatchEvent","ModelUpdatedEvent","onModelChanged","handler","InsertImageEvent","src","done","DeleteImageEvent","InsertSoundEvent","DeleteSoundEvent","element","React","createElement","Main","model","bind","onConfigurationChanged","imageSupport","add","insertImage","onDeleteImage","uploadSoundSupport","insertSound","onDeleteSound","ReactDOM","HTMLElement","config","defaultModel"],"mappings":"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","sourcesContent":["import {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport Main from './main';\n\nimport defaults from './defaults';\n\nexport default class ExtendedTextEntry extends HTMLElement {\n static createDefaultModel = (model = {}, config) => {\n const defaultModel = {\n ...defaults.model,\n ...model,\n };\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n if (config?.withRubric?.forceEnabled && !defaultModel.rubricEnabled) {\n defaultModel.rubricEnabled = true;\n }\n\n return defaultModel;\n };\n\n\n constructor() {\n super();\n this._configuration = defaults.configuration;\n\n // if configuration.withRubric.forceEnabled is true, then we\n // update the configuration (we do not want to display the toggle in the Settings Panel)\n if (this._configuration.withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n }\n\n this._model = ExtendedTextEntry.createDefaultModel({}, this._configuration);\n }\n\n set model(m) {\n this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);\n this.render();\n }\n\n set configuration(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n const { withRubric = {} } = c || {};\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n // and also update the configuration (we do not want to display the toggle in the Settings Panel)\n if (withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n\n if (!this._model.rubricEnabled) {\n this._model.rubricEnabled = true;\n }\n }\n\n this.render();\n }\n\n onModelChanged(m) {\n this._model = m;\n this.render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n }\n\n onConfigurationChanged(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this.render();\n }\n\n /**\n *\n * @param {done, progress, file} handler\n */\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n render() {\n if (this._model) {\n const element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["ExtendedTextEntry","_configuration","defaults","configuration","withRubric","forceEnabled","settings","_model","createDefaultModel","m","render","c","rubricEnabled","dispatchEvent","ModelUpdatedEvent","onModelChanged","handler","InsertImageEvent","src","done","DeleteImageEvent","InsertSoundEvent","DeleteSoundEvent","element","React","createElement","Main","model","bind","onConfigurationChanged","imageSupport","add","insertImage","onDeleteImage","uploadSoundSupport","insertSound","onDeleteSound","ReactDOM","HTMLElement","config","defaultModel"],"mappings":"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","sourcesContent":["import {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport Main from './main';\n\nimport defaults from './defaults';\n\nexport default class ExtendedTextEntry extends HTMLElement {\n static createDefaultModel = (model = {}, config) => {\n const defaultModel = {\n ...defaults.model,\n ...model,\n };\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n if (config?.withRubric?.forceEnabled && !defaultModel.rubricEnabled) {\n defaultModel.rubricEnabled = true;\n }\n\n return defaultModel;\n };\n\n\n constructor() {\n super();\n this._configuration = defaults.configuration;\n\n // if configuration.withRubric.forceEnabled is true, then we\n // update the configuration (we do not want to display the toggle in the Settings Panel)\n if (this._configuration.withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n }\n\n this._model = ExtendedTextEntry.createDefaultModel({}, this._configuration);\n }\n\n set model(m) {\n this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);\n this.render();\n }\n\n set configuration(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n const { withRubric = {} } = c || {};\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n // and also update the configuration (we do not want to display the toggle in the Settings Panel)\n if (withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n\n if (!this._model.rubricEnabled) {\n this._model.rubricEnabled = true;\n }\n }\n\n this.render();\n }\n\n onModelChanged(m) {\n this._model = m;\n this.render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n }\n\n onConfigurationChanged(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this.render();\n }\n\n /**\n *\n * @param {done, progress, file} handler\n */\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n render() {\n if (this._model) {\n const element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
@@ -205,7 +205,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
205
205
  Properties: panelProperties
206
206
  }
207
207
  })
208
- }, /*#__PURE__*/_react["default"].createElement("div", null, teacherInstructionsEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
208
+ }, teacherInstructionsEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
209
209
  label: teacherInstructions.label,
210
210
  className: classes.promptContainer
211
211
  }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
@@ -252,7 +252,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
252
252
  feedback: model.feedback || defaultFeedback,
253
253
  onChange: this.changeFeedback,
254
254
  toolbarOpts: toolbarOpts
255
- }))));
255
+ })));
256
256
  }
257
257
  }]);
258
258
  return Main;
@@ -278,13 +278,6 @@ var _default = (0, _styles.withStyles)(function (theme) {
278
278
  paddingTop: theme.spacing.unit * 2,
279
279
  marginBottom: theme.spacing.unit * 2,
280
280
  width: '100%'
281
- },
282
- promptInput: {
283
- width: '100%',
284
- marginBottom: theme.spacing.unit
285
- },
286
- field: {
287
- width: '200px'
288
281
  }
289
282
  };
290
283
  })(Main);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","props","markup","onModelChanged","model","prompt","feedback","update","teacherInstructions","state","setDimensions","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","dimensions","equationEditor","playerSpellCheck","settingsPanelDisabled","spanishInput","specialInput","spellCheck","studentInstructions","mathInput","maxImageWidth","maxImageHeight","multiple","withRubric","feedbackEnabled","promptEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","panelSettings","label","enabled","width","suffix","min","max","height","playerSpellCheckDisabled","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","promptContainer","changeTeacherInstructions","language","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,IAAQA,KAAR,GAAkDC,kBAAlD,CAAQD,KAAR;AAAA,IAAeE,MAAf,GAAkDD,kBAAlD,CAAeC,MAAf;AAAA,IAAuBC,YAAvB,GAAkDF,kBAAlD,CAAuBE,YAAvB;AAAA,IAAqCC,QAArC,GAAkDH,kBAAlD,CAAqCG,QAArC;AAEA,IAAMC,eAAe,GAAG;AACtBC,EAAAA,IAAI,EAAE,SADgB;AAEtB,aAAS;AAFa,CAAxB;;IAKaC,I;;;;;AAWX,gBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,uGAKF,UAACC,MAAD,EAAY;AAC3B,wBAAkC,MAAKD,KAAvC;AAAA,UAAQE,cAAR,eAAQA,cAAR;AAAA,UAAwBC,KAAxB,eAAwBA,KAAxB;AAEAD,MAAAA,cAAc,iCAAMC,KAAN;AAAaC,QAAAA,MAAM,EAAEH;AAArB,SAAd;AACD,KATkB;AAAA,uGAWF,UAACI,QAAD,EAAc;AAC7B,yBAAkC,MAAKL,KAAvC;AAAA,UAAQG,KAAR,gBAAQA,KAAR;AAAA,UAAeD,cAAf,gBAAeA,cAAf;;AACA,UAAMI,MAAM,mCAAQH,KAAR;AAAeE,QAAAA,QAAQ,EAARA;AAAf,QAAZ;;AAEAH,MAAAA,cAAc,CAACI,MAAD,CAAd;AACD,KAhBkB;AAAA,kHAkBS,UAACC,mBAAD,EAAyB;AACnD,yBAAkC,MAAKP,KAAvC;AAAA,UAAQG,KAAR,gBAAQA,KAAR;AAAA,UAAeD,cAAf,gBAAeA,cAAf;;AACA,UAAMI,MAAM,mCAAQH,KAAR;AAAeI,QAAAA,mBAAmB,EAAnBA;AAAf,QAAZ;;AAEAL,MAAAA,cAAc,CAACI,MAAD,CAAd;AACD,KAvBkB;AAEjB,UAAKE,KAAL,GAAa;AAAEC,MAAAA,aAAa,EAAE;AAAjB,KAAb;AAFiB;AAGlB;;;;WAsBD,kBAAS;AACP,yBACE,KAAKT,KADP;AAAA,UAAQG,KAAR,gBAAQA,KAAR;AAAA,UAAeO,OAAf,gBAAeA,OAAf;AAAA,UAAwBC,aAAxB,gBAAwBA,aAAxB;AAAA,UAAuCC,YAAvC,gBAAuCA,YAAvC;AAAA,UAAqDC,sBAArD,gBAAqDA,sBAArD;AAAA,UAA6EX,cAA7E,gBAA6EA,cAA7E;AAAA,UAA6FY,kBAA7F,gBAA6FA,kBAA7F;;AAEA,iBAiBIH,aAAa,IAAI,EAjBrB;AAAA,iCACEI,UADF;AAAA,UACEA,UADF,gCACe,EADf;AAAA,qCAEEC,cAFF;AAAA,UAEEA,cAFF,oCAEmB,EAFnB;AAAA,+BAGEX,QAHF;AAAA,UAGEA,QAHF,8BAGa,EAHb;AAAA,uCAIEY,gBAJF;AAAA,UAIEA,gBAJF,sCAIqB,EAJrB;AAAA,6BAKEb,MALF;AAAA,UAKEA,MALF,4BAKW,EALX;AAAA,UAMEc,qBANF,QAMEA,qBANF;AAAA,mCAOEC,YAPF;AAAA,UAOEA,YAPF,kCAOiB,EAPjB;AAAA,mCAQEC,YARF;AAAA,UAQEA,YARF,kCAQiB,EARjB;AAAA,iCASEC,UATF;AAAA,UASEA,UATF,gCASe,EATf;AAAA,uCAUEC,mBAVF;AAAA,UAUEA,mBAVF,sCAUwB,EAVxB;AAAA,uCAWEf,mBAXF;AAAA,UAWEA,mBAXF,sCAWwB,EAXxB;AAAA,gCAYEgB,SAZF;AAAA,UAYEA,SAZF,+BAYc,EAZd;AAAA,oCAaEC,aAbF;AAAA,UAaEA,aAbF,mCAakB,EAblB;AAAA,qCAcEC,cAdF;AAAA,UAcEA,cAdF,oCAcmB,EAdnB;AAAA,+BAeEC,QAfF;AAAA,UAeEA,QAfF,8BAea,EAfb;AAAA,iCAgBEC,UAhBF;AAAA,UAgBEA,UAhBF,gCAgBe,EAhBf;;AAkBA,kBACExB,KAAK,IAAI,EADX;AAAA,UAAQyB,eAAR,SAAQA,eAAR;AAAA,UAAyBC,aAAzB,SAAyBA,aAAzB;AAAA,UAAwCC,iBAAxC,SAAwCA,iBAAxC;AAAA,UAA2DC,0BAA3D,SAA2DA,0BAA3D;AAAA,UAAuFC,qBAAvF,SAAuFA,qBAAvF;;AAGA,UAAMC,oBAAoB,GAAGT,aAAa,IAAIA,aAAa,CAACpB,MAA5D;AACA,UAAM8B,qBAAqB,GAAGT,cAAc,IAAIA,cAAc,CAACrB,MAA/D;AAEA,UAAM+B,WAAW,GAAG;AAClBC,QAAAA,QAAQ,EAAEJ,qBAAqB,KAAK,KAA1B,GAAkC,KAAlC,GAA0C;AADlC,OAApB;AAIA,UAAMK,aAAa,GAAG;AACpBd,QAAAA,SAAS,EAAEA,SAAS,CAAC9B,QAAV,IAAsBC,MAAM,CAAC6B,SAAS,CAACe,KAAX,CADnB;AAEpBtB,QAAAA,cAAc,EACZA,cAAc,CAACuB,OAAf,IACApC,KAAK,CAACoB,SADN,IAEA3B,QAAQ,CAACoB,cAAc,CAACsB,KAAhB,EAAuB,CAC7B,uBAD6B,EAE7B,UAF6B,EAG7B,UAH6B,EAI7B,WAJ6B,EAK7B,aAL6B,EAM7B,aAN6B,EAO7B,aAP6B,EAQ7B,cAR6B,EAS7B,UAT6B,EAU7B,kBAV6B,EAW7B,YAX6B,EAY7B,gBAZ6B,CAAvB,CALU;AAmBpBnB,QAAAA,YAAY,EAAEA,YAAY,CAAC1B,QAAb,IAAyBC,MAAM,CAACyB,YAAY,CAACmB,KAAd,CAnBzB;AAoBpBlB,QAAAA,YAAY,EAAEA,YAAY,CAAC3B,QAAb,IAAyBC,MAAM,CAAC0B,YAAY,CAACkB,KAAd,CApBzB;AAqBpBvB,QAAAA,UAAU,EAAEpB,YAAY,CAACoB,UAAU,CAACuB,KAAZ,EAAmB;AACzCE,UAAAA,KAAK,EAAE;AAAEF,YAAAA,KAAK,EAAE,YAAT;AAAuBG,YAAAA,MAAM,EAAE,IAA/B;AAAqCC,YAAAA,GAAG,EAAE,GAA1C;AAA+CC,YAAAA,GAAG,EAAE;AAApD,WADkC;AAEzCC,UAAAA,MAAM,EAAE;AAAEN,YAAAA,KAAK,EAAE,aAAT;AAAwBG,YAAAA,MAAM,EAAE,IAAhC;AAAsCC,YAAAA,GAAG,EAAE,GAA3C;AAAgDC,YAAAA,GAAG,EAAE;AAArD;AAFiC,SAAnB,CArBJ;AAyBpB,4BAAoBjB,QAAQ,CAACjC,QAAT,IAAqBC,MAAM,CAACgC,QAAQ,CAACY,KAAV,EAAiB,IAAjB,CAzB3B;AA0BpBT,QAAAA,aAAa,EAAEzB,MAAM,CAACX,QAAP,IAAmBC,MAAM,CAACU,MAAM,CAACkC,KAAR,CA1BpB;AA2BpBV,QAAAA,eAAe,EAAEvB,QAAQ,CAACZ,QAAT,IAAqBC,MAAM,CAACW,QAAQ,CAACiC,KAAV,CA3BxB;AA4BpBR,QAAAA,iBAAiB,EAAET,UAAU,CAAC5B,QAAX,IAAuBC,MAAM,CAAC2B,UAAU,CAACiB,KAAZ,CA5B5B;AA6BpBO,QAAAA,wBAAwB,EAAE5B,gBAAgB,CAACxB,QAAjB,IAA6BC,MAAM,CAACuB,gBAAgB,CAACqB,KAAlB;AA7BzC,OAAtB;AA+BA,UAAMQ,eAAe,GAAG;AACtBf,QAAAA,0BAA0B,EAAExB,mBAAmB,CAACd,QAApB,IAAgCC,MAAM,CAACa,mBAAmB,CAAC+B,KAArB,CAD5C;AAEtBS,QAAAA,0BAA0B,EAAEzB,mBAAmB,CAAC7B,QAApB,IAAgCC,MAAM,CAAC4B,mBAAmB,CAACgB,KAArB,CAF5C;AAGtBU,QAAAA,aAAa,EAAE,CAAArB,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAElC,QAAZ,KAAwBC,MAAM,CAACiC,UAAD,aAACA,UAAD,uBAACA,UAAU,CAAEW,KAAb;AAHvB,OAAxB;AAMA,0BACE,gCAAC,gBAAD,CAAQ,YAAR;AACE,QAAA,YAAY,EAAEpB,qBADhB;AAEE,QAAA,QAAQ,eACN,gCAAC,KAAD;AACE,UAAA,KAAK,EAAEf,KADT;AAEE,UAAA,aAAa,EAAEQ,aAFjB;AAGE,UAAA,aAAa,EAAE,uBAACR,KAAD;AAAA,mBAAWD,cAAc,CAACC,KAAD,CAAzB;AAAA,WAHjB;AAIE,UAAA,qBAAqB,EAAE,+BAAC8C,MAAD;AAAA,mBAAYpC,sBAAsB,CAACoC,MAAD,CAAlC;AAAA,WAJzB;AAKE,UAAA,MAAM,EAAE;AACNC,YAAAA,QAAQ,EAAEb,aADJ;AAENc,YAAAA,UAAU,EAAEL;AAFN;AALV;AAHJ,sBAeE,6CACGf,0BAA0B,iBACzB,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAExB,mBAAmB,CAAC+B,KAA3C;AAAkD,QAAA,SAAS,EAAE5B,OAAO,CAAC0C;AAArE,sBACE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAE1C,OAAO,CAACN,MADrB;AAEE,QAAA,MAAM,EAAED,KAAK,CAACI,mBAAN,IAA6B,EAFvC;AAGE,QAAA,QAAQ,EAAE,KAAK8C,yBAHjB;AAIE,QAAA,YAAY,EAAEzC,YAJhB;AAKE,QAAA,QAAQ,EAAE,KALZ;AAME,QAAA,WAAW,EAAEuB,WANf;AAOE,QAAA,UAAU,EAAEL,iBAPd;AAQE,QAAA,aAAa,EAAGN,aAAa,IAAIA,aAAa,CAACjB,mBAAhC,IAAwD0B,oBARzE;AASE,QAAA,cAAc,EAAGR,cAAc,IAAIA,cAAc,CAAClB,mBAAlC,IAA0D2B,qBAT5E;AAUE,QAAA,kBAAkB,EAAEpB,kBAVtB;AAWE,QAAA,uBAAuB,EAAE,CAAC;AAAEwC,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B;AAX3B,QADF,CAFJ,EAmBGzB,aAAa,iBACZ,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAEzB,MAAM,CAACkC,KAA9B;AAAqC,QAAA,SAAS,EAAE5B,OAAO,CAAC0C;AAAxD,sBACE,gCAAC,wBAAD;AACE,QAAA,aAAa,EAAEG,yBADjB;AAEE,QAAA,SAAS,EAAE7C,OAAO,CAACN,MAFrB;AAGE,QAAA,MAAM,EAAED,KAAK,CAACC,MAAN,IAAgB,EAH1B;AAIE,QAAA,QAAQ,EAAE,KAAKoD,cAJjB;AAKE,QAAA,YAAY,EAAE5C,YALhB;AAME,QAAA,QAAQ,EAAE,KANZ;AAOE,QAAA,WAAW,EAAEuB,WAPf;AAQE,QAAA,UAAU,EAAEL,iBARd;AASE,QAAA,aAAa,EAAEG,oBATjB;AAUE,QAAA,cAAc,EAAEC,qBAVlB;AAWE,QAAA,kBAAkB,EAAEpB,kBAXtB;AAYE,QAAA,uBAAuB,EAAE,CAAC;AAAEwC,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B;AAZ3B,QADF,CApBJ,EAsCG1B,eAAe,iBACd,gCAAC,iBAAD,CAAO,QAAP,qBACE,gCAAC,sBAAD;AAAY,QAAA,SAAS,EAAElB,OAAO,CAAC+C,MAA/B;AAAuC,QAAA,OAAO,EAAC;AAA/C,oBADF,eAKE,gCAAC,0BAAD;AACE,QAAA,KAAK,EAAC,sBADR;AAEE,QAAA,QAAQ,EAAEtD,KAAK,CAACE,QAAN,IAAkBR,eAF9B;AAGE,QAAA,QAAQ,EAAE,KAAK6D,cAHjB;AAIE,QAAA,WAAW,EAAEvB;AAJf,QALF,CAvCJ,CAfF,CADF;AAuED;;;EA/KuBwB,kBAAMC,S;;;iCAAnB7D,I,eACQ;AACjBG,EAAAA,cAAc,EAAE2D,sBAAUC,IAAV,CAAeC,UADd;AAEjBlD,EAAAA,sBAAsB,EAAEgD,sBAAUC,IAFjB;AAGjB3D,EAAAA,KAAK,EAAE0D,sBAAUG,MAAV,CAAiBD,UAHP;AAIjBpD,EAAAA,aAAa,EAAEkD,sBAAUG,MAAV,CAAiBD,UAJf;AAKjBnD,EAAAA,YAAY,EAAEiD,sBAAUG,MAAV,CAAiBD,UALd;AAMjBjD,EAAAA,kBAAkB,EAAE+C,sBAAUG,MAAV,CAAiBD,UANpB;AAOjBrD,EAAAA,OAAO,EAAEmD,sBAAUG,MAAV,CAAiBD;AAPT,C;;eAgLN,wBAAW,UAACE,KAAD;AAAA,SAAY;AACpCR,IAAAA,MAAM,EAAE;AACNS,MAAAA,aAAa,EAAED,KAAK,CAACE,OAAN,CAAcC;AADvB,KAD4B;AAIpChB,IAAAA,eAAe,EAAE;AACfiB,MAAAA,UAAU,EAAEJ,KAAK,CAACE,OAAN,CAAcC,IAAd,GAAqB,CADlB;AAEfE,MAAAA,YAAY,EAAEL,KAAK,CAACE,OAAN,CAAcC,IAAd,GAAqB,CAFpB;AAGf5B,MAAAA,KAAK,EAAE;AAHQ,KAJmB;AASpC+B,IAAAA,WAAW,EAAE;AACX/B,MAAAA,KAAK,EAAE,MADI;AAEX8B,MAAAA,YAAY,EAAEL,KAAK,CAACE,OAAN,CAAcC;AAFjB,KATuB;AAapCI,IAAAA,KAAK,EAAE;AACLhC,MAAAA,KAAK,EAAE;AADF;AAb6B,GAAZ;AAAA,CAAX,EAgBXzC,IAhBW,C","sourcesContent":["import React from 'react';\nimport { FeedbackSelector, InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { setDimensions: true };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, prompt: markup });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, configuration, imageSupport, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n dimensions = {},\n equationEditor = {},\n feedback = {},\n playerSpellCheck = {},\n prompt = {},\n settingsPanelDisabled,\n spanishInput = {},\n specialInput = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n mathInput = {},\n maxImageWidth = {},\n maxImageHeight = {},\n multiple = {},\n withRubric = {},\n } = configuration || {};\n const { feedbackEnabled, promptEnabled, spellCheckEnabled, teacherInstructionsEnabled, toolbarEditorPosition } =\n model || {};\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const panelSettings = {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor:\n equationEditor.enabled &&\n model.mathInput &&\n dropdown(equationEditor.label, [\n 'non-negative-integers',\n 'integers',\n 'decimals',\n 'fractions',\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'item-authoring',\n ]),\n spanishInput: spanishInput.settings && toggle(spanishInput.label),\n specialInput: specialInput.settings && toggle(specialInput.label),\n dimensions: numberFields(dimensions.label, {\n width: { label: 'Width (px)', suffix: 'px', min: 100, max: 500 },\n height: { label: 'Height (px)', suffix: 'px', min: 100, max: 500 },\n }),\n 'multiple.enabled': multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n <div>\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptContainer}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptContainer}>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n className={classes.prompt}\n markup={model.prompt || ''}\n onChange={this.onPromptChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <React.Fragment>\n <Typography className={classes.header} variant=\"subheading\">\n Feedback\n </Typography>\n\n <FeedbackSelector\n label=\"When submitted, show\"\n feedback={model.feedback || defaultFeedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </div>\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles((theme) => ({\n header: {\n paddingBottom: theme.spacing.unit,\n },\n promptContainer: {\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n width: '100%',\n },\n promptInput: {\n width: '100%',\n marginBottom: theme.spacing.unit,\n },\n field: {\n width: '200px',\n },\n}))(Main);\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","props","markup","onModelChanged","model","prompt","feedback","update","teacherInstructions","state","setDimensions","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","dimensions","equationEditor","playerSpellCheck","settingsPanelDisabled","spanishInput","specialInput","spellCheck","studentInstructions","mathInput","maxImageWidth","maxImageHeight","multiple","withRubric","feedbackEnabled","promptEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","panelSettings","label","enabled","width","suffix","min","max","height","playerSpellCheckDisabled","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","promptContainer","changeTeacherInstructions","language","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { FeedbackSelector, InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { setDimensions: true };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, prompt: markup });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, configuration, imageSupport, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n dimensions = {},\n equationEditor = {},\n feedback = {},\n playerSpellCheck = {},\n prompt = {},\n settingsPanelDisabled,\n spanishInput = {},\n specialInput = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n mathInput = {},\n maxImageWidth = {},\n maxImageHeight = {},\n multiple = {},\n withRubric = {},\n } = configuration || {};\n const { feedbackEnabled, promptEnabled, spellCheckEnabled, teacherInstructionsEnabled, toolbarEditorPosition } =\n model || {};\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const panelSettings = {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor:\n equationEditor.enabled &&\n model.mathInput &&\n dropdown(equationEditor.label, [\n 'non-negative-integers',\n 'integers',\n 'decimals',\n 'fractions',\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'item-authoring',\n ]),\n spanishInput: spanishInput.settings && toggle(spanishInput.label),\n specialInput: specialInput.settings && toggle(specialInput.label),\n dimensions: numberFields(dimensions.label, {\n width: { label: 'Width (px)', suffix: 'px', min: 100, max: 500 },\n height: { label: 'Height (px)', suffix: 'px', min: 100, max: 500 },\n }),\n 'multiple.enabled': multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptContainer}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptContainer}>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n className={classes.prompt}\n markup={model.prompt || ''}\n onChange={this.onPromptChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <React.Fragment>\n <Typography className={classes.header} variant=\"subheading\">\n Feedback\n </Typography>\n\n <FeedbackSelector\n label=\"When submitted, show\"\n feedback={model.feedback || defaultFeedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles((theme) => ({\n header: {\n paddingBottom: theme.spacing.unit,\n },\n promptContainer: {\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n width: '100%',\n },\n}))(Main);\n"],"file":"main.js"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/extended-text-entry-configure",
3
3
  "private": true,
4
- "version": "8.0.0",
4
+ "version": "8.1.0",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
package/lib/index.js CHANGED
@@ -107,6 +107,8 @@ var RootExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
107
107
  }, {
108
108
  key: "connectedCallback",
109
109
  value: function connectedCallback() {
110
+ this.setAttribute('aria-label', 'Written Response Question');
111
+ this.setAttribute('role', 'region');
110
112
  this.render();
111
113
  }
112
114
  }, {
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["log","domParser","window","undefined","DOMParser","parseFromString","v","textContent","value","document","body","err","isComplete","tc","out","length","RootExtendedTextEntry","_model","_session","m","dispatchEvent","ModelSetEvent","tagName","toLowerCase","render","s","SessionChangedEvent","elem","React","createElement","Main","model","session","onChange","handleChange","bind","ReactDOM","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,6BAAN,CAAZ;AAEA,IAAMC,SAAS,GAAG,QAAOC,MAAP,0DAAOA,MAAP,OAAkBC,SAAlB,GAA8B,IAAIC,SAAJ,EAA9B,GAAgD;AAAEC,EAAAA,eAAe,EAAE,yBAACC,CAAD;AAAA,WAAOA,CAAP;AAAA;AAAnB,CAAlE;;AAEO,SAASC,WAAT,CAAqBC,KAArB,EAA4B;AACjC,MAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;AAC7B,WAAOL,SAAP;AACD;;AACD,MAAI;AACF,QAAMM,QAAQ,GAAGR,SAAS,CAACI,eAAV,CAA0BG,KAA1B,EAAiC,WAAjC,CAAjB;AACA,QAAMD,YAAW,GAAGE,QAAQ,CAACC,IAAT,CAAcH,WAAlC;AACA,WAAOA,YAAP;AACD,GAJD,CAIE,OAAOI,GAAP,EAAY;AACZX,IAAAA,GAAG,CAAC,kCAAD,EAAqCQ,KAArC,CAAH;AACA,WAAOA,KAAP;AACD;AACF;;AAEM,SAASI,UAAT,CAAoBJ,KAApB,EAA2B;AAChC,MAAMK,EAAE,GAAGN,WAAW,CAACC,KAAD,CAAtB;AACA,MAAMM,GAAG,GAAGD,EAAE,KAAKV,SAAP,IAAoBU,EAAE,CAACE,MAAH,GAAY,CAA5C;AACA,SAAOD,GAAP;AACD;;IAEoBE,qB;;;;;AACnB,mCAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAc,IAAd;AACA,UAAKC,QAAL,GAAgB,IAAhB;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKF,MAAL,GAAcE,CAAd;AACA,WAAKC,aAAL,CAAmB,IAAIC,8BAAJ,CAAkB,KAAKC,OAAL,CAAaC,WAAb,EAAlB,EAA8C,KAA9C,EAAqD,CAAC,CAAC,KAAKN,MAA5D,CAAnB;AAEA,WAAKO,MAAL;AACD;;;SAOD,eAAc;AACZ,aAAO,KAAKN,QAAZ;AACD,K;SAPD,aAAYO,CAAZ,EAAe;AACb,WAAKP,QAAL,GAAgBO,CAAhB;AACA,WAAKD,MAAL;AACD;;;WAMD,sBAAahB,KAAb,EAAoB;AAClB,WAAKU,QAAL,CAAcV,KAAd,GAAsBA,KAAtB;AAEA,WAAKY,aAAL,CAAmB,IAAIM,oCAAJ,CAAwB,KAAKJ,OAAL,CAAaC,WAAb,EAAxB,EAAoDX,UAAU,CAACJ,KAAD,CAA9D,CAAnB;AACD;;;WAED,6BAAoB;AAClB,WAAKgB,MAAL;AACD;;;WAED,kBAAS;AAAA;;AACP,UAAI,KAAKP,MAAL,IAAe,KAAKC,QAAxB,EAAkC;AAChC,YAAIS,IAAI,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACnCC,UAAAA,KAAK,EAAE,KAAKd,MADuB;AAEnCe,UAAAA,OAAO,EAAE,KAAKd,QAFqB;AAGnCe,UAAAA,QAAQ,EAAE,KAAKC,YAAL,CAAkBC,IAAlB,CAAuB,IAAvB;AAHyB,SAA1B,CAAX;;AAMAC,6BAASZ,MAAT,CAAgBG,IAAhB,EAAsB,IAAtB,EAA4B,YAAM;AAChC,yCAAW,MAAX;AACD,SAFD;AAGD;AACF;;;kDA7CgDU,W","sourcesContent":["import Main from './main';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport { ModelSetEvent, SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst domParser = typeof window !== undefined ? new DOMParser() : { parseFromString: (v) => v };\n\nexport function textContent(value) {\n if (typeof value !== 'string') {\n return undefined;\n }\n try {\n const document = domParser.parseFromString(value, 'text/html');\n const textContent = document.body.textContent;\n return textContent;\n } catch (err) {\n log('tried to parse as dom and failed', value);\n return value;\n }\n}\n\nexport function isComplete(value) {\n const tc = textContent(value);\n const out = tc !== undefined && tc.length > 0;\n return out;\n}\n\nexport default class RootExtendedTextEntry extends HTMLElement {\n constructor() {\n super();\n this._model = null;\n this._session = null;\n }\n\n set model(m) {\n this._model = m;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), false, !!this._model));\n\n this.render();\n }\n\n set session(s) {\n this._session = s;\n this.render();\n }\n\n get session() {\n return this._session;\n }\n\n handleChange(value) {\n this._session.value = value;\n\n this.dispatchEvent(new SessionChangedEvent(this.tagName.toLowerCase(), isComplete(value)));\n }\n\n connectedCallback() {\n this.render();\n }\n\n render() {\n if (this._model && this._session) {\n let elem = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onChange: this.handleChange.bind(this),\n });\n\n ReactDOM.render(elem, this, () => {\n renderMath(this);\n });\n }\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["log","domParser","window","undefined","DOMParser","parseFromString","v","textContent","value","document","body","err","isComplete","tc","out","length","RootExtendedTextEntry","_model","_session","m","dispatchEvent","ModelSetEvent","tagName","toLowerCase","render","s","SessionChangedEvent","setAttribute","elem","React","createElement","Main","model","session","onChange","handleChange","bind","ReactDOM","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,6BAAN,CAAZ;AAEA,IAAMC,SAAS,GAAG,QAAOC,MAAP,0DAAOA,MAAP,OAAkBC,SAAlB,GAA8B,IAAIC,SAAJ,EAA9B,GAAgD;AAAEC,EAAAA,eAAe,EAAE,yBAACC,CAAD;AAAA,WAAOA,CAAP;AAAA;AAAnB,CAAlE;;AAEO,SAASC,WAAT,CAAqBC,KAArB,EAA4B;AACjC,MAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;AAC7B,WAAOL,SAAP;AACD;;AACD,MAAI;AACF,QAAMM,QAAQ,GAAGR,SAAS,CAACI,eAAV,CAA0BG,KAA1B,EAAiC,WAAjC,CAAjB;AACA,QAAMD,YAAW,GAAGE,QAAQ,CAACC,IAAT,CAAcH,WAAlC;AACA,WAAOA,YAAP;AACD,GAJD,CAIE,OAAOI,GAAP,EAAY;AACZX,IAAAA,GAAG,CAAC,kCAAD,EAAqCQ,KAArC,CAAH;AACA,WAAOA,KAAP;AACD;AACF;;AAEM,SAASI,UAAT,CAAoBJ,KAApB,EAA2B;AAChC,MAAMK,EAAE,GAAGN,WAAW,CAACC,KAAD,CAAtB;AACA,MAAMM,GAAG,GAAGD,EAAE,KAAKV,SAAP,IAAoBU,EAAE,CAACE,MAAH,GAAY,CAA5C;AACA,SAAOD,GAAP;AACD;;IAEoBE,qB;;;;;AACnB,mCAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAc,IAAd;AACA,UAAKC,QAAL,GAAgB,IAAhB;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKF,MAAL,GAAcE,CAAd;AACA,WAAKC,aAAL,CAAmB,IAAIC,8BAAJ,CAAkB,KAAKC,OAAL,CAAaC,WAAb,EAAlB,EAA8C,KAA9C,EAAqD,CAAC,CAAC,KAAKN,MAA5D,CAAnB;AAEA,WAAKO,MAAL;AACD;;;SAOD,eAAc;AACZ,aAAO,KAAKN,QAAZ;AACD,K;SAPD,aAAYO,CAAZ,EAAe;AACb,WAAKP,QAAL,GAAgBO,CAAhB;AACA,WAAKD,MAAL;AACD;;;WAMD,sBAAahB,KAAb,EAAoB;AAClB,WAAKU,QAAL,CAAcV,KAAd,GAAsBA,KAAtB;AAEA,WAAKY,aAAL,CAAmB,IAAIM,oCAAJ,CAAwB,KAAKJ,OAAL,CAAaC,WAAb,EAAxB,EAAoDX,UAAU,CAACJ,KAAD,CAA9D,CAAnB;AACD;;;WAED,6BAAoB;AAClB,WAAKmB,YAAL,CAAkB,YAAlB,EAAgC,2BAAhC;AACA,WAAKA,YAAL,CAAkB,MAAlB,EAA0B,QAA1B;AAEA,WAAKH,MAAL;AACD;;;WAED,kBAAS;AAAA;;AACP,UAAI,KAAKP,MAAL,IAAe,KAAKC,QAAxB,EAAkC;AAChC,YAAIU,IAAI,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACnCC,UAAAA,KAAK,EAAE,KAAKf,MADuB;AAEnCgB,UAAAA,OAAO,EAAE,KAAKf,QAFqB;AAGnCgB,UAAAA,QAAQ,EAAE,KAAKC,YAAL,CAAkBC,IAAlB,CAAuB,IAAvB;AAHyB,SAA1B,CAAX;;AAMAC,6BAASb,MAAT,CAAgBI,IAAhB,EAAsB,IAAtB,EAA4B,YAAM;AAChC,yCAAW,MAAX;AACD,SAFD;AAGD;AACF;;;kDAhDgDU,W","sourcesContent":["import Main from './main';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport { ModelSetEvent, SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst domParser = typeof window !== undefined ? new DOMParser() : { parseFromString: (v) => v };\n\nexport function textContent(value) {\n if (typeof value !== 'string') {\n return undefined;\n }\n try {\n const document = domParser.parseFromString(value, 'text/html');\n const textContent = document.body.textContent;\n return textContent;\n } catch (err) {\n log('tried to parse as dom and failed', value);\n return value;\n }\n}\n\nexport function isComplete(value) {\n const tc = textContent(value);\n const out = tc !== undefined && tc.length > 0;\n return out;\n}\n\nexport default class RootExtendedTextEntry extends HTMLElement {\n constructor() {\n super();\n this._model = null;\n this._session = null;\n }\n\n set model(m) {\n this._model = m;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), false, !!this._model));\n\n this.render();\n }\n\n set session(s) {\n this._session = s;\n this.render();\n }\n\n get session() {\n return this._session;\n }\n\n handleChange(value) {\n this._session.value = value;\n\n this.dispatchEvent(new SessionChangedEvent(this.tagName.toLowerCase(), isComplete(value)));\n }\n\n connectedCallback() {\n this.setAttribute('aria-label', 'Written Response Question'); \n this.setAttribute('role', 'region');\n\n this.render();\n }\n\n render() {\n if (this._model && this._session) {\n let elem = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onChange: this.handleChange.bind(this),\n });\n\n ReactDOM.render(elem, this, () => {\n renderMath(this);\n });\n }\n }\n}\n"],"file":"index.js"}
package/lib/main.js CHANGED
@@ -37,6 +37,8 @@ var _debounce = _interopRequireDefault(require("lodash/debounce"));
37
37
 
38
38
  var _renderUi = require("@pie-lib/render-ui");
39
39
 
40
+ var _classnames = _interopRequireDefault(require("classnames"));
41
+
40
42
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
43
 
42
44
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
@@ -54,6 +56,13 @@ var style = function style(theme) {
54
56
  color: _renderUi.color.text(),
55
57
  marginBottom: theme.spacing.unit * 2,
56
58
  fontSize: 'inherit'
59
+ },
60
+ teacherInstructions: {
61
+ marginBottom: theme.spacing.unit * 2
62
+ },
63
+ editor: {
64
+ marginBottom: theme.spacing.unit * 2,
65
+ borderRadius: '4px'
57
66
  }
58
67
  };
59
68
  };
@@ -103,7 +112,9 @@ var Main = /*#__PURE__*/function (_React$Component) {
103
112
  height = _ref.height;
104
113
 
105
114
  var maxHeight = '40vh';
106
- var toolbarOpts = {};
115
+ var toolbarOpts = {
116
+ position: playersToolbarPosition === 'top' ? 'top' : 'bottom'
117
+ };
107
118
  log('[render] disabled? ', disabled);
108
119
 
109
120
  var teacherInstructionsDiv = /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
@@ -111,16 +122,6 @@ var Main = /*#__PURE__*/function (_React$Component) {
111
122
  prompt: teacherInstructions
112
123
  });
113
124
 
114
- switch (playersToolbarPosition) {
115
- case 'top':
116
- toolbarOpts.position = 'top';
117
- break;
118
-
119
- default:
120
- toolbarOpts.position = 'bottom';
121
- break;
122
- }
123
-
124
125
  var languageCharactersProps = [];
125
126
 
126
127
  if (spanishInput) {
@@ -140,20 +141,22 @@ var Main = /*#__PURE__*/function (_React$Component) {
140
141
  ref: function ref(_ref2) {
141
142
  _this2.containerRef = _ref2;
142
143
  }
143
- }, teacherInstructions && /*#__PURE__*/_react["default"].createElement("div", null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
144
+ }, teacherInstructions && /*#__PURE__*/_react["default"].createElement("div", {
145
+ className: classes.teacherInstructions
146
+ }, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
144
147
  labels: {
145
148
  hidden: 'Show Teacher Instructions',
146
149
  visible: 'Hide Teacher Instructions'
147
150
  },
148
151
  className: classes.collapsible
149
- }, teacherInstructionsDiv) : teacherInstructionsDiv, /*#__PURE__*/_react["default"].createElement("br", null)), model.prompt && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
152
+ }, teacherInstructionsDiv) : teacherInstructionsDiv), model.prompt && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
150
153
  component: 'span',
151
154
  className: classes.prompt
152
155
  }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
153
156
  defaultClassName: "prompt",
154
157
  prompt: model.prompt
155
158
  })), /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
156
- className: "response-area-editor",
159
+ className: (0, _classnames["default"])(classes.editor, 'response-area-editor'),
157
160
  onChange: this.changeSession,
158
161
  markup: value || '',
159
162
  width: width && width.toString(),
@@ -178,10 +181,10 @@ var Main = /*#__PURE__*/function (_React$Component) {
178
181
  }
179
182
  },
180
183
  languageCharactersProps: languageCharactersProps
181
- }), feedback && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
184
+ }), feedback && /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
182
185
  correctness: "correct",
183
186
  feedback: feedback
184
- })));
187
+ }));
185
188
  }
186
189
  }]);
187
190
  return Main;
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["log","style","theme","main","backgroundColor","color","background","text","prompt","width","marginBottom","spacing","unit","fontSize","Main","props","onChange","model","classes","session","dimensions","disabled","feedback","teacherInstructions","mathInput","spanishInput","specialInput","animationsDisabled","playersToolbarPosition","spellCheckEnabled","value","height","maxHeight","toolbarOpts","teacherInstructionsDiv","position","languageCharactersProps","push","language","ref","containerRef","hidden","visible","collapsible","changeSession","toString","math","customKeys","keypadMode","equationEditor","controlledKeypadMode","video","audio","React","Component","PropTypes","func","isRequired","object","shape","string"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,6BAAN,CAAZ;;AAEA,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACC,KAAD;AAAA,SAAY;AACxBC,IAAAA,IAAI,EAAE;AACJC,MAAAA,eAAe,EAAEC,gBAAMC,UAAN,EADb;AAEJD,MAAAA,KAAK,EAAEA,gBAAME,IAAN;AAFH,KADkB;AAKxBC,IAAAA,MAAM,EAAE;AACNC,MAAAA,KAAK,EAAE,MADD;AAENJ,MAAAA,KAAK,EAAEA,gBAAME,IAAN,EAFD;AAGNG,MAAAA,YAAY,EAAER,KAAK,CAACS,OAAN,CAAcC,IAAd,GAAqB,CAH7B;AAINC,MAAAA,QAAQ,EAAE;AAJJ;AALgB,GAAZ;AAAA,CAAd;;IAaaC,I;;;;;;;;;;;;;;;sGAUK,0BAAS,MAAKC,KAAL,CAAWC,QAApB,EAA8B,IAA9B,C;;;;;;WAEhB,kBAAS;AAAA;;AACP,wBAAoC,KAAKD,KAAzC;AAAA,UAAQE,KAAR,eAAQA,KAAR;AAAA,UAAeC,OAAf,eAAeA,OAAf;AAAA,UAAwBC,OAAxB,eAAwBA,OAAxB;AACA,UACEC,UADF,GAWIH,KAXJ,CACEG,UADF;AAAA,UAEEC,QAFF,GAWIJ,KAXJ,CAEEI,QAFF;AAAA,UAGEC,QAHF,GAWIL,KAXJ,CAGEK,QAHF;AAAA,UAIEC,mBAJF,GAWIN,KAXJ,CAIEM,mBAJF;AAAA,UAKEC,SALF,GAWIP,KAXJ,CAKEO,SALF;AAAA,UAMEC,YANF,GAWIR,KAXJ,CAMEQ,YANF;AAAA,UAOEC,YAPF,GAWIT,KAXJ,CAOES,YAPF;AAAA,UAQEC,kBARF,GAWIV,KAXJ,CAQEU,kBARF;AAAA,UASEC,sBATF,GAWIX,KAXJ,CASEW,sBATF;AAAA,UAUEC,iBAVF,GAWIZ,KAXJ,CAUEY,iBAVF;AAYA,UAAQC,KAAR,GAAkBX,OAAlB,CAAQW,KAAR;;AACA,iBAA0BV,UAAU,IAAI,EAAxC;AAAA,UAAQX,KAAR,QAAQA,KAAR;AAAA,UAAesB,MAAf,QAAeA,MAAf;;AACA,UAAMC,SAAS,GAAG,MAAlB;AACA,UAAMC,WAAW,GAAG,EAApB;AAEAjC,MAAAA,GAAG,CAAC,qBAAD,EAAwBqB,QAAxB,CAAH;;AAEA,UAAMa,sBAAsB,gBAC1B,gCAAC,uBAAD;AAAe,QAAA,gBAAgB,EAAC,sBAAhC;AAAuD,QAAA,MAAM,EAAEX;AAA/D,QADF;;AAIA,cAAQK,sBAAR;AACE,aAAK,KAAL;AACEK,UAAAA,WAAW,CAACE,QAAZ,GAAuB,KAAvB;AACA;;AACF;AACEF,UAAAA,WAAW,CAACE,QAAZ,GAAuB,QAAvB;AACA;AANJ;;AASA,UAAMC,uBAAuB,GAAG,EAAhC;;AAEA,UAAIX,YAAJ,EAAkB;AAChBW,QAAAA,uBAAuB,CAACC,IAAxB,CAA6B;AAAEC,UAAAA,QAAQ,EAAE;AAAZ,SAA7B;AACD;;AAED,UAAIZ,YAAJ,EAAkB;AAChBU,QAAAA,uBAAuB,CAACC,IAAxB,CAA6B;AAAEC,UAAAA,QAAQ,EAAE;AAAZ,SAA7B;AACD;;AAED,0BACE;AACE,QAAA,SAAS,EAAEpB,OAAO,CAACf,IADrB;AAEE,QAAA,GAAG,EAAE,aAACoC,KAAD,EAAS;AACZ,UAAA,MAAI,CAACC,YAAL,GAAoBD,KAApB;AACD;AAJH,SAMGhB,mBAAmB,iBAClB,6CACG,CAACI,kBAAD,gBACC,gCAAC,qBAAD;AACE,QAAA,MAAM,EAAE;AAAEc,UAAAA,MAAM,EAAE,2BAAV;AAAuCC,UAAAA,OAAO,EAAE;AAAhD,SADV;AAEE,QAAA,SAAS,EAAExB,OAAO,CAACyB;AAFrB,SAIGT,sBAJH,CADD,GAQCA,sBATJ,eAWE,2CAXF,CAPJ,EAqBGjB,KAAK,CAACT,MAAN,iBACC,gCAAC,sBAAD;AAAY,QAAA,SAAS,EAAE,MAAvB;AAA+B,QAAA,SAAS,EAAEU,OAAO,CAACV;AAAlD,sBACE,gCAAC,uBAAD;AAAe,QAAA,gBAAgB,EAAC,QAAhC;AAAyC,QAAA,MAAM,EAAES,KAAK,CAACT;AAAvD,QADF,CAtBJ,eA0BE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAC,sBADZ;AAEE,QAAA,QAAQ,EAAE,KAAKoC,aAFjB;AAGE,QAAA,MAAM,EAAEd,KAAK,IAAI,EAHnB;AAIE,QAAA,KAAK,EAAErB,KAAK,IAAIA,KAAK,CAACoC,QAAN,EAJlB;AAKE,QAAA,SAAS,EAAEd,MAAM,IAAIA,MAAM,CAACc,QAAP,EALvB;AAME,QAAA,SAAS,EAAEb,SANb;AAOE,QAAA,QAAQ,EAAEX,QAPZ;AAQE,QAAA,cAAc,EAAE,IARlB;AASE,QAAA,WAAW,EAAEY,WATf;AAUE,QAAA,UAAU,EAAEJ,iBAVd;AAWE,QAAA,WAAW,EAAE;AACXiB,UAAAA,IAAI,EAAE;AACJzB,YAAAA,QAAQ,EAAE,CAACG,SADP;AAEJuB,YAAAA,UAAU,EAAE,KAAKhC,KAAL,CAAWE,KAAX,CAAiB8B,UAFzB;AAGJC,YAAAA,UAAU,EAAE,KAAKjC,KAAL,CAAWE,KAAX,CAAiBgC,cAHzB;AAIJC,YAAAA,oBAAoB,EAAE;AAJlB,WADK;AAOXC,UAAAA,KAAK,EAAE;AACL9B,YAAAA,QAAQ,EAAE;AADL,WAPI;AAUX+B,UAAAA,KAAK,EAAE;AACL/B,YAAAA,QAAQ,EAAE;AADL;AAVI,SAXf;AAyBE,QAAA,uBAAuB,EAAEe;AAzB3B,QA1BF,EAqDGd,QAAQ,iBACP,0DACE,2CADF,eAEE,gCAAC,kBAAD;AAAU,QAAA,WAAW,EAAC,SAAtB;AAAgC,QAAA,QAAQ,EAAEA;AAA1C,QAFF,CAtDJ,CADF;AA8DD;;;EAtHuB+B,kBAAMC,S;;;iCAAnBxC,I,eACQ;AACjBE,EAAAA,QAAQ,EAAEuC,sBAAUC,IAAV,CAAeC,UADR;AAEjBxC,EAAAA,KAAK,EAAEsC,sBAAUG,MAFA;AAGjBxC,EAAAA,OAAO,EAAEqC,sBAAUG,MAAV,CAAiBD,UAHT;AAIjBtC,EAAAA,OAAO,EAAEoC,sBAAUI,KAAV,CAAgB;AACvB7B,IAAAA,KAAK,EAAEyB,sBAAUK;AADM,GAAhB,EAENH;AANc,C;;eAwHN,wBAAWxD,KAAX,EAAkBa,IAAlB,C","sourcesContent":["import React from 'react';\nimport EditableHTML from '@pie-lib/editable-html';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport debug from 'debug';\nimport debounce from 'lodash/debounce';\nimport { color, Feedback, Collapsible, PreviewPrompt } from '@pie-lib/render-ui';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst style = (theme) => ({\n main: {\n backgroundColor: color.background(),\n color: color.text(),\n },\n prompt: {\n width: '100%',\n color: color.text(),\n marginBottom: theme.spacing.unit * 2,\n fontSize: 'inherit',\n },\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n model: PropTypes.object,\n classes: PropTypes.object.isRequired,\n session: PropTypes.shape({\n value: PropTypes.string,\n }).isRequired,\n };\n\n changeSession = debounce(this.props.onChange, 1500);\n\n render() {\n const { model, classes, session } = this.props;\n const {\n dimensions,\n disabled,\n feedback,\n teacherInstructions,\n mathInput,\n spanishInput,\n specialInput,\n animationsDisabled,\n playersToolbarPosition,\n spellCheckEnabled,\n } = model;\n const { value } = session;\n const { width, height } = dimensions || {};\n const maxHeight = '40vh';\n const toolbarOpts = {};\n\n log('[render] disabled? ', disabled);\n\n const teacherInstructionsDiv = (\n <PreviewPrompt defaultClassName=\"teacher-instructions\" prompt={teacherInstructions} />\n );\n\n switch (playersToolbarPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n const languageCharactersProps = [];\n\n if (spanishInput) {\n languageCharactersProps.push({ language: 'spanish' });\n }\n\n if (specialInput) {\n languageCharactersProps.push({ language: 'special' });\n }\n\n return (\n <div\n className={classes.main}\n ref={(ref) => {\n this.containerRef = ref;\n }}\n >\n {teacherInstructions && (\n <div>\n {!animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n className={classes.collapsible}\n >\n {teacherInstructionsDiv}\n </Collapsible>\n ) : (\n teacherInstructionsDiv\n )}\n <br />\n </div>\n )}\n {model.prompt && (\n <Typography component={'span'} className={classes.prompt}>\n <PreviewPrompt defaultClassName=\"prompt\" prompt={model.prompt} />\n </Typography>\n )}\n <EditableHTML\n className=\"response-area-editor\"\n onChange={this.changeSession}\n markup={value || ''}\n width={width && width.toString()}\n minHeight={height && height.toString()}\n maxHeight={maxHeight}\n disabled={disabled}\n highlightShape={true}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n pluginProps={{\n math: {\n disabled: !mathInput,\n customKeys: this.props.model.customKeys,\n keypadMode: this.props.model.equationEditor,\n controlledKeypadMode: false,\n },\n video: {\n disabled: true,\n },\n audio: {\n disabled: true,\n },\n }}\n languageCharactersProps={languageCharactersProps}\n />\n {feedback && (\n <div>\n <br />\n <Feedback correctness=\"correct\" feedback={feedback} />\n </div>\n )}\n </div>\n );\n }\n}\n\nexport default withStyles(style)(Main);\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["log","style","theme","main","backgroundColor","color","background","text","prompt","width","marginBottom","spacing","unit","fontSize","teacherInstructions","editor","borderRadius","Main","props","onChange","model","classes","session","dimensions","disabled","feedback","mathInput","spanishInput","specialInput","animationsDisabled","playersToolbarPosition","spellCheckEnabled","value","height","maxHeight","toolbarOpts","position","teacherInstructionsDiv","languageCharactersProps","push","language","ref","containerRef","hidden","visible","collapsible","changeSession","toString","math","customKeys","keypadMode","equationEditor","controlledKeypadMode","video","audio","React","Component","PropTypes","func","isRequired","object","shape","string"],"mappings":"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","sourcesContent":["import React from 'react';\nimport EditableHTML from '@pie-lib/editable-html';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport debug from 'debug';\nimport debounce from 'lodash/debounce';\nimport { color, Feedback, Collapsible, PreviewPrompt } from '@pie-lib/render-ui';\nimport classnames from 'classnames';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst style = (theme) => ({\n main: {\n backgroundColor: color.background(),\n color: color.text(),\n },\n prompt: {\n width: '100%',\n color: color.text(),\n marginBottom: theme.spacing.unit * 2,\n fontSize: 'inherit',\n },\n teacherInstructions: {\n marginBottom: theme.spacing.unit * 2,\n },\n editor: {\n marginBottom: theme.spacing.unit * 2,\n borderRadius: '4px',\n },\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n model: PropTypes.object,\n classes: PropTypes.object.isRequired,\n session: PropTypes.shape({\n value: PropTypes.string,\n }).isRequired,\n };\n\n changeSession = debounce(this.props.onChange, 1500);\n\n render() {\n const { model, classes, session } = this.props;\n const {\n dimensions,\n disabled,\n feedback,\n teacherInstructions,\n mathInput,\n spanishInput,\n specialInput,\n animationsDisabled,\n playersToolbarPosition,\n spellCheckEnabled,\n } = model;\n const { value } = session;\n const { width, height } = dimensions || {};\n const maxHeight = '40vh';\n const toolbarOpts = { position: playersToolbarPosition === 'top' ? 'top' : 'bottom' };\n\n log('[render] disabled? ', disabled);\n\n const teacherInstructionsDiv = (\n <PreviewPrompt defaultClassName=\"teacher-instructions\" prompt={teacherInstructions} />\n );\n\n const languageCharactersProps = [];\n\n if (spanishInput) {\n languageCharactersProps.push({ language: 'spanish' });\n }\n\n if (specialInput) {\n languageCharactersProps.push({ language: 'special' });\n }\n\n return (\n <div\n className={classes.main}\n ref={(ref) => {\n this.containerRef = ref;\n }}\n >\n {teacherInstructions && (\n <div className={classes.teacherInstructions}>\n {!animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n className={classes.collapsible}\n >\n {teacherInstructionsDiv}\n </Collapsible>\n ) : (\n teacherInstructionsDiv\n )}\n </div>\n )}\n\n {model.prompt && (\n <Typography component={'span'} className={classes.prompt}>\n <PreviewPrompt defaultClassName=\"prompt\" prompt={model.prompt} />\n </Typography>\n )}\n\n <EditableHTML\n className={classnames(classes.editor, 'response-area-editor')}\n onChange={this.changeSession}\n markup={value || ''}\n width={width && width.toString()}\n minHeight={height && height.toString()}\n maxHeight={maxHeight}\n disabled={disabled}\n highlightShape={true}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n pluginProps={{\n math: {\n disabled: !mathInput,\n customKeys: this.props.model.customKeys,\n keypadMode: this.props.model.equationEditor,\n controlledKeypadMode: false,\n },\n video: {\n disabled: true,\n },\n audio: {\n disabled: true,\n },\n }}\n languageCharactersProps={languageCharactersProps}\n />\n\n {feedback && <Feedback correctness=\"correct\" feedback={feedback} />}\n </div>\n );\n }\n}\n\nexport default withStyles(style)(Main);\n"],"file":"main.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/extended-text-entry",
3
- "version": "9.0.1-next.8+ad9e76520",
3
+ "version": "9.1.0",
4
4
  "description": "",
5
5
  "repository": "pie-framework/pie-elements",
6
6
  "publishConfig": {
@@ -14,7 +14,7 @@
14
14
  "@pie-framework/pie-player-events": "^0.1.0",
15
15
  "@pie-lib/editable-html": "^9.5.13",
16
16
  "@pie-lib/math-rendering": "^2.5.12",
17
- "@pie-lib/render-ui": "^4.14.12",
17
+ "@pie-lib/render-ui": "^4.14.13",
18
18
  "classnames": "^2.2.5",
19
19
  "debug": "^4.1.1",
20
20
  "lodash.throttle": "^4.1.1",
@@ -22,7 +22,7 @@
22
22
  "react": "^16.8.1",
23
23
  "react-dom": "^16.8.1"
24
24
  },
25
- "gitHead": "ad9e7652097da344bb9a66d3fd478f98f4990d79",
25
+ "gitHead": "67ee976cb7b9b3ee1f4b660cd51ca73d2b2cf2c2",
26
26
  "scripts": {
27
27
  "postpublish": "../../scripts/postpublish"
28
28
  },