@pie-element/extended-text-entry 6.4.6-next.85 → 6.5.1-beta.587

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.
@@ -7,10 +7,16 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = void 0;
9
9
 
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
10
14
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
15
 
12
16
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
17
 
18
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
+
14
20
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
21
 
16
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
@@ -31,13 +37,13 @@ var _main = _interopRequireDefault(require("./main"));
31
37
 
32
38
  var _defaults = _interopRequireDefault(require("./defaults"));
33
39
 
34
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
40
+ 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
41
 
36
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
42
+ 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
43
 
38
44
  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
45
 
40
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
46
+ 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
47
 
42
48
  var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
43
49
  (0, _inherits2["default"])(ExtendedTextEntry, _HTMLElement);
@@ -49,21 +55,51 @@ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
49
55
 
50
56
  (0, _classCallCheck2["default"])(this, ExtendedTextEntry);
51
57
  _this = _super.call(this);
52
- _this._model = ExtendedTextEntry.createDefaultModel();
58
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "verifyRubric", /*#__PURE__*/function () {
59
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(c) {
60
+ var _ref2, _ref2$withRubric, withRubric;
61
+
62
+ return _regenerator["default"].wrap(function _callee$(_context) {
63
+ while (1) {
64
+ switch (_context.prev = _context.next) {
65
+ case 0:
66
+ _ref2 = c || {}, _ref2$withRubric = _ref2.withRubric, withRubric = _ref2$withRubric === void 0 ? {} : _ref2$withRubric;
67
+
68
+ if (withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled && !_this._model.rubricEnabled) {
69
+ _this._model.rubricEnabled = true;
70
+
71
+ _this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(_this._model));
72
+ }
73
+
74
+ case 2:
75
+ case "end":
76
+ return _context.stop();
77
+ }
78
+ }
79
+ }, _callee);
80
+ }));
81
+
82
+ return function (_x) {
83
+ return _ref.apply(this, arguments);
84
+ };
85
+ }());
53
86
  _this._configuration = _defaults["default"].configuration;
87
+ _this._model = ExtendedTextEntry.createDefaultModel({}, _this._configuration);
88
+ _this.onModelChanged = _this.onModelChanged.bind((0, _assertThisInitialized2["default"])(_this));
54
89
  return _this;
55
90
  }
56
91
 
