@pie-element/select-text 6.5.24 → 6.5.25
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 +8 -0
- package/configure/CHANGELOG.md +8 -0
- package/configure/lib/defaultConfiguration.js +6 -0
- package/configure/lib/defaultConfiguration.js.map +1 -1
- package/configure/lib/design.js +12 -4
- package/configure/lib/design.js.map +1 -1
- package/configure/package.json +5 -5
- package/controller/CHANGELOG.md +8 -0
- package/controller/package.json +2 -2
- package/docs/config-schema.json +16 -0
- package/docs/config-schema.json.md +12 -0
- package/docs/pie-schema.json +6 -0
- package/docs/pie-schema.json.md +4 -0
- package/lib/print.js +2 -1
- package/lib/print.js.map +1 -1
- package/module/configure.js +33 -22
- package/module/element.js +2 -2
- package/module/index.html +1 -1
- package/module/manifest.json +3 -3
- package/module/print.html +1 -1
- package/module/print.js +4 -3
- package/package.json +6 -6
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
|
+
## [6.5.25](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text@6.5.24...@pie-element/select-text@6.5.25) (2022-03-22)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/select-text
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [6.5.24](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text@6.5.23...@pie-element/select-text@6.5.24) (2022-03-08)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-element/select-text
|
package/configure/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
|
+
## [5.2.21](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-configure@5.2.20...@pie-element/select-text-configure@5.2.21) (2022-03-22)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/select-text-configure
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [5.2.20](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-configure@5.2.19...@pie-element/select-text-configure@5.2.20) (2022-03-08)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-element/select-text-configure
|
|
@@ -28,6 +28,7 @@ var _default = {
|
|
|
28
28
|
promptEnabled: true,
|
|
29
29
|
teacherInstructionsEnabled: true,
|
|
30
30
|
studentInstructionsEnabled: true,
|
|
31
|
+
spellCheckEnabled: false,
|
|
31
32
|
toolbarEditorPosition: 'bottom'
|
|
32
33
|
},
|
|
33
34
|
configuration: {
|
|
@@ -79,6 +80,11 @@ var _default = {
|
|
|
79
80
|
settings: true,
|
|
80
81
|
label: 'Feedback'
|
|
81
82
|
},
|
|
83
|
+
spellCheck: {
|
|
84
|
+
label: "Spellcheck",
|
|
85
|
+
settings: true,
|
|
86
|
+
enabled: true
|
|
87
|
+
},
|
|
82
88
|
partialScoring: {
|
|
83
89
|
settings: false,
|
|
84
90
|
label: 'Allow Partial Scoring'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaultConfiguration.js"],"names":["tokens","text","start","end","model","highlightChoices","partialScoring","maxSelections","mode","prompt","scoringType","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","configuration","selectionCount","settings","label","correctAnswer","selections","rationale","studentInstructions","teacherInstructions","feedback"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAM,CACnB;AACEC,IAAAA,IAAI,EAAE,EADR;AAEEC,IAAAA,KAAK,EAAE,CAFT;AAGEC,IAAAA,GAAG,EAAE;AAHP,GADmB,CAAN;AAAA,CAAf;;eAQe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,gBAAgB,EAAE,KADb;AAELC,IAAAA,cAAc,EAAE,KAFX;AAGLC,IAAAA,aAAa,EAAE,CAHV;AAILC,IAAAA,IAAI,EAAE,UAJD;AAKLC,IAAAA,MAAM,EAAE,2BALH;AAMLR,IAAAA,IAAI,EAAE,EAND;AAOLD,IAAAA,MAAM,EAAEA,MAAM,EAPT;AAQLU,IAAAA,WAAW,EAAE,MARR;AASLC,IAAAA,eAAe,EAAE,IATZ;AAULC,IAAAA,gBAAgB,EAAE,IAVb;AAWLC,IAAAA,aAAa,EAAE,IAXV;AAYLC,IAAAA,0BAA0B,EAAE,IAZvB;AAaLC,IAAAA,0BAA0B,EAAE,IAbvB;AAcLC,IAAAA,qBAAqB,EAAE;
|
|
1
|
+
{"version":3,"sources":["../src/defaultConfiguration.js"],"names":["tokens","text","start","end","model","highlightChoices","partialScoring","maxSelections","mode","prompt","scoringType","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","spellCheckEnabled","toolbarEditorPosition","configuration","selectionCount","settings","label","correctAnswer","selections","rationale","studentInstructions","teacherInstructions","feedback","spellCheck","enabled"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAM,CACnB;AACEC,IAAAA,IAAI,EAAE,EADR;AAEEC,IAAAA,KAAK,EAAE,CAFT;AAGEC,IAAAA,GAAG,EAAE;AAHP,GADmB,CAAN;AAAA,CAAf;;eAQe;AACbC,EAAAA,KAAK,EAAE;AACLC,IAAAA,gBAAgB,EAAE,KADb;AAELC,IAAAA,cAAc,EAAE,KAFX;AAGLC,IAAAA,aAAa,EAAE,CAHV;AAILC,IAAAA,IAAI,EAAE,UAJD;AAKLC,IAAAA,MAAM,EAAE,2BALH;AAMLR,IAAAA,IAAI,EAAE,EAND;AAOLD,IAAAA,MAAM,EAAEA,MAAM,EAPT;AAQLU,IAAAA,WAAW,EAAE,MARR;AASLC,IAAAA,eAAe,EAAE,IATZ;AAULC,IAAAA,gBAAgB,EAAE,IAVb;AAWLC,IAAAA,aAAa,EAAE,IAXV;AAYLC,IAAAA,0BAA0B,EAAE,IAZvB;AAaLC,IAAAA,0BAA0B,EAAE,IAbvB;AAcLC,IAAAA,iBAAiB,EAAC,KAdb;AAeLC,IAAAA,qBAAqB,EAAE;AAflB,GADM;AAkBbC,EAAAA,aAAa,EAAE;AACbC,IAAAA,cAAc,EAAE;AACdC,MAAAA,QAAQ,EAAE,IADI;AAEdC,MAAAA,KAAK,EAAE;AAFO,KADH;AAKbC,IAAAA,aAAa,EAAE;AACbF,MAAAA,QAAQ,EAAE,IADG;AAEbC,MAAAA,KAAK,EAAE;AAFM,KALF;AASbE,IAAAA,UAAU,EAAE;AACVH,MAAAA,QAAQ,EAAE,IADA;AAEVC,MAAAA,KAAK,EAAE;AAFG,KATC;AAabhB,IAAAA,gBAAgB,EAAE;AAChBe,MAAAA,QAAQ,EAAE,IADM;AAEhBC,MAAAA,KAAK,EAAE;AAFS,KAbL;AAiBbG,IAAAA,SAAS,EAAE;AACTJ,MAAAA,QAAQ,EAAE,IADD;AAETC,MAAAA,KAAK,EAAE;AAFE,KAjBE;AAqBbX,IAAAA,WAAW,EAAE;AACXU,MAAAA,QAAQ,EAAE,KADC;AAEXC,MAAAA,KAAK,EAAE;AAFI,KArBA;AAyBbI,IAAAA,mBAAmB,EAAE;AACnBL,MAAAA,QAAQ,EAAE,KADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KAzBR;AA6BbK,IAAAA,mBAAmB,EAAE;AACnBN,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KA7BR;AAiCbZ,IAAAA,MAAM,EAAE;AACNY,MAAAA,KAAK,EAAE,QADD;AAEND,MAAAA,QAAQ,EAAE;AAFJ,KAjCK;AAqCbnB,IAAAA,IAAI,EAAE;AACJmB,MAAAA,QAAQ,EAAE,IADN;AAEJC,MAAAA,KAAK,EAAE;AAFH,KArCO;AAyCbrB,IAAAA,MAAM,EAAE;AACNoB,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD,KAzCK;AA6CbM,IAAAA,QAAQ,EAAE;AACRP,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,KAAK,EAAE;AAFC,KA7CG;AAiDbO,IAAAA,UAAU,EAAE;AACVP,MAAAA,KAAK,EAAE,YADG;AAEVD,MAAAA,QAAQ,EAAC,IAFC;AAGVS,MAAAA,OAAO,EAAC;AAHE,KAjDC;AAsDbvB,IAAAA,cAAc,EAAE;AACdc,MAAAA,QAAQ,EAAE,KADI;AAEdC,MAAAA,KAAK,EAAE;AAFO,KAtDH;AA0Dbb,IAAAA,IAAI,EAAE;AACJY,MAAAA,QAAQ,EAAE,IADN;AAEJC,MAAAA,KAAK,EAAE;AAFH;AA1DO;AAlBF,C","sourcesContent":["const tokens = () => [\n {\n text: '',\n start: 0,\n end: 0\n }\n];\n\nexport default {\n model: {\n highlightChoices: false,\n partialScoring: false,\n maxSelections: 2,\n mode: 'sentence',\n prompt: 'Question Prompt goes here',\n text: '',\n tokens: tokens(),\n scoringType: 'auto',\n feedbackEnabled: true,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n spellCheckEnabled:false,\n toolbarEditorPosition: 'bottom'\n },\n configuration: {\n selectionCount: {\n settings: true,\n label: 'Selection count'\n },\n correctAnswer: {\n settings: true,\n label: 'Correct Answers'\n },\n selections: {\n settings: true,\n label: 'Selections Available'\n },\n highlightChoices: {\n settings: true,\n label: 'Highlight choices'\n },\n rationale: {\n settings: true,\n label: 'Rationale'\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type'\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions'\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions'\n },\n prompt: {\n label: 'Prompt',\n settings: true\n },\n text: {\n settings: true,\n label: 'Content'\n },\n tokens: {\n settings: true,\n label: 'Tokens'\n },\n feedback: {\n settings: true,\n label: 'Feedback'\n },\n spellCheck: {\n label: \"Spellcheck\",\n settings:true,\n enabled:true\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring'\n },\n mode: {\n settings: true,\n label: 'Mode'\n }\n }\n};\n"],"file":"defaultConfiguration.js"}
|
package/configure/lib/design.js
CHANGED
|
@@ -200,6 +200,8 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
200
200
|
rationale = _ref$rationale === void 0 ? {} : _ref$rationale,
|
|
201
201
|
_ref$scoringType = _ref.scoringType,
|
|
202
202
|
scoringType = _ref$scoringType === void 0 ? {} : _ref$scoringType,
|
|
203
|
+
_ref$spellCheck = _ref.spellCheck,
|
|
204
|
+
spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
|
|
203
205
|
_ref$highlightChoices = _ref.highlightChoices,
|
|
204
206
|
highlightChoices = _ref$highlightChoices === void 0 ? {} : _ref$highlightChoices;
|
|
205
207
|
|
|
@@ -207,6 +209,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
207
209
|
teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
|
|
208
210
|
promptEnabled = _ref2.promptEnabled,
|
|
209
211
|
rationaleEnabled = _ref2.rationaleEnabled,
|
|
212
|
+
spellCheckEnabled = _ref2.spellCheckEnabled,
|
|
210
213
|
feedbackEnabled = _ref2.feedbackEnabled;
|
|
211
214
|
|
|
212
215
|
var toolbarOpts = {};
|
|
@@ -243,6 +246,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
243
246
|
studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),
|
|
244
247
|
promptEnabled: prompt.settings && toggle(prompt.label),
|
|
245
248
|
rationaleEnabled: rationale.settings && toggle(rationale.label),
|
|
249
|
+
spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
|
|
246
250
|
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])
|
|
247
251
|
}
|
|
248
252
|
}
|
|
@@ -258,7 +262,8 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
258
262
|
onChange: this.onTeacherInstructionsChanged,
|
|
259
263
|
imageSupport: imageSupport,
|
|
260
264
|
nonEmpty: false,
|
|
261
|
-
toolbarOpts: toolbarOpts
|
|
265
|
+
toolbarOpts: toolbarOpts,
|
|
266
|
+
spellCheck: spellCheckEnabled
|
|
262
267
|
})), promptEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
|
|
263
268
|
label: prompt.label || '',
|
|
264
269
|
className: classes.promptHolder
|
|
@@ -267,7 +272,8 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
267
272
|
markup: model.prompt,
|
|
268
273
|
onChange: this.onPromptChanged,
|
|
269
274
|
imageSupport: imageSupport,
|
|
270
|
-
toolbarOpts: toolbarOpts
|
|
275
|
+
toolbarOpts: toolbarOpts,
|
|
276
|
+
spellCheck: spellCheckEnabled
|
|
271
277
|
})), rationaleEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
|
|
272
278
|
label: rationale.label || '',
|
|
273
279
|
className: classes.promptHolder
|
|
@@ -276,13 +282,15 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
276
282
|
markup: model.rationale || '',
|
|
277
283
|
onChange: this.onRationaleChanged,
|
|
278
284
|
imageSupport: imageSupport,
|
|
279
|
-
toolbarOpts: toolbarOpts
|
|
285
|
+
toolbarOpts: toolbarOpts,
|
|
286
|
+
spellCheck: spellCheckEnabled
|
|
280
287
|
})), text.settings && /*#__PURE__*/_react["default"].createElement(_TextField["default"], {
|
|
281
288
|
label: text.label,
|
|
282
289
|
className: classes.input,
|
|
283
290
|
multiline: true,
|
|
284
291
|
value: textValue,
|
|
285
|
-
onChange: this.changeText
|
|
292
|
+
onChange: this.changeText,
|
|
293
|
+
spellCheck: spellCheckEnabled
|
|
286
294
|
}), tokens.settings && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
|
|
287
295
|
label: tokens.label || '',
|
|
288
296
|
className: classes.tokenizerContainer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","radio","log","Design","props","val","apply","u","text","tokens","event","value","target","preparedText","setState","updateText","mode","correctTokenCount","filter","t","correct","length","max","isFinite","maxSelections","Math","fn","onModelChanged","model","update","feedback","partialScoring","prompt","teacherInstructions","rationale","state","nProps","textValue","classes","imageSupport","configuration","onConfigurationChanged","selections","selectionCount","correctAnswer","studentInstructions","scoringType","highlightChoices","teacherInstructionsEnabled","promptEnabled","rationaleEnabled","feedbackEnabled","toolbarOpts","toolbarEditorPosition","position","tokensModel","Settings","label","Properties","studentInstructionsEnabled","container","promptHolder","onTeacherInstructionsChanged","onPromptChanged","onRationaleChanged","input","changeText","tokenizerContainer","tokenizer","changeTokens","chip","changeMaxSelections","numberField","changeFeedback","React","Component","PropTypes","object","isRequired","func","shape","add","theme","paddingTop","spacing","unit","paddingRight","marginRight","bottom","left","right","height","content","backgroundColor","palette","primary","main","marginBottom","width","paddingBottom","marginTop","mainOpts","justifyContent","display","alignItems"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport TextField from '@material-ui/core/TextField';\nimport { withStyles } from '@material-ui/core/styles';\nimport cloneDeep from 'lodash/cloneDeep';\nimport debounce from 'lodash/debounce';\nimport { Tokenizer } from '@pie-lib/text-select';\nimport {\n InputContainer,\n NumberTextField,\n FeedbackConfig,\n settings,\n layout\n} from '@pie-lib/config-ui';\nimport Chip from '@material-ui/core/Chip';\nimport debug from 'debug';\nimport EditableHtml from '@pie-lib/editable-html';\n\nconst { Panel, toggle, radio } = settings;\n\nconst log = debug('@pie-element:select-text:configure');\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired\n })\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n const { model } = this.props;\n\n this.state = {\n text: (model && model.text) || ''\n };\n }\n\n UNSAFE_componentWillReceiveProps(nProps) {\n const { model } = nProps;\n\n if (model && model.text) {\n this.setState({\n text: model.text\n });\n }\n }\n\n updateText = debounce(val => {\n this.apply(u => {\n u.text = val;\n u.tokens = [];\n });\n }, 200);\n\n changeText = event => {\n const value = event.target.value;\n const preparedText = value;\n\n this.setState({\n text: value\n });\n this.updateText(preparedText);\n };\n\n changeTokens = (tokens, mode) => {\n this.apply(u => {\n u.tokens = tokens;\n u.mode = mode;\n\n const correctTokenCount = tokens.filter(t => t.correct).length;\n const max = isFinite(u.maxSelections) ? u.maxSelections : 0;\n\n u.maxSelections = Math.max(max, correctTokenCount);\n });\n };\n\n changeMaxSelections = (event, max) => {\n this.apply(u => (u.maxSelections = max));\n };\n\n apply = fn => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n fn(update);\n onModelChanged(update);\n };\n\n changeFeedback = feedback => {\n this.apply(u => (u.feedback = feedback));\n };\n\n changePartialScoring = partialScoring => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n update.partialScoring = partialScoring;\n onModelChanged(update);\n };\n\n onPromptChanged = prompt => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.prompt = prompt;\n onModelChanged(update);\n };\n\n onTeacherInstructionsChanged = teacherInstructions => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.teacherInstructions = teacherInstructions;\n onModelChanged(update);\n };\n\n onRationaleChanged = rationale => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({\n ...model,\n rationale\n });\n };\n\n render() {\n const { text: textValue } = this.state;\n const {\n model,\n classes,\n imageSupport,\n onModelChanged,\n configuration,\n onConfigurationChanged\n } = this.props;\n const {\n prompt = {},\n text = {},\n tokens = {},\n mode = {},\n feedback = {},\n partialScoring = {},\n selections = {},\n selectionCount = {},\n correctAnswer = {},\n teacherInstructions = {},\n studentInstructions = {},\n rationale = {},\n scoringType = {},\n highlightChoices = {}\n } = configuration || {};\n const {\n teacherInstructionsEnabled, promptEnabled, rationaleEnabled, feedbackEnabled\n } = model || {};\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n let { tokens: tokensModel } = model;\n tokensModel = tokensModel || [];\n\n log('[render] maxSelections:', model.maxSelections);\n\n return (\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: {\n partialScoring:\n partialScoring.settings && toggle(partialScoring.label),\n highlightChoices:\n highlightChoices.settings && toggle(highlightChoices.label),\n feedbackEnabled:\n feedback.settings && toggle(feedback.label)\n },\n Properties: {\n teacherInstructionsEnabled:\n teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled:\n studentInstructions.settings &&\n toggle(studentInstructions.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n scoringType:\n scoringType.settings &&\n radio(scoringType.label, ['auto', 'rubric'])\n }\n }}\n />\n }\n >\n <div className={classes.container}>\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer\n label={prompt.label || ''}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={this.onPromptChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n />\n </InputContainer>\n )}\n\n {rationaleEnabled && (\n <InputContainer\n label={rationale.label || ''}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={this.onRationaleChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n />\n </InputContainer>\n )}\n\n {text.settings && (\n <TextField\n label={text.label}\n className={classes.input}\n multiline\n value={textValue}\n onChange={this.changeText}\n />\n )}\n\n {tokens.settings && (\n <InputContainer\n label={tokens.label || ''}\n className={classes.tokenizerContainer}\n >\n <Tokenizer\n className={classes.tokenizer}\n text={model.text}\n tokens={tokensModel}\n onChange={this.changeTokens}\n />\n </InputContainer>\n )}\n\n {mode.settings && (\n <Chip\n label={`${mode.label}: ${model.mode ? model.mode : 'None'}`}\n className={classes.chip}\n />\n )}\n\n {selections.settings && (\n <Chip\n label={`${selections.label}: ${tokensModel.length}`}\n className={classes.chip}\n />\n )}\n\n {correctAnswer.settings && (\n <Chip\n label={`${correctAnswer.label}: ${\n tokensModel.filter(t => t.correct).length\n }`}\n className={classes.chip}\n />\n )}\n\n {selectionCount.settings && (\n <NumberTextField\n min={tokensModel.filter(t => t.correct).length || 0}\n label={`${selectionCount.label} (0:any)`}\n max={tokensModel.length}\n value={model.maxSelections}\n onChange={this.changeMaxSelections}\n className={classes.numberField}\n />\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig\n feedback={model.feedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n )}\n </div>\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles(theme => ({\n container: {\n paddingTop: theme.spacing.unit\n },\n tokenizerContainer: {\n paddingRight: 0,\n marginRight: 0,\n '&:after': {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n height: '1px',\n content: '\"\"',\n backgroundColor: theme.palette.primary.main\n },\n marginBottom: theme.spacing.unit\n },\n chip: {\n marginRight: theme.spacing.unit * 2\n },\n input: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 3\n },\n tokenizer: {\n marginTop: theme.spacing.unit * 2\n },\n mainOpts: {\n width: '100%',\n justifyContent: 'space-between',\n display: 'flex',\n alignItems: 'baseline'\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n numberField: {\n width: '180px'\n }\n}))(Design);\n"],"file":"design.js"}
|
|
1
|
+
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","radio","log","Design","props","val","apply","u","text","tokens","event","value","target","preparedText","setState","updateText","mode","correctTokenCount","filter","t","correct","length","max","isFinite","maxSelections","Math","fn","onModelChanged","model","update","feedback","partialScoring","prompt","teacherInstructions","rationale","state","nProps","textValue","classes","imageSupport","configuration","onConfigurationChanged","selections","selectionCount","correctAnswer","studentInstructions","scoringType","spellCheck","highlightChoices","teacherInstructionsEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","feedbackEnabled","toolbarOpts","toolbarEditorPosition","position","tokensModel","Settings","label","Properties","studentInstructionsEnabled","container","promptHolder","onTeacherInstructionsChanged","onPromptChanged","onRationaleChanged","input","changeText","tokenizerContainer","tokenizer","changeTokens","chip","changeMaxSelections","numberField","changeFeedback","React","Component","PropTypes","object","isRequired","func","shape","add","theme","paddingTop","spacing","unit","paddingRight","marginRight","bottom","left","right","height","content","backgroundColor","palette","primary","main","marginBottom","width","paddingBottom","marginTop","mainOpts","justifyContent","display","alignItems"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport TextField from '@material-ui/core/TextField';\nimport { withStyles } from '@material-ui/core/styles';\nimport cloneDeep from 'lodash/cloneDeep';\nimport debounce from 'lodash/debounce';\nimport { Tokenizer } from '@pie-lib/text-select';\nimport {\n InputContainer,\n NumberTextField,\n FeedbackConfig,\n settings,\n layout\n} from '@pie-lib/config-ui';\nimport Chip from '@material-ui/core/Chip';\nimport debug from 'debug';\nimport EditableHtml from '@pie-lib/editable-html';\n\nconst { Panel, toggle, radio } = settings;\n\nconst log = debug('@pie-element:select-text:configure');\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired\n })\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n\n const { model } = this.props;\n\n this.state = {\n text: (model && model.text) || ''\n };\n }\n\n UNSAFE_componentWillReceiveProps(nProps) {\n const { model } = nProps;\n\n if (model && model.text) {\n this.setState({\n text: model.text\n });\n }\n }\n\n updateText = debounce(val => {\n this.apply(u => {\n u.text = val;\n u.tokens = [];\n });\n }, 200);\n\n changeText = event => {\n const value = event.target.value;\n const preparedText = value;\n\n this.setState({\n text: value\n });\n this.updateText(preparedText);\n };\n\n changeTokens = (tokens, mode) => {\n this.apply(u => {\n u.tokens = tokens;\n u.mode = mode;\n\n const correctTokenCount = tokens.filter(t => t.correct).length;\n const max = isFinite(u.maxSelections) ? u.maxSelections : 0;\n\n u.maxSelections = Math.max(max, correctTokenCount);\n });\n };\n\n changeMaxSelections = (event, max) => {\n this.apply(u => (u.maxSelections = max));\n };\n\n apply = fn => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n fn(update);\n onModelChanged(update);\n };\n\n changeFeedback = feedback => {\n this.apply(u => (u.feedback = feedback));\n };\n\n changePartialScoring = partialScoring => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n update.partialScoring = partialScoring;\n onModelChanged(update);\n };\n\n onPromptChanged = prompt => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.prompt = prompt;\n onModelChanged(update);\n };\n\n onTeacherInstructionsChanged = teacherInstructions => {\n const { onModelChanged, model } = this.props;\n const update = cloneDeep(model);\n\n update.teacherInstructions = teacherInstructions;\n onModelChanged(update);\n };\n\n onRationaleChanged = rationale => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({\n ...model,\n rationale\n });\n };\n\n render() {\n const { text: textValue } = this.state;\n const {\n model,\n classes,\n imageSupport,\n onModelChanged,\n configuration,\n onConfigurationChanged\n } = this.props;\n const {\n prompt = {},\n text = {},\n tokens = {},\n mode = {},\n feedback = {},\n partialScoring = {},\n selections = {},\n selectionCount = {},\n correctAnswer = {},\n teacherInstructions = {},\n studentInstructions = {},\n rationale = {},\n scoringType = {},\n spellCheck = {},\n highlightChoices = {}\n } = configuration || {};\n const {\n teacherInstructionsEnabled, promptEnabled, rationaleEnabled, spellCheckEnabled, feedbackEnabled\n } = model || {};\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n let { tokens: tokensModel } = model;\n tokensModel = tokensModel || [];\n\n log('[render] maxSelections:', model.maxSelections);\n\n return (\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: {\n partialScoring:\n partialScoring.settings && toggle(partialScoring.label),\n highlightChoices:\n highlightChoices.settings && toggle(highlightChoices.label),\n feedbackEnabled:\n feedback.settings && toggle(feedback.label)\n },\n Properties: {\n teacherInstructionsEnabled:\n teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled:\n studentInstructions.settings &&\n toggle(studentInstructions.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled:\n spellCheck.settings && toggle(spellCheck.label),\n scoringType:\n scoringType.settings &&\n radio(scoringType.label, ['auto', 'rubric'])\n }\n }}\n />\n }\n >\n <div className={classes.container}>\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer\n label={prompt.label || ''}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={this.onPromptChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n {rationaleEnabled && (\n <InputContainer\n label={rationale.label || ''}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={this.onRationaleChanged}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n {text.settings && (\n <TextField\n label={text.label}\n className={classes.input}\n multiline\n value={textValue}\n onChange={this.changeText}\n spellCheck={spellCheckEnabled}\n />\n )}\n\n {tokens.settings && (\n <InputContainer\n label={tokens.label || ''}\n className={classes.tokenizerContainer}\n >\n <Tokenizer\n className={classes.tokenizer}\n text={model.text}\n tokens={tokensModel}\n onChange={this.changeTokens}\n />\n </InputContainer>\n )}\n\n {mode.settings && (\n <Chip\n label={`${mode.label}: ${model.mode ? model.mode : 'None'}`}\n className={classes.chip}\n />\n )}\n\n {selections.settings && (\n <Chip\n label={`${selections.label}: ${tokensModel.length}`}\n className={classes.chip}\n />\n )}\n\n {correctAnswer.settings && (\n <Chip\n label={`${correctAnswer.label}: ${\n tokensModel.filter(t => t.correct).length\n }`}\n className={classes.chip}\n />\n )}\n\n {selectionCount.settings && (\n <NumberTextField\n min={tokensModel.filter(t => t.correct).length || 0}\n label={`${selectionCount.label} (0:any)`}\n max={tokensModel.length}\n value={model.maxSelections}\n onChange={this.changeMaxSelections}\n className={classes.numberField}\n />\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig\n feedback={model.feedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n )}\n </div>\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles(theme => ({\n container: {\n paddingTop: theme.spacing.unit\n },\n tokenizerContainer: {\n paddingRight: 0,\n marginRight: 0,\n '&:after': {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n height: '1px',\n content: '\"\"',\n backgroundColor: theme.palette.primary.main\n },\n marginBottom: theme.spacing.unit\n },\n chip: {\n marginRight: theme.spacing.unit * 2\n },\n input: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 3\n },\n tokenizer: {\n marginTop: theme.spacing.unit * 2\n },\n mainOpts: {\n width: '100%',\n justifyContent: 'space-between',\n display: 'flex',\n alignItems: 'baseline'\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n numberField: {\n width: '180px'\n }\n}))(Design);\n"],"file":"design.js"}
|
package/configure/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/select-text-configure",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "5.2.
|
|
4
|
+
"version": "5.2.21",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"module": "src/index.js",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@material-ui/core": "^3.9.2",
|
|
10
10
|
"@pie-framework/pie-configure-events": "^1.2.0",
|
|
11
|
-
"@pie-lib/config-ui": "^10.10.
|
|
12
|
-
"@pie-lib/editable-html": "^7.19.
|
|
13
|
-
"@pie-lib/scoring-config": "^3.5.
|
|
14
|
-
"@pie-lib/text-select": "^1.8.
|
|
11
|
+
"@pie-lib/config-ui": "^10.10.24",
|
|
12
|
+
"@pie-lib/editable-html": "^7.19.3",
|
|
13
|
+
"@pie-lib/scoring-config": "^3.5.153",
|
|
14
|
+
"@pie-lib/text-select": "^1.8.14",
|
|
15
15
|
"debug": "^3.1.0",
|
|
16
16
|
"lodash": "^4.17.15",
|
|
17
17
|
"prop-types": "^15.6.2",
|
package/controller/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
|
+
## [4.1.31](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-controller@4.1.30...@pie-element/select-text-controller@4.1.31) (2022-03-22)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/select-text-controller
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [4.1.30](https://github.com/pie-framework/pie-elements/compare/@pie-element/select-text-controller@4.1.29...@pie-element/select-text-controller@4.1.30) (2022-02-21)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-element/select-text-controller
|
package/controller/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/select-text-controller",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "4.1.
|
|
4
|
+
"version": "4.1.31",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"module": "src/index.js",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@pie-lib/controller-utils": "^0.2.26",
|
|
10
10
|
"@pie-lib/feedback": "^0.4.27",
|
|
11
|
-
"@pie-lib/text-select": "^1.8.
|
|
11
|
+
"@pie-lib/text-select": "^1.8.14",
|
|
12
12
|
"debug": "^3.1.0",
|
|
13
13
|
"lodash": "^4.17.15"
|
|
14
14
|
},
|
package/docs/config-schema.json
CHANGED
|
@@ -163,6 +163,22 @@
|
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
|
+
"spellCheck": {
|
|
167
|
+
"title": "ConfigureProp",
|
|
168
|
+
"type": "object",
|
|
169
|
+
"properties": {
|
|
170
|
+
"settings": {
|
|
171
|
+
"description": "Indicates if the item has to be displayed in the Settings Panel",
|
|
172
|
+
"type": "boolean",
|
|
173
|
+
"title": "settings"
|
|
174
|
+
},
|
|
175
|
+
"label": {
|
|
176
|
+
"description": "Indicates the label for the item that has to be displayed in the Settings Panel",
|
|
177
|
+
"type": "string",
|
|
178
|
+
"title": "label"
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
},
|
|
166
182
|
"scoringType": {
|
|
167
183
|
"title": "ConfigureProp",
|
|
168
184
|
"type": "object",
|
|
@@ -122,6 +122,18 @@ Indicates if the item has to be displayed in the Settings Panel
|
|
|
122
122
|
|
|
123
123
|
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
124
124
|
|
|
125
|
+
# `spellCheck` (object)
|
|
126
|
+
|
|
127
|
+
Properties of the `spellCheck` object:
|
|
128
|
+
|
|
129
|
+
## `settings` (boolean)
|
|
130
|
+
|
|
131
|
+
Indicates if the item has to be displayed in the Settings Panel
|
|
132
|
+
|
|
133
|
+
## `label` (string)
|
|
134
|
+
|
|
135
|
+
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
136
|
+
|
|
125
137
|
# `scoringType` (object)
|
|
126
138
|
|
|
127
139
|
Properties of the `scoringType` object:
|
package/docs/pie-schema.json
CHANGED
|
@@ -289,6 +289,11 @@
|
|
|
289
289
|
"type": "boolean",
|
|
290
290
|
"title": "teacherInstructionsEnabled"
|
|
291
291
|
},
|
|
292
|
+
"spellCheckEnabled": {
|
|
293
|
+
"description": "Indicates if spellcheck is enabled",
|
|
294
|
+
"type": "boolean",
|
|
295
|
+
"title": "spellCheckEnabled"
|
|
296
|
+
},
|
|
292
297
|
"toolbarEditorPosition": {
|
|
293
298
|
"description": "Indicates the editor's toolbar position which can be 'bottom' or 'top'",
|
|
294
299
|
"default": ": 'bottom'",
|
|
@@ -316,6 +321,7 @@
|
|
|
316
321
|
"id",
|
|
317
322
|
"prompt",
|
|
318
323
|
"rationaleEnabled",
|
|
324
|
+
"spellCheckEnabled",
|
|
319
325
|
"studentInstructionsEnabled",
|
|
320
326
|
"teacherInstructionsEnabled",
|
|
321
327
|
"text",
|
package/docs/pie-schema.json.md
CHANGED
|
@@ -117,6 +117,10 @@ Indicates if Student Instructions are enabled
|
|
|
117
117
|
|
|
118
118
|
Indicates if Teacher Instructions are enabled
|
|
119
119
|
|
|
120
|
+
# `spellCheckEnabled` (boolean, required)
|
|
121
|
+
|
|
122
|
+
Indicates if spellcheck is enabled
|
|
123
|
+
|
|
120
124
|
# `toolbarEditorPosition` (string, enum)
|
|
121
125
|
|
|
122
126
|
Indicates the editor's toolbar position which can be 'bottom' or 'top'
|
package/lib/print.js
CHANGED
|
@@ -83,7 +83,8 @@ var SelectTextPrint = /*#__PURE__*/function (_HTMLElement) {
|
|
|
83
83
|
model: printModel,
|
|
84
84
|
session: {
|
|
85
85
|
selectedTokens: []
|
|
86
|
-
}
|
|
86
|
+
},
|
|
87
|
+
onSelectionChange: function onSelectionChange() {}
|
|
87
88
|
});
|
|
88
89
|
|
|
89
90
|
_reactDom["default"].render(element, (0, _assertThisInitialized2["default"])(_this), function () {
|
package/lib/print.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/print.js"],"names":["log","preparePrintModel","model","opts","instr","role","prompt","promptEnabled","undefined","teacherInstructions","teacherInstructionsEnabled","rationale","rationaleEnabled","showTeacherInstructions","alwaysShowCorrect","mode","disabled","animationsDisabled","highlightChoices","feedback","SelectTextPrint","_options","_model","_session","selectedTokens","_rerender","printModel","element","React","createElement","Main","session","ReactDOM","render","leading","trailing","o","s","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,+BAAN,CAAZ;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,IAAR,EAAiB;AACzC,MAAMC,KAAK,GAAGD,IAAI,CAACE,IAAL,KAAc,YAA5B;AAEAH,EAAAA,KAAK,CAACI,MAAN,GAAeJ,KAAK,CAACK,aAAN,KAAwB,KAAxB,GAAgCL,KAAK,CAACI,MAAtC,GAA+CE,SAA9D;AACAN,EAAAA,KAAK,CAACO,mBAAN,GAA4BL,KAAK,IAAIF,KAAK,CAACQ,0BAAN,KAAqC,KAA9C,GAAsDR,KAAK,CAACO,mBAA5D,GAAkFD,SAA9G;AACAN,EAAAA,KAAK,CAACS,SAAN,GAAkBP,KAAK,IAAIF,KAAK,CAACU,gBAAN,KAA2B,KAApC,GAA4CV,KAAK,CAACS,SAAlD,GAA8DH,SAAhF;AACAN,EAAAA,KAAK,CAACW,uBAAN,GAAgCT,KAAhC;AACAF,EAAAA,KAAK,CAACY,iBAAN,GAA0BV,KAA1B;AACAF,EAAAA,KAAK,CAACa,IAAN,GAAaX,KAAK,GAAG,UAAH,GAAgBF,KAAK,CAACa,IAAxC;AAEAb,EAAAA,KAAK,CAACc,QAAN,GAAiB,IAAjB;AACAd,EAAAA,KAAK,CAACe,kBAAN,GAA2B,IAA3B;AACAf,EAAAA,KAAK,CAACgB,gBAAN,GAAyB,IAAzB;AACAhB,EAAAA,KAAK,CAACiB,QAAN,GAAiBX,SAAjB;AAEA,SAAON,KAAP;AACD,CAhBD;;IAkBqBkB,e;;;;;AACnB,6BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,QAAL,GAAgB,IAAhB;AACA,UAAKC,MAAL,GAAc,IAAd;AACA,UAAKC,QAAL,GAAgB,EAAhB;AACA,UAAKA,QAAL,CAAcC,cAAd,GAA+B,EAA/B;AACA,UAAKC,SAAL,GAAiB,0BACf,YAAM;AACJ,UAAI,MAAKH,MAAL,IAAe,MAAKC,QAAxB,EAAkC;AAChC,YAAMG,UAAU,GAAGzB,iBAAiB,CAAC,MAAKqB,MAAN,EAAc,MAAKD,QAAnB,CAApC;;AAEA,YAAMM,OAAO,GACX,MAAKN,QAAL,iBACAO,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACxB5B,UAAAA,KAAK,EAAEwB,UADiB;AAExBK,UAAAA,OAAO,EAAE;AAAEP,YAAAA,cAAc,EAAE;AAAlB;
|
|
1
|
+
{"version":3,"sources":["../src/print.js"],"names":["log","preparePrintModel","model","opts","instr","role","prompt","promptEnabled","undefined","teacherInstructions","teacherInstructionsEnabled","rationale","rationaleEnabled","showTeacherInstructions","alwaysShowCorrect","mode","disabled","animationsDisabled","highlightChoices","feedback","SelectTextPrint","_options","_model","_session","selectedTokens","_rerender","printModel","element","React","createElement","Main","session","onSelectionChange","ReactDOM","render","leading","trailing","o","s","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,+BAAN,CAAZ;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,IAAR,EAAiB;AACzC,MAAMC,KAAK,GAAGD,IAAI,CAACE,IAAL,KAAc,YAA5B;AAEAH,EAAAA,KAAK,CAACI,MAAN,GAAeJ,KAAK,CAACK,aAAN,KAAwB,KAAxB,GAAgCL,KAAK,CAACI,MAAtC,GAA+CE,SAA9D;AACAN,EAAAA,KAAK,CAACO,mBAAN,GAA4BL,KAAK,IAAIF,KAAK,CAACQ,0BAAN,KAAqC,KAA9C,GAAsDR,KAAK,CAACO,mBAA5D,GAAkFD,SAA9G;AACAN,EAAAA,KAAK,CAACS,SAAN,GAAkBP,KAAK,IAAIF,KAAK,CAACU,gBAAN,KAA2B,KAApC,GAA4CV,KAAK,CAACS,SAAlD,GAA8DH,SAAhF;AACAN,EAAAA,KAAK,CAACW,uBAAN,GAAgCT,KAAhC;AACAF,EAAAA,KAAK,CAACY,iBAAN,GAA0BV,KAA1B;AACAF,EAAAA,KAAK,CAACa,IAAN,GAAaX,KAAK,GAAG,UAAH,GAAgBF,KAAK,CAACa,IAAxC;AAEAb,EAAAA,KAAK,CAACc,QAAN,GAAiB,IAAjB;AACAd,EAAAA,KAAK,CAACe,kBAAN,GAA2B,IAA3B;AACAf,EAAAA,KAAK,CAACgB,gBAAN,GAAyB,IAAzB;AACAhB,EAAAA,KAAK,CAACiB,QAAN,GAAiBX,SAAjB;AAEA,SAAON,KAAP;AACD,CAhBD;;IAkBqBkB,e;;;;;AACnB,6BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,QAAL,GAAgB,IAAhB;AACA,UAAKC,MAAL,GAAc,IAAd;AACA,UAAKC,QAAL,GAAgB,EAAhB;AACA,UAAKA,QAAL,CAAcC,cAAd,GAA+B,EAA/B;AACA,UAAKC,SAAL,GAAiB,0BACf,YAAM;AACJ,UAAI,MAAKH,MAAL,IAAe,MAAKC,QAAxB,EAAkC;AAChC,YAAMG,UAAU,GAAGzB,iBAAiB,CAAC,MAAKqB,MAAN,EAAc,MAAKD,QAAnB,CAApC;;AAEA,YAAMM,OAAO,GACX,MAAKN,QAAL,iBACAO,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACxB5B,UAAAA,KAAK,EAAEwB,UADiB;AAExBK,UAAAA,OAAO,EAAE;AAAEP,YAAAA,cAAc,EAAE;AAAlB,WAFe;AAGxBQ,UAAAA,iBAAiB,EAAE,6BAAM,CAAE;AAHH,SAA1B,CAFF;;AAQAC,6BAASC,MAAT,CAAgBP,OAAhB,kDAA+B,YAAM;AACnC3B,UAAAA,GAAG,CAAC,+BAAD,CAAH;AACA;AACD,SAHD;AAID,OAfD,MAeO;AACLA,QAAAA,GAAG,CAAC,MAAD,CAAH;AACD;AACF,KApBc,EAqBf,EArBe,EAsBf;AAAEmC,MAAAA,OAAO,EAAE,KAAX;AAAkBC,MAAAA,QAAQ,EAAE;AAA5B,KAtBe,CAAjB;AANY;AA8Bb;;;;SACD,aAAYC,CAAZ,EAAe;AACb,WAAKhB,QAAL,GAAgBgB,CAAhB;AACD;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKhB,MAAL,GAAcgB,CAAd;;AACA,WAAKb,SAAL;AACD;;;WAED,6BAAoB,CAAE;;;kDAzCqBc,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debounce from 'lodash/debounce';\nimport Main from './main';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport debug from 'debug';\n\nconst log = debug('pie-element:select-text:print');\n\n/**\n * Live in same package as main element - so we can access some of the shared comps!\n *\n * - update pslb to build print if src/print.js is there\n * - update demo el\n * - get configure/controller building\n */\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions = instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.rationale = instr && model.rationaleEnabled !== false ? model.rationale : undefined;\n model.showTeacherInstructions = instr;\n model.alwaysShowCorrect = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n model.disabled = true;\n model.animationsDisabled = true;\n model.highlightChoices = true;\n model.feedback = undefined;\n\n return model;\n};\n\nexport default class SelectTextPrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = {};\n this._session.selectedTokens = [];\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n const printModel = preparePrintModel(this._model, this._options);\n\n const element =\n this._options &&\n React.createElement(Main, {\n model: printModel,\n session: { selectedTokens: [] },\n onSelectionChange: () => {}\n });\n\n ReactDOM.render(element, this, () => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true }\n );\n }\n set options(o) {\n this._options = o;\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n connectedCallback() {}\n}\n"],"file":"print.js"}
|
package/module/configure.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.
|
|
2
|
-
import {_dll_pie_lib__config_ui} from "../../../@pie-lib/config-module@^1.0.
|
|
3
|
-
import {_dll_pie_lib__editable_html} from "../../../@pie-lib/editable-html-module@^1.2.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.8/module/index.js";
|
|
2
|
+
import {_dll_pie_lib__config_ui} from "../../../@pie-lib/config-module@^1.0.31/module/index.js";
|
|
3
|
+
import {_dll_pie_lib__editable_html} from "../../../@pie-lib/editable-html-module@^1.2.7/module/index.js";
|
|
4
4
|
const React$7 = _dll_react;
|
|
5
5
|
const PropTypes$6 = _dll_prop_types;
|
|
6
6
|
const {Button: Button} = _dll_material_ui__core;
|
|
@@ -2231,8 +2231,8 @@ class Design extends React$1.Component {
|
|
|
2231
2231
|
render() {
|
|
2232
2232
|
const {text: textValue} = this.state;
|
|
2233
2233
|
const {model, classes, imageSupport, onModelChanged, configuration, onConfigurationChanged} = this.props;
|
|
2234
|
-
const {prompt = {}, text = {}, tokens = {}, mode = {}, feedback = {}, partialScoring = {}, selections = {}, selectionCount = {}, correctAnswer = {}, teacherInstructions = {}, studentInstructions = {}, rationale = {}, scoringType = {}, highlightChoices = {}} = configuration || ({});
|
|
2235
|
-
const {teacherInstructionsEnabled, promptEnabled, rationaleEnabled, feedbackEnabled} = model || ({});
|
|
2234
|
+
const {prompt = {}, text = {}, tokens = {}, mode = {}, feedback = {}, partialScoring = {}, selections = {}, selectionCount = {}, correctAnswer = {}, teacherInstructions = {}, studentInstructions = {}, rationale = {}, scoringType = {}, spellCheck = {}, highlightChoices = {}} = configuration || ({});
|
|
2235
|
+
const {teacherInstructionsEnabled, promptEnabled, rationaleEnabled, spellCheckEnabled, feedbackEnabled} = model || ({});
|
|
2236
2236
|
const toolbarOpts = {};
|
|
2237
2237
|
switch (model.toolbarEditorPosition) {
|
|
2238
2238
|
case 'top':
|
|
@@ -2262,26 +2262,27 @@ class Design extends React$1.Component {
|
|
|
2262
2262
|
studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),
|
|
2263
2263
|
promptEnabled: prompt.settings && toggle(prompt.label),
|
|
2264
2264
|
rationaleEnabled: rationale.settings && toggle(rationale.label),
|
|
2265
|
+
spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
|
|
2265
2266
|
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])
|
|
2266
2267
|
}
|
|
2267
2268
|
},
|
|
2268
2269
|
__self: this,
|
|
2269
2270
|
__source: {
|
|
2270
2271
|
fileName: _jsxFileName,
|
|
2271
|
-
lineNumber:
|
|
2272
|
+
lineNumber: 182
|
|
2272
2273
|
}
|
|
2273
2274
|
}),
|
|
2274
2275
|
__self: this,
|
|
2275
2276
|
__source: {
|
|
2276
2277
|
fileName: _jsxFileName,
|
|
2277
|
-
lineNumber:
|
|
2278
|
+
lineNumber: 180
|
|
2278
2279
|
}
|
|
2279
2280
|
}, React$1.createElement('div', {
|
|
2280
2281
|
className: classes.container,
|
|
2281
2282
|
__self: this,
|
|
2282
2283
|
__source: {
|
|
2283
2284
|
fileName: _jsxFileName,
|
|
2284
|
-
lineNumber:
|
|
2285
|
+
lineNumber: 215
|
|
2285
2286
|
}
|
|
2286
2287
|
}, teacherInstructionsEnabled && React$1.createElement(InputContainer, {
|
|
2287
2288
|
label: teacherInstructions.label,
|
|
@@ -2289,7 +2290,7 @@ class Design extends React$1.Component {
|
|
|
2289
2290
|
__self: this,
|
|
2290
2291
|
__source: {
|
|
2291
2292
|
fileName: _jsxFileName,
|
|
2292
|
-
lineNumber:
|
|
2293
|
+
lineNumber: 217
|
|
2293
2294
|
}
|
|
2294
2295
|
}, React$1.createElement(EditableHtml, {
|
|
2295
2296
|
className: classes.prompt,
|
|
@@ -2298,10 +2299,11 @@ class Design extends React$1.Component {
|
|
|
2298
2299
|
imageSupport: imageSupport,
|
|
2299
2300
|
nonEmpty: false,
|
|
2300
2301
|
toolbarOpts: toolbarOpts,
|
|
2302
|
+
spellCheck: spellCheckEnabled,
|
|
2301
2303
|
__self: this,
|
|
2302
2304
|
__source: {
|
|
2303
2305
|
fileName: _jsxFileName,
|
|
2304
|
-
lineNumber:
|
|
2306
|
+
lineNumber: 221
|
|
2305
2307
|
}
|
|
2306
2308
|
})), promptEnabled && React$1.createElement(InputContainer, {
|
|
2307
2309
|
label: prompt.label || '',
|
|
@@ -2309,7 +2311,7 @@ class Design extends React$1.Component {
|
|
|
2309
2311
|
__self: this,
|
|
2310
2312
|
__source: {
|
|
2311
2313
|
fileName: _jsxFileName,
|
|
2312
|
-
lineNumber:
|
|
2314
|
+
lineNumber: 234
|
|
2313
2315
|
}
|
|
2314
2316
|
}, React$1.createElement(EditableHtml, {
|
|
2315
2317
|
className: classes.prompt,
|
|
@@ -2317,10 +2319,11 @@ class Design extends React$1.Component {
|
|
|
2317
2319
|
onChange: this.onPromptChanged,
|
|
2318
2320
|
imageSupport: imageSupport,
|
|
2319
2321
|
toolbarOpts: toolbarOpts,
|
|
2322
|
+
spellCheck: spellCheckEnabled,
|
|
2320
2323
|
__self: this,
|
|
2321
2324
|
__source: {
|
|
2322
2325
|
fileName: _jsxFileName,
|
|
2323
|
-
lineNumber:
|
|
2326
|
+
lineNumber: 238
|
|
2324
2327
|
}
|
|
2325
2328
|
})), rationaleEnabled && React$1.createElement(InputContainer, {
|
|
2326
2329
|
label: rationale.label || '',
|
|
@@ -2328,7 +2331,7 @@ class Design extends React$1.Component {
|
|
|
2328
2331
|
__self: this,
|
|
2329
2332
|
__source: {
|
|
2330
2333
|
fileName: _jsxFileName,
|
|
2331
|
-
lineNumber:
|
|
2334
|
+
lineNumber: 250
|
|
2332
2335
|
}
|
|
2333
2336
|
}, React$1.createElement(EditableHtml, {
|
|
2334
2337
|
className: classes.prompt,
|
|
@@ -2336,10 +2339,11 @@ class Design extends React$1.Component {
|
|
|
2336
2339
|
onChange: this.onRationaleChanged,
|
|
2337
2340
|
imageSupport: imageSupport,
|
|
2338
2341
|
toolbarOpts: toolbarOpts,
|
|
2342
|
+
spellCheck: spellCheckEnabled,
|
|
2339
2343
|
__self: this,
|
|
2340
2344
|
__source: {
|
|
2341
2345
|
fileName: _jsxFileName,
|
|
2342
|
-
lineNumber:
|
|
2346
|
+
lineNumber: 254
|
|
2343
2347
|
}
|
|
2344
2348
|
})), text.settings && React$1.createElement(TextField, {
|
|
2345
2349
|
label: text.label,
|
|
@@ -2347,10 +2351,11 @@ class Design extends React$1.Component {
|
|
|
2347
2351
|
multiline: true,
|
|
2348
2352
|
value: textValue,
|
|
2349
2353
|
onChange: this.changeText,
|
|
2354
|
+
spellCheck: spellCheckEnabled,
|
|
2350
2355
|
__self: this,
|
|
2351
2356
|
__source: {
|
|
2352
2357
|
fileName: _jsxFileName,
|
|
2353
|
-
lineNumber:
|
|
2358
|
+
lineNumber: 266
|
|
2354
2359
|
}
|
|
2355
2360
|
}), tokens.settings && React$1.createElement(InputContainer, {
|
|
2356
2361
|
label: tokens.label || '',
|
|
@@ -2358,7 +2363,7 @@ class Design extends React$1.Component {
|
|
|
2358
2363
|
__self: this,
|
|
2359
2364
|
__source: {
|
|
2360
2365
|
fileName: _jsxFileName,
|
|
2361
|
-
lineNumber:
|
|
2366
|
+
lineNumber: 277
|
|
2362
2367
|
}
|
|
2363
2368
|
}, React$1.createElement(Tokenizer$1, {
|
|
2364
2369
|
className: classes.tokenizer,
|
|
@@ -2368,7 +2373,7 @@ class Design extends React$1.Component {
|
|
|
2368
2373
|
__self: this,
|
|
2369
2374
|
__source: {
|
|
2370
2375
|
fileName: _jsxFileName,
|
|
2371
|
-
lineNumber:
|
|
2376
|
+
lineNumber: 281
|
|
2372
2377
|
}
|
|
2373
2378
|
})), mode.settings && React$1.createElement(Chip, {
|
|
2374
2379
|
label: `${mode.label}: ${model.mode ? model.mode : 'None'}`,
|
|
@@ -2376,7 +2381,7 @@ class Design extends React$1.Component {
|
|
|
2376
2381
|
__self: this,
|
|
2377
2382
|
__source: {
|
|
2378
2383
|
fileName: _jsxFileName,
|
|
2379
|
-
lineNumber:
|
|
2384
|
+
lineNumber: 291
|
|
2380
2385
|
}
|
|
2381
2386
|
}), selections.settings && React$1.createElement(Chip, {
|
|
2382
2387
|
label: `${selections.label}: ${tokensModel.length}`,
|
|
@@ -2384,7 +2389,7 @@ class Design extends React$1.Component {
|
|
|
2384
2389
|
__self: this,
|
|
2385
2390
|
__source: {
|
|
2386
2391
|
fileName: _jsxFileName,
|
|
2387
|
-
lineNumber:
|
|
2392
|
+
lineNumber: 298
|
|
2388
2393
|
}
|
|
2389
2394
|
}), correctAnswer.settings && React$1.createElement(Chip, {
|
|
2390
2395
|
label: `${correctAnswer.label}: ${tokensModel.filter(t => t.correct).length}`,
|
|
@@ -2392,7 +2397,7 @@ class Design extends React$1.Component {
|
|
|
2392
2397
|
__self: this,
|
|
2393
2398
|
__source: {
|
|
2394
2399
|
fileName: _jsxFileName,
|
|
2395
|
-
lineNumber:
|
|
2400
|
+
lineNumber: 305
|
|
2396
2401
|
}
|
|
2397
2402
|
}), selectionCount.settings && React$1.createElement(NumberTextField, {
|
|
2398
2403
|
min: tokensModel.filter(t => t.correct).length || 0,
|
|
@@ -2404,7 +2409,7 @@ class Design extends React$1.Component {
|
|
|
2404
2409
|
__self: this,
|
|
2405
2410
|
__source: {
|
|
2406
2411
|
fileName: _jsxFileName,
|
|
2407
|
-
lineNumber:
|
|
2412
|
+
lineNumber: 314
|
|
2408
2413
|
}
|
|
2409
2414
|
}), feedbackEnabled && React$1.createElement(FeedbackConfig, {
|
|
2410
2415
|
feedback: model.feedback,
|
|
@@ -2413,7 +2418,7 @@ class Design extends React$1.Component {
|
|
|
2413
2418
|
__self: this,
|
|
2414
2419
|
__source: {
|
|
2415
2420
|
fileName: _jsxFileName,
|
|
2416
|
-
lineNumber:
|
|
2421
|
+
lineNumber: 325
|
|
2417
2422
|
}
|
|
2418
2423
|
})));
|
|
2419
2424
|
}
|
|
@@ -2532,6 +2537,7 @@ var defaultValues = {
|
|
|
2532
2537
|
promptEnabled: true,
|
|
2533
2538
|
teacherInstructionsEnabled: true,
|
|
2534
2539
|
studentInstructionsEnabled: true,
|
|
2540
|
+
spellCheckEnabled: false,
|
|
2535
2541
|
toolbarEditorPosition: 'bottom'
|
|
2536
2542
|
},
|
|
2537
2543
|
configuration: {
|
|
@@ -2583,6 +2589,11 @@ var defaultValues = {
|
|
|
2583
2589
|
settings: true,
|
|
2584
2590
|
label: 'Feedback'
|
|
2585
2591
|
},
|
|
2592
|
+
spellCheck: {
|
|
2593
|
+
label: "Spellcheck",
|
|
2594
|
+
settings: true,
|
|
2595
|
+
enabled: true
|
|
2596
|
+
},
|
|
2586
2597
|
partialScoring: {
|
|
2587
2598
|
settings: false,
|
|
2588
2599
|
label: 'Allow Partial Scoring'
|
package/module/element.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_pie_lib__correct_answer_toggle, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.
|
|
2
|
-
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_pie_lib__correct_answer_toggle, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.8/module/index.js";
|
|
2
|
+
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.33/module/index.js";
|
|
3
3
|
var lib$1 = {};
|
|
4
4
|
Object.defineProperty(lib$1, "__esModule", {
|
|
5
5
|
value: true
|
package/module/index.html
CHANGED
package/module/manifest.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/select-text",
|
|
3
|
-
"version": "6.5.
|
|
3
|
+
"version": "6.5.24",
|
|
4
4
|
"modules": [
|
|
5
5
|
{
|
|
6
6
|
"name": "@pie-lib/shared-module",
|
|
7
|
-
"version": "^1.4.
|
|
7
|
+
"version": "^1.4.8"
|
|
8
8
|
},
|
|
9
9
|
{
|
|
10
10
|
"name": "@pie-lib/math-rendering-module",
|
|
11
|
-
"version": "^1.0.
|
|
11
|
+
"version": "^1.0.33"
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
}
|
package/module/print.html
CHANGED
package/module/print.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_pie_lib__correct_answer_toggle, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.
|
|
2
|
-
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_material_ui__core, _dll_material_ui__core_styles, _dll_lodash, _dll_debug, _dll_classnames, _dll_pie_lib__render_ui, _dll_react_dom_server, _dll_pie_lib__correct_answer_toggle, _dll_react_dom} from "../../../@pie-lib/shared-module@^1.4.8/module/index.js";
|
|
2
|
+
import {_dll_pie_lib__math_rendering} from "../../../@pie-lib/math-rendering-module@^1.0.33/module/index.js";
|
|
3
3
|
const React$7 = _dll_react;
|
|
4
4
|
const PropTypes$6 = _dll_prop_types;
|
|
5
5
|
const {Button: Button} = _dll_material_ui__core;
|
|
@@ -2454,7 +2454,8 @@ class SelectTextPrint extends HTMLElement {
|
|
|
2454
2454
|
model: printModel,
|
|
2455
2455
|
session: {
|
|
2456
2456
|
selectedTokens: []
|
|
2457
|
-
}
|
|
2457
|
+
},
|
|
2458
|
+
onSelectionChange: () => {}
|
|
2458
2459
|
});
|
|
2459
2460
|
ReactDOM.render(element, this, () => {
|
|
2460
2461
|
log('render complete - render math');
|
package/package.json
CHANGED
|
@@ -4,22 +4,22 @@
|
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
6
|
"repository": "pie-framework/pie-elements",
|
|
7
|
-
"version": "6.5.
|
|
7
|
+
"version": "6.5.25",
|
|
8
8
|
"description": "",
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@material-ui/core": "^3.9.2",
|
|
11
11
|
"@pie-framework/pie-player-events": "^0.1.0",
|
|
12
|
-
"@pie-lib/correct-answer-toggle": "^2.3.
|
|
13
|
-
"@pie-lib/math-rendering": "^2.3.
|
|
14
|
-
"@pie-lib/render-ui": "^4.12.
|
|
15
|
-
"@pie-lib/text-select": "^1.8.
|
|
12
|
+
"@pie-lib/correct-answer-toggle": "^2.3.35",
|
|
13
|
+
"@pie-lib/math-rendering": "^2.3.13",
|
|
14
|
+
"@pie-lib/render-ui": "^4.12.5",
|
|
15
|
+
"@pie-lib/text-select": "^1.8.14",
|
|
16
16
|
"prop-types": "^15.6.1",
|
|
17
17
|
"react": "^16.8.1",
|
|
18
18
|
"react-dom": "^16.8.1"
|
|
19
19
|
},
|
|
20
20
|
"author": "",
|
|
21
21
|
"license": "ISC",
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "b32a90d35916de8f2b77d7b3428b02efbd145313",
|
|
23
23
|
"scripts": {
|
|
24
24
|
"postpublish": "../../scripts/postpublish"
|
|
25
25
|
},
|