@pie-element/match 7.9.1-next.1 → 7.9.1-next.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/configure/lib/add-row.js +86 -0
- package/configure/lib/add-row.js.map +1 -0
- package/configure/lib/answer-config-block.js +362 -0
- package/configure/lib/answer-config-block.js.map +1 -0
- package/configure/lib/common.js +46 -0
- package/configure/lib/common.js.map +1 -0
- package/configure/lib/configure.js +501 -0
- package/configure/lib/configure.js.map +1 -0
- package/configure/lib/defaults.js +198 -0
- package/configure/lib/defaults.js.map +1 -0
- package/configure/lib/general-config-block.js +208 -0
- package/configure/lib/general-config-block.js.map +1 -0
- package/configure/lib/index.js +225 -0
- package/configure/lib/index.js.map +1 -0
- package/configure/lib/row.js +397 -0
- package/configure/lib/row.js.map +1 -0
- package/configure/lib/utils.js +23 -0
- package/configure/lib/utils.js.map +1 -0
- package/controller/lib/defaults.js +21 -0
- package/controller/lib/defaults.js.map +1 -0
- package/controller/lib/index.js +472 -0
- package/controller/lib/index.js.map +1 -0
- package/lib/answer-grid.js +260 -0
- package/lib/answer-grid.js.map +1 -0
- package/lib/index.js +134 -0
- package/lib/index.js.map +1 -0
- package/lib/main.js +227 -0
- package/lib/main.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["log","MatchConfigure","pieAuthors","document","querySelectorAll","hasPlayerAsParent","Array","from","some","author","contains","_modelCopy","_model","createDefaultModel","_configuration","defaultValues","configuration","m","_render","c","newConfiguration","resetModelAfterConfigurationIsSet","language","enabled","languageChoices","options","length","value","settings","find","option","push","label","rows","inputConfiguration","enableImages","model","dispatchEvent","ModelUpdatedEvent","config","handler","InsertImageEvent","src","done","DeleteImageEvent","InsertSoundEvent","DeleteSoundEvent","el","React","createElement","Configure","onModelChanged","bind","onConfigurationChanged","imageSupport","add","insertImage","onDeleteImage","uploadSoundSupport","insertSound","onDeleteSound","ReactDOM","render","HTMLElement"],"mappings":"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","sourcesContent":["import { isEmpty, set } from 'lodash';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport Configure from './configure';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport debug from 'debug';\nimport defaultValues from './defaults';\nimport cloneDeep from 'lodash/cloneDeep';\n\nconst log = debug('pie-elements:match:configure');\n\nexport default class MatchConfigure extends HTMLElement {\n static createDefaultModel = (model = {}) => ({\n ...defaultValues.model,\n ...model,\n });\n\n constructor() {\n super();\n this._model = MatchConfigure.createDefaultModel();\n this._configuration = defaultValues.configuration;\n }\n\n set model(m) {\n this._model = MatchConfigure.createDefaultModel(m);\n this._modelCopy = cloneDeep(this._model);\n\n this._render();\n }\n\n resetModelAfterConfigurationIsSet = () => {\n // In environments that use pie-player-components, model is set before configuration.\n // This is the reason why sometimes the model gets altered non-reversible\n // (altered using default configuration instead of client configuration, because at that point client configuration was not set yet)\n // Therefore, in such environments, we will make sure to keep a modelCopy (initialised in set model) and use it to reset\n // the model in set configuration (resetModelAfterConfigurationIsSet) if set configuration is ever called\n const pieAuthors = document.querySelectorAll('pie-author');\n this.hasPlayerAsParent = Array.from(pieAuthors).some((author) => author.contains(this));\n\n if (this.hasPlayerAsParent) {\n if (this._modelCopy) {\n this._model = this._modelCopy;\n } else {\n delete this._modelCopy;\n }\n }\n };\n\n set configuration(c) {\n const newConfiguration = {\n ...defaultValues.configuration,\n ...c,\n };\n\n this._configuration = newConfiguration;\n\n this.resetModelAfterConfigurationIsSet();\n\n // if language:enabled is true, then the corresponding default item model should include a language value;\n // if it is false, then the language field should be omitted from the item model.\n // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,\n // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).\n if (newConfiguration?.language?.enabled) {\n if (newConfiguration?.languageChoices?.options?.length) {\n this._model.language = newConfiguration?.languageChoices.options[0].value;\n }\n } else if (newConfiguration.language.settings && this._model.language) {\n this._configuration.language.enabled = true;\n\n if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {\n this._configuration.languageChoices.options = [];\n }\n\n // check if the language is already included in the languageChoices.options array\n // and if not, then add it.\n if (!this._configuration.languageChoices.options.find((option) => option.value === this._model.language)) {\n this._configuration.languageChoices.options.push({\n value: this._model.language,\n label: this._model.language,\n });\n }\n } else {\n delete this._model.language;\n }\n\n /**\n * @Deprecated we added rows.inputConfiguration to handle the plugins in the editable html fields\n * if rows.inputConfiguration we try to default to the old enableImages flag\n * This flag 'enableImages' will be removed in the future\n */\n if (isEmpty(!c?.rows?.inputConfiguration)) {\n set(this._configuration.rows, 'inputConfiguration.image.disabled', !this._model?.enableImages);\n set(this._configuration.rows, 'inputConfiguration.video.disabled', true);\n set(this._configuration.rows, 'inputConfiguration.audio.disabled', true);\n }\n\n this._render();\n }\n\n onModelChanged(model) {\n this._model = model;\n log('[onModelChanged]: ', this._model);\n this._render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n\n onConfigurationChanged(config) {\n this._configuration = config;\n this._render();\n }\n\n /**\n *\n * @param {done, progress, file} handler\n */\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n _render() {\n if (this._model) {\n const el = React.createElement(Configure, {\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n model: this._model,\n configuration: this._configuration,\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(el, this);\n }\n }\n}\n"],"file":"index.js"}
|
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = exports.choiceTarget = exports.choiceSource = exports.canDrag = exports.Row = void 0;
|
|
9
|
+
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
|
|
14
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
+
|
|
16
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
+
|
|
18
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
+
|
|
20
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
+
|
|
22
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
+
|
|
24
|
+
var _utils = require("./utils");
|
|
25
|
+
|
|
26
|
+
var _react = _interopRequireDefault(require("react"));
|
|
27
|
+
|
|
28
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
29
|
+
|
|
30
|
+
var _styles = require("@material-ui/core/styles");
|
|
31
|
+
|
|
32
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
33
|
+
|
|
34
|
+
var _configUi = require("@pie-lib/pie-toolbox/config-ui");
|
|
35
|
+
|
|
36
|
+
var _DragHandle = _interopRequireDefault(require("@material-ui/icons/DragHandle"));
|
|
37
|
+
|
|
38
|
+
var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
|
|
39
|
+
|
|
40
|
+
var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
|
|
41
|
+
|
|
42
|
+
var _Delete = _interopRequireDefault(require("@material-ui/icons/Delete"));
|
|
43
|
+
|
|
44
|
+
var _reactDnd = require("react-dnd");
|
|
45
|
+
|
|
46
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
47
|
+
|
|
48
|
+
var _editableHtml = require("@pie-lib/pie-toolbox/editable-html");
|
|
49
|
+
|
|
50
|
+
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; }
|
|
51
|
+
|
|
52
|
+
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; }
|
|
53
|
+
|
|
54
|
+
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); }; }
|
|
55
|
+
|
|
56
|
+
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; } }
|
|
57
|
+
|
|
58
|
+
var log = (0, _debug["default"])('@pie-element:categorize:configure:choice');
|
|
59
|
+
var _canDrag = false;
|
|
60
|
+
exports.canDrag = _canDrag;
|
|
61
|
+
|
|
62
|
+
var Row = /*#__PURE__*/function (_React$Component) {
|
|
63
|
+
(0, _inherits2["default"])(Row, _React$Component);
|
|
64
|
+
|
|
65
|
+
var _super = _createSuper(Row);
|
|
66
|
+
|
|
67
|
+
function Row() {
|
|
68
|
+
var _this;
|
|
69
|
+
|
|
70
|
+
(0, _classCallCheck2["default"])(this, Row);
|
|
71
|
+
|
|
72
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
73
|
+
args[_key] = arguments[_key];
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
77
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
|
|
78
|
+
dialog: {
|
|
79
|
+
open: false,
|
|
80
|
+
text: ''
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onRowTitleChange", function (rowIndex) {
|
|
84
|
+
return function (value) {
|
|
85
|
+
var _this$props = _this.props,
|
|
86
|
+
model = _this$props.model,
|
|
87
|
+
onChange = _this$props.onChange;
|
|
88
|
+
|
|
89
|
+
var newModel = _objectSpread({}, model);
|
|
90
|
+
|
|
91
|
+
newModel.rows[rowIndex].title = value;
|
|
92
|
+
onChange(newModel);
|
|
93
|
+
};
|
|
94
|
+
});
|
|
95
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onRowValueChange", function (rowIndex, rowValueIndex) {
|
|
96
|
+
return function (event) {
|
|
97
|
+
var _this$props2 = _this.props,
|
|
98
|
+
model = _this$props2.model,
|
|
99
|
+
onChange = _this$props2.onChange;
|
|
100
|
+
|
|
101
|
+
var newModel = _objectSpread({}, model);
|
|
102
|
+
|
|
103
|
+
if (model.choiceMode === 'radio') {
|
|
104
|
+
for (var i = 0; i < newModel.rows[rowIndex].values.length; i++) {
|
|
105
|
+
newModel.rows[rowIndex].values[i] = false;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
newModel.rows[rowIndex].values[rowValueIndex] = event.target.checked;
|
|
110
|
+
onChange(newModel);
|
|
111
|
+
};
|
|
112
|
+
});
|
|
113
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onDeleteRow", function (idx) {
|
|
114
|
+
return function () {
|
|
115
|
+
var _this$props3 = _this.props,
|
|
116
|
+
model = _this$props3.model,
|
|
117
|
+
onDeleteRow = _this$props3.onDeleteRow,
|
|
118
|
+
minQuestions = _this$props3.minQuestions;
|
|
119
|
+
|
|
120
|
+
if (model.rows && model.rows.length === minQuestions) {
|
|
121
|
+
_this.setState({
|
|
122
|
+
dialog: {
|
|
123
|
+
open: true,
|
|
124
|
+
text: "There should be at least ".concat(minQuestions, " question row") + (minQuestions > 1 ? 's' : '') + '.'
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
} else {
|
|
128
|
+
onDeleteRow(idx);
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
});
|
|
132
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseDownOnHandle", function () {
|
|
133
|
+
exports.canDrag = _canDrag = true;
|
|
134
|
+
});
|
|
135
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onMouseUpOnHandle", function () {
|
|
136
|
+
exports.canDrag = _canDrag = false;
|
|
137
|
+
});
|
|
138
|
+
return _this;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
(0, _createClass2["default"])(Row, [{
|
|
142
|
+
key: "componentDidMount",
|
|
143
|
+
value: function componentDidMount() {
|
|
144
|
+
document.addEventListener('mouseup', this.onMouseUpOnHandle);
|
|
145
|
+
}
|
|
146
|
+
}, {
|
|
147
|
+
key: "render",
|
|
148
|
+
value: function render() {
|
|
149
|
+
var _this2 = this;
|
|
150
|
+
|
|
151
|
+
var _this$props4 = this.props,
|
|
152
|
+
classes = _this$props4.classes,
|
|
153
|
+
imageSupport = _this$props4.imageSupport,
|
|
154
|
+
connectDragSource = _this$props4.connectDragSource,
|
|
155
|
+
connectDropTarget = _this$props4.connectDropTarget,
|
|
156
|
+
isDragging = _this$props4.isDragging,
|
|
157
|
+
model = _this$props4.model,
|
|
158
|
+
row = _this$props4.row,
|
|
159
|
+
idx = _this$props4.idx,
|
|
160
|
+
_this$props4$inputCon = _this$props4.inputConfiguration,
|
|
161
|
+
inputConfiguration = _this$props4$inputCon === void 0 ? {} : _this$props4$inputCon,
|
|
162
|
+
enableImages = _this$props4.enableImages,
|
|
163
|
+
toolbarOpts = _this$props4.toolbarOpts,
|
|
164
|
+
spellCheck = _this$props4.spellCheck,
|
|
165
|
+
error = _this$props4.error,
|
|
166
|
+
maxImageWidth = _this$props4.maxImageWidth,
|
|
167
|
+
maxImageHeight = _this$props4.maxImageHeight,
|
|
168
|
+
uploadSoundSupport = _this$props4.uploadSoundSupport,
|
|
169
|
+
_this$props4$mathMlOp = _this$props4.mathMlOptions,
|
|
170
|
+
mathMlOptions = _this$props4$mathMlOp === void 0 ? {} : _this$props4$mathMlOp;
|
|
171
|
+
var dialog = this.state.dialog;
|
|
172
|
+
var opacity = isDragging ? 0 : 1;
|
|
173
|
+
var filteredDefaultPlugins = (_editableHtml.DEFAULT_PLUGINS || []).filter(function (p) {
|
|
174
|
+
return p !== 'bulleted-list' && p !== 'numbered-list';
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
var content = /*#__PURE__*/_react["default"].createElement("div", {
|
|
178
|
+
style: {
|
|
179
|
+
opacity: opacity,
|
|
180
|
+
width: '100%'
|
|
181
|
+
}
|
|
182
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
183
|
+
itemID: 'handle',
|
|
184
|
+
className: classes.dragHandle,
|
|
185
|
+
onMouseDown: this.onMouseDownOnHandle
|
|
186
|
+
}, /*#__PURE__*/_react["default"].createElement(_DragHandle["default"], {
|
|
187
|
+
color: 'primary'
|
|
188
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
189
|
+
className: classes.rowContainer
|
|
190
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
191
|
+
className: (0, _classnames["default"])(classes.rowItem, classes.questionText)
|
|
192
|
+
}, /*#__PURE__*/_react["default"].createElement(_editableHtml.EditableHtml, {
|
|
193
|
+
imageSupport: imageSupport,
|
|
194
|
+
autoWidthToolbar: true,
|
|
195
|
+
disableUnderline: true,
|
|
196
|
+
label: 'label',
|
|
197
|
+
markup: row.title,
|
|
198
|
+
onChange: this.onRowTitleChange(idx),
|
|
199
|
+
className: classes.editor,
|
|
200
|
+
pluginProps: inputConfiguration,
|
|
201
|
+
toolbarOpts: toolbarOpts,
|
|
202
|
+
activePlugins: filteredDefaultPlugins,
|
|
203
|
+
spellCheck: spellCheck,
|
|
204
|
+
maxImageWidth: maxImageWidth,
|
|
205
|
+
maxImageHeight: maxImageHeight,
|
|
206
|
+
uploadSoundSupport: uploadSoundSupport,
|
|
207
|
+
languageCharactersProps: [{
|
|
208
|
+
language: 'spanish'
|
|
209
|
+
}, {
|
|
210
|
+
language: 'special'
|
|
211
|
+
}],
|
|
212
|
+
error: error && error !== 'No correct response defined.',
|
|
213
|
+
mathMlOptions: mathMlOptions
|
|
214
|
+
})), row.values.map(function (rowValue, rowIdx) {
|
|
215
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
216
|
+
key: rowIdx,
|
|
217
|
+
className: classes.rowItem
|
|
218
|
+
}, model.choiceMode === 'radio' ? /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
|
|
219
|
+
className: (0, _classnames["default"])((0, _defineProperty2["default"])({}, classes.errorResponse, error === null || error === void 0 ? void 0 : error.includes('No correct response defined.'))),
|
|
220
|
+
onChange: _this2.onRowValueChange(idx, rowIdx),
|
|
221
|
+
checked: rowValue === true
|
|
222
|
+
}) : /*#__PURE__*/_react["default"].createElement(_configUi.Checkbox, {
|
|
223
|
+
onChange: _this2.onRowValueChange(idx, rowIdx),
|
|
224
|
+
checked: rowValue === true,
|
|
225
|
+
label: '',
|
|
226
|
+
error: error === null || error === void 0 ? void 0 : error.includes('No correct response defined.')
|
|
227
|
+
}));
|
|
228
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
229
|
+
className: classes.deleteIcon
|
|
230
|
+
}, /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
|
|
231
|
+
onClick: this.onDeleteRow(idx),
|
|
232
|
+
"aria-label": "Delete"
|
|
233
|
+
}, /*#__PURE__*/_react["default"].createElement(_Delete["default"], null)))), error && /*#__PURE__*/_react["default"].createElement("div", {
|
|
234
|
+
className: classes.errorText
|
|
235
|
+
}, error), /*#__PURE__*/_react["default"].createElement("hr", {
|
|
236
|
+
className: classes.separator
|
|
237
|
+
}), /*#__PURE__*/_react["default"].createElement(_configUi.AlertDialog, {
|
|
238
|
+
open: dialog.open,
|
|
239
|
+
title: "Warning",
|
|
240
|
+
text: dialog.text,
|
|
241
|
+
onConfirm: function onConfirm() {
|
|
242
|
+
return _this2.setState({
|
|
243
|
+
dialog: {
|
|
244
|
+
open: false
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
}));
|
|
249
|
+
|
|
250
|
+
return connectDragSource(connectDropTarget(content));
|
|
251
|
+
}
|
|
252
|
+
}]);
|
|
253
|
+
return Row;
|
|
254
|
+
}(_react["default"].Component);
|
|
255
|
+
|
|
256
|
+
exports.Row = Row;
|
|
257
|
+
(0, _defineProperty2["default"])(Row, "propTypes", {
|
|
258
|
+
classes: _propTypes["default"].object.isRequired,
|
|
259
|
+
model: _propTypes["default"].object.isRequired,
|
|
260
|
+
row: _propTypes["default"].object.isRequired,
|
|
261
|
+
idx: _propTypes["default"].number.isRequired,
|
|
262
|
+
isDragging: _propTypes["default"].bool.isRequired,
|
|
263
|
+
maxImageWidth: _propTypes["default"].object,
|
|
264
|
+
maxImageHeight: _propTypes["default"].object,
|
|
265
|
+
onDeleteRow: _propTypes["default"].func.isRequired,
|
|
266
|
+
onChange: _propTypes["default"].func.isRequired,
|
|
267
|
+
connectDragSource: _propTypes["default"].func.isRequired,
|
|
268
|
+
connectDropTarget: _propTypes["default"].func.isRequired,
|
|
269
|
+
onMoveRow: _propTypes["default"].func.isRequired,
|
|
270
|
+
imageSupport: _propTypes["default"].shape({
|
|
271
|
+
add: _propTypes["default"].func.isRequired,
|
|
272
|
+
"delete": _propTypes["default"].func.isRequired
|
|
273
|
+
}),
|
|
274
|
+
uploadSoundSupport: _propTypes["default"].shape({
|
|
275
|
+
add: _propTypes["default"].func.isRequired,
|
|
276
|
+
"delete": _propTypes["default"].func.isRequired
|
|
277
|
+
}),
|
|
278
|
+
inputConfiguration: _propTypes["default"].object,
|
|
279
|
+
enableImages: _propTypes["default"].bool,
|
|
280
|
+
toolbarOpts: _propTypes["default"].object,
|
|
281
|
+
error: _propTypes["default"].string,
|
|
282
|
+
spellCheck: _propTypes["default"].bool,
|
|
283
|
+
minQuestions: _propTypes["default"].number
|
|
284
|
+
});
|
|
285
|
+
(0, _defineProperty2["default"])(Row, "defaultProps", {});
|
|
286
|
+
|
|
287
|
+
var styles = function styles(theme) {
|
|
288
|
+
return {
|
|
289
|
+
actions: {
|
|
290
|
+
padding: 0,
|
|
291
|
+
justifyContent: 'space-between'
|
|
292
|
+
},
|
|
293
|
+
choice: {
|
|
294
|
+
padding: theme.spacing.unit,
|
|
295
|
+
overflow: 'visible'
|
|
296
|
+
},
|
|
297
|
+
dragHandle: {
|
|
298
|
+
cursor: 'move'
|
|
299
|
+
},
|
|
300
|
+
dragDisabled: {
|
|
301
|
+
cursor: 'inherit'
|
|
302
|
+
},
|
|
303
|
+
container: {
|
|
304
|
+
marginTop: theme.spacing.unit * 2,
|
|
305
|
+
display: 'flex',
|
|
306
|
+
flexDirection: 'column'
|
|
307
|
+
},
|
|
308
|
+
rowContainer: {
|
|
309
|
+
marginTop: theme.spacing.unit * 2,
|
|
310
|
+
display: 'flex',
|
|
311
|
+
alignItems: 'center',
|
|
312
|
+
flex: 1
|
|
313
|
+
},
|
|
314
|
+
rowItem: {
|
|
315
|
+
flex: 1,
|
|
316
|
+
display: 'flex',
|
|
317
|
+
justifyContent: 'center',
|
|
318
|
+
alignItems: 'center',
|
|
319
|
+
minWidth: '150px',
|
|
320
|
+
padding: "0 ".concat(theme.spacing.unit, "px")
|
|
321
|
+
},
|
|
322
|
+
deleteIcon: {
|
|
323
|
+
flex: 0.5,
|
|
324
|
+
display: 'flex',
|
|
325
|
+
justifyContent: 'center',
|
|
326
|
+
minWidth: '48px',
|
|
327
|
+
padding: "0 ".concat(theme.spacing.unit, "px")
|
|
328
|
+
},
|
|
329
|
+
questionText: {
|
|
330
|
+
flex: 2,
|
|
331
|
+
display: 'flex',
|
|
332
|
+
justifyContent: 'flex-start',
|
|
333
|
+
padding: 0,
|
|
334
|
+
maxWidth: 'unset',
|
|
335
|
+
textAlign: 'left',
|
|
336
|
+
minWidth: '350px',
|
|
337
|
+
marginRight: theme.spacing.unit,
|
|
338
|
+
'&> div': {
|
|
339
|
+
width: '100%'
|
|
340
|
+
}
|
|
341
|
+
},
|
|
342
|
+
separator: {
|
|
343
|
+
marginTop: theme.spacing.unit * 2,
|
|
344
|
+
border: 0,
|
|
345
|
+
borderTop: "2px solid ".concat(theme.palette.grey['A100']),
|
|
346
|
+
width: '100%'
|
|
347
|
+
},
|
|
348
|
+
errorText: {
|
|
349
|
+
fontSize: theme.typography.fontSize - 2,
|
|
350
|
+
color: theme.palette.error.main,
|
|
351
|
+
paddingTop: theme.spacing.unit
|
|
352
|
+
},
|
|
353
|
+
errorResponse: {
|
|
354
|
+
color: theme.palette.error.main
|
|
355
|
+
}
|
|
356
|
+
};
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
var StyledRow = (0, _styles.withStyles)(styles)(Row);
|
|
360
|
+
var NAME = 'row-config';
|
|
361
|
+
var choiceSource = {
|
|
362
|
+
canDrag: function canDrag() {
|
|
363
|
+
return _canDrag;
|
|
364
|
+
},
|
|
365
|
+
beginDrag: function beginDrag(props) {
|
|
366
|
+
return {
|
|
367
|
+
id: props.row.id,
|
|
368
|
+
index: props.idx
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
};
|
|
372
|
+
exports.choiceSource = choiceSource;
|
|
373
|
+
var StyledSource = (0, _reactDnd.DragSource)(NAME, choiceSource, function (connect, monitor) {
|
|
374
|
+
return {
|
|
375
|
+
connectDragSource: connect.dragSource(),
|
|
376
|
+
isDragging: monitor.isDragging()
|
|
377
|
+
};
|
|
378
|
+
})(StyledRow);
|
|
379
|
+
var choiceTarget = {
|
|
380
|
+
hover: function hover() {
|
|
381
|
+
log('[hover]');
|
|
382
|
+
},
|
|
383
|
+
drop: function drop(props, monitor) {
|
|
384
|
+
var item = monitor.getItem();
|
|
385
|
+
log('[drop] item: ', item, 'didDrop?', monitor.didDrop());
|
|
386
|
+
props.onMoveRow(item.index, props.idx);
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
exports.choiceTarget = choiceTarget;
|
|
390
|
+
var StyledSourceAndTarget = (0, _reactDnd.DropTarget)(NAME, choiceTarget, function (connect) {
|
|
391
|
+
return {
|
|
392
|
+
connectDropTarget: connect.dropTarget()
|
|
393
|
+
};
|
|
394
|
+
})(StyledSource);
|
|
395
|
+
var _default = StyledSourceAndTarget;
|
|
396
|
+
exports["default"] = _default;
|
|
397
|
+
//# sourceMappingURL=row.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/row.jsx"],"names":["log","canDrag","Row","dialog","open","text","rowIndex","value","props","model","onChange","newModel","rows","title","rowValueIndex","event","choiceMode","i","values","length","target","checked","idx","onDeleteRow","minQuestions","setState","document","addEventListener","onMouseUpOnHandle","classes","imageSupport","connectDragSource","connectDropTarget","isDragging","row","inputConfiguration","enableImages","toolbarOpts","spellCheck","error","maxImageWidth","maxImageHeight","uploadSoundSupport","mathMlOptions","state","opacity","filteredDefaultPlugins","DEFAULT_PLUGINS","filter","p","content","width","dragHandle","onMouseDownOnHandle","rowContainer","rowItem","questionText","onRowTitleChange","editor","language","map","rowValue","rowIdx","errorResponse","includes","onRowValueChange","deleteIcon","errorText","separator","React","Component","PropTypes","object","isRequired","number","bool","func","onMoveRow","shape","add","string","styles","theme","actions","padding","justifyContent","choice","spacing","unit","overflow","cursor","dragDisabled","container","marginTop","display","flexDirection","alignItems","flex","minWidth","maxWidth","textAlign","marginRight","border","borderTop","palette","grey","fontSize","typography","color","main","paddingTop","StyledRow","NAME","choiceSource","beginDrag","id","index","StyledSource","connect","monitor","dragSource","choiceTarget","hover","drop","item","getItem","didDrop","StyledSourceAndTarget","dropTarget"],"mappings":"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","sourcesContent":["import { getPluginProps } from './utils';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { AlertDialog, Checkbox } from '@pie-lib/pie-toolbox/config-ui';\nimport DragHandle from '@material-ui/icons/DragHandle';\nimport Radio from '@material-ui/core/Radio';\nimport IconButton from '@material-ui/core/IconButton';\nimport Delete from '@material-ui/icons/Delete';\nimport { DragSource, DropTarget } from 'react-dnd';\nimport debug from 'debug';\nimport { EditableHtml, DEFAULT_PLUGINS } from '@pie-lib/pie-toolbox/editable-html';\n\nconst log = debug('@pie-element:categorize:configure:choice');\n\nexport let canDrag = false;\n\nexport class Row extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n row: PropTypes.object.isRequired,\n idx: PropTypes.number.isRequired,\n isDragging: PropTypes.bool.isRequired,\n maxImageWidth: PropTypes.object,\n maxImageHeight: PropTypes.object,\n onDeleteRow: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n connectDragSource: PropTypes.func.isRequired,\n connectDropTarget: PropTypes.func.isRequired,\n onMoveRow: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n inputConfiguration: PropTypes.object,\n enableImages: PropTypes.bool,\n toolbarOpts: PropTypes.object,\n error: PropTypes.string,\n spellCheck: PropTypes.bool,\n minQuestions: PropTypes.number,\n };\n\n static defaultProps = {};\n\n state = {\n dialog: {\n open: false,\n text: '',\n },\n };\n\n componentDidMount() {\n document.addEventListener('mouseup', this.onMouseUpOnHandle);\n }\n\n onRowTitleChange = (rowIndex) => (value) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n newModel.rows[rowIndex].title = value;\n onChange(newModel);\n };\n\n onRowValueChange = (rowIndex, rowValueIndex) => (event) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n if (model.choiceMode === 'radio') {\n for (let i = 0; i < newModel.rows[rowIndex].values.length; i++) {\n newModel.rows[rowIndex].values[i] = false;\n }\n }\n\n newModel.rows[rowIndex].values[rowValueIndex] = event.target.checked;\n\n onChange(newModel);\n };\n\n onDeleteRow = (idx) => () => {\n const { model, onDeleteRow, minQuestions } = this.props;\n\n if (model.rows && model.rows.length === minQuestions) {\n this.setState({\n dialog: {\n open: true,\n text: `There should be at least ${minQuestions} question row` + (minQuestions > 1 ? 's' : '') + '.',\n },\n });\n } else {\n onDeleteRow(idx);\n }\n };\n\n onMouseDownOnHandle = () => {\n canDrag = true;\n };\n\n onMouseUpOnHandle = () => {\n canDrag = false;\n };\n\n render() {\n const {\n classes,\n imageSupport,\n connectDragSource,\n connectDropTarget,\n isDragging,\n model,\n row,\n idx,\n inputConfiguration = {},\n enableImages,\n toolbarOpts,\n spellCheck,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n mathMlOptions = {},\n } = this.props;\n const { dialog } = this.state;\n const opacity = isDragging ? 0 : 1;\n\n const filteredDefaultPlugins = (DEFAULT_PLUGINS || []).filter(\n (p) => p !== 'bulleted-list' && p !== 'numbered-list',\n );\n\n const content = (\n <div style={{ opacity: opacity, width: '100%' }}>\n <span itemID={'handle'} className={classes.dragHandle} onMouseDown={this.onMouseDownOnHandle}>\n <DragHandle color={'primary'} />\n </span>\n\n <div className={classes.rowContainer}>\n <div className={classNames(classes.rowItem, classes.questionText)}>\n <EditableHtml\n imageSupport={imageSupport}\n autoWidthToolbar\n disableUnderline\n label={'label'}\n markup={row.title}\n onChange={this.onRowTitleChange(idx)}\n className={classes.editor}\n pluginProps={inputConfiguration}\n toolbarOpts={toolbarOpts}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n error={error && error !== 'No correct response defined.'}\n mathMlOptions={mathMlOptions}\n />\n </div>\n\n {row.values.map((rowValue, rowIdx) => (\n <div key={rowIdx} className={classes.rowItem}>\n {model.choiceMode === 'radio' ? (\n <Radio\n className={classNames({ [classes.errorResponse]: error?.includes('No correct response defined.') })}\n onChange={this.onRowValueChange(idx, rowIdx)}\n checked={rowValue === true}\n />\n ) : (\n <Checkbox\n onChange={this.onRowValueChange(idx, rowIdx)}\n checked={rowValue === true}\n label={''}\n error={error?.includes('No correct response defined.')}\n />\n )}\n </div>\n ))}\n\n <div className={classes.deleteIcon}>\n <IconButton onClick={this.onDeleteRow(idx)} aria-label=\"Delete\">\n <Delete />\n </IconButton>\n </div>\n </div>\n\n {error && <div className={classes.errorText}>{error}</div>}\n <hr className={classes.separator} />\n\n <AlertDialog\n open={dialog.open}\n title=\"Warning\"\n text={dialog.text}\n onConfirm={() => this.setState({ dialog: { open: false } })}\n />\n </div>\n );\n\n return connectDragSource(connectDropTarget(content));\n }\n}\n\nconst styles = (theme) => ({\n actions: {\n padding: 0,\n justifyContent: 'space-between',\n },\n choice: {\n padding: theme.spacing.unit,\n overflow: 'visible',\n },\n dragHandle: {\n cursor: 'move',\n },\n dragDisabled: {\n cursor: 'inherit',\n },\n\n container: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n flexDirection: 'column',\n },\n rowContainer: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n alignItems: 'center',\n flex: 1,\n },\n rowItem: {\n flex: 1,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n minWidth: '150px',\n padding: `0 ${theme.spacing.unit}px`,\n },\n deleteIcon: {\n flex: 0.5,\n display: 'flex',\n justifyContent: 'center',\n minWidth: '48px',\n padding: `0 ${theme.spacing.unit}px`,\n },\n questionText: {\n flex: 2,\n display: 'flex',\n justifyContent: 'flex-start',\n padding: 0,\n maxWidth: 'unset',\n textAlign: 'left',\n minWidth: '350px',\n marginRight: theme.spacing.unit,\n '&> div': {\n width: '100%',\n },\n },\n separator: {\n marginTop: theme.spacing.unit * 2,\n border: 0,\n borderTop: `2px solid ${theme.palette.grey['A100']}`,\n width: '100%',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n errorResponse: {\n color: theme.palette.error.main,\n },\n});\n\nconst StyledRow = withStyles(styles)(Row);\n\nconst NAME = 'row-config';\n\nexport const choiceSource = {\n canDrag() {\n return canDrag;\n },\n beginDrag(props) {\n return {\n id: props.row.id,\n index: props.idx,\n };\n },\n};\n\nconst StyledSource = DragSource(NAME, choiceSource, (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n isDragging: monitor.isDragging(),\n}))(StyledRow);\n\nexport const choiceTarget = {\n hover() {\n log('[hover]');\n },\n drop(props, monitor) {\n const item = monitor.getItem();\n\n log('[drop] item: ', item, 'didDrop?', monitor.didDrop());\n\n props.onMoveRow(item.index, props.idx);\n },\n};\n\nconst StyledSourceAndTarget = DropTarget(NAME, choiceTarget, (connect) => ({\n connectDropTarget: connect.dropTarget(),\n}))(StyledSource);\n\nexport default StyledSourceAndTarget;\n"],"file":"row.js"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getPluginProps = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
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; }
|
|
13
|
+
|
|
14
|
+
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; }
|
|
15
|
+
|
|
16
|
+
var getPluginProps = function getPluginProps() {
|
|
17
|
+
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
18
|
+
var baseInputConfiguration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
19
|
+
return _objectSpread(_objectSpread({}, baseInputConfiguration), props);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.getPluginProps = getPluginProps;
|
|
23
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils.js"],"names":["getPluginProps","props","baseInputConfiguration"],"mappings":";;;;;;;;;;;;;;;AAAO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB;AAAA,MAACC,KAAD,uEAAS,EAAT;AAAA,MAAaC,sBAAb,uEAAsC,EAAtC;AAAA,yCACzBA,sBADyB,GAEzBD,KAFyB;AAAA,CAAvB","sourcesContent":["export const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\n});\n"],"file":"utils.js"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
var _default = {
|
|
8
|
+
rows: [{
|
|
9
|
+
id: 1,
|
|
10
|
+
title: 'Question Text 1',
|
|
11
|
+
values: [false, false]
|
|
12
|
+
}, {
|
|
13
|
+
id: 2,
|
|
14
|
+
title: 'Question Text 2',
|
|
15
|
+
values: [false, false]
|
|
16
|
+
}],
|
|
17
|
+
layout: 3,
|
|
18
|
+
headers: ['Column 1', 'Column 2', 'Column 3']
|
|
19
|
+
};
|
|
20
|
+
exports["default"] = _default;
|
|
21
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/defaults.js"],"names":["rows","id","title","values","layout","headers"],"mappings":";;;;;;eAAe;AACbA,EAAAA,IAAI,EAAE,CACJ;AACEC,IAAAA,EAAE,EAAE,CADN;AAEEC,IAAAA,KAAK,EAAE,iBAFT;AAGEC,IAAAA,MAAM,EAAE,CAAC,KAAD,EAAQ,KAAR;AAHV,GADI,EAMJ;AACEF,IAAAA,EAAE,EAAE,CADN;AAEEC,IAAAA,KAAK,EAAE,iBAFT;AAGEC,IAAAA,MAAM,EAAE,CAAC,KAAD,EAAQ,KAAR;AAHV,GANI,CADO;AAabC,EAAAA,MAAM,EAAE,CAbK;AAcbC,EAAAA,OAAO,EAAE,CAAC,UAAD,EAAa,UAAb,EAAyB,UAAzB;AAdI,C","sourcesContent":["export default {\n rows: [\n {\n id: 1,\n title: 'Question Text 1',\n values: [false, false],\n },\n {\n id: 2,\n title: 'Question Text 2',\n values: [false, false],\n },\n ],\n layout: 3,\n headers: ['Column 1', 'Column 2', 'Column 3'],\n};\n"],"file":"defaults.js"}
|