@pie-lib/rubric 0.3.7-next.62 → 0.3.7-next.631

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/CHANGELOG.json CHANGED
@@ -388,5 +388,20 @@
388
388
  "committerDate": "2021-04-09 17:15:38 +0300",
389
389
  "isTagged": true,
390
390
  "tag": "@pie-lib/rubric@0.3.0"
391
+ },
392
+ {
393
+ "type": "feat",
394
+ "scope": "rubric",
395
+ "subject": "Added Studio support: Treat 'null' as null value for sample answer PD-1313",
396
+ "merge": null,
397
+ "header": "feat(rubric): Added Studio support: Treat 'null' as null value for sample answer PD-1313",
398
+ "body": null,
399
+ "footer": null,
400
+ "notes": [],
401
+ "hash": "ce71c81a6cbd26ec104e7cb34fcda1f1d65a8bd2",
402
+ "gitTags": " (origin/fix/PD-1313)",
403
+ "committerDate": "2021-09-23 13:48:01 +0300",
404
+ "isTagged": true,
405
+ "tag": "@pie-lib/rubric@0.4.0"
391
406
  }
392
407
  ]
package/CHANGELOG.md CHANGED
@@ -3,6 +3,324 @@
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
+ ## [0.4.32](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.31...@pie-lib/rubric@0.4.32) (2022-07-22)
7
+
8
+ **Note:** Version bump only for package @pie-lib/rubric
9
+
10
+
11
+
12
+
13
+
14
+ ## [0.4.31](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.30...@pie-lib/rubric@0.4.31) (2022-07-19)
15
+
16
+ **Note:** Version bump only for package @pie-lib/rubric
17
+
18
+
19
+
20
+
21
+
22
+ ## [0.4.30](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.29...@pie-lib/rubric@0.4.30) (2022-07-19)
23
+
24
+ **Note:** Version bump only for package @pie-lib/rubric
25
+
26
+
27
+
28
+
29
+
30
+ ## [0.4.29](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.28...@pie-lib/rubric@0.4.29) (2022-07-18)
31
+
32
+ **Note:** Version bump only for package @pie-lib/rubric
33
+
34
+
35
+
36
+
37
+
38
+ ## [0.4.28](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.27...@pie-lib/rubric@0.4.28) (2022-07-18)
39
+
40
+ **Note:** Version bump only for package @pie-lib/rubric
41
+
42
+
43
+
44
+
45
+
46
+ ## [0.4.27](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.26...@pie-lib/rubric@0.4.27) (2022-06-28)
47
+
48
+ **Note:** Version bump only for package @pie-lib/rubric
49
+
50
+
51
+
52
+
53
+
54
+ ## [0.4.26](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.25...@pie-lib/rubric@0.4.26) (2022-06-28)
55
+
56
+ **Note:** Version bump only for package @pie-lib/rubric
57
+
58
+
59
+
60
+
61
+
62
+ ## [0.4.25](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.24...@pie-lib/rubric@0.4.25) (2022-06-27)
63
+
64
+ **Note:** Version bump only for package @pie-lib/rubric
65
+
66
+
67
+
68
+
69
+
70
+ ## [0.4.24](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.23...@pie-lib/rubric@0.4.24) (2022-06-27)
71
+
72
+ **Note:** Version bump only for package @pie-lib/rubric
73
+
74
+
75
+
76
+
77
+
78
+ ## [0.4.23](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.22...@pie-lib/rubric@0.4.23) (2022-06-13)
79
+
80
+ **Note:** Version bump only for package @pie-lib/rubric
81
+
82
+
83
+
84
+
85
+
86
+ ## [0.4.22](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.21...@pie-lib/rubric@0.4.22) (2022-05-30)
87
+
88
+ **Note:** Version bump only for package @pie-lib/rubric
89
+
90
+
91
+
92
+
93
+
94
+ ## [0.4.21](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.20...@pie-lib/rubric@0.4.21) (2022-05-24)
95
+
96
+ **Note:** Version bump only for package @pie-lib/rubric
97
+
98
+
99
+
100
+
101
+
102
+ ## [0.4.20](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.19...@pie-lib/rubric@0.4.20) (2022-05-10)
103
+
104
+ **Note:** Version bump only for package @pie-lib/rubric
105
+
106
+
107
+
108
+
109
+
110
+ ## [0.4.19](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.18...@pie-lib/rubric@0.4.19) (2022-05-09)
111
+
112
+ **Note:** Version bump only for package @pie-lib/rubric
113
+
114
+
115
+
116
+
117
+
118
+ ## [0.4.18](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.17...@pie-lib/rubric@0.4.18) (2022-05-03)
119
+
120
+ **Note:** Version bump only for package @pie-lib/rubric
121
+
122
+
123
+
124
+
125
+
126
+ ## [0.4.17](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.16...@pie-lib/rubric@0.4.17) (2022-05-03)
127
+
128
+
129
+ ### Bug Fixes
130
+
131
+ * add an alias for editable-html in rubric to prevent overriding the npm package ([d81bf53](https://github.com/pie-framework/pie-lib/commit/d81bf53961c8306bf39e2be27a9e8bf528d2ce9c))
132
+
133
+
134
+
135
+
136
+
137
+ ## [0.4.16](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.15...@pie-lib/rubric@0.4.16) (2022-04-28)
138
+
139
+ **Note:** Version bump only for package @pie-lib/rubric
140
+
141
+
142
+
143
+
144
+
145
+ ## [0.4.15](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.14...@pie-lib/rubric@0.4.15) (2022-04-12)
146
+
147
+ **Note:** Version bump only for package @pie-lib/rubric
148
+
149
+
150
+
151
+
152
+
153
+ ## [0.4.14](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.13...@pie-lib/rubric@0.4.14) (2022-03-21)
154
+
155
+ **Note:** Version bump only for package @pie-lib/rubric
156
+
157
+
158
+
159
+
160
+
161
+ ## [0.4.13](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.12...@pie-lib/rubric@0.4.13) (2022-03-08)
162
+
163
+ **Note:** Version bump only for package @pie-lib/rubric
164
+
165
+
166
+
167
+
168
+
169
+ ## [0.4.12](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.11...@pie-lib/rubric@0.4.12) (2022-03-07)
170
+
171
+ **Note:** Version bump only for package @pie-lib/rubric
172
+
173
+
174
+
175
+
176
+
177
+ ## [0.4.11](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.10...@pie-lib/rubric@0.4.11) (2022-03-07)
178
+
179
+ **Note:** Version bump only for package @pie-lib/rubric
180
+
181
+
182
+
183
+
184
+
185
+ ## [0.4.10](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.9...@pie-lib/rubric@0.4.10) (2022-02-21)
186
+
187
+ **Note:** Version bump only for package @pie-lib/rubric
188
+
189
+
190
+
191
+
192
+
193
+ ## [0.4.9](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.8...@pie-lib/rubric@0.4.9) (2022-02-21)
194
+
195
+ **Note:** Version bump only for package @pie-lib/rubric
196
+
197
+
198
+
199
+
200
+
201
+ ## [0.4.8](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.7...@pie-lib/rubric@0.4.8) (2022-02-04)
202
+
203
+ **Note:** Version bump only for package @pie-lib/rubric
204
+
205
+
206
+
207
+
208
+
209
+ ## [0.4.7](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.6...@pie-lib/rubric@0.4.7) (2022-02-03)
210
+
211
+ **Note:** Version bump only for package @pie-lib/rubric
212
+
213
+
214
+
215
+
216
+
217
+ ## [0.4.6](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.5...@pie-lib/rubric@0.4.6) (2022-01-24)
218
+
219
+ **Note:** Version bump only for package @pie-lib/rubric
220
+
221
+
222
+
223
+
224
+
225
+ ## [0.4.5](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.4...@pie-lib/rubric@0.4.5) (2022-01-10)
226
+
227
+ **Note:** Version bump only for package @pie-lib/rubric
228
+
229
+
230
+
231
+
232
+
233
+ ## [0.4.4](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.3...@pie-lib/rubric@0.4.4) (2021-12-22)
234
+
235
+ **Note:** Version bump only for package @pie-lib/rubric
236
+
237
+
238
+
239
+
240
+
241
+ ## [0.4.3](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.2...@pie-lib/rubric@0.4.3) (2021-12-13)
242
+
243
+ **Note:** Version bump only for package @pie-lib/rubric
244
+
245
+
246
+
247
+
248
+
249
+ ## [0.4.2](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.1...@pie-lib/rubric@0.4.2) (2021-11-29)
250
+
251
+ **Note:** Version bump only for package @pie-lib/rubric
252
+
253
+
254
+
255
+
256
+
257
+ ## [0.4.1](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.4.0...@pie-lib/rubric@0.4.1) (2021-10-04)
258
+
259
+ **Note:** Version bump only for package @pie-lib/rubric
260
+
261
+
262
+
263
+
264
+
265
+ # [0.4.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.12...@pie-lib/rubric@0.4.0) (2021-10-04)
266
+
267
+
268
+ ### Features
269
+
270
+ * **rubric:** Added Studio support: Treat 'null' as null value for sample answer PD-1313 ([ce71c81](https://github.com/pie-framework/pie-lib/commit/ce71c81))
271
+
272
+
273
+
274
+
275
+
276
+ ## [0.3.12](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.11...@pie-lib/rubric@0.3.12) (2021-09-20)
277
+
278
+ **Note:** Version bump only for package @pie-lib/rubric
279
+
280
+
281
+
282
+
283
+
284
+ ## [0.3.11](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.10...@pie-lib/rubric@0.3.11) (2021-09-20)
285
+
286
+ **Note:** Version bump only for package @pie-lib/rubric
287
+
288
+
289
+
290
+
291
+
292
+ ## [0.3.10](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.9...@pie-lib/rubric@0.3.10) (2021-09-20)
293
+
294
+ **Note:** Version bump only for package @pie-lib/rubric
295
+
296
+
297
+
298
+
299
+
300
+ ## [0.3.9](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.8...@pie-lib/rubric@0.3.9) (2021-09-16)
301
+
302
+ **Note:** Version bump only for package @pie-lib/rubric
303
+
304
+
305
+
306
+
307
+
308
+ ## [0.3.8](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.7...@pie-lib/rubric@0.3.8) (2021-09-08)
309
+
310
+ **Note:** Version bump only for package @pie-lib/rubric
311
+
312
+
313
+
314
+
315
+
316
+ ## [0.3.7](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.6...@pie-lib/rubric@0.3.7) (2021-09-08)
317
+
318
+ **Note:** Version bump only for package @pie-lib/rubric
319
+
320
+
321
+
322
+
323
+
6
324
  ## [0.3.6](https://github.com/pie-framework/pie-lib/compare/@pie-lib/rubric@0.3.5...@pie-lib/rubric@0.3.6) (2021-08-30)
7
325
 
8
326
  **Note:** Version bump only for package @pie-lib/rubric
package/lib/authoring.js CHANGED
@@ -1,9 +1,29 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
- exports["default"] = exports.RawAuthoring = exports.PointConfig = exports.RubricType = void 0;
8
+ exports["default"] = exports.RubricType = exports.RawAuthoring = exports.PointConfig = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
27
 
8
28
  var _react = _interopRequireDefault(require("react"));
9
29
 
@@ -49,41 +69,13 @@ var _pointMenu = _interopRequireDefault(require("./point-menu"));
49
69
 
50
70
  var _range = _interopRequireDefault(require("lodash/range"));
51
71
 
52
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
53
-
54
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
55
-
56
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
57
-
58
- 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; }
59
-
60
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
61
-
62
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
63
-
64
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
65
-
66
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
67
-
68
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
72
+ 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; }
69
73
 
70
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
74
+ 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; }
71
75
 
72
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
76
+ 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); }; }
73
77
 
