@pie-element/rubric 6.0.1 → 11.0.3-esm.0

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/esm/controller.js CHANGED
@@ -1,16 +1,19 @@
1
- function _defineProperty(obj, key, value) {
2
- if (key in obj) {
3
- Object.defineProperty(obj, key, {
4
- value: value,
5
- enumerable: true,
6
- configurable: true,
7
- writable: true
8
- });
9
- } else {
10
- obj[key] = value;
11
- }
1
+ function _extends() {
2
+ _extends = Object.assign || function (target) {
3
+ for (var i = 1; i < arguments.length; i++) {
4
+ var source = arguments[i];
5
+
6
+ for (var key in source) {
7
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
8
+ target[key] = source[key];
9
+ }
10
+ }
11
+ }
12
12
 
13
- return obj;
13
+ return target;
14
+ };
15
+
16
+ return _extends.apply(this, arguments);
14
17
  }
15
18
 
16
19
  var defaults = {
@@ -22,15 +25,11 @@ var defaults = {
22
25
  excludeZeroEnabled: true
23
26
  };
24
27
 
25
- 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; }
26
-
27
- 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) { _defineProperty(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; }
28
-
29
- var normalize = model => _objectSpread(_objectSpread({}, defaults), model);
28
+ const normalize = model => _extends({}, defaults, model);
30
29
 
31
30
  function model(model, session, env) {
32
31
  return new Promise(resolve => {
33
- var modelResult = normalize(model || {});
32
+ const modelResult = normalize(model || {});
34
33
  resolve(env && env.role && env.role === 'instructor' ? modelResult : {});
35
34
  });
36
35
  }
@@ -41,16 +40,16 @@ function markupToText(s) {
41
40
 
42
41
 
43
42
  function validate(model) {
44
- var {
43
+ const {
45
44
  points
46
45
  } = model;
47
- var errors = {};
48
- var pointsDescriptorsErrors = {};
46
+ const errors = {};
47
+ const pointsDescriptorsErrors = {};
49
48
  (points || []).forEach((point, index) => {
50
49
  if (!point || point === '<div></div>') {
51
50
  pointsDescriptorsErrors[index] = 'Points descriptors cannot be empty.';
52
51
  } else {
53
- var identicalPointDescr = points.slice(index + 1).some(p => markupToText(p) === markupToText(point));
52
+ const identicalPointDescr = points.slice(index + 1).some(p => markupToText(p) === markupToText(point));
54
53
 
55
54
  if (identicalPointDescr) {
56
55
  pointsDescriptorsErrors[index] = 'Points descriptors should be unique.';
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../controller/src/defaults.js","../controller/src/index.js"],"sourcesContent":["export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default {\n points: ['', '', '', ''],\n sampleAnswers: [null, null, null, null],\n maxPoints: 3,\n maxPointsEnabled: true,\n excludeZero: false,\n excludeZeroEnabled: true,\n};\n","import defaults from './defaults';\n\nconst normalize = (model) => ({ ...defaults, ...model });\n\nexport function model(model, session, env) {\n return new Promise((resolve) => {\n const modelResult = normalize(model || {});\n\n resolve(env && env.role && env.role === 'instructor' ? modelResult : {});\n });\n}\n\nfunction markupToText(s) {\n return (s || '').replace(/(<([^>]+)>)/gi, '');\n}\n\n// IMPORTANT! If you make any changes to this function, please make sure you also update complex-rubric/controller/validateSimpleRubric function!“.\nexport function validate(model) {\n const { points } = model;\n const errors = {};\n const pointsDescriptorsErrors = {};\n\n (points || []).forEach((point, index) => {\n\n if (!point || point === '<div></div>') {\n pointsDescriptorsErrors[index] = 'Points descriptors cannot be empty.';\n } else {\n const identicalPointDescr = points.slice(index + 1).some((p) => markupToText(p) === markupToText(point));\n\n if (identicalPointDescr) {\n pointsDescriptorsErrors[index] = 'Points descriptors should be unique.';\n }\n }\n });\n\n if (Object.keys(pointsDescriptorsErrors).length > 0) {\n errors.pointsDescriptorsErrors = pointsDescriptorsErrors;\n }\n\n return errors;\n}\n"],"names":["points","sampleAnswers","maxPoints","maxPointsEnabled","excludeZero","excludeZeroEnabled","normalize","model","defaults","session","env","Promise","resolve","modelResult","role","markupToText","s","replace","validate","errors","pointsDescriptorsErrors","forEach","point","index","identicalPointDescr","slice","some","p","Object","keys","length"],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sources":["../controller/src/defaults.js","../controller/src/index.js"],"sourcesContent":["export default {\n points: ['', '', '', ''],\n sampleAnswers: [null, null, null, null],\n maxPoints: 3,\n maxPointsEnabled: true,\n excludeZero: false,\n excludeZeroEnabled: true,\n};\n","import defaults from './defaults';\n\nconst normalize = (model) => ({ ...defaults, ...model });\n\nexport function model(model, session, env) {\n return new Promise((resolve) => {\n const modelResult = normalize(model || {});\n\n resolve(env && env.role && env.role === 'instructor' ? modelResult : {});\n });\n}\n\nfunction markupToText(s) {\n return (s || '').replace(/(<([^>]+)>)/gi, '');\n}\n\n// IMPORTANT! If you make any changes to this function, please make sure you also update complex-rubric/controller/validateSimpleRubric function!“.\nexport function validate(model) {\n const { points } = model;\n const errors = {};\n const pointsDescriptorsErrors = {};\n\n (points || []).forEach((point, index) => {\n\n if (!point || point === '<div></div>') {\n pointsDescriptorsErrors[index] = 'Points descriptors cannot be empty.';\n } else {\n const identicalPointDescr = points.slice(index + 1).some((p) => markupToText(p) === markupToText(point));\n\n if (identicalPointDescr) {\n pointsDescriptorsErrors[index] = 'Points descriptors should be unique.';\n }\n }\n });\n\n if (Object.keys(pointsDescriptorsErrors).length > 0) {\n errors.pointsDescriptorsErrors = pointsDescriptorsErrors;\n }\n\n return errors;\n}\n"],"names":["points","sampleAnswers","maxPoints","maxPointsEnabled","excludeZero","excludeZeroEnabled","normalize","model","defaults","session","env","Promise","resolve","modelResult","role","markupToText","s","replace","validate","errors","pointsDescriptorsErrors","forEach","point","index","identicalPointDescr","slice","some","p","Object","keys","length"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,eAAe;AACbA,EAAAA,MAAM,EAAE,CAAC,EAAD,EAAK,EAAL,EAAS,EAAT,EAAa,EAAb,CADK;AAEbC,EAAAA,aAAa,EAAE,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAFF;AAGbC,EAAAA,SAAS,EAAE,CAHE;AAIbC,EAAAA,gBAAgB,EAAE,IAJL;AAKbC,EAAAA,WAAW,EAAE,KALA;AAMbC,EAAAA,kBAAkB,EAAE,IAAA;AANP,CAAf;;ACEA,MAAMC,SAAS,GAAIC,KAAD,iBAAiBC,QAAjB,EAA8BD,KAA9B,CAAlB,CAAA;;AAEO,SAASA,KAAT,CAAeA,KAAf,EAAsBE,OAAtB,EAA+BC,GAA/B,EAAoC;AACzC,EAAA,OAAO,IAAIC,OAAJ,CAAaC,OAAD,IAAa;AAC9B,IAAA,MAAMC,WAAW,GAAGP,SAAS,CAACC,KAAK,IAAI,EAAV,CAA7B,CAAA;AAEAK,IAAAA,OAAO,CAACF,GAAG,IAAIA,GAAG,CAACI,IAAX,IAAmBJ,GAAG,CAACI,IAAJ,KAAa,YAAhC,GAA+CD,WAA/C,GAA6D,EAA9D,CAAP,CAAA;AACD,GAJM,CAAP,CAAA;AAKD,CAAA;;AAED,SAASE,YAAT,CAAsBC,CAAtB,EAAyB;AACvB,EAAO,OAAA,CAACA,CAAC,IAAI,EAAN,EAAUC,OAAV,CAAkB,eAAlB,EAAmC,EAAnC,CAAP,CAAA;AACD;;;AAGM,SAASC,QAAT,CAAkBX,KAAlB,EAAyB;AAC9B,EAAM,MAAA;AAAEP,IAAAA,MAAAA;AAAF,GAAA,GAAaO,KAAnB,CAAA;AACA,EAAMY,MAAAA,MAAM,GAAG,EAAf,CAAA;AACA,EAAMC,MAAAA,uBAAuB,GAAG,EAAhC,CAAA;AAEA,EAACpB,CAAAA,MAAM,IAAI,EAAX,EAAeqB,OAAf,CAAuB,CAACC,KAAD,EAAQC,KAAR,KAAkB;AAEvC,IAAA,IAAI,CAACD,KAAD,IAAUA,KAAK,KAAK,aAAxB,EAAuC;AACrCF,MAAAA,uBAAuB,CAACG,KAAD,CAAvB,GAAiC,qCAAjC,CAAA;AACD,KAFD,MAEO;AACL,MAAMC,MAAAA,mBAAmB,GAAGxB,MAAM,CAACyB,KAAP,CAAaF,KAAK,GAAG,CAArB,CAAwBG,CAAAA,IAAxB,CAA8BC,CAAD,IAAOZ,YAAY,CAACY,CAAD,CAAZ,KAAoBZ,YAAY,CAACO,KAAD,CAApE,CAA5B,CAAA;;AAEA,MAAA,IAAIE,mBAAJ,EAAyB;AACvBJ,QAAAA,uBAAuB,CAACG,KAAD,CAAvB,GAAiC,sCAAjC,CAAA;AACD,OAAA;AACF,KAAA;AACF,GAXD,CAAA,CAAA;;AAaA,EAAIK,IAAAA,MAAM,CAACC,IAAP,CAAYT,uBAAZ,CAAqCU,CAAAA,MAArC,GAA8C,CAAlD,EAAqD;AACnDX,IAAAA,MAAM,CAACC,uBAAP,GAAiCA,uBAAjC,CAAA;AACD,GAAA;;AAED,EAAA,OAAOD,MAAP,CAAA;AACD;;;;"}