@pie-element/extended-text-entry 8.2.1-beta.3 → 8.2.1-beta.4

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,99 @@
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: true,
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
+ }
97
+ };
98
+ exports["default"] = _default;
99
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"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","exports","_default"],"sources":["../src/defaults.js"],"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: true,\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 },\n};\n"],"mappings":";;;;;;eAAe;EACbA,KAAK,EAAE;IACLC,UAAU,EAAE;MACVC,MAAM,EAAE,GAAG;MACXC,KAAK,EAAE;IACT,CAAC;IACDC,MAAM,EAAE,6BAA6B;IACrCC,SAAS,EAAE,KAAK;IAChBC,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,KAAK;IACnBC,cAAc,EAAE,cAAc;IAC9BC,eAAe,EAAE,IAAI;IACrBC,gBAAgB,EAAE,IAAI;IACtBC,aAAa,EAAE,IAAI;IACnBC,0BAA0B,EAAE,IAAI;IAChCC,0BAA0B,EAAE,IAAI;IAChCC,iBAAiB,EAAE,IAAI;IACvBC,wBAAwB,EAAE,IAAI;IAC9BC,qBAAqB,EAAE;EACzB,CAAC;EACDC,aAAa,EAAE;IACbhB,UAAU,EAAE;MACViB,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;IACT,CAAC;IACDC,UAAU,EAAE;MACVD,KAAK,EAAE,YAAY;MACnBD,QAAQ,EAAE,KAAK;MACfG,OAAO,EAAE;IACX,CAAC;IACDC,gBAAgB,EAAE;MAChBH,KAAK,EAAE,4BAA4B;MACnCD,QAAQ,EAAE,IAAI;MACdG,OAAO,EAAE;IACX,CAAC;IACDb,cAAc,EAAE;MACdU,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE,iBAAiB;MACxBE,OAAO,EAAE;IACX,CAAC;IACDE,QAAQ,EAAE;MACRL,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;IACT,CAAC;IACDd,SAAS,EAAE;MACTa,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE,4CAA4C;MACnDE,OAAO,EAAE;IACX,CAAC;IACDG,qBAAqB,EAAE,KAAK;IAC5BlB,YAAY,EAAE;MACZY,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE,6BAA6B;MACpCE,OAAO,EAAE;IACX,CAAC;IACDd,YAAY,EAAE;MACZW,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE,wCAAwC;MAC/CE,OAAO,EAAE;IACX,CAAC;IACDI,QAAQ,EAAE;MACRP,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE,gBAAgB;MACvBE,OAAO,EAAE;IACX,CAAC;IACDK,mBAAmB,EAAE;MACnBR,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE;IACT,CAAC;IACDf,MAAM,EAAE;MACNc,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;IACT,CAAC;IACDQ,mBAAmB,EAAE;MACnBT,QAAQ,EAAE,IAAI;MACdC,KAAK,EAAE;IACT,CAAC;IACDS,aAAa,EAAE;MACbD,mBAAmB,EAAE,GAAG;MACxBvB,MAAM,EAAE;IACV,CAAC;IACDyB,cAAc,EAAE;MACdF,mBAAmB,EAAE,GAAG;MACxBvB,MAAM,EAAE;IACV,CAAC;IACD0B,UAAU,EAAE;MACVZ,QAAQ,EAAE,KAAK;MACfC,KAAK,EAAE;IACT;EACF;AACF,CAAC;AAAAY,OAAA,cAAAC,QAAA"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
17
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
+ var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
19
+ var _react = _interopRequireDefault(require("react"));
20
+ var _reactDom = _interopRequireDefault(require("react-dom"));
21
+ var _main = _interopRequireDefault(require("./main"));
22
+ var _defaults = _interopRequireDefault(require("./defaults"));
23
+ 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; }
24
+ 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; }
25
+ 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); }; }
26
+ 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; } }
27
+ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
28
+ (0, _inherits2["default"])(ExtendedTextEntry, _HTMLElement);
29
+ var _super = _createSuper(ExtendedTextEntry);
30
+ function ExtendedTextEntry() {
31
+ var _this;
32
+ (0, _classCallCheck2["default"])(this, ExtendedTextEntry);
33
+ _this = _super.call(this);
34
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "verifyRubric", /*#__PURE__*/function () {
35
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(c) {
36
+ var _ref2, _ref2$withRubric, withRubric;
37
+ return _regenerator["default"].wrap(function _callee$(_context) {
38
+ while (1) switch (_context.prev = _context.next) {
39
+ case 0:
40
+ _ref2 = c || {}, _ref2$withRubric = _ref2.withRubric, withRubric = _ref2$withRubric === void 0 ? {} : _ref2$withRubric;
41
+ if (withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled && !_this._model.rubricEnabled) {
42
+ _this._model.rubricEnabled = true;
43
+ _this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(_this._model));
44
+ }
45
+ case 2:
46
+ case "end":
47
+ return _context.stop();
48
+ }
49
+ }, _callee);
50
+ }));
51
+ return function (_x) {
52
+ return _ref.apply(this, arguments);
53
+ };
54
+ }());
55
+ _this._configuration = _defaults["default"].configuration;
56
+ _this._model = ExtendedTextEntry.createDefaultModel({}, _this._configuration);
57
+ _this.onModelChanged = _this.onModelChanged.bind((0, _assertThisInitialized2["default"])(_this));
58
+ return _this;
59
+ }
60
+ (0, _createClass2["default"])(ExtendedTextEntry, [{
61
+ key: "model",
62
+ set: function set(m) {
63
+ this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);
64
+ this.render();
65
+ }
66
+ }, {
67
+ key: "configuration",
68
+ set: function set(c) {
69
+ this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
70
+ this.verifyRubric(this._configuration);
71
+ this.render();
72
+ }
73
+ }, {
74
+ key: "onModelChanged",
75
+ value: function onModelChanged(m) {
76
+ this._model = m;
77
+ this.render();
78
+ this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, false));
79
+ }
80
+ }, {
81
+ key: "onConfigurationChanged",
82
+ value: function onConfigurationChanged(c) {
83
+ this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
84
+ if (this._model) {
85
+ var _ref3 = c || {},
86
+ _ref3$withRubric = _ref3.withRubric,
87
+ withRubric = _ref3$withRubric === void 0 ? {} : _ref3$withRubric;
88
+ if (withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled) {
89
+ this._model.rubricEnabled = true;
90
+ }
91
+ this.onModelChanged(this._model);
92
+ }
93
+ this.render();
94
+ }
95
+
96
+ /**
97
+ *
98
+ * @param {done, progress, file} handler
99
+ */
100
+ }, {
101
+ key: "insertImage",
102
+ value: function insertImage(handler) {
103
+ this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
104
+ }
105
+ }, {
106
+ key: "onDeleteImage",
107
+ value: function onDeleteImage(src, done) {
108
+ this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
109
+ }
110
+ }, {
111
+ key: "insertSound",
112
+ value: function insertSound(handler) {
113
+ this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
114
+ }
115
+ }, {
116
+ key: "onDeleteSound",
117
+ value: function onDeleteSound(src, done) {
118
+ this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
119
+ }
120
+ }, {
121
+ key: "render",
122
+ value: function render() {
123
+ console.log('this._model.rubricEnabled', this._model.rubricEnabled);
124
+ if (this._model) {
125
+ var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
126
+ model: this._model,
127
+ configuration: this._configuration,
128
+ onModelChanged: this.onModelChanged.bind(this),
129
+ onConfigurationChanged: this.onConfigurationChanged.bind(this),
130
+ imageSupport: {
131
+ add: this.insertImage.bind(this),
132
+ "delete": this.onDeleteImage.bind(this)
133
+ },
134
+ uploadSoundSupport: {
135
+ add: this.insertSound.bind(this),
136
+ "delete": this.onDeleteSound.bind(this)
137
+ }
138
+ });
139
+ _reactDom["default"].render(element, this);
140
+ }
141
+ }
142
+ }]);
143
+ return ExtendedTextEntry;
144
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
145
+ exports["default"] = ExtendedTextEntry;
146
+ (0, _defineProperty2["default"])(ExtendedTextEntry, "createDefaultModel", function () {
147
+ var _config$withRubric;
148
+ var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
149
+ var config = arguments.length > 1 ? arguments[1] : undefined;
150
+ var defaultModel = _objectSpread(_objectSpread({}, _defaults["default"].model), model);
151
+ if (config !== null && config !== void 0 && (_config$withRubric = config.withRubric) !== null && _config$withRubric !== void 0 && _config$withRubric.forceEnabled && !defaultModel.rubricEnabled) {
152
+ defaultModel.rubricEnabled = true;
153
+ }
154
+ return defaultModel;
155
+ });
156
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_pieConfigureEvents","require","_react","_interopRequireDefault","_reactDom","_main","_defaults","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","ExtendedTextEntry","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_assertThisInitialized2","_ref","_asyncToGenerator2","_regenerator","mark","_callee","c","_ref2","_ref2$withRubric","withRubric","wrap","_callee$","_context","prev","next","forceEnabled","_model","rubricEnabled","dispatchEvent","ModelUpdatedEvent","stop","_x","_configuration","defaults","configuration","createDefaultModel","onModelChanged","bind","_createClass2","set","m","render","verifyRubric","value","onConfigurationChanged","_ref3","_ref3$withRubric","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","console","log","element","React","createElement","Main","model","imageSupport","add","uploadSoundSupport","ReactDOM","_wrapNativeSuper2","HTMLElement","exports","_config$withRubric","undefined","config","defaultModel"],"sources":["../src/index.js"],"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 (config?.withRubric?.forceEnabled && !defaultModel.rubricEnabled) {\n defaultModel.rubricEnabled = true;\n }\n\n return defaultModel;\n };\n\n constructor() {\n super();\n this._configuration = defaults.configuration;\n this._model = ExtendedTextEntry.createDefaultModel({}, this._configuration);\n this.onModelChanged = this.onModelChanged.bind(this);\n }\n\n verifyRubric = async (c) => {\n const { withRubric = {} } = c || {};\n\n if (withRubric?.forceEnabled && !this._model.rubricEnabled) {\n this._model.rubricEnabled = true;\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\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 this.verifyRubric(this._configuration);\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 const { withRubric = {} } = c || {};\n\n if (withRubric?.forceEnabled) {\n this._model.rubricEnabled = true;\n }\n\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 console.log('this._model.rubricEnabled', this._model.rubricEnabled);\n\n if (this._model) {\n const element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n ReactDOM.render(element, this);\n }\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.Main = void 0;
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _react = _interopRequireDefault(require("react"));
17
+ var _configUi = require("@pie-lib/config-ui");
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+ var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
20
+ var _styles = require("@material-ui/core/styles");
21
+ var _editableHtml = _interopRequireWildcard(require("@pie-lib/editable-html"));
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
24
+ 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; }
25
+ 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; }
26
+ 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); }; }
27
+ 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; } }
28
+ var Panel = _configUi.settings.Panel,
29
+ toggle = _configUi.settings.toggle,
30
+ numberFields = _configUi.settings.numberFields,
31
+ dropdown = _configUi.settings.dropdown;
32
+ var defaultFeedback = {
33
+ type: 'default',
34
+ "default": 'Your answer has been submitted'
35
+ };
36
+ var Main = /*#__PURE__*/function (_React$Component) {
37
+ (0, _inherits2["default"])(Main, _React$Component);
38
+ var _super = _createSuper(Main);
39
+ function Main(props) {
40
+ var _this;
41
+ (0, _classCallCheck2["default"])(this, Main);
42
+ _this = _super.call(this, props);
43
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onPromptChange", function (markup) {
44
+ var _this$props = _this.props,
45
+ onModelChanged = _this$props.onModelChanged,
46
+ model = _this$props.model;
47
+ onModelChanged(_objectSpread(_objectSpread({}, model), {}, {
48
+ prompt: markup
49
+ }));
50
+ });
51
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeFeedback", function (feedback) {
52
+ var _this$props2 = _this.props,
53
+ model = _this$props2.model,
54
+ onModelChanged = _this$props2.onModelChanged;
55
+ var update = _objectSpread(_objectSpread({}, model), {}, {
56
+ feedback: feedback
57
+ });
58
+ onModelChanged(update);
59
+ });
60
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeTeacherInstructions", function (teacherInstructions) {
61
+ var _this$props3 = _this.props,
62
+ model = _this$props3.model,
63
+ onModelChanged = _this$props3.onModelChanged;
64
+ var update = _objectSpread(_objectSpread({}, model), {}, {
65
+ teacherInstructions: teacherInstructions
66
+ });
67
+ onModelChanged(update);
68
+ });
69
+ _this.state = {
70
+ setDimensions: true
71
+ };
72
+ return _this;
73
+ }
74
+ (0, _createClass2["default"])(Main, [{
75
+ key: "render",
76
+ value: function render() {
77
+ var _this$props4 = this.props,
78
+ model = _this$props4.model,
79
+ classes = _this$props4.classes,
80
+ configuration = _this$props4.configuration,
81
+ imageSupport = _this$props4.imageSupport,
82
+ onConfigurationChanged = _this$props4.onConfigurationChanged,
83
+ onModelChanged = _this$props4.onModelChanged,
84
+ uploadSoundSupport = _this$props4.uploadSoundSupport;
85
+ var _ref = configuration || {},
86
+ _ref$dimensions = _ref.dimensions,
87
+ dimensions = _ref$dimensions === void 0 ? {} : _ref$dimensions,
88
+ _ref$equationEditor = _ref.equationEditor,
89
+ equationEditor = _ref$equationEditor === void 0 ? {} : _ref$equationEditor,
90
+ _ref$feedback = _ref.feedback,
91
+ feedback = _ref$feedback === void 0 ? {} : _ref$feedback,
92
+ _ref$playerSpellCheck = _ref.playerSpellCheck,
93
+ playerSpellCheck = _ref$playerSpellCheck === void 0 ? {} : _ref$playerSpellCheck,
94
+ _ref$prompt = _ref.prompt,
95
+ prompt = _ref$prompt === void 0 ? {} : _ref$prompt,
96
+ settingsPanelDisabled = _ref.settingsPanelDisabled,
97
+ _ref$spanishInput = _ref.spanishInput,
98
+ spanishInput = _ref$spanishInput === void 0 ? {} : _ref$spanishInput,
99
+ _ref$specialInput = _ref.specialInput,
100
+ specialInput = _ref$specialInput === void 0 ? {} : _ref$specialInput,
101
+ _ref$spellCheck = _ref.spellCheck,
102
+ spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
103
+ _ref$studentInstructi = _ref.studentInstructions,
104
+ studentInstructions = _ref$studentInstructi === void 0 ? {} : _ref$studentInstructi,
105
+ _ref$teacherInstructi = _ref.teacherInstructions,
106
+ teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
107
+ _ref$mathInput = _ref.mathInput,
108
+ mathInput = _ref$mathInput === void 0 ? {} : _ref$mathInput,
109
+ _ref$maxImageWidth = _ref.maxImageWidth,
110
+ maxImageWidth = _ref$maxImageWidth === void 0 ? {} : _ref$maxImageWidth,
111
+ _ref$maxImageHeight = _ref.maxImageHeight,
112
+ maxImageHeight = _ref$maxImageHeight === void 0 ? {} : _ref$maxImageHeight,
113
+ _ref$multiple = _ref.multiple,
114
+ multiple = _ref$multiple === void 0 ? {} : _ref$multiple,
115
+ _ref$withRubric = _ref.withRubric,
116
+ withRubric = _ref$withRubric === void 0 ? {} : _ref$withRubric;
117
+ var _ref2 = model || {},
118
+ feedbackEnabled = _ref2.feedbackEnabled,
119
+ promptEnabled = _ref2.promptEnabled,
120
+ spellCheckEnabled = _ref2.spellCheckEnabled,
121
+ teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
122
+ toolbarEditorPosition = _ref2.toolbarEditorPosition;
123
+ var defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;
124
+ var defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;
125
+ var toolbarOpts = {
126
+ position: toolbarEditorPosition === 'top' ? 'top' : 'bottom'
127
+ };
128
+ var panelSettings = {
129
+ mathInput: mathInput.settings && toggle(mathInput.label),
130
+ 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']),
131
+ spanishInput: spanishInput.settings && toggle(spanishInput.label),
132
+ specialInput: specialInput.settings && toggle(specialInput.label),
133
+ dimensions: numberFields(dimensions.label, {
134
+ width: {
135
+ label: 'Width (px)',
136
+ suffix: 'px',
137
+ min: 100,
138
+ max: 500
139
+ },
140
+ height: {
141
+ label: 'Height (px)',
142
+ suffix: 'px',
143
+ min: 100,
144
+ max: 500
145
+ }
146
+ }),
147
+ 'multiple.enabled': multiple.settings && toggle(multiple.label, true),
148
+ promptEnabled: prompt.settings && toggle(prompt.label),
149
+ feedbackEnabled: feedback.settings && toggle(feedback.label),
150
+ spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
151
+ playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label)
152
+ };
153
+ var panelProperties = {
154
+ teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
155
+ studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),
156
+ rubricEnabled: !(withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled) && (withRubric === null || withRubric === void 0 ? void 0 : withRubric.settings) && toggle(withRubric === null || withRubric === void 0 ? void 0 : withRubric.label)
157
+ };
158
+ return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
159
+ hideSettings: settingsPanelDisabled,
160
+ settings: /*#__PURE__*/_react["default"].createElement(Panel, {
161
+ model: model,
162
+ configuration: configuration,
163
+ onChangeModel: function onChangeModel(model) {
164
+ return onModelChanged(model);
165
+ },
166
+ onChangeConfiguration: function onChangeConfiguration(config) {
167
+ return onConfigurationChanged(config);
168
+ },
169
+ groups: {
170
+ Settings: panelSettings,
171
+ Properties: panelProperties
172
+ }
173
+ })
174
+ }, /*#__PURE__*/_react["default"].createElement("div", null, teacherInstructionsEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
175
+ label: teacherInstructions.label,
176
+ className: classes.promptContainer
177
+ }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
178
+ className: classes.prompt,
179
+ markup: model.teacherInstructions || '',
180
+ onChange: this.changeTeacherInstructions,
181
+ imageSupport: imageSupport,
182
+ nonEmpty: false,
183
+ toolbarOpts: toolbarOpts,
184
+ spellCheck: spellCheckEnabled,
185
+ maxImageWidth: maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth,
186
+ maxImageHeight: maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight,
187
+ uploadSoundSupport: uploadSoundSupport,
188
+ languageCharactersProps: [{
189
+ language: 'spanish'
190
+ }, {
191
+ language: 'special'
192
+ }]
193
+ })), promptEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
194
+ label: prompt.label,
195
+ className: classes.promptContainer
196
+ }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
197
+ activePlugins: _editableHtml.ALL_PLUGINS,
198
+ className: classes.prompt,
199
+ markup: model.prompt || '',
200
+ onChange: this.onPromptChange,
201
+ imageSupport: imageSupport,
202
+ nonEmpty: false,
203
+ toolbarOpts: toolbarOpts,
204
+ spellCheck: spellCheckEnabled,
205
+ maxImageWidth: defaultImageMaxWidth,
206
+ maxImageHeight: defaultImageMaxHeight,
207
+ uploadSoundSupport: uploadSoundSupport,
208
+ languageCharactersProps: [{
209
+ language: 'spanish'
210
+ }, {
211
+ language: 'special'
212
+ }]
213
+ })), feedbackEnabled && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
214
+ className: classes.header,
215
+ variant: "subheading"
216
+ }, "Feedback"), /*#__PURE__*/_react["default"].createElement(_configUi.FeedbackSelector, {
217
+ label: "When submitted, show",
218
+ feedback: model.feedback || defaultFeedback,
219
+ onChange: this.changeFeedback,
220
+ toolbarOpts: toolbarOpts
221
+ }))));
222
+ }
223
+ }]);
224
+ return Main;
225
+ }(_react["default"].Component);
226
+ exports.Main = Main;
227
+ (0, _defineProperty2["default"])(Main, "propTypes", {
228
+ onModelChanged: _propTypes["default"].func.isRequired,
229
+ onConfigurationChanged: _propTypes["default"].func,
230
+ model: _propTypes["default"].object.isRequired,
231
+ configuration: _propTypes["default"].object.isRequired,
232
+ imageSupport: _propTypes["default"].object.isRequired,
233
+ uploadSoundSupport: _propTypes["default"].object.isRequired,
234
+ classes: _propTypes["default"].object.isRequired
235
+ });
236
+ var _default = (0, _styles.withStyles)(function (theme) {
237
+ return {
238
+ header: {
239
+ paddingBottom: theme.spacing.unit
240
+ },
241
+ promptContainer: {
242
+ paddingTop: theme.spacing.unit * 2,
243
+ marginBottom: theme.spacing.unit * 2,
244
+ width: '100%'
245
+ },
246
+ promptInput: {
247
+ width: '100%',
248
+ marginBottom: theme.spacing.unit
249
+ },
250
+ field: {
251
+ width: '200px'
252
+ }
253
+ };
254
+ })(Main);
255
+ exports["default"] = _default;
256
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_configUi","_propTypes","_Typography","_styles","_editableHtml","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","_assertThisInitialized2","markup","_this$props","onModelChanged","model","prompt","feedback","_this$props2","update","teacherInstructions","_this$props3","state","setDimensions","_createClass2","value","render","_this$props4","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","_ref","_ref$dimensions","dimensions","_ref$equationEditor","equationEditor","_ref$feedback","_ref$playerSpellCheck","playerSpellCheck","_ref$prompt","settingsPanelDisabled","_ref$spanishInput","spanishInput","_ref$specialInput","specialInput","_ref$spellCheck","spellCheck","_ref$studentInstructi","studentInstructions","_ref$teacherInstructi","_ref$mathInput","mathInput","_ref$maxImageWidth","maxImageWidth","_ref$maxImageHeight","maxImageHeight","_ref$multiple","multiple","_ref$withRubric","withRubric","_ref2","feedbackEnabled","promptEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","panelSettings","label","enabled","width","suffix","min","max","height","playerSpellCheckDisabled","panelProperties","studentInstructionsEnabled","rubricEnabled","forceEnabled","createElement","layout","ConfigLayout","hideSettings","onChangeModel","onChangeConfiguration","config","groups","Settings","Properties","InputContainer","className","promptContainer","onChange","changeTeacherInstructions","nonEmpty","languageCharactersProps","language","activePlugins","ALL_PLUGINS","onPromptChange","Fragment","header","variant","FeedbackSelector","changeFeedback","React","Component","exports","PropTypes","func","isRequired","_default","withStyles","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport { FeedbackSelector, InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { setDimensions: true };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, prompt: markup });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, configuration, imageSupport, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n dimensions = {},\n equationEditor = {},\n feedback = {},\n playerSpellCheck = {},\n prompt = {},\n settingsPanelDisabled,\n spanishInput = {},\n specialInput = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n mathInput = {},\n maxImageWidth = {},\n maxImageHeight = {},\n multiple = {},\n withRubric = {},\n } = configuration || {};\n const { feedbackEnabled, promptEnabled, spellCheckEnabled, teacherInstructionsEnabled, toolbarEditorPosition } =\n model || {};\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const panelSettings = {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor:\n equationEditor.enabled &&\n model.mathInput &&\n dropdown(equationEditor.label, [\n 'non-negative-integers',\n 'integers',\n 'decimals',\n 'fractions',\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'item-authoring',\n ]),\n spanishInput: spanishInput.settings && toggle(spanishInput.label),\n specialInput: specialInput.settings && toggle(specialInput.label),\n dimensions: numberFields(dimensions.label, {\n width: { label: 'Width (px)', suffix: 'px', min: 100, max: 500 },\n height: { label: 'Height (px)', suffix: 'px', min: 100, max: 500 },\n }),\n 'multiple.enabled': multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rubricEnabled: !withRubric?.forceEnabled && withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n <div>\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptContainer}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptContainer}>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n className={classes.prompt}\n markup={model.prompt || ''}\n onChange={this.onPromptChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <React.Fragment>\n <Typography className={classes.header} variant=\"subheading\">\n Feedback\n </Typography>\n\n <FeedbackSelector\n label=\"When submitted, show\"\n feedback={model.feedback || defaultFeedback}\n onChange={this.changeFeedback}\n toolbarOpts={toolbarOpts}\n />\n </React.Fragment>\n )}\n </div>\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles((theme) => ({\n header: {\n paddingBottom: theme.spacing.unit,\n },\n promptContainer: {\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n width: '100%',\n },\n promptInput: {\n width: '100%',\n marginBottom: theme.spacing.unit,\n },\n field: {\n width: '200px',\n },\n}))(Main);\n"],"mappings":"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"}
@@ -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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","names":["dimensions","height","width","exports","_default"],"sources":["../src/defaults.js"],"sourcesContent":["export default {\n dimensions: {\n height: 100,\n width: 500,\n },\n};\n"],"mappings":";;;;;;eAAe;EACbA,UAAU,EAAE;IACVC,MAAM,EAAE,GAAG;IACXC,KAAK,EAAE;EACT;AACF,CAAC;AAAAC,OAAA,cAAAC,QAAA"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createDefaultModel = createDefaultModel;
8
+ exports.model = model;
9
+ exports.normalize = void 0;
10
+ exports.outcome = outcome;
11
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
14
+ var _debug = _interopRequireDefault(require("debug"));
15
+ var _feedback = require("@pie-lib/feedback");
16
+ var _defaults = _interopRequireDefault(require("./defaults"));
17
+ 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; }
18
+ 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; }
19
+ var log = (0, _debug["default"])('@pie-element:extended-text-entry:controller');
20
+ function createDefaultModel() {
21
+ return _createDefaultModel.apply(this, arguments);
22
+ }
23
+ function _createDefaultModel() {
24
+ _createDefaultModel = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
25
+ var model,
26
+ _args = arguments;
27
+ return _regenerator["default"].wrap(function _callee$(_context) {
28
+ while (1) switch (_context.prev = _context.next) {
29
+ case 0:
30
+ model = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
31
+ log('[createDefaultModel]', model);
32
+ return _context.abrupt("return", _objectSpread(_objectSpread({}, _defaults["default"]), model));
33
+ case 3:
34
+ case "end":
35
+ return _context.stop();
36
+ }
37
+ }, _callee);
38
+ }));
39
+ return _createDefaultModel.apply(this, arguments);
40
+ }
41
+ var normalize = function normalize(question) {
42
+ return _objectSpread(_objectSpread({}, _defaults["default"]), {}, {
43
+ feedbackEnabled: true,
44
+ rationaleEnabled: true,
45
+ promptEnabled: true,
46
+ teacherInstructionsEnabled: true,
47
+ studentInstructionsEnabled: true,
48
+ playerSpellCheckDisabled: true
49
+ }, question);
50
+ };
51
+ exports.normalize = normalize;
52
+ function model(_x, _x2, _x3) {
53
+ return _model.apply(this, arguments);
54
+ }
55
+ function _model() {
56
+ _model = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(question, session, env) {
57
+ var normalizedQuestion, fb, teacherInstructions, equationEditor;
58
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
59
+ while (1) switch (_context2.prev = _context2.next) {
60
+ case 0:
61
+ log('[question]', question);
62
+ normalizedQuestion = normalize(question);
63
+ fb = env.mode === 'evaluate' && normalizedQuestion.feedbackEnabled ? (0, _feedback.getFeedback)(normalizedQuestion.feedback, 'Your answer has been submitted') : Promise.resolve(undefined);
64
+ teacherInstructions = null;
65
+ if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {
66
+ teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;
67
+ } else {
68
+ teacherInstructions = null;
69
+ }
70
+ equationEditor = normalizedQuestion.equationEditor || 'miscellaneous';
71
+ _context2.t0 = normalizedQuestion.equationEditor;
72
+ _context2.next = _context2.t0 === 'Grade 1 - 2' ? 9 : _context2.t0 === 'Grade 3 - 5' ? 11 : _context2.t0 === 'Grade 6 - 7' ? 13 : _context2.t0 === 'Grade 8 - HS' ? 15 : 17;
73
+ break;
74
+ case 9:
75
+ equationEditor = 1;
76
+ return _context2.abrupt("break", 18);
77
+ case 11:
78
+ equationEditor = 3;
79
+ return _context2.abrupt("break", 18);
80
+ case 13:
81
+ equationEditor = 6;
82
+ return _context2.abrupt("break", 18);
83
+ case 15:
84
+ equationEditor = 8;
85
+ return _context2.abrupt("break", 18);
86
+ case 17:
87
+ return _context2.abrupt("break", 18);
88
+ case 18:
89
+ return _context2.abrupt("return", fb.then(function (feedback) {
90
+ return {
91
+ prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,
92
+ dimensions: normalizedQuestion.dimensions,
93
+ customKeys: normalizedQuestion.customKeys || [],
94
+ disabled: env.mode !== 'gather',
95
+ feedback: feedback,
96
+ teacherInstructions: teacherInstructions,
97
+ mathInput: normalizedQuestion.mathInput,
98
+ spanishInput: normalizedQuestion.spanishInput,
99
+ specialInput: normalizedQuestion.specialInput,
100
+ equationEditor: equationEditor,
101
+ spellCheckEnabled: !normalizedQuestion.playerSpellCheckDisabled,
102
+ playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom'
103
+ };
104
+ }));
105
+ case 19:
106
+ case "end":
107
+ return _context2.stop();
108
+ }
109
+ }, _callee2);
110
+ }));
111
+ return _model.apply(this, arguments);
112
+ }
113
+ function outcome(
114
+ /*question, session, env*/
115
+ ) {
116
+ return _outcome.apply(this, arguments);
117
+ }
118
+ function _outcome() {
119
+ _outcome = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
120
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
121
+ while (1) switch (_context3.prev = _context3.next) {
122
+ case 0:
123
+ return _context3.abrupt("return", {
124
+ score: 0,
125
+ completed: 'n/a',
126
+ note: 'Requires manual scoring'
127
+ });
128
+ case 1:
129
+ case "end":
130
+ return _context3.stop();
131
+ }
132
+ }, _callee3);
133
+ }));
134
+ return _outcome.apply(this, arguments);
135
+ }
136
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_debug","_interopRequireDefault","require","_feedback","_defaults","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","createDefaultModel","_createDefaultModel","_asyncToGenerator2","_regenerator","mark","_callee","model","_args","wrap","_callee$","_context","prev","next","undefined","abrupt","defaults","stop","normalize","question","feedbackEnabled","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","playerSpellCheckDisabled","exports","_x","_x2","_x3","_model","_callee2","session","env","normalizedQuestion","fb","teacherInstructions","equationEditor","_callee2$","_context2","mode","getFeedback","feedback","Promise","resolve","role","t0","then","prompt","dimensions","customKeys","disabled","mathInput","spanishInput","specialInput","spellCheckEnabled","playersToolbarPosition","outcome","_outcome","_callee3","_callee3$","_context3","score","completed","note"],"sources":["../src/index.js"],"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 playerSpellCheckDisabled: true,\n ...question,\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 spanishInput: normalizedQuestion.spanishInput,\n specialInput: normalizedQuestion.specialInput,\n equationEditor,\n spellCheckEnabled: !normalizedQuestion.playerSpellCheckDisabled,\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"],"mappings":"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"}
package/lib/index.js ADDED
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ exports.isComplete = isComplete;
9
+ exports.textContent = textContent;
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
16
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
+ var _main = _interopRequireDefault(require("./main"));
18
+ var _react = _interopRequireDefault(require("react"));
19
+ var _reactDom = _interopRequireDefault(require("react-dom"));
20
+ var _mathRendering = require("@pie-lib/math-rendering");
21
+ var _piePlayerEvents = require("@pie-framework/pie-player-events");
22
+ var _debug = _interopRequireDefault(require("debug"));
23
+ 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); }; }
24
+ 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; } }
25
+ var log = (0, _debug["default"])('@pie-ui:extended-text-entry');
26
+ var domParser = (typeof window === "undefined" ? "undefined" : (0, _typeof2["default"])(window)) !== undefined ? new DOMParser() : {
27
+ parseFromString: function parseFromString(v) {
28
+ return v;
29
+ }
30
+ };
31
+ function textContent(value) {
32
+ if (typeof value !== 'string') {
33
+ return undefined;
34
+ }
35
+ try {
36
+ var document = domParser.parseFromString(value, 'text/html');
37
+ var _textContent = document.body.textContent;
38
+ return _textContent;
39
+ } catch (err) {
40
+ log('tried to parse as dom and failed', value);
41
+ return value;
42
+ }
43
+ }
44
+ function isComplete(value) {
45
+ var tc = textContent(value);
46
+ var out = tc !== undefined && tc.length > 0;
47
+ return out;
48
+ }
49
+ var RootExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
50
+ (0, _inherits2["default"])(RootExtendedTextEntry, _HTMLElement);
51
+ var _super = _createSuper(RootExtendedTextEntry);
52
+ function RootExtendedTextEntry() {
53
+ var _this;
54
+ (0, _classCallCheck2["default"])(this, RootExtendedTextEntry);
55
+ _this = _super.call(this);
56
+ _this._model = null;
57
+ _this._session = null;
58
+ return _this;
59
+ }
60
+ (0, _createClass2["default"])(RootExtendedTextEntry, [{
61
+ key: "model",
62
+ set: function set(m) {
63
+ this._model = m;
64
+ this.dispatchEvent(new _piePlayerEvents.ModelSetEvent(this.tagName.toLowerCase(), false, !!this._model));
65
+ this.render();
66
+ }
67
+ }, {
68
+ key: "session",
69
+ get: function get() {
70
+ return this._session;
71
+ },
72
+ set: function set(s) {
73
+ this._session = s;
74
+ this.render();
75
+ }
76
+ }, {
77
+ key: "handleChange",
78
+ value: function handleChange(value) {
79
+ this._session.value = value;
80
+ this.dispatchEvent(new _piePlayerEvents.SessionChangedEvent(this.tagName.toLowerCase(), isComplete(value)));
81
+ }
82
+ }, {
83
+ key: "connectedCallback",
84
+ value: function connectedCallback() {
85
+ this.render();
86
+ }
87
+ }, {
88
+ key: "render",
89
+ value: function render() {
90
+ var _this2 = this;
91
+ if (this._model && this._session) {
92
+ var elem = /*#__PURE__*/_react["default"].createElement(_main["default"], {
93
+ model: this._model,
94
+ session: this._session,
95
+ onChange: this.handleChange.bind(this)
96
+ });
97
+ _reactDom["default"].render(elem, this, function () {
98
+ (0, _mathRendering.renderMath)(_this2);
99
+ });
100
+ }
101
+ }
102
+ }]);
103
+ return RootExtendedTextEntry;
104
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
105
+ exports["default"] = RootExtendedTextEntry;
106
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_main","_interopRequireDefault","require","_react","_reactDom","_mathRendering","_piePlayerEvents","_debug","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","log","debug","domParser","window","_typeof2","undefined","DOMParser","parseFromString","v","textContent","value","document","body","err","isComplete","tc","out","length","RootExtendedTextEntry","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_model","_session","_createClass2","key","set","m","dispatchEvent","ModelSetEvent","tagName","toLowerCase","render","get","s","handleChange","SessionChangedEvent","connectedCallback","_this2","elem","React","createElement","Main","model","session","onChange","bind","ReactDOM","renderMath","_wrapNativeSuper2","HTMLElement","exports"],"sources":["../src/index.js"],"sourcesContent":["import Main from './main';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport { ModelSetEvent, SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst domParser = typeof window !== undefined ? new DOMParser() : { parseFromString: (v) => v };\n\nexport function textContent(value) {\n if (typeof value !== 'string') {\n return undefined;\n }\n try {\n const document = domParser.parseFromString(value, 'text/html');\n const textContent = document.body.textContent;\n return textContent;\n } catch (err) {\n log('tried to parse as dom and failed', value);\n return value;\n }\n}\n\nexport function isComplete(value) {\n const tc = textContent(value);\n const out = tc !== undefined && tc.length > 0;\n return out;\n}\n\nexport default class RootExtendedTextEntry extends HTMLElement {\n constructor() {\n super();\n this._model = null;\n this._session = null;\n }\n\n set model(m) {\n this._model = m;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), false, !!this._model));\n\n this.render();\n }\n\n set session(s) {\n this._session = s;\n this.render();\n }\n\n get session() {\n return this._session;\n }\n\n handleChange(value) {\n this._session.value = value;\n\n this.dispatchEvent(new SessionChangedEvent(this.tagName.toLowerCase(), isComplete(value)));\n }\n\n connectedCallback() {\n this.render();\n }\n\n render() {\n if (this._model && this._session) {\n let elem = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onChange: this.handleChange.bind(this),\n });\n\n ReactDOM.render(elem, this, () => {\n renderMath(this);\n });\n }\n }\n}\n"],"mappings":"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"}
package/lib/main.js ADDED
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.Main = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
11
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+ var _react = _interopRequireDefault(require("react"));
16
+ var _editableHtml = _interopRequireDefault(require("@pie-lib/editable-html"));
17
+ var _propTypes = _interopRequireDefault(require("prop-types"));
18
+ var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
19
+ var _styles = require("@material-ui/core/styles");
20
+ var _debug = _interopRequireDefault(require("debug"));
21
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
22
+ var _renderUi = require("@pie-lib/render-ui");
23
+ 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); }; }
24
+ 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; } }
25
+ var log = (0, _debug["default"])('@pie-ui:extended-text-entry');
26
+ var style = function style(theme) {
27
+ return {
28
+ main: {
29
+ backgroundColor: _renderUi.color.background(),
30
+ color: _renderUi.color.text()
31
+ },
32
+ prompt: {
33
+ width: '100%',
34
+ color: _renderUi.color.text(),
35
+ marginBottom: theme.spacing.unit * 2,
36
+ fontSize: 'inherit'
37
+ }
38
+ };
39
+ };
40
+ var Main = /*#__PURE__*/function (_React$Component) {
41
+ (0, _inherits2["default"])(Main, _React$Component);
42
+ var _super = _createSuper(Main);
43
+ function Main() {
44
+ var _this;
45
+ (0, _classCallCheck2["default"])(this, Main);
46
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
47
+ args[_key] = arguments[_key];
48
+ }
49
+ _this = _super.call.apply(_super, [this].concat(args));
50
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeSession", (0, _debounce["default"])(_this.props.onChange, 1500));
51
+ return _this;
52
+ }
53
+ (0, _createClass2["default"])(Main, [{
54
+ key: "render",
55
+ value: function render() {
56
+ var _this2 = this;
57
+ var _this$props = this.props,
58
+ model = _this$props.model,
59
+ classes = _this$props.classes,
60
+ session = _this$props.session;
61
+ var dimensions = model.dimensions,
62
+ disabled = model.disabled,
63
+ feedback = model.feedback,
64
+ teacherInstructions = model.teacherInstructions,
65
+ mathInput = model.mathInput,
66
+ spanishInput = model.spanishInput,
67
+ specialInput = model.specialInput,
68
+ animationsDisabled = model.animationsDisabled,
69
+ playersToolbarPosition = model.playersToolbarPosition,
70
+ spellCheckEnabled = model.spellCheckEnabled;
71
+ var value = session.value;
72
+ var _ref = dimensions || {},
73
+ width = _ref.width,
74
+ height = _ref.height;
75
+ var maxHeight = '40vh';
76
+ var toolbarOpts = {};
77
+ log('[render] disabled? ', disabled);
78
+ var teacherInstructionsDiv = /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
79
+ defaultClassName: "teacher-instructions",
80
+ prompt: teacherInstructions
81
+ });
82
+ switch (playersToolbarPosition) {
83
+ case 'top':
84
+ toolbarOpts.position = 'top';
85
+ break;
86
+ default:
87
+ toolbarOpts.position = 'bottom';
88
+ break;
89
+ }
90
+ var languageCharactersProps = [];
91
+ if (spanishInput) {
92
+ languageCharactersProps.push({
93
+ language: 'spanish'
94
+ });
95
+ }
96
+ if (specialInput) {
97
+ languageCharactersProps.push({
98
+ language: 'special'
99
+ });
100
+ }
101
+ return /*#__PURE__*/_react["default"].createElement("div", {
102
+ className: classes.main,
103
+ ref: function ref(_ref2) {
104
+ _this2.containerRef = _ref2;
105
+ }
106
+ }, teacherInstructions && /*#__PURE__*/_react["default"].createElement("div", null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
107
+ labels: {
108
+ hidden: 'Show Teacher Instructions',
109
+ visible: 'Hide Teacher Instructions'
110
+ },
111
+ className: classes.collapsible
112
+ }, teacherInstructionsDiv) : teacherInstructionsDiv, /*#__PURE__*/_react["default"].createElement("br", null)), model.prompt && /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
113
+ component: 'span',
114
+ className: classes.prompt
115
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
116
+ defaultClassName: "prompt",
117
+ prompt: model.prompt
118
+ })), /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
119
+ className: "response-area-editor",
120
+ onChange: this.changeSession,
121
+ markup: value || '',
122
+ width: width && width.toString(),
123
+ minHeight: height && height.toString(),
124
+ maxHeight: maxHeight,
125
+ disabled: disabled,
126
+ highlightShape: true,
127
+ toolbarOpts: toolbarOpts,
128
+ spellCheck: spellCheckEnabled,
129
+ pluginProps: {
130
+ math: {
131
+ disabled: !mathInput,
132
+ customKeys: this.props.model.customKeys,
133
+ keypadMode: this.props.model.equationEditor,
134
+ controlledKeypadMode: false
135
+ },
136
+ video: {
137
+ disabled: true
138
+ },
139
+ audio: {
140
+ disabled: true
141
+ }
142
+ },
143
+ languageCharactersProps: languageCharactersProps
144
+ }), feedback && /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("br", null), /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
145
+ correctness: "correct",
146
+ feedback: feedback
147
+ })));
148
+ }
149
+ }]);
150
+ return Main;
151
+ }(_react["default"].Component);
152
+ exports.Main = Main;
153
+ (0, _defineProperty2["default"])(Main, "propTypes", {
154
+ onChange: _propTypes["default"].func.isRequired,
155
+ model: _propTypes["default"].object,
156
+ classes: _propTypes["default"].object.isRequired,
157
+ session: _propTypes["default"].shape({
158
+ value: _propTypes["default"].string
159
+ }).isRequired
160
+ });
161
+ var _default = (0, _styles.withStyles)(style)(Main);
162
+ exports["default"] = _default;
163
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_editableHtml","_propTypes","_Typography","_styles","_debug","_debounce","_renderUi","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","log","debug","style","theme","main","backgroundColor","color","background","text","prompt","width","marginBottom","spacing","unit","fontSize","Main","_React$Component","_inherits2","_super","_this","_classCallCheck2","_len","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","debounce","props","onChange","_createClass2","key","value","render","_this2","_this$props","model","classes","session","dimensions","disabled","feedback","teacherInstructions","mathInput","spanishInput","specialInput","animationsDisabled","playersToolbarPosition","spellCheckEnabled","_ref","height","maxHeight","toolbarOpts","teacherInstructionsDiv","createElement","PreviewPrompt","defaultClassName","position","languageCharactersProps","push","language","className","ref","containerRef","Collapsible","labels","hidden","visible","collapsible","component","changeSession","markup","toString","minHeight","highlightShape","spellCheck","pluginProps","math","customKeys","keypadMode","equationEditor","controlledKeypadMode","video","audio","Feedback","correctness","React","Component","exports","PropTypes","func","isRequired","object","shape","string","_default","withStyles"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport EditableHTML from '@pie-lib/editable-html';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport debug from 'debug';\nimport debounce from 'lodash/debounce';\nimport { color, Feedback, Collapsible, PreviewPrompt } from '@pie-lib/render-ui';\n\nconst log = debug('@pie-ui:extended-text-entry');\n\nconst style = (theme) => ({\n main: {\n backgroundColor: color.background(),\n color: color.text(),\n },\n prompt: {\n width: '100%',\n color: color.text(),\n marginBottom: theme.spacing.unit * 2,\n fontSize: 'inherit',\n },\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n model: PropTypes.object,\n classes: PropTypes.object.isRequired,\n session: PropTypes.shape({\n value: PropTypes.string,\n }).isRequired,\n };\n\n changeSession = debounce(this.props.onChange, 1500);\n\n render() {\n const { model, classes, session } = this.props;\n const {\n dimensions,\n disabled,\n feedback,\n teacherInstructions,\n mathInput,\n spanishInput,\n specialInput,\n animationsDisabled,\n playersToolbarPosition,\n spellCheckEnabled,\n } = model;\n const { value } = session;\n const { width, height } = dimensions || {};\n const maxHeight = '40vh';\n const toolbarOpts = {};\n\n log('[render] disabled? ', disabled);\n\n const teacherInstructionsDiv = (\n <PreviewPrompt defaultClassName=\"teacher-instructions\" prompt={teacherInstructions} />\n );\n\n switch (playersToolbarPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n const languageCharactersProps = [];\n\n if (spanishInput) {\n languageCharactersProps.push({ language: 'spanish' });\n }\n\n if (specialInput) {\n languageCharactersProps.push({ language: 'special' });\n }\n\n return (\n <div\n className={classes.main}\n ref={(ref) => {\n this.containerRef = ref;\n }}\n >\n {teacherInstructions && (\n <div>\n {!animationsDisabled ? (\n <Collapsible\n labels={{ hidden: 'Show Teacher Instructions', visible: 'Hide Teacher Instructions' }}\n className={classes.collapsible}\n >\n {teacherInstructionsDiv}\n </Collapsible>\n ) : (\n teacherInstructionsDiv\n )}\n <br />\n </div>\n )}\n {model.prompt && (\n <Typography component={'span'} className={classes.prompt}>\n <PreviewPrompt defaultClassName=\"prompt\" prompt={model.prompt} />\n </Typography>\n )}\n <EditableHTML\n className=\"response-area-editor\"\n onChange={this.changeSession}\n markup={value || ''}\n width={width && width.toString()}\n minHeight={height && height.toString()}\n maxHeight={maxHeight}\n disabled={disabled}\n highlightShape={true}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n pluginProps={{\n math: {\n disabled: !mathInput,\n customKeys: this.props.model.customKeys,\n keypadMode: this.props.model.equationEditor,\n controlledKeypadMode: false,\n },\n video: {\n disabled: true,\n },\n audio: {\n disabled: true,\n },\n }}\n languageCharactersProps={languageCharactersProps}\n />\n {feedback && (\n <div>\n <br />\n <Feedback correctness=\"correct\" feedback={feedback} />\n </div>\n )}\n </div>\n );\n }\n}\n\nexport default withStyles(style)(Main);\n"],"mappings":"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"}
package/lib/print.js ADDED
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
11
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _react = _interopRequireDefault(require("react"));
17
+ var _reactDom = _interopRequireDefault(require("react-dom"));
18
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
19
+ var _main = _interopRequireDefault(require("./main"));
20
+ var _mathRendering = require("@pie-lib/math-rendering");
21
+ var _debug = _interopRequireDefault(require("debug"));
22
+ 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); }; }
23
+ 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; } }
24
+ 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; }
25
+ 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; }
26
+ var log = (0, _debug["default"])('pie-element:extended-text-entry:print');
27
+ var preparePrintModel = function preparePrintModel(model, opts) {
28
+ var instr = opts.role === 'instructor';
29
+ model.prompt = model.promptEnabled !== false ? model.prompt : undefined;
30
+ model.teacherInstructions = instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;
31
+ model.showTeacherInstructions = instr;
32
+ model.mode = instr ? 'evaluate' : model.mode;
33
+ var defaultDimensions = {
34
+ height: 100,
35
+ width: 500
36
+ };
37
+ model.dimensions = _objectSpread(_objectSpread({}, defaultDimensions), model.dimensions);
38
+ model.disabled = true;
39
+ model.feedback = undefined;
40
+ model.animationsDisabled = true;
41
+ return model;
42
+ };
43
+ var ExtendedTextEntryPrint = /*#__PURE__*/function (_HTMLElement) {
44
+ (0, _inherits2["default"])(ExtendedTextEntryPrint, _HTMLElement);
45
+ var _super = _createSuper(ExtendedTextEntryPrint);
46
+ function ExtendedTextEntryPrint() {
47
+ var _this;
48
+ (0, _classCallCheck2["default"])(this, ExtendedTextEntryPrint);
49
+ _this = _super.call(this);
50
+ _this._options = null;
51
+ _this._model = null;
52
+ _this._session = [];
53
+ _this._rerender = (0, _debounce["default"])(function () {
54
+ if (_this._model && _this._session) {
55
+ var printModel = preparePrintModel(_this._model, _this._options);
56
+ var element = _this._options && /*#__PURE__*/_react["default"].createElement(_main["default"], {
57
+ model: printModel,
58
+ session: {},
59
+ onChange: function onChange() {}
60
+ });
61
+ _reactDom["default"].render(element, (0, _assertThisInitialized2["default"])(_this), function () {
62
+ log('render complete - render math');
63
+ (0, _mathRendering.renderMath)((0, _assertThisInitialized2["default"])(_this));
64
+ });
65
+ } else {
66
+ log('skip');
67
+ }
68
+ }, 50, {
69
+ leading: false,
70
+ trailing: true
71
+ });
72
+ return _this;
73
+ }
74
+ (0, _createClass2["default"])(ExtendedTextEntryPrint, [{
75
+ key: "options",
76
+ set: function set(o) {
77
+ this._options = o;
78
+ }
79
+ }, {
80
+ key: "model",
81
+ set: function set(s) {
82
+ this._model = s;
83
+ this._rerender();
84
+ }
85
+ }, {
86
+ key: "connectedCallback",
87
+ value: function connectedCallback() {}
88
+ }]);
89
+ return ExtendedTextEntryPrint;
90
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
91
+ exports["default"] = ExtendedTextEntryPrint;
92
+ //# sourceMappingURL=print.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"print.js","names":["_react","_interopRequireDefault","require","_reactDom","_debounce","_main","_mathRendering","_debug","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","target","i","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","preparePrintModel","model","opts","instr","role","prompt","promptEnabled","undefined","teacherInstructions","teacherInstructionsEnabled","showTeacherInstructions","mode","defaultDimensions","height","width","dimensions","disabled","feedback","animationsDisabled","ExtendedTextEntryPrint","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_options","_model","_session","_rerender","debounce","printModel","element","React","createElement","Main","session","onChange","ReactDOM","render","_assertThisInitialized2","renderMath","leading","trailing","_createClass2","set","o","s","value","connectedCallback","_wrapNativeSuper2","HTMLElement","exports"],"sources":["../src/print.js"],"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';\n\nimport debug from 'debug';\n\nconst log = debug('pie-element:extended-text-entry:print');\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions =\n instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.showTeacherInstructions = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n const defaultDimensions = { height: 100, width: 500 };\n\n model.dimensions = {\n ...defaultDimensions,\n ...model.dimensions,\n };\n\n model.disabled = true;\n model.feedback = undefined;\n model.animationsDisabled = true;\n\n return model;\n};\n\nexport default class ExtendedTextEntryPrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = [];\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: {},\n onChange: () => {},\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"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/extended-text-entry",
3
- "version": "8.2.1-beta.3+e0e0490c5",
3
+ "version": "8.2.1-beta.4+4157b2b34",
4
4
  "description": "",
5
5
  "repository": "pie-framework/pie-elements",
6
6
  "publishConfig": {
@@ -23,7 +23,7 @@
23
23
  "react": "^16.8.1",
24
24
  "react-dom": "^16.8.1"
25
25
  },
26
- "gitHead": "e0e0490c5b040c67f504c0bdfd00f6b834a28481",
26
+ "gitHead": "4157b2b34711d36e3fea05d833ab5ed9d4b05b48",
27
27
  "scripts": {
28
28
  "postpublish": "../../scripts/postpublish"
29
29
  },