57
92
  (0, _createClass2["default"])(ExtendedTextEntry, [{
58
93
  key: "model",
59
94
  set: function set(m) {
60
- this._model = ExtendedTextEntry.createDefaultModel(m);
95
+ this._model = ExtendedTextEntry.createDefaultModel(m, this._configuration);
61
96
  this.render();
62
97
  }
63
98
  }, {
64
99
  key: "configuration",
65
100
  set: function set(c) {
66
101
  this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
102
+ this.verifyRubric(this._configuration);
67
103
  this.render();
68
104
  }
69
105
  }, {
@@ -79,6 +115,14 @@ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
79
115
  this._configuration = _objectSpread(_objectSpread({}, _defaults["default"].configuration), c);
80
116
 
81
117
  if (this._model) {
118
+ var _ref3 = c || {},
119
+ _ref3$withRubric = _ref3.withRubric,
120
+ withRubric = _ref3$withRubric === void 0 ? {} : _ref3$withRubric;
121
+
122
+ if (withRubric !== null && withRubric !== void 0 && withRubric.forceEnabled) {
123
+ this._model.rubricEnabled = true;
124
+ }
125
+
82
126
  this.onModelChanged(this._model);
83
127
  }
84
128
 
@@ -99,9 +143,21 @@ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
99
143
  value: function onDeleteImage(src, done) {
100
144
  this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
101
145
  }
146
+ }, {
147
+ key: "insertSound",
148
+ value: function insertSound(handler) {
149
+ this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
150
+ }
151
+ }, {
152
+ key: "onDeleteSound",
153
+ value: function onDeleteSound(src, done) {
154
+ this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
155
+ }
102
156
  }, {
103
157
  key: "render",
104
158
  value: function render() {
159
+ console.log('this._model.rubricEnabled', this._model.rubricEnabled);
160
+
105
161
  if (this._model) {
106
162
  var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
107
163
  model: this._model,
@@ -111,6 +167,10 @@ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
111
167
  imageSupport: {
112
168
  add: this.insertImage.bind(this),
113
169
  "delete": this.onDeleteImage.bind(this)
170
+ },
171
+ uploadSoundSupport: {
172
+ add: this.insertSound.bind(this),
173
+ "delete": this.onDeleteSound.bind(this)
114
174
  }
115
175
  });
116
176
 
@@ -123,7 +183,17 @@ var ExtendedTextEntry = /*#__PURE__*/function (_HTMLElement) {
123
183
 
124
184
  exports["default"] = ExtendedTextEntry;
125
185
  (0, _defineProperty2["default"])(ExtendedTextEntry, "createDefaultModel", function () {
186
+ var _config$withRubric;
187
+
126
188
  var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
127
- return _objectSpread(_objectSpread({}, _defaults["default"].model), model);
189
+ var config = arguments.length > 1 ? arguments[1] : undefined;
190
+
191
+ var defaultModel = _objectSpread(_objectSpread({}, _defaults["default"].model), model);
192
+
193
+ if (config !== null && config !== void 0 && (_config$withRubric = config.withRubric) !== null && _config$withRubric !== void 0 && _config$withRubric.forceEnabled && !defaultModel.rubricEnabled) {
194
+ defaultModel.rubricEnabled = true;
195
+ }
196
+
197
+ return defaultModel;
128
198
  });
129
199
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["ExtendedTextEntry","_model","createDefaultModel","_configuration","defaults","configuration","m","render","c","dispatchEvent","ModelUpdatedEvent","onModelChanged","handler","InsertImageEvent","src","done","DeleteImageEvent","element","React","createElement","Main","model","bind","onConfigurationChanged","imageSupport","add","insertImage","onDeleteImage","ReactDOM","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAKA;;AACA;;AACA;;AAEA;;;;;;;;;;IAEqBA,iB;;;;;AAMnB,+BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAcD,iBAAiB,CAACE,kBAAlB,EAAd;AACA,UAAKC,cAAL,GAAsBC,qBAASC,aAA/B;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKL,MAAL,GAAcD,iBAAiB,CAACE,kBAAlB,CAAqCI,CAArC,CAAd;AACA,WAAKC,MAAL;AACD;;;SAED,aAAkBC,CAAlB,EAAqB;AACnB,WAAKL,cAAL,mCACKC,qBAASC,aADd,GAEKG,CAFL;AAKA,WAAKD,MAAL;AACD;;;WAED,wBAAeD,CAAf,EAAkB;AAChB,WAAKL,MAAL,GAAcK,CAAd;AACA,WAAKC,MAAL;AACA,WAAKE,aAAL,CAAmB,IAAIC,qCAAJ,CAAsB,KAAKT,MAA3B,EAAmC,KAAnC,CAAnB;AACD;;;WAED,gCAAuBO,CAAvB,EAA0B;AACxB,WAAKL,cAAL,mCACKC,qBAASC,aADd,GAEKG,CAFL;;AAKA,UAAI,KAAKP,MAAT,EAAiB;AACf,aAAKU,cAAL,CAAoB,KAAKV,MAAzB;AACD;;AAED,WAAKM,MAAL;AACD;AAGD;AACF;AACA;AACA;;;;WACE,qBAAYK,OAAZ,EAAqB;AACnB,WAAKH,aAAL,CAAmB,IAAII,oCAAJ,CAAqBD,OAArB,CAAnB;AACD;;;WAED,uBAAcE,GAAd,EAAmBC,IAAnB,EAAyB;AACvB,WAAKN,aAAL,CAAmB,IAAIO,oCAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB;AACD;;;WAED,kBAAS;AACP,UAAI,KAAKd,MAAT,EAAiB;AACf,YAAMgB,OAAO,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACxCC,UAAAA,KAAK,EAAE,KAAKpB,MAD4B;AAExCI,UAAAA,aAAa,EAAE,KAAKF,cAFoB;AAGxCQ,UAAAA,cAAc,EAAE,KAAKA,cAAL,CAAoBW,IAApB,CAAyB,IAAzB,CAHwB;AAIxCC,UAAAA,sBAAsB,EAAE,KAAKA,sBAAL,CAA4BD,IAA5B,CAAiC,IAAjC,CAJgB;AAKxCE,UAAAA,YAAY,EAAE;AACZC,YAAAA,GAAG,EAAE,KAAKC,WAAL,CAAiBJ,IAAjB,CAAsB,IAAtB,CADO;AAEZ,sBAAQ,KAAKK,aAAL,CAAmBL,IAAnB,CAAwB,IAAxB;AAFI;AAL0B,SAA1B,CAAhB;;AAUAM,6BAASrB,MAAT,CAAgBU,OAAhB,EAAyB,IAAzB;AACD;AACF;;;kDAxE4CY,W;;;iCAA1B7B,iB,wBACS;AAAA,MAACqB,KAAD,uEAAS,EAAT;AAAA,yCACvBjB,qBAASiB,KADc,GAEvBA,KAFuB;AAAA,C","sourcesContent":["import {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent\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 = {}) => ({\n ...defaults.model,\n ...model\n });\n\n constructor() {\n super();\n this._model = ExtendedTextEntry.createDefaultModel();\n this._configuration = defaults.configuration;\n }\n\n set model(m) {\n this._model = ExtendedTextEntry.createDefaultModel(m);\n this.render();\n }\n\n set configuration(c) {\n this._configuration = {\n ...defaults.configuration,\n ...c\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 *\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 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 });\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["ExtendedTextEntry","c","withRubric","forceEnabled","_model","rubricEnabled","dispatchEvent","ModelUpdatedEvent","_configuration","defaults","configuration","createDefaultModel","onModelChanged","bind","m","render","verifyRubric","handler","InsertImageEvent","src","done","DeleteImageEvent","InsertSoundEvent","DeleteSoundEvent","console","log","element","React","createElement","Main","model","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 (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"],"file":"index.js"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
@@ -35,13 +35,17 @@ var _styles = require("@material-ui/core/styles");
35
35
 
36
36
  var _editableHtml = _interopRequireWildcard(require("@pie-lib/editable-html"));
37
37
 
38
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
38
+ 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); }
39
+
40
+ 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; }
41
+
42
+ 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; }
39
43
 
40
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
44
+ 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; }
41
45
 
42
46
  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); }; }
