@pie-element/extended-text-entry 6.5.4-next.560 → 6.5.4-next.567

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/defaults.js"],"names":["model","dimensions","height","width","prompt","mathInput","equationEditor","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","configuration","settings","label","enabled","feedback","multiple","studentInstructions","teacherInstructions"],"mappings":";;;;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,UAAU,EAAE;AACVC,MAAAA,MAAM,EAAE,GADE;AAEVC,MAAAA,KAAK,EAAE;AAFG,KADP;AAKLC,IAAAA,MAAM,EAAE,6BALH;AAMLC,IAAAA,SAAS,EAAE,KANN;AAOLC,IAAAA,cAAc,EAAE,cAPX;AAQLC,IAAAA,eAAe,EAAE,IARZ;AASLC,IAAAA,gBAAgB,EAAE,IATb;AAULC,IAAAA,aAAa,EAAE,IAVV;AAWLC,IAAAA,0BAA0B,EAAE,IAXvB;AAYLC,IAAAA,0BAA0B,EAAE,IAZvB;AAaLC,IAAAA,qBAAqB,EAAE;AAblB,GADM;AAgBbC,EAAAA,aAAa,EAAE;AACbZ,IAAAA,UAAU,EAAE;AACVa,MAAAA,QAAQ,EAAE,IADA;AAEVC,MAAAA,KAAK,EAAE;AAFG,KADC;AAKbT,IAAAA,cAAc,EAAE;AACdQ,MAAAA,QAAQ,EAAE,KADI;AAEdC,MAAAA,KAAK,EAAE,iBAFO;AAGdC,MAAAA,OAAO,EAAE;AAHK,KALH;AAUbC,IAAAA,QAAQ,EAAE;AACRH,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,KAAK,EAAE;AAFC,KAVG;AAcbV,IAAAA,SAAS,EAAE;AACTS,MAAAA,QAAQ,EAAE,IADD;AAETC,MAAAA,KAAK,EAAE,4CAFE;AAGTC,MAAAA,OAAO,EAAE;AAHA,KAdE;AAmBbE,IAAAA,QAAQ,EAAE;AACRJ,MAAAA,QAAQ,EAAE,KADF;AAERC,MAAAA,KAAK,EAAE,gBAFC;AAGRC,MAAAA,OAAO,EAAE;AAHD,KAnBG;AAwBbG,IAAAA,mBAAmB,EAAE;AACnBL,MAAAA,QAAQ,EAAE,KADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KAxBR;AA4BbX,IAAAA,MAAM,EAAE;AACNU,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD,KA5BK;AAgCbK,IAAAA,mBAAmB,EAAE;AACnBN,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY;AAhCR;AAhBF,C","sourcesContent":["export default {\n model: {\n dimensions: {\n height: 100,\n width: 500\n },\n prompt: 'This is the question prompt',\n mathInput: false,\n equationEditor: 'Grade 8 - HS',\n feedbackEnabled: true,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n },\n configuration: {\n dimensions: {\n settings: true,\n label: 'Text-Entry Display Size'\n },\n equationEditor: {\n settings: false,\n label: 'Equation Editor',\n enabled: true,\n },\n feedback: {\n settings: true,\n label: 'Feedback'\n },\n mathInput: {\n settings: true,\n label: 'Student response can include math notation',\n enabled: false,\n },\n multiple: {\n settings: false,\n label: 'Multiple Parts',\n enabled: false,\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions'\n },\n prompt: {\n settings: true,\n label: 'Prompt'\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions'\n },\n }\n};\n"],"file":"defaults.js"}
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["model","dimensions","height","width","prompt","mathInput","equationEditor","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","configuration","settings","label","enabled","feedback","multiple","studentInstructions","teacherInstructions"],"mappings":";;;;;;eAAe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,UAAU,EAAE;AACVC,MAAAA,MAAM,EAAE,GADE;AAEVC,MAAAA,KAAK,EAAE;AAFG,KADP;AAKLC,IAAAA,MAAM,EAAE,6BALH;AAMLC,IAAAA,SAAS,EAAE,KANN;AAOLC,IAAAA,cAAc,EAAE,cAPX;AAQLC,IAAAA,eAAe,EAAE,IARZ;AASLC,IAAAA,gBAAgB,EAAE,IATb;AAULC,IAAAA,aAAa,EAAE,IAVV;AAWLC,IAAAA,0BAA0B,EAAE,IAXvB;AAYLC,IAAAA,0BAA0B,EAAE,IAZvB;AAaLC,IAAAA,qBAAqB,EAAE;AAblB,GADM;AAgBbC,EAAAA,aAAa,EAAE;AACbZ,IAAAA,UAAU,EAAE;AACVa,MAAAA,QAAQ,EAAE,IADA;AAEVC,MAAAA,KAAK,EAAE;AAFG,KADC;AAKbT,IAAAA,cAAc,EAAE;AACdQ,MAAAA,QAAQ,EAAE,KADI;AAEdC,MAAAA,KAAK,EAAE,iBAFO;AAGdC,MAAAA,OAAO,EAAE;AAHK,KALH;AAUbC,IAAAA,QAAQ,EAAE;AACRH,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,KAAK,EAAE;AAFC,KAVG;AAcbV,IAAAA,SAAS,EAAE;AACTS,MAAAA,QAAQ,EAAE,IADD;AAETC,MAAAA,KAAK,EAAE,4CAFE;AAGTC,MAAAA,OAAO,EAAE;AAHA,KAdE;AAmBbE,IAAAA,QAAQ,EAAE;AACRJ,MAAAA,QAAQ,EAAE,KADF;AAERC,MAAAA,KAAK,EAAE,gBAFC;AAGRC,MAAAA,OAAO,EAAE;AAHD,KAnBG;AAwBbG,IAAAA,mBAAmB,EAAE;AACnBL,MAAAA,QAAQ,EAAE,KADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KAxBR;AA4BbX,IAAAA,MAAM,EAAE;AACNU,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD,KA5BK;AAgCbK,IAAAA,mBAAmB,EAAE;AACnBN,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY;AAhCR;AAhBF,C","sourcesContent":["export default {\n model: {\n dimensions: {\n height: 100,\n width: 500\n },\n prompt: 'This is the question prompt',\n mathInput: false,\n equationEditor: 'Grade 8 - HS',\n feedbackEnabled: true,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom'\n },\n configuration: {\n dimensions: {\n settings: true,\n label: 'Text-Entry Display Size'\n },\n equationEditor: {\n settings: false,\n label: 'Equation Editor',\n enabled: true,\n },\n feedback: {\n settings: true,\n label: 'Feedback'\n },\n mathInput: {\n settings: true,\n label: 'Student response can include math notation',\n enabled: false,\n },\n multiple: {\n settings: false,\n label: 'Multiple Parts',\n enabled: false,\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions'\n },\n prompt: {\n settings: true,\n label: 'Prompt'\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions'\n },\n }\n};\n"],"file":"defaults.js"}
@@ -159,7 +159,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
159
159
  return onConfigurationChanged(config);