74
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
75
-
76
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
77
-
78
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
79
-
80
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
81
-
82
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
83
-
84
- function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
85
-
86
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
78
+ 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; } }
87
79
 
88
80
  var log = (0, _debug["default"])('pie-lib:rubric:authoring');
89
81
 
@@ -91,7 +83,7 @@ var reorder = function reorder(list, startIndex, endIndex) {
91
83
  var result = Array.from(list);
92
84
 
93
85
  var _result$splice = result.splice(startIndex, 1),
94
- _result$splice2 = _slicedToArray(_result$splice, 1),
86
+ _result$splice2 = (0, _slicedToArray2["default"])(_result$splice, 1),
95
87
  removed = _result$splice2[0];
96
88
 
97
89
  result.splice(endIndex, 0, removed);
@@ -117,22 +109,22 @@ var MaxPoints = (0, _styles.withStyles)(function (theme) {
117
109
  _onChange = props.onChange,
118
110
  max = props.max,
119
111
  classes = props.classes;
120
- return _react["default"].createElement(_FormControl["default"], {
112
+ return /*#__PURE__*/_react["default"].createElement(_FormControl["default"], {
121
113
  className: classes.formControl,
122
114
  variant: "outlined"
123
- }, _react["default"].createElement(_InputLabel["default"], {
115
+ }, /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], {
124
116
  width: 100,
125
117
  htmlFor: "..."
126
- }, "Max Points"), _react["default"].createElement(_Select["default"], {
118
+ }, "Max Points"), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
127
119
  value: value,
128
120
  onChange: function onChange(e) {
129
121
  return _onChange(e.target.value);
130
122
  },
131
- input: _react["default"].createElement(_OutlinedInput["default"], {
123
+ input: /*#__PURE__*/_react["default"].createElement(_OutlinedInput["default"], {
132
124
  labelWidth: 80
133
125
  })
134
126
  }, (0, _range["default"])(1, max).map(function (v) {
135
- return _react["default"].createElement(_MenuItem["default"], {
127
+ return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
136
128
  key: "".concat(v),
137
129
  value: v
138
130
  }, v);
@@ -180,31 +172,31 @@ var PointConfig = (0, _styles.withStyles)(function (theme) {
180
172
  sampleAnswer = props.sampleAnswer;
181
173
  var pointsLabel = "".concat(points, " ").concat(points <= 1 ? 'pt' : 'pts');
182
174
  var showSampleAnswer = checkSampleAnswer(sampleAnswer);
183
- return _react["default"].createElement("div", {
175
+ return /*#__PURE__*/_react["default"].createElement("div", {
184
176
  className: classes.pointConfig
185
- }, _react["default"].createElement(_Typography["default"], {
177
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
186
178
  variant: "overline",
187
179
  className: classes.pointsLabel
188
- }, pointsLabel), _react["default"].createElement("div", {
180
+ }, pointsLabel), /*#__PURE__*/_react["default"].createElement("div", {
189
181
  className: classes.row
190
- }, _react["default"].createElement(_DragIndicator["default"], {
182
+ }, /*#__PURE__*/_react["default"].createElement(_DragIndicator["default"], {
191
183
  className: classes.dragIndicator
192
- }), _react["default"].createElement(_editableHtml["default"], {
184
+ }), /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
193
185
  className: classes.editor,
194
186
  markup: content,
195
187
  onChange: props.onChange
196
- }), _react["default"].createElement(_pointMenu["default"], {
188
+ }), /*#__PURE__*/_react["default"].createElement(_pointMenu["default"], {
197
189
  classes: {
198
190
  icon: classes.pointMenu
199
191
  },
200
192
  showSampleAnswer: showSampleAnswer,
201
193
  onChange: props.onMenuChange
202
- })), !showSampleAnswer && _react["default"].createElement("div", {
194
+ })), !showSampleAnswer && /*#__PURE__*/_react["default"].createElement("div", {
203
195
  className: classes.sampleAnswersEditor
204
- }, _react["default"].createElement(_Typography["default"], {
196
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
205
197
  variant: "overline",
206
198
  className: classes.dragIndicator
207
- }, "Sample Response"), _react["default"].createElement(_editableHtml["default"], {
199
+ }, "Sample Response"), /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
208
200
  className: classes.editor,
209
201
  markup: sampleAnswer,
210
202
  onChange: props.onSampleChange
@@ -212,25 +204,22 @@ var PointConfig = (0, _styles.withStyles)(function (theme) {
212
204
  });
213
205
  exports.PointConfig = PointConfig;
214
206
 
215
- var RawAuthoring =
216
- /*#__PURE__*/
217
- function (_React$Component) {
218
- _inherits(RawAuthoring, _React$Component);
207
+ var RawAuthoring = /*#__PURE__*/function (_React$Component) {
208
+ (0, _inherits2["default"])(RawAuthoring, _React$Component);
219
209
 
220
- function RawAuthoring() {
221
- var _getPrototypeOf2;
210
+ var _super = _createSuper(RawAuthoring);
222
211
 
212
+ function RawAuthoring() {
223
213
  var _this;
224
214
 
225
- _classCallCheck(this, RawAuthoring);
215
+ (0, _classCallCheck2["default"])(this, RawAuthoring);
226
216
 
227
217
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
228
218
  args[_key] = arguments[_key];
229
219
  }
230
220
 
231
- _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(RawAuthoring)).call.apply(_getPrototypeOf2, [this].concat(args)));
232
-
233
- _defineProperty(_assertThisInitialized(_this), "dragEnd", function (result) {
221
+ _this = _super.call.apply(_super, [this].concat(args));
222
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "dragEnd", function (result) {
234
223
  if (!result.destination) {
235
224
  return;
236
225
  }
@@ -240,13 +229,12 @@ function (_React$Component) {
240
229
  onChange = _this$props.onChange;
241
230
  var points = reorder(value.points, result.source.index, result.destination.index);
242
231
  var sampleAnswers = reorder(value.sampleAnswers, result.source.index, result.destination.index);
243
- onChange(_objectSpread({}, value, {
232
+ onChange(_objectSpread(_objectSpread({}, value), {}, {
244
233
  points: points,
245
234
  sampleAnswers: sampleAnswers
246
235
  }));
247
236
  });
248
-
249
- _defineProperty(_assertThisInitialized(_this), "changeMaxPoints", function (maxPoints) {
237
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeMaxPoints", function (maxPoints) {
250
238
  var _this$props2 = _this.props,
251
239
  value = _this$props2.value,
252
240
  onChange = _this$props2.onChange;
@@ -270,14 +258,13 @@ function (_React$Component) {
270
258
  }
271
259
 
272
260
  if (points) {
273
- onChange(_objectSpread({}, value, {
261
+ onChange(_objectSpread(_objectSpread({}, value), {}, {
274
262
  points: points,
275
263
  sampleAnswers: sampleAnswers
276
264
  }));
277
265
  }
278
266
  });
279
-
280
- _defineProperty(_assertThisInitialized(_this), "changeContent", function (index, content, type) {
267
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeContent", function (index, content, type) {
281
268
  // type could be 'points' or 'sampleAnswers'
282
269
  log("changeModel[".concat(type, "]:"), index, content);
283
270
 
@@ -291,19 +278,17 @@ function (_React$Component) {
291
278
  var items = value[type] && Array.from(value[type]);
292
279
  items.splice(index, 1, content);
293
280
  log("changeModel[".concat(type, "]:"), items);
294
- onChange(_objectSpread({}, value, _defineProperty({}, type, items)));
281
+ onChange(_objectSpread(_objectSpread({}, value), {}, (0, _defineProperty2["default"])({}, type, items)));
295
282
  });
296
-
297
- _defineProperty(_assertThisInitialized(_this), "excludeZeros", function () {
283
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "excludeZeros", function () {
298
284
  var _this$props4 = _this.props,
299
285
  value = _this$props4.value,
300
286
  onChange = _this$props4.onChange;
301
- onChange(_objectSpread({}, value, {
287
+ onChange(_objectSpread(_objectSpread({}, value), {}, {
302
288
  excludeZero: !value.excludeZero
303
289
  }));
304
290
  });
305
-
306
- _defineProperty(_assertThisInitialized(_this), "shouldRenderPoint", function (index, value) {
291
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "shouldRenderPoint", function (index, value) {
307
292
  if (!value.excludeZero) {
308
293
  return true;
309
294
  } else {
@@ -316,8 +301,7 @@ function (_React$Component) {
316
301
  return true;
317
302
  }
318
303
  });
319
-
320
- _defineProperty(_assertThisInitialized(_this), "onPointMenuChange", function (index, clickedItem) {
304
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onPointMenuChange", function (index, clickedItem) {
321
305
  if (clickedItem === 'sample') {
322
306
  var value = _this.props.value;
323
307
  var sampleAnswers = Array.from(value.sampleAnswers || []);
@@ -331,11 +315,10 @@ function (_React$Component) {
331
315
  }
332
316
  }
333
317
  });
334
-
335
318
  return _this;
336
319
  }
337
320
 
338
- _createClass(RawAuthoring, [{
321
+ (0, _createClass2["default"])(RawAuthoring, [{
339
322
  key: "render",
340
323
  value: function render() {
341
324
  var _this2 = this;
@@ -350,42 +333,42 @@ function (_React$Component) {
350
333
  console.warn('maxPoints is deprecated - remove from model');
351
334
  }
352
335
 
353
- return _react["default"].createElement("div", {
336
+ return /*#__PURE__*/_react["default"].createElement("div", {
354
337
  className: (0, _classnames["default"])(classes["class"], className)
355
- }, _react["default"].createElement(_Typography["default"], {
338
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
356
339
  variant: "h5",
357
340
  className: classes.rubricTitle
358
- }, "Rubric"), _react["default"].createElement(_FormGroup["default"], {
341
+ }, "Rubric"), /*#__PURE__*/_react["default"].createElement(_FormGroup["default"], {
359
342
  row: true
360
- }, _react["default"].createElement(MaxPoints, {
343
+ }, /*#__PURE__*/_react["default"].createElement(MaxPoints, {
361
344
  max: 10,
362
345
  value: value.points.length - 1,
363
346
  onChange: this.changeMaxPoints
364
- }), _react["default"].createElement(_FormControlLabel["default"], {
347
+ }), /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
365
348
  label: "Exclude zeros",
366
- control: _react["default"].createElement(_Checkbox["default"], {
349
+ control: /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
367
350
  checked: value.excludeZero,
368
351
  onChange: this.excludeZeros
369
352
  })
370
- })), _react["default"].createElement("div", {
353
+ })), /*#__PURE__*/_react["default"].createElement("div", {
371
354
  className: classes.container
372
- }, _react["default"].createElement(_reactBeautifulDnd.DragDropContext, {
355
+ }, /*#__PURE__*/_react["default"].createElement(_reactBeautifulDnd.DragDropContext, {
373
356
  onDragEnd: this.dragEnd
374
- }, _react["default"].createElement(_reactBeautifulDnd.Droppable, {
357
+ }, /*#__PURE__*/_react["default"].createElement(_reactBeautifulDnd.Droppable, {
375
358
  droppableId: "droppable"
376
359
  }, function (provided) {
377
- return _react["default"].createElement("div", _extends({}, provided.droppableProps, {
360
+ return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({}, provided.droppableProps, {
378
361
  ref: provided.innerRef
379
362
  }), value.points.map(function (p, index) {
380
- return _this2.shouldRenderPoint(index, value) && _react["default"].createElement(_reactBeautifulDnd.Draggable, {
363
+ return _this2.shouldRenderPoint(index, value) && /*#__PURE__*/_react["default"].createElement(_reactBeautifulDnd.Draggable, {
381
364
  key: "".concat(p.points, "-").concat(index),
382
365
  index: index,
383
366
  draggableId: index.toString()
384
367
  }, function (provided) {
385
- return _react["default"].createElement("div", _extends({
368
+ return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
386
369
  className: classes.configHolder,
387
370
  ref: provided.innerRef
388
- }, provided.draggableProps, provided.dragHandleProps), _react["default"].createElement(PointConfig, {
371
+ }, provided.draggableProps, provided.dragHandleProps), /*#__PURE__*/_react["default"].createElement(PointConfig, {
389
372
  points: value.points.length - 1 - index,
390
373
  content: p,
391
374
  sampleAnswer: value.sampleAnswers && value.sampleAnswers[index],
@@ -404,20 +387,17 @@ function (_React$Component) {
404
387
  }))));
405
388
  }
406
389
  }]);
407
-
408
390
  return RawAuthoring;
409
391
  }(_react["default"].Component);
410
392
 
411
393
  exports.RawAuthoring = RawAuthoring;
412
-
413
- _defineProperty(RawAuthoring, "propTypes", {
394
+ (0, _defineProperty2["default"])(RawAuthoring, "propTypes", {
414
395
  classes: _propTypes["default"].object.isRequired,
415
396
  className: _propTypes["default"].string,
416
397
  value: RubricType,
417
398
  onChange: _propTypes["default"].func
418
399
  });
419
-
420
- _defineProperty(RawAuthoring, "defaultProps", {});
400
+ (0, _defineProperty2["default"])(RawAuthoring, "defaultProps", {});
421
401
 
422
402
  var styles = function styles(theme) {
423
403
  return {
@@ -452,19 +432,19 @@ var Reverse = function Reverse(props) {
452
432
  }).concat(sampleAnswers);
453
433
  }
454
434
 
455
- var value = _objectSpread({}, props.value, {
435
+ var value = _objectSpread(_objectSpread({}, props.value), {}, {
456
436
  points: points,
457
437
  sampleAnswers: sampleAnswers
458
438
  });
459
439
 
460
440
  var onChange = function onChange(value) {
461
- props.onChange(_objectSpread({}, value, {
441
+ props.onChange(_objectSpread(_objectSpread({}, value), {}, {
462
442
  points: Array.from(value.points || []).reverse(),
463
443
  sampleAnswers: Array.from(value.sampleAnswers || []).reverse()
464
444
  }));
465
445
  };
466
446
 
467
- return _react["default"].createElement(StyledRawAuthoring, {
447
+ return /*#__PURE__*/_react["default"].createElement(StyledRawAuthoring, {
468
448
  value: value,
469
449
  onChange: onChange
470
450
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/authoring.jsx"],"names":["log","reorder","list","startIndex","endIndex","result","Array","from","splice","removed","RubricType","PropTypes","shape","excludeZero","bool","points","arrayOf","string","sampleAnswers","MaxPoints","theme","formControl","minWidth","margin","spacing","unit","props","value","onChange","max","classes","e","target","map","v","checkSampleAnswer","sampleAnswer","PointConfig","pointConfig","row","display","width","position","editor","backgroundColor","dragIndicator","paddingTop","color","grey","pointsLabel","paddingBottom","textTransform","sampleAnswersEditor","paddingLeft","pointMenu","right","content","showSampleAnswer","icon","onMenuChange","onSampleChange","RawAuthoring","destination","source","index","maxPoints","currentMax","length","concat","type","items","clickedItem","changeContent","className","Number","isFinite","console","warn","rubricTitle","changeMaxPoints","excludeZeros","container","dragEnd","provided","droppableProps","innerRef","p","shouldRenderPoint","toString","configHolder","draggableProps","dragHandleProps","onPointMenuChange","placeholder","React","Component","object","isRequired","func","styles","borderWidth","borderStyle","borderColor","padding","StyledRawAuthoring","Reverse","reverse","propTypes","getIndex"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport OutlinedInput from '@material-ui/core/OutlinedInput';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport FormControl from '@material-ui/core/FormControl';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport times from 'lodash/times';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport FormGroup from '@material-ui/core/FormGroup';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport grey from '@material-ui/core/colors/grey';\nimport Typography from '@material-ui/core/Typography';\nimport DragIndicator from '@material-ui/icons/DragIndicator';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { DragDropContext, Droppable, Draggable } from 'react-beautiful-dnd';\nimport debug from 'debug';\nimport takeRight from 'lodash/takeRight';\nimport PointMenu from './point-menu';\n\nimport range from 'lodash/range';\nconst log = debug('pie-lib:rubric:authoring');\n\nconst reorder = (list, startIndex, endIndex) => {\n const result = Array.from(list);\n const [removed] = result.splice(startIndex, 1);\n\n result.splice(endIndex, 0, removed);\n\n return result;\n};\n\nexport const RubricType = PropTypes.shape({\n excludeZero: PropTypes.bool,\n points: PropTypes.arrayOf(PropTypes.string),\n sampleAnswers: PropTypes.arrayOf(PropTypes.string)\n});\n\nconst MaxPoints = withStyles(theme => ({\n formControl: {\n minWidth: '120px',\n margin: theme.spacing.unit\n }\n}))(props => {\n const { value, onChange, max, classes } = props;\n\n return (\n <FormControl className={classes.formControl} variant=\"outlined\">\n <InputLabel width={100} htmlFor=\"...\">\n Max Points\n </InputLabel>\n <Select\n value={value}\n onChange={e => onChange(e.target.value)}\n input={<OutlinedInput labelWidth={80} />}\n >\n {range(1, max).map(v => (\n <MenuItem key={`${v}`} value={v}>\n {v}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n});\n\n// if the value is null or 'null', the Sample Answer input field for that point will not be dispalyed\n// if the value is '', the Sample Answer input field will be empty\nconst checkSampleAnswer = sampleAnswer => sampleAnswer === null || sampleAnswer === 'null';\n\nexport const PointConfig = withStyles(theme => ({\n pointConfig: {},\n row: {\n display: 'flex',\n width: '100%',\n position: 'relative'\n },\n editor: {\n width: '100%',\n backgroundColor: 'white !important'\n },\n dragIndicator: {\n paddingTop: theme.spacing.unit,\n color: grey[500]\n },\n pointsLabel: {\n color: grey[500],\n paddingBottom: theme.spacing.unit,\n textTransform: 'uppercase'\n },\n sampleAnswersEditor: {\n paddingLeft: theme.spacing.unit * 3\n },\n pointMenu: {\n position: 'absolute',\n right: 0\n }\n}))(props => {\n const { points, content, classes, sampleAnswer } = props;\n const pointsLabel = `${points} ${points <= 1 ? 'pt' : 'pts'}`;\n const showSampleAnswer = checkSampleAnswer(sampleAnswer);\n\n return (\n <div className={classes.pointConfig}>\n <Typography variant=\"overline\" className={classes.pointsLabel}>\n {pointsLabel}\n </Typography>\n <div className={classes.row}>\n <DragIndicator className={classes.dragIndicator} />\n <EditableHtml className={classes.editor} markup={content} onChange={props.onChange} />\n <PointMenu\n classes={{\n icon: classes.pointMenu\n }}\n showSampleAnswer={showSampleAnswer}\n onChange={props.onMenuChange}\n />\n </div>\n {!showSampleAnswer && (\n <div className={classes.sampleAnswersEditor}>\n <Typography variant=\"overline\" className={classes.dragIndicator}>\n Sample Response\n </Typography>\n <EditableHtml\n className={classes.editor}\n markup={sampleAnswer}\n onChange={props.onSampleChange}\n />\n </div>\n )}\n </div>\n );\n});\n\nexport class RawAuthoring extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n value: RubricType,\n onChange: PropTypes.func\n };\n\n static defaultProps = {};\n\n dragEnd = result => {\n if (!result.destination) {\n return;\n }\n\n const { value, onChange } = this.props;\n\n const points = reorder(value.points, result.source.index, result.destination.index);\n const sampleAnswers = reorder(\n value.sampleAnswers,\n result.source.index,\n result.destination.index\n );\n\n onChange({ ...value, points, sampleAnswers });\n };\n\n changeMaxPoints = maxPoints => {\n const { value, onChange } = this.props;\n const currentMax = value.points.length - 1;\n\n log('current', currentMax, 'new: ', maxPoints);\n\n let points, sampleAnswers;\n if (maxPoints > currentMax) {\n points = times(maxPoints - currentMax)\n .map(() => '')\n .concat(value.points);\n sampleAnswers = times(maxPoints - currentMax)\n .map(() => null)\n .concat(value.sampleAnswers);\n }\n\n if (maxPoints < currentMax) {\n log('less than');\n points = takeRight(value.points, maxPoints + 1);\n sampleAnswers = takeRight(value.sampleAnswers, maxPoints + 1);\n }\n\n if (points) {\n onChange({ ...value, points, sampleAnswers });\n }\n };\n\n changeContent = (index, content, type) => {\n // type could be 'points' or 'sampleAnswers'\n log(`changeModel[${type}]:`, index, content);\n\n if (type !== 'points' && type !== 'sampleAnswers') {\n return;\n }\n\n const { value, onChange } = this.props;\n const items = value[type] && Array.from(value[type]);\n\n items.splice(index, 1, content);\n log(`changeModel[${type}]:`, items);\n\n onChange({ ...value, [type]: items });\n };\n\n excludeZeros = () => {\n const { value, onChange } = this.props;\n\n onChange({ ...value, excludeZero: !value.excludeZero });\n };\n\n shouldRenderPoint = (index, value) => {\n if (!value.excludeZero) {\n return true;\n } else {\n if (index < value.points.length - 1) {\n return true;\n } else if (index === value.points.length - 1) {\n return false;\n }\n\n return true;\n }\n };\n\n onPointMenuChange = (index, clickedItem) => {\n if (clickedItem === 'sample') {\n const { value } = this.props;\n const sampleAnswers = Array.from(value.sampleAnswers || []);\n\n if (checkSampleAnswer(sampleAnswers[index])) {\n // an empty string will display an empty Sample Answer input field\n this.changeContent(index, '', 'sampleAnswers');\n } else {\n // when the content is null or 'null', the Sample Answer input field will not be displayed\n this.changeContent(index, null, 'sampleAnswers');\n }\n }\n };\n\n render() {\n const { classes, className, value } = this.props;\n\n if (value && Number.isFinite(value.maxPoints)) {\n // eslint-disable-next-line no-console\n console.warn('maxPoints is deprecated - remove from model');\n }\n\n return (\n <div className={classNames(classes.class, className)}>\n <Typography variant=\"h5\" className={classes.rubricTitle}>\n Rubric\n </Typography>\n <FormGroup row>\n <MaxPoints max={10} value={value.points.length - 1} onChange={this.changeMaxPoints} />\n <FormControlLabel\n label=\"Exclude zeros\"\n control={<Checkbox checked={value.excludeZero} onChange={this.excludeZeros} />}\n />\n </FormGroup>\n <div className={classes.container}>\n <DragDropContext onDragEnd={this.dragEnd}>\n <Droppable droppableId=\"droppable\">\n {provided => (\n <div {...provided.droppableProps} ref={provided.innerRef}>\n {value.points.map(\n (p, index) =>\n this.shouldRenderPoint(index, value) && (\n <Draggable\n key={`${p.points}-${index}`}\n index={index}\n draggableId={index.toString()}\n >\n {provided => (\n <div\n className={classes.configHolder}\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n >\n <PointConfig\n points={value.points.length - 1 - index}\n content={p}\n sampleAnswer={value.sampleAnswers && value.sampleAnswers[index]}\n onChange={content => this.changeContent(index, content, 'points')}\n onSampleChange={content =>\n this.changeContent(index, content, 'sampleAnswers')\n }\n onMenuChange={clickedItem =>\n this.onPointMenuChange(index, clickedItem)\n }\n />\n </div>\n )}\n </Draggable>\n )\n )}\n {provided.placeholder}\n </div>\n )}\n </Droppable>\n </DragDropContext>\n </div>\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n container: {\n backgroundColor: grey[200],\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: grey[300],\n padding: theme.spacing.unit * 2,\n margin: theme.spacing.unit\n },\n configHolder: {\n paddingTop: theme.spacing.unit,\n paddingBottom: theme.spacing.unit\n },\n rubricTitle: {\n paddingLeft: theme.spacing.unit,\n margin: theme.spacing.unit\n }\n});\n\nconst StyledRawAuthoring = withStyles(styles)(RawAuthoring);\n\nconst Reverse = props => {\n const points = Array.from(props.value.points || []).reverse();\n let sampleAnswers = Array.from(props.value.sampleAnswers || []).reverse();\n\n if (points.length > sampleAnswers.length) {\n sampleAnswers = times(points.length - sampleAnswers.length)\n .map(() => null)\n .concat(sampleAnswers);\n }\n\n const value = { ...props.value, points, sampleAnswers };\n\n const onChange = value => {\n props.onChange({\n ...value,\n points: Array.from(value.points || []).reverse(),\n sampleAnswers: Array.from(value.sampleAnswers || []).reverse()\n });\n };\n\n return <StyledRawAuthoring value={value} onChange={onChange} />;\n};\n\nReverse.propTypes = {\n value: RubricType,\n getIndex: PropTypes.func,\n onChange: PropTypes.func\n};\n\nexport default Reverse;\n"],"file":"authoring.js"}
1
+ {"version":3,"file":"authoring.js","names":["log","debug","reorder","list","startIndex","endIndex","result","Array","from","splice","removed","RubricType","PropTypes","shape","excludeZero","bool","points","arrayOf","string","sampleAnswers","MaxPoints","withStyles","theme","formControl","minWidth","margin","spacing","unit","props","value","onChange","max","classes","e","target","range","map","v","checkSampleAnswer","sampleAnswer","PointConfig","pointConfig","row","display","width","position","editor","backgroundColor","dragIndicator","paddingTop","color","grey","pointsLabel","paddingBottom","textTransform","sampleAnswersEditor","paddingLeft","pointMenu","right","content","showSampleAnswer","icon","onMenuChange","onSampleChange","RawAuthoring","destination","source","index","maxPoints","currentMax","length","times","concat","takeRight","type","items","clickedItem","changeContent","className","Number","isFinite","console","warn","classNames","rubricTitle","changeMaxPoints","excludeZeros","container","dragEnd","provided","droppableProps","innerRef","p","shouldRenderPoint","toString","configHolder","draggableProps","dragHandleProps","onPointMenuChange","placeholder","React","Component","object","isRequired","func","styles","borderWidth","borderStyle","borderColor","padding","StyledRawAuthoring","Reverse","reverse","propTypes","getIndex"],"sources":["../src/authoring.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport OutlinedInput from '@material-ui/core/OutlinedInput';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport FormControl from '@material-ui/core/FormControl';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport times from 'lodash/times';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport FormGroup from '@material-ui/core/FormGroup';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport grey from '@material-ui/core/colors/grey';\nimport Typography from '@material-ui/core/Typography';\nimport DragIndicator from '@material-ui/icons/DragIndicator';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { DragDropContext, Droppable, Draggable } from 'react-beautiful-dnd';\nimport debug from 'debug';\nimport takeRight from 'lodash/takeRight';\nimport PointMenu from './point-menu';\n\nimport range from 'lodash/range';\nconst log = debug('pie-lib:rubric:authoring');\n\nconst reorder = (list, startIndex, endIndex) => {\n const result = Array.from(list);\n const [removed] = result.splice(startIndex, 1);\n\n result.splice(endIndex, 0, removed);\n\n return result;\n};\n\nexport const RubricType = PropTypes.shape({\n excludeZero: PropTypes.bool,\n points: PropTypes.arrayOf(PropTypes.string),\n sampleAnswers: PropTypes.arrayOf(PropTypes.string)\n});\n\nconst MaxPoints = withStyles(theme => ({\n formControl: {\n minWidth: '120px',\n margin: theme.spacing.unit\n }\n}))(props => {\n const { value, onChange, max, classes } = props;\n\n return (\n <FormControl className={classes.formControl} variant=\"outlined\">\n <InputLabel width={100} htmlFor=\"...\">\n Max Points\n </InputLabel>\n <Select\n value={value}\n onChange={e => onChange(e.target.value)}\n input={<OutlinedInput labelWidth={80} />}\n >\n {range(1, max).map(v => (\n <MenuItem key={`${v}`} value={v}>\n {v}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n});\n\n// if the value is null or 'null', the Sample Answer input field for that point will not be dispalyed\n// if the value is '', the Sample Answer input field will be empty\nconst checkSampleAnswer = sampleAnswer => sampleAnswer === null || sampleAnswer === 'null';\n\nexport const PointConfig = withStyles(theme => ({\n pointConfig: {},\n row: {\n display: 'flex',\n width: '100%',\n position: 'relative'\n },\n editor: {\n width: '100%',\n backgroundColor: 'white !important'\n },\n dragIndicator: {\n paddingTop: theme.spacing.unit,\n color: grey[500]\n },\n pointsLabel: {\n color: grey[500],\n paddingBottom: theme.spacing.unit,\n textTransform: 'uppercase'\n },\n sampleAnswersEditor: {\n paddingLeft: theme.spacing.unit * 3\n },\n pointMenu: {\n position: 'absolute',\n right: 0\n }\n}))(props => {\n const { points, content, classes, sampleAnswer } = props;\n const pointsLabel = `${points} ${points <= 1 ? 'pt' : 'pts'}`;\n const showSampleAnswer = checkSampleAnswer(sampleAnswer);\n\n return (\n <div className={classes.pointConfig}>\n <Typography variant=\"overline\" className={classes.pointsLabel}>\n {pointsLabel}\n </Typography>\n <div className={classes.row}>\n <DragIndicator className={classes.dragIndicator} />\n <EditableHtml className={classes.editor} markup={content} onChange={props.onChange} />\n <PointMenu\n classes={{\n icon: classes.pointMenu\n }}\n showSampleAnswer={showSampleAnswer}\n onChange={props.onMenuChange}\n />\n </div>\n {!showSampleAnswer && (\n <div className={classes.sampleAnswersEditor}>\n <Typography variant=\"overline\" className={classes.dragIndicator}>\n Sample Response\n </Typography>\n <EditableHtml\n className={classes.editor}\n markup={sampleAnswer}\n onChange={props.onSampleChange}\n />\n </div>\n )}\n </div>\n );\n});\n\nexport class RawAuthoring extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n value: RubricType,\n onChange: PropTypes.func\n };\n\n static defaultProps = {};\n\n dragEnd = result => {\n if (!result.destination) {\n return;\n }\n\n const { value, onChange } = this.props;\n\n const points = reorder(value.points, result.source.index, result.destination.index);\n const sampleAnswers = reorder(\n value.sampleAnswers,\n result.source.index,\n result.destination.index\n );\n\n onChange({ ...value, points, sampleAnswers });\n };\n\n changeMaxPoints = maxPoints => {\n const { value, onChange } = this.props;\n const currentMax = value.points.length - 1;\n\n log('current', currentMax, 'new: ', maxPoints);\n\n let points, sampleAnswers;\n if (maxPoints > currentMax) {\n points = times(maxPoints - currentMax)\n .map(() => '')\n .concat(value.points);\n sampleAnswers = times(maxPoints - currentMax)\n .map(() => null)\n .concat(value.sampleAnswers);\n }\n\n if (maxPoints < currentMax) {\n log('less than');\n points = takeRight(value.points, maxPoints + 1);\n sampleAnswers = takeRight(value.sampleAnswers, maxPoints + 1);\n }\n\n if (points) {\n onChange({ ...value, points, sampleAnswers });\n }\n };\n\n changeContent = (index, content, type) => {\n // type could be 'points' or 'sampleAnswers'\n log(`changeModel[${type}]:`, index, content);\n\n if (type !== 'points' && type !== 'sampleAnswers') {\n return;\n }\n\n const { value, onChange } = this.props;\n const items = value[type] && Array.from(value[type]);\n\n items.splice(index, 1, content);\n log(`changeModel[${type}]:`, items);\n\n onChange({ ...value, [type]: items });\n };\n\n excludeZeros = () => {\n const { value, onChange } = this.props;\n\n onChange({ ...value, excludeZero: !value.excludeZero });\n };\n\n shouldRenderPoint = (index, value) => {\n if (!value.excludeZero) {\n return true;\n } else {\n if (index < value.points.length - 1) {\n return true;\n } else if (index === value.points.length - 1) {\n return false;\n }\n\n return true;\n }\n };\n\n onPointMenuChange = (index, clickedItem) => {\n if (clickedItem === 'sample') {\n const { value } = this.props;\n const sampleAnswers = Array.from(value.sampleAnswers || []);\n\n if (checkSampleAnswer(sampleAnswers[index])) {\n // an empty string will display an empty Sample Answer input field\n this.changeContent(index, '', 'sampleAnswers');\n } else {\n // when the content is null or 'null', the Sample Answer input field will not be displayed\n this.changeContent(index, null, 'sampleAnswers');\n }\n }\n };\n\n render() {\n const { classes, className, value } = this.props;\n\n if (value && Number.isFinite(value.maxPoints)) {\n // eslint-disable-next-line no-console\n console.warn('maxPoints is deprecated - remove from model');\n }\n\n return (\n <div className={classNames(classes.class, className)}>\n <Typography variant=\"h5\" className={classes.rubricTitle}>\n Rubric\n </Typography>\n <FormGroup row>\n <MaxPoints max={10} value={value.points.length - 1} onChange={this.changeMaxPoints} />\n <FormControlLabel\n label=\"Exclude zeros\"\n control={<Checkbox checked={value.excludeZero} onChange={this.excludeZeros} />}\n />\n </FormGroup>\n <div className={classes.container}>\n <DragDropContext onDragEnd={this.dragEnd}>\n <Droppable droppableId=\"droppable\">\n {provided => (\n <div {...provided.droppableProps} ref={provided.innerRef}>\n {value.points.map(\n (p, index) =>\n this.shouldRenderPoint(index, value) && (\n <Draggable\n key={`${p.points}-${index}`}\n index={index}\n draggableId={index.toString()}\n >\n {provided => (\n <div\n className={classes.configHolder}\n ref={provided.innerRef}\n {...provided.draggableProps}\n {...provided.dragHandleProps}\n >\n <PointConfig\n points={value.points.length - 1 - index}\n content={p}\n sampleAnswer={value.sampleAnswers && value.sampleAnswers[index]}\n onChange={content => this.changeContent(index, content, 'points')}\n onSampleChange={content =>\n this.changeContent(index, content, 'sampleAnswers')\n }\n onMenuChange={clickedItem =>\n this.onPointMenuChange(index, clickedItem)\n }\n />\n </div>\n )}\n </Draggable>\n )\n )}\n {provided.placeholder}\n </div>\n )}\n </Droppable>\n </DragDropContext>\n </div>\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n container: {\n backgroundColor: grey[200],\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: grey[300],\n padding: theme.spacing.unit * 2,\n margin: theme.spacing.unit\n },\n configHolder: {\n paddingTop: theme.spacing.unit,\n paddingBottom: theme.spacing.unit\n },\n rubricTitle: {\n paddingLeft: theme.spacing.unit,\n margin: theme.spacing.unit\n }\n});\n\nconst StyledRawAuthoring = withStyles(styles)(RawAuthoring);\n\nconst Reverse = props => {\n const points = Array.from(props.value.points || []).reverse();\n let sampleAnswers = Array.from(props.value.sampleAnswers || []).reverse();\n\n if (points.length > sampleAnswers.length) {\n sampleAnswers = times(points.length - sampleAnswers.length)\n .map(() => null)\n .concat(sampleAnswers);\n }\n\n const value = { ...props.value, points, sampleAnswers };\n\n const onChange = value => {\n props.onChange({\n ...value,\n points: Array.from(value.points || []).reverse(),\n sampleAnswers: Array.from(value.sampleAnswers || []).reverse()\n });\n };\n\n return <StyledRawAuthoring value={value} onChange={onChange} />;\n};\n\nReverse.propTypes = {\n value: RubricType,\n getIndex: PropTypes.func,\n onChange: PropTypes.func\n};\n\nexport default Reverse;\n"],"mappings":"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"}
package/lib/index.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -9,8 +11,13 @@ Object.defineProperty(exports, "Authoring", {
9
11
  return _authoring["default"];
10
12
  }
11
13
  });
14
+ exports.RUBRIC_TYPES = void 0;
12
15
 
13
16
  var _authoring = _interopRequireDefault(require("./authoring"));
14
17
 
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
+ var RUBRIC_TYPES = {
19
+ SIMPLE_RUBRIC: 'simpleRubric',
20
+ MULTI_TRAIT_RUBRIC: 'multiTraitRubric'
21
+ };
22
+ exports.RUBRIC_TYPES = RUBRIC_TYPES;
16
23
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;AAAA","sourcesContent":["import Authoring from './authoring';\nexport { Authoring };\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["RUBRIC_TYPES","SIMPLE_RUBRIC","MULTI_TRAIT_RUBRIC"],"sources":["../src/index.js"],"sourcesContent":["import Authoring from './authoring';\n\nconst RUBRIC_TYPES = {\n SIMPLE_RUBRIC: 'simpleRubric',\n MULTI_TRAIT_RUBRIC: 'multiTraitRubric'\n};\n\nexport { Authoring, RUBRIC_TYPES };\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,YAAY,GAAG;EACnBC,aAAa,EAAE,cADI;EAEnBC,kBAAkB,EAAE;AAFD,CAArB"}
package/lib/point-menu.js CHANGED
@@ -1,71 +1,65 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = exports.IconMenu = void 0;
7
9
 
8
- var _Menu = _interopRequireDefault(require("@material-ui/core/Menu"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
11
 
10
- var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
13
 
12
- var _MoreVert = _interopRequireDefault(require("@material-ui/icons/MoreVert"));
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
15
 
14
- var _MoreHoriz = _interopRequireDefault(require("@material-ui/icons/MoreHoriz"));
15
-
16
- var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
 
18
- var _propTypes = _interopRequireDefault(require("prop-types"));
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
19
 
20
- var _react = _interopRequireDefault(require("react"));
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
21
 
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
24
+ var _Menu = _interopRequireDefault(require("@material-ui/core/Menu"));
25
25
 
26
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
26
+ var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
27
27
 
28
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
28
+ var _MoreVert = _interopRequireDefault(require("@material-ui/icons/MoreVert"));
29
29
 
30
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
30
+ var _MoreHoriz = _interopRequireDefault(require("@material-ui/icons/MoreHoriz"));
31
31
 
32
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
32
+ var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
33
33
 
34
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
34
+ var _propTypes = _interopRequireDefault(require("prop-types"));
35
35
 
36
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
36
+ var _react = _interopRequireDefault(require("react"));
37
37
 
38
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
38
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
39
39
 
40
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
40
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
41
 
42
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
42
+ var IconMenu = /*#__PURE__*/function (_React$Component) {
43
+ (0, _inherits2["default"])(IconMenu, _React$Component);
43
44
 
44
- var IconMenu =
45
- /*#__PURE__*/
46
- function (_React$Component) {
47
- _inherits(IconMenu, _React$Component);
45
+ var _super = _createSuper(IconMenu);
48
46
 
49
47
  function IconMenu(props) {
50
48
  var _this;
51
49
 
52
- _classCallCheck(this, IconMenu);
53
-
54
- _this = _possibleConstructorReturn(this, _getPrototypeOf(IconMenu).call(this, props));
55
-
56
- _defineProperty(_assertThisInitialized(_this), "handleClick", function (event) {
50
+ (0, _classCallCheck2["default"])(this, IconMenu);
51
+ _this = _super.call(this, props);
52
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClick", function (event) {
57
53
  return _this.setState({
58
54
  open: true,
59
55
  anchorEl: event.currentTarget
60
56
  });
61
57
  });
62
-
63
- _defineProperty(_assertThisInitialized(_this), "handleRequestClose", function () {
58
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleRequestClose", function () {
64
59
  return _this.setState({
65
60
  open: false
66
61
  });
67
62
  });
68
-
69
63
  _this.state = {
70
64
  anchorEl: undefined,
71
65
  open: false
@@ -73,7 +67,7 @@ function (_React$Component) {
73
67
  return _this;
74
68
  }
75
69
 
76
- _createClass(IconMenu, [{
70
+ (0, _createClass2["default"])(IconMenu, [{
77
71
  key: "render",
78
72
  value: function render() {
79
73
  var _this2 = this;
@@ -96,15 +90,15 @@ function (_React$Component) {
96
90
  };
97
91
 
98
92
  var iconColor = open ? 'inherit' : 'disabled';
99
- return _react["default"].createElement("div", null, _react["default"].createElement("div", {
93
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
100
94
  onClick: this.handleClick
101
- }, _react["default"].createElement(_IconButton["default"], {
95
+ }, /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
102
96
  className: classes.icon
103
- }, open ? _react["default"].createElement(_MoreVert["default"], {
97
+ }, open ? /*#__PURE__*/_react["default"].createElement(_MoreVert["default"], {
104
98
  color: iconColor
105
- }) : _react["default"].createElement(_MoreHoriz["default"], {
99
+ }) : /*#__PURE__*/_react["default"].createElement(_MoreHoriz["default"], {
106
100
  color: iconColor
107
- }))), _react["default"].createElement(_Menu["default"], {
101
+ }))), /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
108
102
  id: "point-menu",
109
103
  anchorEl: anchorEl,
110
104
  open: open,
@@ -117,37 +111,34 @@ function (_React$Component) {
117
111
  horizontal: 'right'
118
112
  }
119
113
  }, keys.map(function (k, index) {
120
- return _react["default"].createElement(_MenuItem["default"], {
114
+ return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
121
115
  key: index,
122
116
  onClick: handleMenuClick(k)
123
117
  }, opts[k]);
124
118
  })));
125
119
  }
126
120
  }]);
127
-
128
121
  return IconMenu;
129
122
  }(_react["default"].Component);
130
123
 
131
124
  exports.IconMenu = IconMenu;
132
-
133
- _defineProperty(IconMenu, "propTypes", {
125
+ (0, _defineProperty2["default"])(IconMenu, "propTypes", {
134
126
  opts: _propTypes["default"].object,
135
127
  onClick: _propTypes["default"].func.isRequired,
136
128
  classes: _propTypes["default"].object.isRequired
137
129
  });
138
130
 
139
- var PointMenu =
140
- /*#__PURE__*/
141
- function (_React$Component2) {
142
- _inherits(PointMenu, _React$Component2);
131
+ var PointMenu = /*#__PURE__*/function (_React$Component2) {
132
+ (0, _inherits2["default"])(PointMenu, _React$Component2);
143
133
 
144
- function PointMenu() {
145
- _classCallCheck(this, PointMenu);
134
+ var _super2 = _createSuper(PointMenu);
146
135
 
147
- return _possibleConstructorReturn(this, _getPrototypeOf(PointMenu).apply(this, arguments));
136
+ function PointMenu() {
137
+ (0, _classCallCheck2["default"])(this, PointMenu);
138
+ return _super2.apply(this, arguments);
148
139
  }
149
140
 
150
- _createClass(PointMenu, [{
141
+ (0, _createClass2["default"])(PointMenu, [{
151
142
  key: "render",
152
143
  value: function render() {
153
144
  var _this$props2 = this.props,
@@ -155,31 +146,27 @@ function (_React$Component2) {
155
146
  classes = _this$props2.classes,
156
147
  showSampleAnswer = _this$props2.showSampleAnswer;
157
148
  var sampleText = showSampleAnswer ? 'Provide Sample Response' : 'Remove Sample Response';
158
- return _react["default"].createElement(IconMenu, {
149
+ return /*#__PURE__*/_react["default"].createElement(IconMenu, {
159
150
  onClick: function onClick(key) {
160
151
  return onChange(key);
161
152
  },
162
153
  opts: {
163
- text: 'Use Default Text',
164
154
  sample: sampleText
165
155
  },
166
156
  classes: classes
167
157
  });
168
158
  }
169
159
  }]);
170
-
171
160
  return PointMenu;
172
161
  }(_react["default"].Component);
173
162
 
174
163
  exports["default"] = PointMenu;
175
-
176
- _defineProperty(PointMenu, "propTypes", {
164
+ (0, _defineProperty2["default"])(PointMenu, "propTypes", {
177
165
  onChange: _propTypes["default"].func.isRequired,
178
166
  classes: _propTypes["default"].object.isRequired,
179
167
  showSampleAnswer: _propTypes["default"].bool.isRequired
180
168
  });
181
-
182
- _defineProperty(PointMenu, "defaultProps", {
169
+ (0, _defineProperty2["default"])(PointMenu, "defaultProps", {
183
170
  classes: {}
184
171
  });
185
172
  //# sourceMappingURL=point-menu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/point-menu.jsx"],"names":["IconMenu","props","event","setState","open","anchorEl","currentTarget","state","undefined","opts","onClick","classes","keys","Object","handleMenuClick","key","handleRequestClose","iconColor","handleClick","icon","transform","vertical","horizontal","map","k","index","React","Component","PropTypes","object","func","isRequired","PointMenu","onChange","showSampleAnswer","sampleText","text","sample","bool"],"mappings":"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","sourcesContent":["import Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport MoreHorizIcon from '@material-ui/icons/MoreHoriz';\nimport IconButton from '@material-ui/core/IconButton';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nexport class IconMenu extends React.Component {\n static propTypes = {\n opts: PropTypes.object,\n onClick: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired\n };\n\n constructor(props) {\n super(props);\n this.state = {\n anchorEl: undefined,\n open: false\n };\n }\n\n handleClick = event => this.setState({ open: true, anchorEl: event.currentTarget });\n\n handleRequestClose = () => this.setState({ open: false });\n\n render() {\n const { opts, onClick, classes } = this.props;\n const { open, anchorEl } = this.state;\n const keys = Object.keys(opts) || [];\n\n const handleMenuClick = key => () => {\n onClick(key);\n this.handleRequestClose();\n };\n\n const iconColor = open ? 'inherit' : 'disabled';\n\n return (\n <div>\n <div onClick={this.handleClick}>\n <IconButton className={classes.icon}>\n {open ? <MoreVertIcon color={iconColor} /> : <MoreHorizIcon color={iconColor} />}\n </IconButton>\n </div>\n <Menu\n id=\"point-menu\"\n anchorEl={anchorEl}\n open={open}\n onClose={this.handleRequestClose}\n style={{ transform: 'translate(-15px, -15px)' }}\n transformOrigin={{\n vertical: 'center',\n horizontal: 'right'\n }}\n >\n {keys.map((k, index) => (\n <MenuItem key={index} onClick={handleMenuClick(k)}>\n {opts[k]}\n </MenuItem>\n ))}\n </Menu>\n </div>\n );\n }\n}\n\nexport default class PointMenu extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n showSampleAnswer: PropTypes.bool.isRequired\n };\n\n static defaultProps = {\n classes: {}\n };\n\n render() {\n const { onChange, classes, showSampleAnswer } = this.props;\n const sampleText = showSampleAnswer ? 'Provide Sample Response' : 'Remove Sample Response';\n\n return (\n <IconMenu\n onClick={key => onChange(key)}\n opts={{\n text: 'Use Default Text',\n sample: sampleText\n }}\n classes={classes}\n />\n );\n }\n}\n"],"file":"point-menu.js"}
1
+ {"version":3,"file":"point-menu.js","names":["IconMenu","props","event","setState","open","anchorEl","currentTarget","state","undefined","opts","onClick","classes","keys","Object","handleMenuClick","key","handleRequestClose","iconColor","handleClick","icon","transform","vertical","horizontal","map","k","index","React","Component","PropTypes","object","func","isRequired","PointMenu","onChange","showSampleAnswer","sampleText","sample","bool"],"sources":["../src/point-menu.jsx"],"sourcesContent":["import Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport MoreHorizIcon from '@material-ui/icons/MoreHoriz';\nimport IconButton from '@material-ui/core/IconButton';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nexport class IconMenu extends React.Component {\n static propTypes = {\n opts: PropTypes.object,\n onClick: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired\n };\n\n constructor(props) {\n super(props);\n this.state = {\n anchorEl: undefined,\n open: false\n };\n }\n\n handleClick = event => this.setState({ open: true, anchorEl: event.currentTarget });\n\n handleRequestClose = () => this.setState({ open: false });\n\n render() {\n const { opts, onClick, classes } = this.props;\n const { open, anchorEl } = this.state;\n const keys = Object.keys(opts) || [];\n\n const handleMenuClick = key => () => {\n onClick(key);\n this.handleRequestClose();\n };\n\n const iconColor = open ? 'inherit' : 'disabled';\n\n return (\n <div>\n <div onClick={this.handleClick}>\n <IconButton className={classes.icon}>\n {open ? <MoreVertIcon color={iconColor} /> : <MoreHorizIcon color={iconColor} />}\n </IconButton>\n </div>\n <Menu\n id=\"point-menu\"\n anchorEl={anchorEl}\n open={open}\n onClose={this.handleRequestClose}\n style={{ transform: 'translate(-15px, -15px)' }}\n transformOrigin={{\n vertical: 'center',\n horizontal: 'right'\n }}\n >\n {keys.map((k, index) => (\n <MenuItem key={index} onClick={handleMenuClick(k)}>\n {opts[k]}\n </MenuItem>\n ))}\n </Menu>\n </div>\n );\n }\n}\n\nexport default class PointMenu extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n showSampleAnswer: PropTypes.bool.isRequired\n };\n\n static defaultProps = {\n classes: {}\n };\n\n render() {\n const { onChange, classes, showSampleAnswer } = this.props;\n const sampleText = showSampleAnswer ? 'Provide Sample Response' : 'Remove Sample Response';\n\n return (\n <IconMenu\n onClick={key => onChange(key)}\n opts={{\n sample: sampleText\n }}\n classes={classes}\n />\n );\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/rubric",
3
- "version": "0.3.7-next.62+1f1d2cba",
3
+ "version": "0.3.7-next.631+34fed29b",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -9,13 +9,14 @@
9
9
  "dependencies": {
10
10
  "@material-ui/core": "^3.9.3",
11
11
  "@material-ui/icons": "^3.0.2",
12
- "@pie-lib/editable-html": "^7.17.4-next.62+1f1d2cba",
12
+ "@pie-lib/editable-html": "^9.2.2",
13
13
  "debug": "^4.1.1",
14
+ "editable-html": "npm:@pie-lib/editable-html@^7.21.0",
14
15
  "lodash": "^4.17.11",
15
16
  "prop-types": "^15.7.2",
16
17
  "react": "^16.8.1",
17
18
  "react-beautiful-dnd": "^11.0.2",
18
19
  "react-dom": "^16.9.0"
19
20
  },
20
- "gitHead": "1f1d2cba382179d4a5e3956f5763ae0db8882bde"
21
+ "gitHead": "34fed29bb26ac8eaf26ab02d3242425cb4056acd"
21
22
  }
package/src/index.js CHANGED
@@ -1,2 +1,8 @@
1
1
  import Authoring from './authoring';
2
- export { Authoring };
2
+
3
+ const RUBRIC_TYPES = {
4
+ SIMPLE_RUBRIC: 'simpleRubric',
5
+ MULTI_TRAIT_RUBRIC: 'multiTraitRubric'
6
+ };
7
+
8
+ export { Authoring, RUBRIC_TYPES };
@@ -85,7 +85,6 @@ export default class PointMenu extends React.Component {
85
85
  <IconMenu
86
86
  onClick={key => onChange(key)}
87
87
  opts={{
88
- text: 'Use Default Text',
89
88
  sample: sampleText
90
89
  }}
91
90
  classes={classes}