43
47
 
44
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
48
+ 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; } }
45
49
 
46
50
  var Panel = _configUi.settings.Panel,
47
51
  toggle = _configUi.settings.toggle,
@@ -104,35 +108,89 @@ var Main = /*#__PURE__*/function (_React$Component) {
104
108
  var _this$props4 = this.props,
105
109
  model = _this$props4.model,
106
110
  classes = _this$props4.classes,
107
- onModelChanged = _this$props4.onModelChanged,
108
111
  configuration = _this$props4.configuration,
112
+ imageSupport = _this$props4.imageSupport,
109
113
  onConfigurationChanged = _this$props4.onConfigurationChanged,
110
- imageSupport = _this$props4.imageSupport;
114
+ onModelChanged = _this$props4.onModelChanged,
115
+ uploadSoundSupport = _this$props4.uploadSoundSupport;
111
116
 
112
117
  var _ref = configuration || {},
113
- _ref$multiple = _ref.multiple,
114
- multiple = _ref$multiple === void 0 ? {} : _ref$multiple,
118
+ _ref$dimensions = _ref.dimensions,
119
+ dimensions = _ref$dimensions === void 0 ? {} : _ref$dimensions,
120
+ _ref$equationEditor = _ref.equationEditor,
121
+ equationEditor = _ref$equationEditor === void 0 ? {} : _ref$equationEditor,
115
122
  _ref$feedback = _ref.feedback,
116
123
  feedback = _ref$feedback === void 0 ? {} : _ref$feedback,
117
- _ref$teacherInstructi = _ref.teacherInstructions,
118
- teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
124
+ _ref$playerSpellCheck = _ref.playerSpellCheck,
125
+ playerSpellCheck = _ref$playerSpellCheck === void 0 ? {} : _ref$playerSpellCheck,
119
126
  _ref$prompt = _ref.prompt,
120
127
  prompt = _ref$prompt === void 0 ? {} : _ref$prompt,
128
+ settingsPanelDisabled = _ref.settingsPanelDisabled,
129
+ _ref$spanishInput = _ref.spanishInput,
130
+ spanishInput = _ref$spanishInput === void 0 ? {} : _ref$spanishInput,
131
+ _ref$specialInput = _ref.specialInput,
132
+ specialInput = _ref$specialInput === void 0 ? {} : _ref$specialInput,
133
+ _ref$spellCheck = _ref.spellCheck,
134
+ spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
121
135
  _ref$studentInstructi = _ref.studentInstructions,
122
136
  studentInstructions = _ref$studentInstructi === void 0 ? {} : _ref$studentInstructi,
137
+ _ref$teacherInstructi = _ref.teacherInstructions,
138
+ teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
123
139
  _ref$mathInput = _ref.mathInput,
124
140
  mathInput = _ref$mathInput === void 0 ? {} : _ref$mathInput,
125
- _ref$dimensions = _ref.dimensions,
126
- dimensions = _ref$dimensions === void 0 ? {} : _ref$dimensions,
127
- _ref$equationEditor = _ref.equationEditor,
128
- equationEditor = _ref$equationEditor === void 0 ? {} : _ref$equationEditor;
141
+ _ref$maxImageWidth = _ref.maxImageWidth,
142
+ maxImageWidth = _ref$maxImageWidth === void 0 ? {} : _ref$maxImageWidth,
143
+ _ref$maxImageHeight = _ref.maxImageHeight,
144
+ maxImageHeight = _ref$maxImageHeight === void 0 ? {} : _ref$maxImageHeight,
145
+ _ref$multiple = _ref.multiple,
146
+ multiple = _ref$multiple === void 0 ? {} : _ref$multiple,
147
+ _ref$withRubric = _ref.withRubric,
148
+ withRubric = _ref$withRubric === void 0 ? {} : _ref$withRubric;
129
149
 
130
150
  var _ref2 = model || {},
131
- teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
151
+ feedbackEnabled = _ref2.feedbackEnabled,
132
152
  promptEnabled = _ref2.promptEnabled,
133
- feedbackEnabled = _ref2.feedbackEnabled;
134
-
153
+ spellCheckEnabled = _ref2.spellCheckEnabled,
154
+ teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
155
+ toolbarEditorPosition = _ref2.toolbarEditorPosition;
156
+
157
+ var defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;
158
+ var defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;
159
+ var toolbarOpts = {
160
+ position: toolbarEditorPosition === 'top' ? 'top' : 'bottom'
161
+ };
162
+ var panelSettings = {
163
+ mathInput: mathInput.settings && toggle(mathInput.label),
164
+ equationEditor: equationEditor.enabled && model.mathInput && dropdown(equationEditor.label, ['non-negative-integers', 'integers', 'decimals', 'fractions', 'Grade 1 - 2', 'Grade 3 - 5', 'Grade 6 - 7', 'Grade 8 - HS', 'geometry', 'advanced-algebra', 'statistics', 'item-authoring']),
165
+ spanishInput: spanishInput.settings && toggle(spanishInput.label),
166
+ specialInput: specialInput.settings && toggle(specialInput.label),
167
+ dimensions: numberFields(dimensions.label, {
168
+ width: {
169
+ label: 'Width (px)',
170
+ suffix: 'px',
171
+ min: 100,
172
+ max: 500
173
+ },
174
+ height: {
175
+ label: 'Height (px)',
176
+ suffix: 'px',
177
+ min: 100,
178
+ max: 500
179
+ }
180
+ }),
181
+ 'multiple.enabled': multiple.settings && toggle(multiple.label, true),
182
+ promptEnabled: prompt.settings && toggle(prompt.label),
183
+ feedbackEnabled: feedback.settings && toggle(feedback.label),
184
+ spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
185
+ playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label)
186
+ };
187
+ var panelProperties = {
188
+ teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
189
+ studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),
190
+ 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)
191
+ };
135
192
  return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
