@pie-element/passage 2.21.4-next.3 → 2.21.5-next.16

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.md CHANGED
@@ -3,6 +3,17 @@
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
+ ## [2.21.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage@2.21.3...@pie-element/passage@2.21.4) (2024-09-05)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **passage:** add possibility to enable/disable fields in player PD-4006 PD-4058 ([3b379b1](https://github.com/pie-framework/pie-elements/commit/3b379b18684c3a337b3405a3517e429b4017b51f))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [2.21.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage@2.21.2...@pie-element/passage@2.21.3) (2024-08-29)
7
18
 
8
19
 
@@ -10,7 +10,7 @@
10
10
  "dependencies": {
11
11
  "@material-ui/core": "^3.9.2",
12
12
  "@pie-framework/pie-configure-events": "^1.3.0",
13
- "@pie-lib/pie-toolbox": "1.31.2",
13
+ "@pie-lib/pie-toolbox": "1.31.3",
14
14
  "lodash": "^4.17.15",
15
15
  "prop-types": "^15.6.2",
16
16
  "react": "^16.8.1",
@@ -3,6 +3,17 @@
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
+ ## [1.4.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage-controller@1.4.0...@pie-element/passage-controller@1.4.1) (2024-09-05)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **passage:** add possibility to enable/disable fields in player PD-4006 PD-4058 ([3b379b1](https://github.com/pie-framework/pie-elements/commit/3b379b18684c3a337b3405a3517e429b4017b51f))
12
+
13
+
14
+
15
+
16
+
6
17
  # [1.4.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage-controller@1.3.0...@pie-element/passage-controller@1.4.0) (2024-06-25)
7
18
 
8
19
 
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
  var _default = {
8
- teacherInstructionsEnabled: false,
8
+ teacherInstructionsEnabled: true,
9
9
  titleEnabled: true,
10
10
  subtitleEnabled: true,
11
11
  textEnabled: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/defaults.js"],"names":["teacherInstructionsEnabled","titleEnabled","subtitleEnabled","textEnabled","authorEnabled","passages","teacherInstructions","title","subtitle","author","text"],"mappings":";;;;;;eAAe;AACbA,EAAAA,0BAA0B,EAAE,KADf;AAEbC,EAAAA,YAAY,EAAE,IAFD;AAGbC,EAAAA,eAAe,EAAE,IAHJ;AAIbC,EAAAA,WAAW,EAAE,IAJA;AAKbC,EAAAA,aAAa,EAAE,IALF;AAMbC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,mBAAmB,EAAE,EADvB;AAEEC,IAAAA,KAAK,EAAE,EAFT;AAGEC,IAAAA,QAAQ,EAAE,EAHZ;AAIEC,IAAAA,MAAM,EAAE,EAJV;AAKEC,IAAAA,IAAI,EAAE;AALR,GADQ;AANG,C","sourcesContent":["export default {\n teacherInstructionsEnabled: false,\n titleEnabled: true,\n subtitleEnabled: true,\n textEnabled: true,\n authorEnabled: true,\n passages: [\n {\n teacherInstructions: '',\n title: '',\n subtitle: '',\n author: '',\n text: '',\n }\n ],\n};\n"],"file":"defaults.js"}
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["teacherInstructionsEnabled","titleEnabled","subtitleEnabled","textEnabled","authorEnabled","passages","teacherInstructions","title","subtitle","author","text"],"mappings":";;;;;;eAAe;AACbA,EAAAA,0BAA0B,EAAE,IADf;AAEbC,EAAAA,YAAY,EAAE,IAFD;AAGbC,EAAAA,eAAe,EAAE,IAHJ;AAIbC,EAAAA,WAAW,EAAE,IAJA;AAKbC,EAAAA,aAAa,EAAE,IALF;AAMbC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,mBAAmB,EAAE,EADvB;AAEEC,IAAAA,KAAK,EAAE,EAFT;AAGEC,IAAAA,QAAQ,EAAE,EAHZ;AAIEC,IAAAA,MAAM,EAAE,EAJV;AAKEC,IAAAA,IAAI,EAAE;AALR,GADQ;AANG,C","sourcesContent":["export default {\n teacherInstructionsEnabled: true,\n titleEnabled: true,\n subtitleEnabled: true,\n textEnabled: true,\n authorEnabled: true,\n passages: [\n {\n teacherInstructions: '',\n title: '',\n subtitle: '',\n author: '',\n text: '',\n },\n ],\n};\n"],"file":"defaults.js"}
@@ -35,6 +35,19 @@ function createDefaultModel() {
35
35
  var normalize = function normalize(question) {
36
36
  return _objectSpread(_objectSpread({}, _defaults["default"]), question);
37
37
  };
38
+
39
+ exports.normalize = normalize;
40
+
41
+ var normalizeTeacherInstructions = function normalizeTeacherInstructions(instructions, env) {
42
+ var role = env.role,
43
+ mode = env.mode;
44
+
45
+ if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {
46
+ return instructions || '';
47
+ }
48
+
49
+ return '';
50
+ };
38
51
  /**
39
52
  *
40
53
  * @param {*} question
@@ -43,35 +56,33 @@ var normalize = function normalize(question) {
43
56
  */
44
57
 
45
58
 
46
- exports.normalize = normalize;
47
-
48
59
  function model(_x, _x2, _x3) {
49
60
  return _model.apply(this, arguments);
50
61
  }
51
62
 
52
63
  function _model() {
53
64
  _model = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(question, session, env) {
54
- var _ref, role, mode, normalizedQuestion, out;
55
-
65
+ var normalizedQuestion, normalizedPassages;
56
66
  return _regenerator["default"].wrap(function _callee$(_context) {
57
67
  while (1) {
58
68
  switch (_context.prev = _context.next) {
59
69
  case 0:
60
- _ref = env || {}, role = _ref.role, mode = _ref.mode;
61
70
  normalizedQuestion = normalize(question);
62
- out = _objectSpread(_objectSpread({}, normalizedQuestion), {}, {
63
- teacherInstructions: null
71
+ normalizedPassages = normalizedQuestion.passages.map(function (passage, index) {
72
+ return {
73
+ teacherInstructions: normalizedQuestion.teacherInstructionsEnabled ? normalizeTeacherInstructions(passage.teacherInstructions, env) : '',
74
+ label: passage.titles || "Passage ".concat(index + 1),
75
+ title: normalizedQuestion.titleEnabled ? passage.title || '' : '',
76
+ subtitle: normalizedQuestion.subtitleEnabled ? passage.subtitle || '' : '',
77
+ author: normalizedQuestion.authorEnabled ? passage.author || '' : '',
78
+ text: normalizedQuestion.textEnabled ? passage.text || '' : ''
79
+ };
64
80
  });
81
+ return _context.abrupt("return", _objectSpread(_objectSpread({}, normalizedQuestion), {}, {
82
+ passages: normalizedPassages
83
+ }));
65
84
 
66
- if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {
67
- if (normalizedQuestion.teacherInstructionsEnabled) {
68
- out.teacherInstructions = normalizedQuestion.teacherInstructions;
69
- }
70
- }
71
-
72
- return _context.abrupt("return", out);
73
-
74
- case 5:
85
+ case 3:
75
86
  case "end":
76
87
  return _context.stop();
77
88
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["getContent","html","replace","createDefaultModel","model","Promise","resolve","defaults","normalize","question","session","env","role","mode","normalizedQuestion","out","teacherInstructions","teacherInstructionsEnabled","validate","config","errors","forEach","field","required"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,IAAD;AAAA,SAAU,CAACA,IAAI,IAAI,EAAT,EAAaC,OAAb,CAAqB,6BAArB,EAAoD,EAApD,CAAV;AAAA,CAAnB;;AAEO,SAASC,kBAAT,GAAwC;AAAA,MAAZC,KAAY,uEAAJ,EAAI;AAC7C,SAAO,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAa;AAC9BA,IAAAA,OAAO,iCACFC,oBADE,GAEFH,KAFE,EAAP;AAID,GALM,CAAP;AAMD;;AAEM,IAAMI,SAAS,GAAG,SAAZA,SAAY,CAACC,QAAD;AAAA,yCACpBF,oBADoB,GAEpBE,QAFoB;AAAA,CAAlB;AAKP;AACA;AACA;AACA;AACA;AACA;;;;;SACsBL,K;;;;;yFAAf,iBAAqBK,QAArB,EAA+BC,OAA/B,EAAwCC,GAAxC;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,mBACkBA,GAAG,IAAI,EADzB,EACGC,IADH,QACGA,IADH,EACSC,IADT,QACSA,IADT;AAECC,YAAAA,kBAFD,GAEsBN,SAAS,CAACC,QAAD,CAF/B;AAICM,YAAAA,GAJD,mCAKAD,kBALA;AAMHE,cAAAA,mBAAmB,EAAE;AANlB;;AASL,gBAAIJ,IAAI,KAAK,YAAT,KAA0BC,IAAI,KAAK,MAAT,IAAmBA,IAAI,KAAK,UAAtD,CAAJ,EAAuE;AACrE,kBAAIC,kBAAkB,CAACG,0BAAvB,EAAmD;AACjDF,gBAAAA,GAAG,CAACC,mBAAJ,GAA0BF,kBAAkB,CAACE,mBAA7C;AACD;AACF;;AAbI,6CAeED,GAfF;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAkBA,IAAMG,QAAQ,GAAG,SAAXA,QAAW,GAA6B;AAAA,MAA5Bd,KAA4B,uEAApB,EAAoB;AAAA,MAAhBe,MAAgB,uEAAP,EAAO;AACnD,MAAMC,MAAM,GAAG,EAAf;AAEA,GAAC,qBAAD,EAAwB,OAAxB,EAAiC,UAAjC,EAA6C,QAA7C,EAAuD,MAAvD,EAA+DC,OAA/D,CAAuE,UAACC,KAAD,EAAW;AAAA;;AAChF,QAAI,iBAAAH,MAAM,CAACG,KAAD,CAAN,wDAAeC,QAAf,IAA2B,CAACvB,UAAU,CAACI,KAAK,CAACkB,KAAD,CAAN,CAA1C,EAA0D;AACxDF,MAAAA,MAAM,CAACE,KAAD,CAAN,GAAgB,yBAAhB;AACD;AACF,GAJD;AAMA,SAAOF,MAAP;AACD,CAVM","sourcesContent":["import defaults from './defaults';\n\nconst getContent = (html) => (html || '').replace(/(<(?!img|iframe)([^>]+)>)/gi, '');\n\nexport function createDefaultModel(model = {}) {\n return new Promise((resolve) => {\n resolve({\n ...defaults,\n ...model,\n });\n });\n}\n\nexport const normalize = (question) => ({\n ...defaults,\n ...question,\n});\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const { role, mode } = env || {};\n const normalizedQuestion = normalize(question);\n\n const out = {\n ...normalizedQuestion,\n teacherInstructions: null\n };\n\n if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {\n if (normalizedQuestion.teacherInstructionsEnabled) {\n out.teacherInstructions = normalizedQuestion.teacherInstructions;\n }\n }\n\n return out;\n}\n\nexport const validate = (model = {}, config = {}) => {\n const errors = {};\n\n ['teacherInstructions', 'title', 'subtitle', 'author', 'text'].forEach((field) => {\n if (config[field]?.required && !getContent(model[field])) {\n errors[field] = 'This field is required.';\n }\n });\n\n return errors;\n};\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["getContent","html","replace","createDefaultModel","model","Promise","resolve","defaults","normalize","question","normalizeTeacherInstructions","instructions","env","role","mode","session","normalizedQuestion","normalizedPassages","passages","map","passage","index","teacherInstructions","teacherInstructionsEnabled","label","titles","title","titleEnabled","subtitle","subtitleEnabled","author","authorEnabled","text","textEnabled","validate","config","errors","forEach","field","required"],"mappings":"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","sourcesContent":["import defaults from './defaults';\n\nconst getContent = (html) => (html || '').replace(/(<(?!img|iframe)([^>]+)>)/gi, '');\n\nexport function createDefaultModel(model = {}) {\n return new Promise((resolve) => {\n resolve({ ...defaults, ...model });\n });\n}\n\nexport const normalize = (question) => ({ ...defaults, ...question });\n\nconst normalizeTeacherInstructions = (instructions, env) => {\n const { role, mode } = env;\n\n if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {\n return instructions || '';\n }\n\n return '';\n};\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = normalize(question);\n\n const normalizedPassages = normalizedQuestion.passages.map((passage, index) => ({\n teacherInstructions: normalizedQuestion.teacherInstructionsEnabled\n ? normalizeTeacherInstructions(passage.teacherInstructions, env)\n : '',\n label: passage.titles || `Passage ${index + 1}`,\n title: normalizedQuestion.titleEnabled ? passage.title || '' : '',\n subtitle: normalizedQuestion.subtitleEnabled ? passage.subtitle || '' : '',\n author: normalizedQuestion.authorEnabled ? passage.author || '' : '',\n text: normalizedQuestion.textEnabled ? passage.text || '' : '',\n }));\n\n return {\n ...normalizedQuestion,\n passages: normalizedPassages,\n };\n}\n\nexport const validate = (model = {}, config = {}) => {\n const errors = {};\n\n ['teacherInstructions', 'title', 'subtitle', 'author', 'text'].forEach((field) => {\n if (config[field]?.required && !getContent(model[field])) {\n errors[field] = 'This field is required.';\n }\n });\n\n return errors;\n};\n"],"file":"index.js"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/passage-controller",
3
3
  "private": true,
4
- "version": "1.4.0",
4
+ "version": "1.4.1",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",