160
160
  },
161
161
  groups: {
162
- 'Settings': {
162
+ Settings: {
163
163
  mathInput: mathInput.settings && toggle(mathInput.label),
164
164
  equationEditor: equationEditor.enabled && model.mathInput && dropdown(equationEditor.label, ['non-negative-integers', 'integers', 'decimals', 'fractions', 'Grade 1 - 2', 'Grade 3 - 5', 'Grade 6 - 7', 'Grade 8 - HS', 'geometry', 'advanced-algebra', 'statistics', 'item-authoring']),
165
165
  dimensions: numberFields(dimensions.label, {
@@ -180,7 +180,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
180
180
  promptEnabled: prompt.settings && toggle(prompt.label),
181
181
  feedbackEnabled: feedback.settings && toggle(feedback.label)
182
182
  },
183
- 'Properties': {
183
+ Properties: {
184
184
  teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
185
185
  studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label)
186
186
  }
@@ -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","onConfigurationChanged","imageSupport","multiple","studentInstructions","mathInput","dimensions","equationEditor","teacherInstructionsEnabled","promptEnabled","feedbackEnabled","toolbarOpts","toolbarEditorPosition","position","config","label","enabled","width","suffix","min","max","height","studentInstructionsEnabled","promptContainer","changeTeacherInstructions","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n FeedbackSelector,\n InputContainer,\n settings,\n layout\n} 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 classes: PropTypes.object.isRequired\n };\n\n constructor(props) {\n super(props);\n this.state = {\n setDimensions: true\n };\n }\n\n onPromptChange = markup => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({\n ...model,\n prompt: markup\n });\n };\n\n changeFeedback = feedback => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n onModelChanged(update);\n };\n\n changeTeacherInstructions = teacherInstructions => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, onModelChanged, configuration, onConfigurationChanged, imageSupport } = this.props;\n const {\n multiple = {},\n feedback = {},\n teacherInstructions = {},\n prompt = {},\n studentInstructions = {},\n mathInput = {},\n dimensions = {},\n equationEditor = {}\n } = configuration || {};\n const { teacherInstructionsEnabled, promptEnabled, feedbackEnabled } = 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 return (\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={config => onConfigurationChanged(config)}\n groups={{\n 'Settings': {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor: equationEditor.enabled && model.mathInput && 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 dimensions: numberFields(dimensions.label, {\n width: {\n label: 'Width (px)',\n suffix: 'px',\n min: 100,\n max: 500\n },\n height: {\n label: 'Height (px)',\n suffix: 'px',\n min: 100,\n max: 500\n }\n }),\n 'multiple.enabled': multiple.settings &&\n toggle(multiple.label, true),\n promptEnabled: prompt.settings &&\n toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n },\n 'Properties': {\n teacherInstructionsEnabled: teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings &&\n toggle(studentInstructions.label)\n },\n }}\n />\n }\n >\n <div>\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 />\n </InputContainer>\n )}\n\n <br />\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 />\n </InputContainer>\n )}\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 }\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","onConfigurationChanged","imageSupport","multiple","studentInstructions","mathInput","dimensions","equationEditor","teacherInstructionsEnabled","promptEnabled","feedbackEnabled","toolbarOpts","toolbarEditorPosition","position","config","Settings","label","enabled","width","suffix","min","max","height","Properties","studentInstructionsEnabled","promptContainer","changeTeacherInstructions","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n FeedbackSelector,\n InputContainer,\n settings,\n layout,\n} 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 classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n setDimensions: true,\n };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({\n ...model,\n prompt: markup,\n });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n onModelChanged(update);\n };\n\n render() {\n const {\n model,\n classes,\n onModelChanged,\n configuration,\n onConfigurationChanged,\n imageSupport,\n } = this.props;\n const {\n multiple = {},\n feedback = {},\n teacherInstructions = {},\n prompt = {},\n studentInstructions = {},\n mathInput = {},\n dimensions = {},\n equationEditor = {},\n } = configuration || {};\n const { teacherInstructionsEnabled, promptEnabled, 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 return (\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: {\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 dimensions: numberFields(dimensions.label, {\n width: {\n label: 'Width (px)',\n suffix: 'px',\n min: 100,\n max: 500,\n },\n height: {\n label: 'Height (px)',\n suffix: 'px',\n min: 100,\n max: 500,\n },\n }),\n 'multiple.enabled':\n multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: 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 },\n }}\n />\n }\n >\n <div>\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptContainer}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n />\n </InputContainer>\n )}\n\n <br />\n\n {promptEnabled && (\n <InputContainer\n label={prompt.label}\n className={classes.promptContainer}\n >\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 />\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"}
@@ -122,7 +122,8 @@ function _model() {
122
122
  feedback: feedback,
123
123
  teacherInstructions: teacherInstructions,
124
124
  mathInput: normalizedQuestion.mathInput,
125
- equationEditor: equationEditor
125
+ equationEditor: equationEditor,
126
+ playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom'
126
127
  };
127
128
  }));