193
+ hideSettings: settingsPanelDisabled,
136
194
  settings: /*#__PURE__*/_react["default"].createElement(Panel, {
137
195
  model: model,
138
196
  configuration: configuration,
@@ -143,31 +201,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
143
201
  return onConfigurationChanged(config);
144
202
  },
145
203
  groups: {
146
- 'Settings': {
147
- mathInput: mathInput.settings && toggle(mathInput.label),
148
- equationEditor: equationEditor.enabled && model.mathInput && dropdown(equationEditor.label, ['Grade 1 - 2', 'Grade 3 - 5', 'Grade 6 - 7', 'Grade 8 - HS', 'geometry', 'advanced-algebra', 'statistics', 'miscellaneous']),
149
- dimensions: numberFields(dimensions.label, {
150
- width: {
151
- label: 'Width (px)',
152
- suffix: 'px',
153
- min: 100,
154
- max: 500
155
- },
156
- height: {
157
- label: 'Height (px)',
158
- suffix: 'px',
159
- min: 100,
160
- max: 500
161
- }
162
- }),
163
- 'multiple.enabled': multiple.settings && toggle(multiple.label, true),
164
- promptEnabled: prompt.settings && toggle(prompt.label),
165
- feedbackEnabled: feedback.settings && toggle(feedback.label)
166
- },
167
- 'Properties': {
168
- teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
169
- studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label)
170
- }
204
+ Settings: panelSettings,
205
+ Properties: panelProperties
171
206
  }
