@pie-element/extended-text-entry 10.4.1-next.42 → 10.4.1-next.45

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.
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = {
8
+ model: {
9
+ dimensions: {
10
+ height: 100,
11
+ width: 500
12
+ },
13
+ prompt: 'This is the question prompt',
14
+ mathInput: false,
15
+ spanishInput: false,
16
+ specialInput: false,
17
+ equationEditor: 'Grade 8 - HS',
18
+ feedbackEnabled: false,
19
+ rationaleEnabled: true,
20
+ promptEnabled: true,
21
+ teacherInstructionsEnabled: true,
22
+ studentInstructionsEnabled: true,
23
+ spellCheckEnabled: true,
24
+ playerSpellCheckDisabled: true,
25
+ toolbarEditorPosition: 'bottom'
26
+ },
27
+ configuration: {
28
+ dimensions: {
29
+ settings: true,
30
+ label: 'Text-Entry Display Size'
31
+ },
32
+ spellCheck: {
33
+ label: 'Spellcheck',
34
+ settings: false,
35
+ enabled: true
36
+ },
37
+ playerSpellCheck: {
38
+ label: 'Disable Student Spellcheck',
39
+ settings: true,
40
+ enabled: true
41
+ },
42
+ equationEditor: {
43
+ settings: false,
44
+ label: 'Equation Editor',
45
+ enabled: true
46
+ },
47
+ feedback: {
48
+ settings: true,
49
+ label: 'Feedback'
50
+ },
51
+ mathInput: {
52
+ settings: true,
53
+ label: 'Student response can include math notation',
54
+ enabled: false
55
+ },
56
+ settingsPanelDisabled: false,
57
+ spanishInput: {
58
+ settings: true,
59
+ label: 'Students can insert Spanish',
60
+ enabled: false
61
+ },
62
+ specialInput: {
63
+ settings: true,
64
+ label: 'Students can insert Special Characters',
65
+ enabled: false
66
+ },
67
+ multiple: {
68
+ settings: false,
69
+ label: 'Multiple Parts',
70
+ enabled: false
71
+ },
72
+ studentInstructions: {
73
+ settings: false,
74
+ label: 'Student Instructions'
75
+ },
76
+ prompt: {
77
+ settings: true,
78
+ label: 'Prompt'
79
+ },
80
+ teacherInstructions: {
81
+ settings: true,
82
+ label: 'Teacher Instructions'
83
+ },
84
+ maxImageWidth: {
85
+ teacherInstructions: 300,
86
+ prompt: 300
87
+ },
88
+ maxImageHeight: {
89
+ teacherInstructions: 300,
90
+ prompt: 300
91
+ },
92
+ withRubric: {
93
+ settings: false,
94
+ label: 'Add Rubric'
95
+ },
96
+ mathMlOptions: {
97
+ mmlOutput: false,
98
+ mmlEditing: false
99
+ }
100
+ }
101
+ };
102
+ exports["default"] = _default;
103
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["model","dimensions","height","width","prompt","mathInput","spanishInput","specialInput","equationEditor","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","spellCheckEnabled","playerSpellCheckDisabled","toolbarEditorPosition","configuration","settings","label","spellCheck","enabled","playerSpellCheck","feedback","settingsPanelDisabled","multiple","studentInstructions","teacherInstructions","maxImageWidth","maxImageHeight","withRubric","mathMlOptions","mmlOutput","mmlEditing"],"mappings":"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","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 spanishInput: false,\n specialInput: false,\n equationEditor: 'Grade 8 - HS',\n feedbackEnabled: false,\n rationaleEnabled: true,\n promptEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n spellCheckEnabled: true,\n playerSpellCheckDisabled: true,\n toolbarEditorPosition: 'bottom',\n },\n configuration: {\n dimensions: {\n settings: true,\n label: 'Text-Entry Display Size',\n },\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n playerSpellCheck: {\n label: 'Disable Student Spellcheck',\n settings: true,\n enabled: true,\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 settingsPanelDisabled: false,\n spanishInput: {\n settings: true,\n label: 'Students can insert Spanish',\n enabled: false,\n },\n specialInput: {\n settings: true,\n label: 'Students can insert Special Characters',\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 maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n },\n withRubric: {\n settings: false,\n label: 'Add Rubric',\n },\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n },\n};\n"],"file":"defaults.js"}
@@ -0,0 +1,179 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _reactDom = _interopRequireDefault(require("react-dom"));
29
+
30
+ var _main = _interopRequireDefault(require("./main"));
31
+
32
+ var _defaults = _interopRequireDefault(require("./defaults"));
33
+
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
+
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
+
38
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
39
+
40
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
+
42
+ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
43
+ (0, _inherits2["default"])(ExtendedTextEntry, _HTMLElement);
44
+
45
+ var _super = _createSuper(ExtendedTextEntry);
46
+
47
+ function ExtendedTextEntry() {
48
+ var _this$_configuration$;
49
+
50
+ var _this;
51
+
52
+ (0, _classCallCheck2["default"])(this, ExtendedTextEntry);
53
+ _this = _super.call(this);
54
+ _this._configuration = _defaults["default"].configuration; // if configuration.withRubric.forceEnabled is true, then we
55
+ // update the configuration (we do not want to display the toggle in the Settings Panel)
56
+
57
+ if ((_this$_configuration$ = _this._configuration.withRubric) !== null && _this$_configuration$ !== void 0 && _this$_configuration$.forceEnabled) {
58
+ _this._configuration.withRubric.settings = false;
59
+ }
60
+
61
+ _this._model = ExtendedTextEntry.createDefaultModel({}, _this._configuration);
62
+ return _this;
63
+ }
64
+
65
+ (0, _createClass2["default"])(ExtendedTextEntry, [{
66
+ key: "model",
67
+ set: function set(m) {
68
+ this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);
69
+ this.render();
70
+ }
71
+ }, {
72
+ key: "configuration",
73
+ set: function set(c) {
74
+ this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
75
+
76
+ var _ref = c || {},
77
+ _ref$withRubric = _ref.withRubric,
78
+ withRubric = _ref$withRubric === void 0 ? {} : _ref$withRubric; // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)
79
+ // without triggering the Model Updated event (for more details, check documentation)
80
+ // and also update the configuration (we do not want to display the toggle in the Settings Panel)
81
+
82
+
83
+ if (withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled) {
84
+ this._configuration.withRubric.settings = false;
85
+
86
+ if (!this._model.rubricEnabled) {
87
+ this._model.rubricEnabled = true;
88
+ }
89
+ }
90
+
91
+ this.render();
92
+ }
93
+ }, {
94
+ key: "onModelChanged",
95
+ value: function onModelChanged(m) {
96
+ this._model = m;
97
+ this.render();
98
+ this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, false));
99
+ }
100
+ }, {
101
+ key: "onConfigurationChanged",
102
+ value: function onConfigurationChanged(c) {
103
+ this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
104
+
105
+ if (this._model) {
106
+ this.onModelChanged(this._model);
107
+ }
108
+
109
+ this.render();
110
+ }
111
+ /**
112
+ *
113
+ * @param {done, progress, file} handler
114
+ */
115
+
116
+ }, {
117
+ key: "insertImage",
118
+ value: function insertImage(handler) {
119
+ this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
120
+ }
121
+ }, {
122
+ key: "onDeleteImage",
123
+ value: function onDeleteImage(src, done) {
124
+ this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
125
+ }
126
+ }, {
127
+ key: "insertSound",
128
+ value: function insertSound(handler) {
129
+ this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
130
+ }
131
+ }, {
132
+ key: "onDeleteSound",
133
+ value: function onDeleteSound(src, done) {
134
+ this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
135
+ }
136
+ }, {
137
+ key: "render",
138
+ value: function render() {
139
+ if (this._model) {
140
+ var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
141
+ model: this._model,
142
+ configuration: this._configuration,
143
+ onModelChanged: this.onModelChanged.bind(this),
144
+ onConfigurationChanged: this.onConfigurationChanged.bind(this),
145
+ imageSupport: {
146
+ add: this.insertImage.bind(this),
147
+ "delete": this.onDeleteImage.bind(this)
148
+ },
149
+ uploadSoundSupport: {
150
+ add: this.insertSound.bind(this),
151
+ "delete": this.onDeleteSound.bind(this)
152
+ }
153
+ });
154
+
155
+ _reactDom["default"].render(element, this);
156
+ }
157
+ }
158
+ }]);
159
+ return ExtendedTextEntry;
160
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
161
+
162
+ exports["default"] = ExtendedTextEntry;
163
+ (0, _defineProperty2["default"])(ExtendedTextEntry, "createDefaultModel", function () {
164
+ var _config$withRubric;
165
+
166
+ var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
167
+ var config = arguments.length > 1 ? arguments[1] : undefined;
168
+
169
+ var defaultModel = _objectSpread(_objectSpread({}, _defaults["default"].model), model); // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)
170
+ // without triggering the Model Updated event (for more details, check documentation)
171
+
172
+
173
+ if (config !== null && config !== void 0 && (_config$withRubric = config.withRubric) !== null && _config$withRubric !== void 0 && _config$withRubric.forceEnabled && !defaultModel.rubricEnabled) {
174
+ defaultModel.rubricEnabled = true;
175
+ }
176
+
177
+ return defaultModel;
178
+ });
179
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.js"],"names":["ExtendedTextEntry","_configuration","defaults","configuration","withRubric","forceEnabled","settings","_model","createDefaultModel","m","render","c","rubricEnabled","dispatchEvent","ModelUpdatedEvent","onModelChanged","handler","InsertImageEvent","src","done","DeleteImageEvent","InsertSoundEvent","DeleteSoundEvent","element","React","createElement","Main","model","bind","onConfigurationChanged","imageSupport","add","insertImage","onDeleteImage","uploadSoundSupport","insertSound","onDeleteSound","ReactDOM","HTMLElement","config","defaultModel"],"mappings":"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","sourcesContent":["import {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport Main from './main';\n\nimport defaults from './defaults';\n\nexport default class ExtendedTextEntry extends HTMLElement {\n static createDefaultModel = (model = {}, config) => {\n const defaultModel = {\n ...defaults.model,\n ...model,\n };\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n if (config?.withRubric?.forceEnabled && !defaultModel.rubricEnabled) {\n defaultModel.rubricEnabled = true;\n }\n\n return defaultModel;\n };\n\n\n constructor() {\n super();\n this._configuration = defaults.configuration;\n\n // if configuration.withRubric.forceEnabled is true, then we\n // update the configuration (we do not want to display the toggle in the Settings Panel)\n if (this._configuration.withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n }\n\n this._model = ExtendedTextEntry.createDefaultModel({}, this._configuration);\n }\n\n set model(m) {\n this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);\n this.render();\n }\n\n set configuration(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n const { withRubric = {} } = c || {};\n\n // if configuration.withRubric.forceEnabled is true, then we update the model (rubricEnabled)\n // without triggering the Model Updated event (for more details, check documentation)\n // and also update the configuration (we do not want to display the toggle in the Settings Panel)\n if (withRubric?.forceEnabled) {\n this._configuration.withRubric.settings = false;\n\n if (!this._model.rubricEnabled) {\n this._model.rubricEnabled = true;\n }\n }\n\n this.render();\n }\n\n onModelChanged(m) {\n this._model = m;\n this.render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n }\n\n onConfigurationChanged(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c,\n };\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this.render();\n }\n\n /**\n *\n * @param {done, progress, file} handler\n */\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n render() {\n if (this._model) {\n const element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
@@ -0,0 +1,287 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.Main = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _configUi = require("@pie-lib/pie-toolbox/config-ui");
27
+
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+
30
+ var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
31
+
32
+ var _styles = require("@material-ui/core/styles");
33
+
34
+ var _editableHtml = require("@pie-lib/pie-toolbox/editable-html");
35
+
36
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
37
+
38
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
39
+
40
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
+
42
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
+
44
+ var Panel = _configUi.settings.Panel,
45
+ toggle = _configUi.settings.toggle,
46
+ numberFields = _configUi.settings.numberFields,
47
+ dropdown = _configUi.settings.dropdown;
48
+ var defaultFeedback = {
49
+ type: 'default',
50
+ "default": 'Your answer has been submitted'
51
+ };
52
+
53
+ var Main = /*#__PURE__*/function (_React$Component) {
54
+ (0, _inherits2["default"])(Main, _React$Component);
55
+
56
+ var _super = _createSuper(Main);
57
+
58
+ function Main(props) {
59
+ var _this;
60
+
61
+ (0, _classCallCheck2["default"])(this, Main);
62
+ _this = _super.call(this, props);
63
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onPromptChange", function (markup) {
64
+ var _this$props = _this.props,
65
+ onModelChanged = _this$props.onModelChanged,
66
+ model = _this$props.model;
67
+ onModelChanged(_objectSpread(_objectSpread({}, model), {}, {
68
+ prompt: markup
69
+ }));
70
+ });
71
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeFeedback", function (feedback) {
72
+ var _this$props2 = _this.props,
73
+ model = _this$props2.model,
74
+ onModelChanged = _this$props2.onModelChanged;
75
+
76
+ var update = _objectSpread(_objectSpread({}, model), {}, {
77
+ feedback: feedback
78
+ });
79
+
80
+ onModelChanged(update);
81
+ });
82
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeTeacherInstructions", function (teacherInstructions) {
83
+ var _this$props3 = _this.props,
84
+ model = _this$props3.model,
85
+ onModelChanged = _this$props3.onModelChanged;
86
+
87
+ var update = _objectSpread(_objectSpread({}, model), {}, {
88
+ teacherInstructions: teacherInstructions
89
+ });
90
+
91
+ onModelChanged(update);
92
+ });
93
+ _this.state = {
94
+ setDimensions: true
95
+ };
96
+ return _this;
97
+ }
98
+
99
+ (0, _createClass2["default"])(Main, [{
100
+ key: "render",
101
+ value: function render() {
102
+ var _this$props4 = this.props,
103
+ model = _this$props4.model,
104
+ classes = _this$props4.classes,
105
+ configuration = _this$props4.configuration,
106
+ imageSupport = _this$props4.imageSupport,
107
+ onConfigurationChanged = _this$props4.onConfigurationChanged,
108
+ onModelChanged = _this$props4.onModelChanged,
109
+ uploadSoundSupport = _this$props4.uploadSoundSupport;
110
+
111
+ var _ref = configuration || {},
112
+ _ref$contentDimension = _ref.contentDimensions,
113
+ contentDimensions = _ref$contentDimension === void 0 ? {} : _ref$contentDimension,
114
+ _ref$dimensions = _ref.dimensions,
115
+ dimensions = _ref$dimensions === void 0 ? {} : _ref$dimensions,
116
+ _ref$equationEditor = _ref.equationEditor,
117
+ equationEditor = _ref$equationEditor === void 0 ? {} : _ref$equationEditor,
118
+ _ref$feedback = _ref.feedback,
119
+ feedback = _ref$feedback === void 0 ? {} : _ref$feedback,
120
+ _ref$playerSpellCheck = _ref.playerSpellCheck,
121
+ playerSpellCheck = _ref$playerSpellCheck === void 0 ? {} : _ref$playerSpellCheck,
122
+ _ref$prompt = _ref.prompt,
123
+ prompt = _ref$prompt === void 0 ? {} : _ref$prompt,
124
+ settingsPanelDisabled = _ref.settingsPanelDisabled,
125
+ _ref$spanishInput = _ref.spanishInput,
126
+ spanishInput = _ref$spanishInput === void 0 ? {} : _ref$spanishInput,
127
+ _ref$specialInput = _ref.specialInput,
128
+ specialInput = _ref$specialInput === void 0 ? {} : _ref$specialInput,
129
+ _ref$spellCheck = _ref.spellCheck,
130
+ spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
131
+ _ref$studentInstructi = _ref.studentInstructions,
132
+ studentInstructions = _ref$studentInstructi === void 0 ? {} : _ref$studentInstructi,
133
+ _ref$teacherInstructi = _ref.teacherInstructions,
134
+ teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
135
+ _ref$mathInput = _ref.mathInput,
136
+ mathInput = _ref$mathInput === void 0 ? {} : _ref$mathInput,
137
+ _ref$maxImageWidth = _ref.maxImageWidth,
138
+ maxImageWidth = _ref$maxImageWidth === void 0 ? {} : _ref$maxImageWidth,
139
+ _ref$maxImageHeight = _ref.maxImageHeight,
140
+ maxImageHeight = _ref$maxImageHeight === void 0 ? {} : _ref$maxImageHeight,
141
+ _ref$multiple = _ref.multiple,
142
+ multiple = _ref$multiple === void 0 ? {} : _ref$multiple,
143
+ _ref$withRubric = _ref.withRubric,
144
+ withRubric = _ref$withRubric === void 0 ? {} : _ref$withRubric,
145
+ _ref$mathMlOptions = _ref.mathMlOptions,
146
+ mathMlOptions = _ref$mathMlOptions === void 0 ? {} : _ref$mathMlOptions;
147
+
148
+ var _ref2 = model || {},
149
+ feedbackEnabled = _ref2.feedbackEnabled,
150
+ promptEnabled = _ref2.promptEnabled,
151
+ spellCheckEnabled = _ref2.spellCheckEnabled,
152
+ teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
153
+ toolbarEditorPosition = _ref2.toolbarEditorPosition;
154
+
155
+ var defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;
156
+ var defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;
157
+ var toolbarOpts = {
158
+ position: toolbarEditorPosition === 'top' ? 'top' : 'bottom'
159
+ };
160
+ var panelSettings = {
161
+ mathInput: mathInput.settings && toggle(mathInput.label),
162
+ 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']),
163
+ spanishInput: spanishInput.settings && toggle(spanishInput.label),
164
+ specialInput: specialInput.settings && toggle(specialInput.label),
165
+ dimensions: numberFields(dimensions.label, {
166
+ width: {
167
+ label: 'Width (px)',
168
+ suffix: 'px',
169
+ min: 100,
170
+ max: 500
171
+ },
172
+ height: {
173
+ label: 'Height (px)',
174
+ suffix: 'px',
175
+ min: 100,
176
+ max: 500
177
+ }
178
+ }),
179
+ 'multiple.enabled': multiple.settings && toggle(multiple.label, true),
180
+ promptEnabled: prompt.settings && toggle(prompt.label),
181
+ feedbackEnabled: feedback.settings && toggle(feedback.label),
182
+ spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
183
+ playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label)
184
+ };
185
+ var panelProperties = {
186
+ teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
187
+ studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),
188
+ rubricEnabled: (withRubric === null || withRubric === void 0 ? void 0 : withRubric.settings) && toggle(withRubric === null || withRubric === void 0 ? void 0 : withRubric.label)
189
+ };
190
+ return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
191
+ dimensions: contentDimensions,
192
+ hideSettings: settingsPanelDisabled,
193
+ settings: /*#__PURE__*/_react["default"].createElement(Panel, {
194
+ model: model,
195
+ configuration: configuration,
196
+ onChangeModel: function onChangeModel(model) {
197
+ return onModelChanged(model);
198
+ },
199
+ onChangeConfiguration: function onChangeConfiguration(config) {
200
+ return onConfigurationChanged(config);
201
+ },
202
+ groups: {
203
+ Settings: panelSettings,
204
+ Properties: panelProperties
205
+ }
206
+ })
207
+ }, teacherInstructionsEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
208
+ label: teacherInstructions.label,
209
+ className: classes.promptContainer
210
+ }, /*#__PURE__*/_react["default"].createElement(_editableHtml.EditableHtml, {
211
+ className: classes.prompt,
212
+ markup: model.teacherInstructions || '',
213
+ onChange: this.changeTeacherInstructions,
214
+ imageSupport: imageSupport,
215
+ nonEmpty: false,
216
+ toolbarOpts: toolbarOpts,
217
+ spellCheck: spellCheckEnabled,
218
+ maxImageWidth: maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth,
219
+ maxImageHeight: maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight,
220
+ uploadSoundSupport: uploadSoundSupport,
221
+ languageCharactersProps: [{
222
+ language: 'spanish'
223
+ }, {
224
+ language: 'special'
225
+ }],
226
+ mathMlOptions: mathMlOptions
227
+ })), promptEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
228
+ label: prompt.label,
229
+ className: classes.promptContainer
230
+ }, /*#__PURE__*/_react["default"].createElement(_editableHtml.EditableHtml, {
231
+ activePlugins: _editableHtml.ALL_PLUGINS,
232
+ className: classes.prompt,
233
+ markup: model.prompt || '',
234
+ onChange: this.onPromptChange,
235
+ imageSupport: imageSupport,
236
+ nonEmpty: false,
237
+ toolbarOpts: toolbarOpts,
238
+ spellCheck: spellCheckEnabled,
239
+ maxImageWidth: defaultImageMaxWidth,
240
+ maxImageHeight: defaultImageMaxHeight,
241
+ uploadSoundSupport: uploadSoundSupport,
242
+ languageCharactersProps: [{
243
+ language: 'spanish'
244
+ }, {
245
+ language: 'special'
246
+ }],
247
+ mathMlOptions: mathMlOptions
248
+ })), feedbackEnabled && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
249
+ className: classes.header,
250
+ variant: "subheading"
251
+ }, "Feedback"), /*#__PURE__*/_react["default"].createElement(_configUi.FeedbackSelector, {
252
+ label: "When submitted, show",
253
+ feedback: model.feedback || defaultFeedback,
254
+ onChange: this.changeFeedback,
255
+ toolbarOpts: toolbarOpts
256
+ })));
257
+ }
258
+ }]);
259
+ return Main;
260
+ }(_react["default"].Component);
261
+
262
+ exports.Main = Main;
263
+ (0, _defineProperty2["default"])(Main, "propTypes", {
264
+ onModelChanged: _propTypes["default"].func.isRequired,
265
+ onConfigurationChanged: _propTypes["default"].func,
266
+ model: _propTypes["default"].object.isRequired,
267
+ configuration: _propTypes["default"].object.isRequired,
268
+ imageSupport: _propTypes["default"].object.isRequired,
269
+ uploadSoundSupport: _propTypes["default"].object.isRequired,
270
+ classes: _propTypes["default"].object.isRequired
271
+ });
272
+
273
+ var _default = (0, _styles.withStyles)(function (theme) {
274
+ return {
275
+ header: {
276
+ paddingBottom: theme.spacing.unit
277
+ },
278
+ promptContainer: {
279
+ paddingTop: theme.spacing.unit * 2,
280
+ marginBottom: theme.spacing.unit * 2,
281
+ width: '100%'
282
+ }
283
+ };
284
+ })(Main);
285
+
286
+ exports["default"] = _default;
287
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","props","markup","onModelChanged","model","prompt","feedback","update","teacherInstructions","state","setDimensions","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","contentDimensions","dimensions","equationEditor","playerSpellCheck","settingsPanelDisabled","spanishInput","specialInput","spellCheck","studentInstructions","mathInput","maxImageWidth","maxImageHeight","multiple","withRubric","mathMlOptions","feedbackEnabled","promptEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","panelSettings","label","enabled","width","suffix","min","max","height","playerSpellCheckDisabled","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","promptContainer","changeTeacherInstructions","language","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { FeedbackSelector, InputContainer, settings, layout } from '@pie-lib/pie-toolbox/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/pie-toolbox/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { setDimensions: true };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, prompt: markup });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, configuration, imageSupport, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n contentDimensions = {},\n dimensions = {},\n equationEditor = {},\n feedback = {},\n playerSpellCheck = {},\n prompt = {},\n settingsPanelDisabled,\n spanishInput = {},\n specialInput = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n mathInput = {},\n maxImageWidth = {},\n maxImageHeight = {},\n multiple = {},\n withRubric = {},\n mathMlOptions = {},\n } = configuration || {};\n const { feedbackEnabled, promptEnabled, spellCheckEnabled, teacherInstructionsEnabled, toolbarEditorPosition } =\n model || {};\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const panelSettings = {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor:\n equationEditor.enabled &&\n model.mathInput &&\n dropdown(equationEditor.label, [\n 'non-negative-integers',\n 'integers',\n 'decimals',\n 'fractions',\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'item-authoring',\n ]),\n spanishInput: spanishInput.settings && toggle(spanishInput.label),\n specialInput: specialInput.settings && toggle(specialInput.label),\n dimensions: numberFields(dimensions.label, {\n width: { label: 'Width (px)', suffix: 'px', min: 100, max: 500 },\n height: { label: 'Height (px)', suffix: 'px', min: 100, max: 500 },\n }),\n 'multiple.enabled': multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptContainer}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptContainer}>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n className={classes.prompt}\n markup={model.prompt || ''}\n onChange={this.onPromptChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <React.Fragment>\n <Typography className={classes.header} variant=\"subheading\">\n Feedback\n </Typography>\n\n <FeedbackSelector\n label=\"When submitted, show\"\n feedback={model.feedback || defaultFeedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles((theme) => ({\n header: {\n paddingBottom: theme.spacing.unit,\n },\n promptContainer: {\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n width: '100%',\n },\n}))(Main);\n"],"file":"main.js"}
@@ -10,7 +10,7 @@
10
10
  "dependencies": {
11
11
  "@material-ui/core": "^3.9.2",
12
12
  "@pie-framework/pie-configure-events": "^1.3.0",
13
- "@pie-lib/pie-toolbox": "1.8.3-next.17",
13
+ "@pie-lib/pie-toolbox": "1.8.1",
14
14
  "lodash": "^4.17.15",
15
15
  "prop-types": "^15.6.2",
16
16
  "react": "^16.8.1",
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = {
8
+ dimensions: {
9
+ height: 100,
10
+ width: 500
11
+ }
12
+ };
13
+ exports["default"] = _default;
14
+ //# sourceMappingURL=defaults.js.map