128
129
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["log","createDefaultModel","model","defaults","normalize","question","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","session","env","normalizedQuestion","fb","mode","feedback","Promise","resolve","undefined","teacherInstructions","role","equationEditor","then","prompt","dimensions","customKeys","disabled","mathInput","outcome","score","completed","note"],"mappings":"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","sourcesContent":["import debug from 'debug';\n\nconst log = debug('@pie-element:extended-text-entry:controller');\nimport { getFeedback } from '@pie-lib/feedback';\n\nimport defaults from './defaults';\n\nexport async function createDefaultModel(model = {}) {\n log('[createDefaultModel]', model);\n\n return {\n ...defaults,\n ...model,\n };\n}\n\nexport const normalize = question => ({\n ...defaults,\n feedbackEnabled: true,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n ...question,\n});\n\n\nexport async function model(question, session, env) {\n log('[question]', question);\n const normalizedQuestion = normalize(question);\n\n const fb =\n env.mode === 'evaluate' && normalizedQuestion.feedbackEnabled\n ? getFeedback(normalizedQuestion.feedback, 'Your answer has been submitted')\n : Promise.resolve(undefined);\n\n let teacherInstructions = null;\n if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {\n teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;\n } else {\n teacherInstructions = null;\n }\n\n let equationEditor = normalizedQuestion.equationEditor || 'miscellaneous';\n\n switch (normalizedQuestion.equationEditor) {\n case 'Grade 1 - 2':\n equationEditor = 1;\n break;\n case 'Grade 3 - 5':\n equationEditor = 3;\n break;\n case 'Grade 6 - 7':\n equationEditor = 6;\n break;\n case 'Grade 8 - HS':\n equationEditor = 8;\n break;\n default:\n break;\n }\n\n return fb.then(feedback => ({\n prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,\n dimensions: normalizedQuestion.dimensions,\n customKeys: normalizedQuestion.customKeys || [],\n disabled: env.mode !== 'gather',\n feedback,\n teacherInstructions,\n mathInput: normalizedQuestion.mathInput,\n equationEditor\n }));\n}\n\nexport async function outcome(/*question, session, env*/) {\n return {\n score: 0,\n completed: 'n/a',\n note: 'Requires manual scoring'\n };\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["log","createDefaultModel","model","defaults","normalize","question","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","session","env","normalizedQuestion","fb","mode","feedback","Promise","resolve","undefined","teacherInstructions","role","equationEditor","then","prompt","dimensions","customKeys","disabled","mathInput","playersToolbarPosition","outcome","score","completed","note"],"mappings":"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","sourcesContent":["import debug from 'debug';\n\nconst log = debug('@pie-element:extended-text-entry:controller');\nimport { getFeedback } from '@pie-lib/feedback';\n\nimport defaults from './defaults';\n\nexport async function createDefaultModel(model = {}) {\n log('[createDefaultModel]', model);\n\n return {\n ...defaults,\n ...model,\n };\n}\n\nexport const normalize = question => ({\n ...defaults,\n feedbackEnabled: true,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n ...question,\n});\n\n\nexport async function model(question, session, env) {\n log('[question]', question);\n const normalizedQuestion = normalize(question);\n\n const fb =\n env.mode === 'evaluate' && normalizedQuestion.feedbackEnabled\n ? getFeedback(normalizedQuestion.feedback, 'Your answer has been submitted')\n : Promise.resolve(undefined);\n\n let teacherInstructions = null;\n if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {\n teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;\n } else {\n teacherInstructions = null;\n }\n\n let equationEditor = normalizedQuestion.equationEditor || 'miscellaneous';\n\n switch (normalizedQuestion.equationEditor) {\n case 'Grade 1 - 2':\n equationEditor = 1;\n break;\n case 'Grade 3 - 5':\n equationEditor = 3;\n break;\n case 'Grade 6 - 7':\n equationEditor = 6;\n break;\n case 'Grade 8 - HS':\n equationEditor = 8;\n break;\n default:\n break;\n }\n\n return fb.then(feedback => ({\n prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,\n dimensions: normalizedQuestion.dimensions,\n customKeys: normalizedQuestion.customKeys || [],\n disabled: env.mode !== 'gather',\n feedback,\n teacherInstructions,\n mathInput: normalizedQuestion.mathInput,\n equationEditor, \n playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom'\n }));\n}\n\nexport async function outcome(/*question, session, env*/) {\n return {\n score: 0,\n completed: 'n/a',\n note: 'Requires manual scoring'\n };\n}\n"],"file":"index.js"}
@@ -8,5 +8,6 @@ exports.model = (id, element) => ({
8
8
  prompt: 'This is the question prompt',
9
9
  promptEnabled: true,
10
10
  mathInput: true,
11
- toolbarEditorPosition: 'bottom',
11
+ playersToolbarPosition: 'bottom',
12
+ toolbarEditorPosition: 'bottom'
12
13
  });
@@ -116,6 +116,16 @@
116
116
  "type": "string",
117
117
  "title": "toolbarEditorPosition"
118
118
  },
119
+ "playersToolbarPosition": {
120
+ "description": "Indicates the editor's toolbar position for the player, which can be 'bottom' or 'top'",
121
+ "default": ": 'bottom'",
122
+ "enum": [
123
+ "bottom",
124
+ "top"
125
+ ],
126
+ "type": "string",
127
+ "title": "playersToolbarPosition"
128
+ },
119
129
  "id": {
120
130
  "description": "Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.",
121
131
  "type": "string",
@@ -95,6 +95,17 @@ This element must be one of the following enum values:
95
95
  * `bottom`
96
96
  * `top`
97
97
 
98
+ # `playersToolbarPosition` (string, enum)
99
+
100
+ Indicates the editor's toolbar position for the player, which can be 'bottom' or 'top'
101
+
102
+ This element must be one of the following enum values:
103
+
104
+ * `bottom`
105
+ * `top`
106
+
107
+ Default: `": 'bottom'"`
108
+
98
109
  # `id` (string, required)
99
110
 
100
111
  Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.
package/lib/main.js CHANGED
@@ -100,7 +100,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
100
100
  feedback = model.feedback,
101
101
  teacherInstructions = model.teacherInstructions,
102
102
  mathInput = model.mathInput,
103
- animationsDisabled = model.animationsDisabled;
103
+ animationsDisabled = model.animationsDisabled,
104
+ playersToolbarPosition = model.playersToolbarPosition;
104
105
  var value = session.value;
105
106
 
106
107
  var _ref = dimensions || {},
@@ -108,6 +109,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
108
109
  height = _ref.height;
109
110
 
110
111
  var maxHeight = '40vh';
112
+ var toolbarOpts = {};
111
113
  log('[render] disabled? ', disabled);
112
114
 
113
115
  var teacherInstructionsDiv = /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
@@ -115,6 +117,16 @@ var Main = /*#__PURE__*/function (_React$Component) {
115
117
  prompt: teacherInstructions
116
118
  });
117
119
 
120
+ switch (playersToolbarPosition) {
121
+ case 'top':
122
+ toolbarOpts.position = 'top';
123
+ break;
124
+
125
+ default:
126
+ toolbarOpts.position = 'bottom';
127
+ break;
128
+ }
129
+
118
130
  return /*#__PURE__*/_react["default"].createElement("div", {
119
131
  className: classes.main,
120
132
  ref: function ref(_ref2) {
@@ -140,6 +152,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
140
152
  maxHeight: maxHeight,
141
153
  disabled: disabled,
142
154
  highlightShape: true,
155
+ toolbarOpts: toolbarOpts,
143
156
  pluginProps: {
144
157
  math: {
145
158
  disabled: !mathInput,
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","containerRef","model","classes","session","dimensions","disabled","feedback","teacherInstructions","mathInput","animationsDisabled","value","height","maxHeight","teacherInstructionsDiv","ref","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 { renderMath } from '@pie-lib/math-rendering';\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 componentDidUpdate() {\n if (this.containerRef) {\n renderMath(this.containerRef);\n }\n }\n\n changeSession = debounce(this.props.onChange, 1500);\n\n render() {\n const { model, classes, session } = this.props;\n const { dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled } = model;\n const { value } = session;\n const { width, height } = dimensions || {};\n const maxHeight = '40vh';\n log('[render] disabled? ', disabled);\n\n const teacherInstructionsDiv = <PreviewPrompt defaultClassName=\"teacher-instructions\" prompt={teacherInstructions} />;\n\n return (\n <div\n className={classes.main}\n ref={ref => {\n this.containerRef = ref;\n }}\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 ) : teacherInstructionsDiv }\n <br/>\n </div>\n )\n }\n {model.prompt && (\n <Typography\n className={classes.prompt}\n >\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 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 />\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","Main","props","onChange","containerRef","model","classes","session","dimensions","disabled","feedback","teacherInstructions","mathInput","animationsDisabled","playersToolbarPosition","value","height","maxHeight","toolbarOpts","teacherInstructionsDiv","position","ref","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 { renderMath } from '@pie-lib/math-rendering';\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 componentDidUpdate() {\n if (this.containerRef) {\n renderMath(this.containerRef);\n }\n }\n\n changeSession = debounce(this.props.onChange, 1500);\n\n render() {\n const { model, classes, session } = this.props;\n const { dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled, playersToolbarPosition } = 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 = <PreviewPrompt defaultClassName=\"teacher-instructions\" prompt={teacherInstructions} />;\n\n switch (playersToolbarPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n return (\n <div\n className={classes.main}\n ref={ref => {\n this.containerRef = ref;\n }}\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 ) : teacherInstructionsDiv }\n <br/>\n </div>\n )\n }\n {model.prompt && (\n <Typography\n className={classes.prompt}\n >\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 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 />\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"}
@@ -131,7 +131,7 @@ class Main extends React$1.Component {
131
131
  onChangeModel: model => onModelChanged(model),
132
132
  onChangeConfiguration: config => onConfigurationChanged(config),
133
133
  groups: {
134
- 'Settings': {
134
+ Settings: {
135
135
  mathInput: mathInput.settings && toggle(mathInput.label),
136
136
  equationEditor: equationEditor.enabled && model.mathInput && dropdown(equationEditor.label, ['non-negative-integers', 'integers', 'decimals', 'fractions', 'Grade 1 - 2', 'Grade 3 - 5', 'Grade 6 - 7', 'Grade 8 - HS', 'geometry', 'advanced-algebra', 'statistics', 'item-authoring']),
137
137
  dimensions: numberFields(dimensions.label, {
@@ -152,7 +152,7 @@ class Main extends React$1.Component {
152
152
  promptEnabled: prompt.settings && toggle(prompt.label),
153
153
  feedbackEnabled: feedback.settings && toggle(feedback.label)
154
154
  },
155
- 'Properties': {
155
+ Properties: {
156
156
  teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
157
157
  studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label)
158
158
  }
@@ -160,19 +160,19 @@ class Main extends React$1.Component {
160
160
  __self: this,
161
161
  __source: {
162
162
  fileName: _jsxFileName,
163
- lineNumber: 84
163
+ lineNumber: 92
164
164
  }
165
165
  }),
166
166
  __self: this,
167
167
  __source: {
168
168
  fileName: _jsxFileName,
169
- lineNumber: 82
169
+ lineNumber: 90
170
170
  }
171
171
  }, React$1.createElement('div', {
172
172
  __self: this,
173
173
  __source: {
174
174
  fileName: _jsxFileName,
175
- lineNumber: 136
175
+ lineNumber: 148
176
176
  }
177
177
  }, teacherInstructionsEnabled && React$1.createElement(InputContainer, {
178
178
  label: teacherInstructions.label,
@@ -180,7 +180,7 @@ class Main extends React$1.Component {
180
180
  __self: this,
181
181
  __source: {
182
182
  fileName: _jsxFileName,
183
- lineNumber: 139
183
+ lineNumber: 150
184
184
  }
185
185
  }, React$1.createElement(EditableHtml, {
186
186
  className: classes.prompt,
@@ -192,13 +192,13 @@ class Main extends React$1.Component {
192
192
  __self: this,
193
193
  __source: {
194
194
  fileName: _jsxFileName,
195
- lineNumber: 140
195
+ lineNumber: 154
196
196
  }
197
197
  })), React$1.createElement('br', {
198
198
  __self: this,
199
199
  __source: {
200
200
  fileName: _jsxFileName,
201
- lineNumber: 151
201
+ lineNumber: 165
202
202
  }
203
203
  }), promptEnabled && React$1.createElement(InputContainer, {
204
204
  label: prompt.label,
@@ -206,7 +206,7 @@ class Main extends React$1.Component {
206
206
  __self: this,
207
207
  __source: {
208
208
  fileName: _jsxFileName,
209
- lineNumber: 154
209
+ lineNumber: 168
210
210
  }
211
211
  }, React$1.createElement(EditableHtml, {
212
212
  activePlugins: ALL_PLUGINS,
@@ -219,13 +219,13 @@ class Main extends React$1.Component {
219
219
  __self: this,
220
220
  __source: {
221
221
  fileName: _jsxFileName,
222
- lineNumber: 155
222
+ lineNumber: 172
223
223
  }
224
224
  })), feedbackEnabled && React$1.createElement(React$1.Fragment, {
225
225
  __self: this,
226
226
  __source: {
227
227
  fileName: _jsxFileName,
228
- lineNumber: 169
228
+ lineNumber: 185
229
229
  }
230
230
  }, React$1.createElement(Typography, {
231
231
  className: classes.header,
@@ -233,7 +233,7 @@ class Main extends React$1.Component {
233
233
  __self: this,
234
234
  __source: {
235
235
  fileName: _jsxFileName,
236
- lineNumber: 170
236
+ lineNumber: 186
237
237
  }
238
238
  }, "Feedback"), React$1.createElement(FeedbackSelector, {
239
239
  label: "When submitted, show",
@@ -243,7 +243,7 @@ class Main extends React$1.Component {
243
243
  __self: this,
244
244
  __source: {
245
245
  fileName: _jsxFileName,
246
- lineNumber: 174
246
+ lineNumber: 190
247
247
  }
248
248
  }))));
249
249
  }
@@ -81,7 +81,8 @@ async function model(question, session, env) {
81
81
  feedback,
82
82
  teacherInstructions,
83
83
  mathInput: normalizedQuestion.mathInput,
84
- equationEditor
84
+ equationEditor,
85
+ playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom'
85
86
  }));
86
87
  }
87
88
 
package/module/demo.js CHANGED
@@ -14,7 +14,8 @@ generate.model = (id, element) => ({
14
14
  prompt: 'This is the question prompt',
15
15
  promptEnabled: true,
16
16
  mathInput: true,
17
- toolbarEditorPosition: 'bottom',
17
+ playersToolbarPosition: 'bottom',
18
+ toolbarEditorPosition: 'bottom'
18
19
  });
19
20
 
20
21
  const { model } = generate;
package/module/element.js CHANGED
@@ -33339,10 +33339,11 @@ class Main extends React$1.Component {
33339
33339
  }
33340
33340
  render() {
33341
33341
  const {model, classes, session} = this.props;
33342
- const {dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled} = model;
33342
+ const {dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled, playersToolbarPosition} = model;
33343
33343
  const {value} = session;
33344
33344
  const {width, height} = dimensions || ({});
33345
33345
  const maxHeight = '40vh';
33346
+ const toolbarOpts = {};
33346
33347
  log$1('[render] disabled? ', disabled);
33347
33348
  const teacherInstructionsDiv = React$1.createElement(PreviewPrompt, {
33348
33349
  defaultClassName: "teacher-instructions",
@@ -33350,9 +33351,17 @@ class Main extends React$1.Component {
33350
33351
  __self: this,
33351
33352
  __source: {
33352
33353
  fileName: _jsxFileName,
33353
- lineNumber: 52
33354
+ lineNumber: 54
33354
33355
  }
33355
33356
  });
33357
+ switch (playersToolbarPosition) {
33358
+ case 'top':
33359
+ toolbarOpts.position = 'top';
33360
+ break;
33361
+ default:
33362
+ toolbarOpts.position = 'bottom';
33363
+ break;
33364
+ }
33356
33365
  return React$1.createElement('div', {
33357
33366
  className: classes.main,
33358
33367
  ref: ref => {
@@ -33361,13 +33370,13 @@ class Main extends React$1.Component {
33361
33370
  __self: this,
33362
33371
  __source: {
33363
33372
  fileName: _jsxFileName,
33364
- lineNumber: 55
33373
+ lineNumber: 66
33365
33374
  }
33366
33375
  }, teacherInstructions && React$1.createElement('div', {
33367
33376
  __self: this,
33368
33377
  __source: {
33369
33378
  fileName: _jsxFileName,
33370
- lineNumber: 63
33379
+ lineNumber: 74
33371
33380
  }
33372
33381
  }, !animationsDisabled ? React$1.createElement(Collapsible, {
33373
33382
  labels: {
@@ -33378,20 +33387,20 @@ class Main extends React$1.Component {
33378
33387
  __self: this,
33379
33388
  __source: {
33380
33389
  fileName: _jsxFileName,
33381
- lineNumber: 65
33390
+ lineNumber: 76
33382
33391
  }
33383
33392
  }, teacherInstructionsDiv) : teacherInstructionsDiv, React$1.createElement('br', {
33384
33393
  __self: this,
33385
33394
  __source: {
33386
33395
  fileName: _jsxFileName,
33387
- lineNumber: 72
33396
+ lineNumber: 83
33388
33397
  }
33389
33398
  })), model.prompt && React$1.createElement(Typography, {
33390
33399
  className: classes.prompt,
33391
33400
  __self: this,
33392
33401
  __source: {
33393
33402
  fileName: _jsxFileName,
33394
- lineNumber: 77
33403
+ lineNumber: 88
33395
33404
  }
33396
33405
  }, React$1.createElement(PreviewPrompt, {
33397
33406
  defaultClassName: "prompt",
@@ -33399,7 +33408,7 @@ class Main extends React$1.Component {
33399
33408
  __self: this,
33400
33409
  __source: {
33401
33410
  fileName: _jsxFileName,
33402
- lineNumber: 80
33411
+ lineNumber: 91
33403
33412
  }
33404
33413
  })), React$1.createElement(EditableHtml, {
33405
33414
  className: "response-area-editor",
@@ -33410,6 +33419,7 @@ class Main extends React$1.Component {
33410
33419
  maxHeight: maxHeight,
33411
33420
  disabled: disabled,
33412
33421
  highlightShape: true,
33422
+ toolbarOpts: toolbarOpts,
33413
33423
  pluginProps: {
33414
33424
  math: {
33415
33425
  disabled: !mathInput,
@@ -33427,19 +33437,19 @@ class Main extends React$1.Component {
33427
33437
  __self: this,
33428
33438
  __source: {
33429
33439
  fileName: _jsxFileName,
33430
- lineNumber: 83
33440
+ lineNumber: 94
33431
33441
  }
33432
33442
  }), feedback && React$1.createElement('div', {
33433
33443
  __self: this,
33434
33444
  __source: {
33435
33445
  fileName: _jsxFileName,
33436
- lineNumber: 108
33446
+ lineNumber: 120
33437
33447
  }
33438
33448
  }, React$1.createElement('br', {
33439
33449
  __self: this,
33440
33450
  __source: {
33441
33451
  fileName: _jsxFileName,
33442
- lineNumber: 109
33452
+ lineNumber: 121
33443
33453
  }
33444
33454
  }), React$1.createElement(Feedback, {
33445
33455
  correctness: "correct",
@@ -33447,7 +33457,7 @@ class Main extends React$1.Component {
33447
33457
  __self: this,
33448
33458
  __source: {
33449
33459
  fileName: _jsxFileName,
33450
- lineNumber: 110
33460
+ lineNumber: 122
33451
33461
  }
33452
33462
  })));
33453
33463
  }
@@ -12,7 +12,8 @@ generate.model = (id, element) => ({
12
12
  prompt: 'This is the question prompt',
13
13
  promptEnabled: true,
14
14
  mathInput: true,
15
- toolbarEditorPosition: 'bottom',
15
+ playersToolbarPosition: 'bottom',
16
+ toolbarEditorPosition: 'bottom'
16
17
  });
17
18
 
18
19
  const { model } = generate;
package/module/print.js CHANGED
@@ -33339,10 +33339,11 @@ class Main extends React$1.Component {
33339
33339
  }
33340
33340
  render() {
33341
33341
  const {model, classes, session} = this.props;
33342
- const {dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled} = model;
33342
+ const {dimensions, disabled, feedback, teacherInstructions, mathInput, animationsDisabled, playersToolbarPosition} = model;
33343
33343
  const {value} = session;
33344
33344
  const {width, height} = dimensions || ({});
33345
33345
  const maxHeight = '40vh';
33346
+ const toolbarOpts = {};
33346
33347
  log$1('[render] disabled? ', disabled);
33347
33348
  const teacherInstructionsDiv = React$1.createElement(PreviewPrompt, {
33348
33349
  defaultClassName: "teacher-instructions",
@@ -33350,9 +33351,17 @@ class Main extends React$1.Component {
33350
33351
  __self: this,
33351
33352
  __source: {
33352
33353
  fileName: _jsxFileName,
33353
- lineNumber: 52
33354
+ lineNumber: 54
33354
33355
  }
33355
33356
  });
33357
+ switch (playersToolbarPosition) {
33358
+ case 'top':
33359
+ toolbarOpts.position = 'top';
33360
+ break;
33361
+ default:
33362
+ toolbarOpts.position = 'bottom';
33363
+ break;
33364
+ }
33356
33365
  return React$1.createElement('div', {
33357
33366
  className: classes.main,
33358
33367
  ref: ref => {
@@ -33361,13 +33370,13 @@ class Main extends React$1.Component {
33361
33370
  __self: this,
33362
33371
  __source: {
33363
33372
  fileName: _jsxFileName,
33364
- lineNumber: 55
33373
+ lineNumber: 66
33365
33374
  }
33366
33375
  }, teacherInstructions && React$1.createElement('div', {
33367
33376
  __self: this,
33368
33377
  __source: {
33369
33378
  fileName: _jsxFileName,
33370
- lineNumber: 63
33379
+ lineNumber: 74
33371
33380
  }
33372
33381
  }, !animationsDisabled ? React$1.createElement(Collapsible, {
33373
33382
  labels: {
@@ -33378,20 +33387,20 @@ class Main extends React$1.Component {
33378
33387
  __self: this,
33379
33388
  __source: {
33380
33389
  fileName: _jsxFileName,
33381
- lineNumber: 65
33390
+ lineNumber: 76
33382
33391
  }
33383
33392
  }, teacherInstructionsDiv) : teacherInstructionsDiv, React$1.createElement('br', {
33384
33393
  __self: this,
33385
33394
  __source: {
33386
33395
  fileName: _jsxFileName,
33387
- lineNumber: 72
33396
+ lineNumber: 83
33388
33397
  }
33389
33398
  })), model.prompt && React$1.createElement(Typography, {
33390
33399
  className: classes.prompt,
33391
33400
  __self: this,
33392
33401
  __source: {
33393
33402
  fileName: _jsxFileName,
33394
- lineNumber: 77
33403
+ lineNumber: 88
33395
33404
  }
33396
33405
  }, React$1.createElement(PreviewPrompt, {
33397
33406
  defaultClassName: "prompt",
@@ -33399,7 +33408,7 @@ class Main extends React$1.Component {
33399
33408
  __self: this,
33400
33409
  __source: {
33401
33410
  fileName: _jsxFileName,
33402
- lineNumber: 80
33411
+ lineNumber: 91
33403
33412
  }
33404
33413
  })), React$1.createElement(EditableHtml, {
33405
33414
  className: "response-area-editor",
@@ -33410,6 +33419,7 @@ class Main extends React$1.Component {
33410
33419
  maxHeight: maxHeight,
33411
33420
  disabled: disabled,
33412
33421
  highlightShape: true,
33422
+ toolbarOpts: toolbarOpts,
33413
33423
  pluginProps: {
33414
33424
  math: {
33415
33425
  disabled: !mathInput,
@@ -33427,19 +33437,19 @@ class Main extends React$1.Component {
33427
33437
  __self: this,
33428
33438
  __source: {
33429
33439
  fileName: _jsxFileName,
33430
- lineNumber: 83
33440
+ lineNumber: 94
33431
33441
  }
33432
33442
  }), feedback && React$1.createElement('div', {
33433
33443
  __self: this,
33434
33444
  __source: {
33435
33445
  fileName: _jsxFileName,
33436
- lineNumber: 108
33446
+ lineNumber: 120
33437
33447
  }
33438
33448
  }, React$1.createElement('br', {
33439
33449
  __self: this,
33440
33450
  __source: {
33441
33451
  fileName: _jsxFileName,
33442
- lineNumber: 109
33452
+ lineNumber: 121
33443
33453
  }
33444
33454
  }), React$1.createElement(Feedback, {
33445
33455
  correctness: "correct",
@@ -33447,7 +33457,7 @@ class Main extends React$1.Component {
33447
33457
  __self: this,
33448
33458
  __source: {
33449
33459
  fileName: _jsxFileName,
33450
- lineNumber: 110
33460
+ lineNumber: 122
33451
33461
  }
33452
33462
  })));
33453
33463
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/extended-text-entry",
3
- "version": "6.5.4-next.560+d638ff263",
3
+ "version": "6.5.4-next.567+abd439126",
4
4
  "description": "",
5
5
  "repository": "pie-framework/pie-elements",
6
6
  "publishConfig": {
@@ -22,7 +22,7 @@
22
22
  "react": "^16.8.1",
23
23
  "react-dom": "^16.8.1"
24
24
  },
25
- "gitHead": "d638ff2638d681459716ff8797bc4295476d64ed",
25
+ "gitHead": "abd4391269c0cb0e254ace57a14d489607ccc79d",
26
26
  "scripts": {
27
27
  "postpublish": "../../scripts/postpublish"
28
28
  },