172
207
  })
173
208
  }, /*#__PURE__*/_react["default"].createElement("div", null, teacherInstructionsEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
@@ -178,8 +213,18 @@ var Main = /*#__PURE__*/function (_React$Component) {
178
213
  markup: model.teacherInstructions || '',
179
214
  onChange: this.changeTeacherInstructions,
180
215
  imageSupport: imageSupport,
181
- nonEmpty: false
182
- })), /*#__PURE__*/_react["default"].createElement("br", null), promptEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
216
+ nonEmpty: false,
217
+ toolbarOpts: toolbarOpts,
218
+ spellCheck: spellCheckEnabled,
219
+ maxImageWidth: maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth,
220
+ maxImageHeight: maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight,
221
+ uploadSoundSupport: uploadSoundSupport,
222
+ languageCharactersProps: [{
223
+ language: 'spanish'
224
+ }, {
225
+ language: 'special'
226
+ }]
227
+ })), promptEnabled && /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
183
228
  label: prompt.label,
184
229
  className: classes.promptContainer
185
230
  }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
@@ -188,14 +233,25 @@ var Main = /*#__PURE__*/function (_React$Component) {
188
233
  markup: model.prompt || '',
189
234
  onChange: this.onPromptChange,
190
235
  imageSupport: imageSupport,
191
- nonEmpty: false
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
+ }]
192
247
  })), feedbackEnabled && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
193
248
  className: classes.header,
194
249
  variant: "subheading"
195
250
  }, "Feedback"), /*#__PURE__*/_react["default"].createElement(_configUi.FeedbackSelector, {
196
251
  label: "When submitted, show",
197
252
  feedback: model.feedback || defaultFeedback,
198
- onChange: this.changeFeedback
253
+ onChange: this.changeFeedback,
254
+ toolbarOpts: toolbarOpts
199
255
  }))));
200
256
  }
201
257
  }]);
@@ -209,6 +265,7 @@ exports.Main = Main;
209
265
  model: _propTypes["default"].object.isRequired,
210
266
  configuration: _propTypes["default"].object.isRequired,
211
267
  imageSupport: _propTypes["default"].object.isRequired,
268
+ uploadSoundSupport: _propTypes["default"].object.isRequired,
212
269
  classes: _propTypes["default"].object.isRequired
213
270
  });
214
271
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","props","markup","onModelChanged","model","prompt","feedback","update","teacherInstructions","state","setDimensions","classes","configuration","onConfigurationChanged","imageSupport","multiple","studentInstructions","mathInput","dimensions","equationEditor","teacherInstructionsEnabled","promptEnabled","feedbackEnabled","config","label","enabled","width","suffix","min","max","height","studentInstructionsEnabled","promptContainer","changeTeacherInstructions","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n FeedbackSelector,\n InputContainer,\n settings,\n layout\n} from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted'\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired\n };\n\n constructor(props) {\n super(props);\n this.state = {\n setDimensions: true\n };\n }\n\n onPromptChange = markup => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({\n ...model,\n prompt: markup\n });\n };\n\n changeFeedback = feedback => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n onModelChanged(update);\n };\n\n changeTeacherInstructions = teacherInstructions => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, onModelChanged, configuration, onConfigurationChanged, imageSupport } = this.props;\n const {\n multiple = {},\n feedback = {},\n teacherInstructions = {},\n prompt = {},\n studentInstructions = {},\n mathInput = {},\n dimensions = {},\n equationEditor = {}\n } = configuration || {};\n const { teacherInstructionsEnabled, promptEnabled, feedbackEnabled } = model || {};\n\n return (\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={config => onConfigurationChanged(config)}\n groups={{\n 'Settings': {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor: equationEditor.enabled && model.mathInput && dropdown(equationEditor.label, [\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'miscellaneous'\n ]),\n dimensions: numberFields(dimensions.label, {\n width: {\n label: 'Width (px)',\n suffix: 'px',\n min: 100,\n max: 500\n },\n height: {\n label: 'Height (px)',\n suffix: 'px',\n min: 100,\n max: 500\n }\n }),\n 'multiple.enabled': multiple.settings &&\n toggle(multiple.label, true),\n promptEnabled: prompt.settings &&\n toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n },\n 'Properties': {\n teacherInstructionsEnabled: teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings &&\n toggle(studentInstructions.label)\n },\n }}\n />\n }\n >\n <div>\n\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptContainer}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n />\n </InputContainer>\n )}\n\n <br />\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptContainer}>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n className={classes.prompt}\n markup={model.prompt || ''}\n onChange={this.onPromptChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n />\n </InputContainer>\n )}\n\n {\n feedbackEnabled && (\n <React.Fragment>\n <Typography className={classes.header} variant=\"subheading\">\n Feedback\n </Typography>\n\n <FeedbackSelector\n label=\"When submitted, show\"\n feedback={model.feedback || defaultFeedback}\n onChange={this.changeFeedback}\n />\n </React.Fragment>\n )\n }\n </div>\n </layout.ConfigLayout>\n );\n }\n}\nexport default withStyles(theme => ({\n header: {\n paddingBottom: theme.spacing.unit\n },\n promptContainer: {\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n width: '100%'\n },\n promptInput: {\n width: '100%',\n marginBottom: theme.spacing.unit\n },\n field: {\n width: '200px'\n }\n}))(Main);\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","numberFields","dropdown","defaultFeedback","type","Main","props","markup","onModelChanged","model","prompt","feedback","update","teacherInstructions","state","setDimensions","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","dimensions","equationEditor","playerSpellCheck","settingsPanelDisabled","spanishInput","specialInput","spellCheck","studentInstructions","mathInput","maxImageWidth","maxImageHeight","multiple","withRubric","feedbackEnabled","promptEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","panelSettings","label","enabled","width","suffix","min","max","height","playerSpellCheckDisabled","panelProperties","studentInstructionsEnabled","rubricEnabled","forceEnabled","config","Settings","Properties","promptContainer","changeTeacherInstructions","language","ALL_PLUGINS","onPromptChange","header","changeFeedback","React","Component","PropTypes","func","isRequired","object","theme","paddingBottom","spacing","unit","paddingTop","marginBottom","promptInput","field"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { FeedbackSelector, InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\n\nconst { Panel, toggle, numberFields, dropdown } = settings;\n\nconst defaultFeedback = {\n type: 'default',\n default: 'Your answer has been submitted',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { setDimensions: true };\n }\n\n onPromptChange = (markup) => {\n const { onModelChanged, model } = this.props;\n\n onModelChanged({ ...model, prompt: markup });\n };\n\n changeFeedback = (feedback) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, feedback };\n\n onModelChanged(update);\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onModelChanged } = this.props;\n const update = { ...model, teacherInstructions };\n\n onModelChanged(update);\n };\n\n render() {\n const { model, classes, configuration, imageSupport, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n const {\n dimensions = {},\n equationEditor = {},\n feedback = {},\n playerSpellCheck = {},\n prompt = {},\n settingsPanelDisabled,\n spanishInput = {},\n specialInput = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n mathInput = {},\n maxImageWidth = {},\n maxImageHeight = {},\n multiple = {},\n withRubric = {},\n } = configuration || {};\n const { feedbackEnabled, promptEnabled, spellCheckEnabled, teacherInstructionsEnabled, toolbarEditorPosition } =\n model || {};\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const panelSettings = {\n mathInput: mathInput.settings && toggle(mathInput.label),\n equationEditor:\n equationEditor.enabled &&\n model.mathInput &&\n dropdown(equationEditor.label, [\n 'non-negative-integers',\n 'integers',\n 'decimals',\n 'fractions',\n 'Grade 1 - 2',\n 'Grade 3 - 5',\n 'Grade 6 - 7',\n 'Grade 8 - HS',\n 'geometry',\n 'advanced-algebra',\n 'statistics',\n 'item-authoring',\n ]),\n spanishInput: spanishInput.settings && toggle(spanishInput.label),\n specialInput: specialInput.settings && toggle(specialInput.label),\n dimensions: numberFields(dimensions.label, {\n width: { label: 'Width (px)', suffix: 'px', min: 100, max: 500 },\n height: { label: 'Height (px)', suffix: 'px', min: 100, max: 500 },\n }),\n 'multiple.enabled': multiple.settings && toggle(multiple.label, true),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckDisabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rubricEnabled: !withRubric?.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"],"file":"main.js"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/extended-text-entry-configure",
3
3
  "private": true,
4
- "version": "5.2.5",
4
+ "version": "7.2.0",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
@@ -9,9 +9,9 @@
9
9
  "license": "ISC",
10
10
  "dependencies": {
11
11
  "@material-ui/core": "^3.9.2",
12
- "@pie-framework/pie-configure-events": "^1.2.0",
13
- "@pie-lib/config-ui": "^10.8.57",
14
- "@pie-lib/editable-html": "^7.16.16",
12
+ "@pie-framework/pie-configure-events": "^1.3.0",
13
+ "@pie-lib/config-ui": "12.0.0-beta.3",
14
+ "@pie-lib/editable-html": "10.0.0-beta.4",
15
15
  "lodash": "^4.17.15",
16
16
  "prop-types": "^15.6.2",
17
17
  "react": "^16.8.1",
@@ -3,6 +3,114 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [4.3.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.2.0...@pie-element/extended-text-entry-controller@4.3.0) (2022-12-20)
7
+
8
+
9
+ ### Features
10
+
11
+ * **extended-text-entry:** fix tests for spellcheck property ([b11734f](https://github.com/pie-framework/pie-elements/commit/b11734fac9fc9df28de00222d4a53e29b7887f6a))
12
+ * **extended-text-entry:** flip the meaning of the spellCheck property in player ([f07fe0c](https://github.com/pie-framework/pie-elements/commit/f07fe0c27c36fa9343bff401543a5d711a2603ae))
13
+
14
+
15
+
16
+
17
+
18
+ # [4.2.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.22...@pie-element/extended-text-entry-controller@4.2.0) (2022-12-07)
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * update libs ([441f403](https://github.com/pie-framework/pie-elements/commit/441f403870b7bec0d61fab58b8d93dbe0ead4c32))
24
+
25
+
26
+ ### Features
27
+
28
+ * **input:** added configurability for inserting spanish and special characters [PD-1461], [PD-1462] ([11f381e](https://github.com/pie-framework/pie-elements/commit/11f381ea44a3ae2b2c5c189dc53932d689c8e044))
29
+
30
+
31
+
32
+
33
+
34
+ ## [4.1.22](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.21...@pie-element/extended-text-entry-controller@4.1.22) (2022-06-13)
35
+
36
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
37
+
38
+
39
+
40
+
41
+
42
+ ## [4.1.21](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.20...@pie-element/extended-text-entry-controller@4.1.21) (2022-03-28)
43
+
44
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
45
+
46
+
47
+
48
+
49
+
50
+ ## [4.1.20](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.19...@pie-element/extended-text-entry-controller@4.1.20) (2022-03-22)
51
+
52
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
53
+
54
+
55
+
56
+
57
+
58
+ ## [4.1.19](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.18...@pie-element/extended-text-entry-controller@4.1.19) (2022-02-04)
59
+
60
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
61
+
62
+
63
+
64
+
65
+
66
+ ## [4.1.15](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.13...@pie-element/extended-text-entry-controller@4.1.15) (2021-11-11)
67
+
68
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
69
+
70
+
71
+
72
+
73
+
74
+ ## [4.1.14](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.13...@pie-element/extended-text-entry-controller@4.1.14) (2021-11-11)
75
+
76
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
77
+
78
+
79
+
80
+
81
+
82
+ ## [4.1.13](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.11...@pie-element/extended-text-entry-controller@4.1.13) (2021-08-05)
83
+
84
+
85
+ ### Bug Fixes
86
+
87
+ * force bump ([5ea7295](https://github.com/pie-framework/pie-elements/commit/5ea7295e4755fbc492a76e7ec69e5fc35b196919))
88
+
89
+
90
+
91
+
92
+
93
+ ## [4.1.11](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.10...@pie-element/extended-text-entry-controller@4.1.11) (2021-06-29)
94
+
95
+ **Note:** Version bump only for package @pie-element/extended-text-entry-controller
96
+
97
+
98
+
99
+
100
+
101
+ ## [4.1.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.9...@pie-element/extended-text-entry-controller@4.1.10) (2021-04-07)
102
+
103
+
104
+ ### Bug Fixes
105
+
106
+ * **extended-text-entry:** custom key fix for math keypad - PD-388 ([44fb9e2](https://github.com/pie-framework/pie-elements/commit/44fb9e2bde460632d2a517c33a32153b333f27f2))
107
+ * **math-inline:** remove allow thousand separators from model, remove checkbox, validate answers indifferent to the presence of commas used as thousands separators PD-1031 ([#554](https://github.com/pie-framework/pie-elements/issues/554)) ([188555b](https://github.com/pie-framework/pie-elements/commit/188555ba3dd7fa6802a1d00eead0f8a86f4615b4))
108
+ * rename the 'Everything' math editor as the 'Miscellaneous' math editor PD-870 ([cebc7da](https://github.com/pie-framework/pie-elements/commit/cebc7dad9cd8b8ad498134e116b705079c1e13c9))
109
+
110
+
111
+
112
+
113
+
6
114
  ## [4.1.9](https://github.com/pie-framework/pie-elements/compare/@pie-element/extended-text-entry-controller@4.1.6...@pie-element/extended-text-entry-controller@4.1.9) (2021-03-03)
7
115
 
8
116
  **Note:** Version bump only for package @pie-element/extended-text-entry-controller
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/defaults.js"],"names":["dimensions","height","width"],"mappings":";;;;;;eAAe;AACbA,EAAAA,UAAU,EAAE;AACVC,IAAAA,MAAM,EAAE,GADE;AAEVC,IAAAA,KAAK,EAAE;AAFG;AADC,C","sourcesContent":["export default {\n dimensions: {\n height: 100,\n width: 500,\n }\n};\n"],"file":"defaults.js"}
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["dimensions","height","width"],"mappings":";;;;;;eAAe;AACbA,EAAAA,UAAU,EAAE;AACVC,IAAAA,MAAM,EAAE,GADE;AAEVC,IAAAA,KAAK,EAAE;AAFG;AADC,C","sourcesContent":["export default {\n dimensions: {\n height: 100,\n width: 500,\n },\n};\n"],"file":"defaults.js"}