@pie-element/passage 3.1.7-next.3 → 3.1.7
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 +8 -0
- package/controller/CHANGELOG.md +8 -0
- package/controller/lib/index.js +13 -5
- package/controller/lib/index.js.map +1 -1
- package/controller/package.json +1 -1
- package/lib/print.js +17 -9
- package/lib/print.js.map +1 -1
- package/module/configure.js +1 -1
- package/module/controller.js +9 -5
- package/module/element.js +1 -1
- package/module/manifest.json +1 -1
- package/module/print.js +12 -8
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
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
|
+
## [3.1.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage@3.1.6...@pie-element/passage@3.1.7) (2024-10-29)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/passage
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [3.1.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage@3.1.5...@pie-element/passage@3.1.6) (2024-10-28)
|
|
7
15
|
|
|
8
16
|
|
package/controller/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
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.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage-controller@1.4.4...@pie-element/passage-controller@1.4.5) (2024-10-29)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/passage-controller
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [1.4.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/passage-controller@1.4.3...@pie-element/passage-controller@1.4.4) (2024-10-22)
|
|
7
15
|
|
|
8
16
|
|
package/controller/lib/index.js
CHANGED
|
@@ -27,6 +27,14 @@ var getContent = function getContent(html) {
|
|
|
27
27
|
return (html || '').replace(/(<(?!img|iframe)([^>]+)>)/gi, '');
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
+
var checkNullish = function checkNullish(value) {
|
|
31
|
+
return value !== null && value !== undefined;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
var isEnabled = function isEnabled(value, defaultValue) {
|
|
35
|
+
return checkNullish(value) ? value : defaultValue;
|
|
36
|
+
};
|
|
37
|
+
|
|
30
38
|
function createDefaultModel() {
|
|
31
39
|
var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
32
40
|
return new Promise(function (resolve) {
|
|
@@ -72,12 +80,12 @@ function _model() {
|
|
|
72
80
|
normalizedQuestion = normalize(question);
|
|
73
81
|
normalizedPassages = normalizedQuestion.passages.map(function (passage, index) {
|
|
74
82
|
return {
|
|
75
|
-
teacherInstructions: normalizedQuestion.teacherInstructionsEnabled ? normalizeTeacherInstructions(passage.teacherInstructions, env) : '',
|
|
83
|
+
teacherInstructions: isEnabled(passage.teacherInstructionsEnabled, normalizedQuestion.teacherInstructionsEnabled) ? normalizeTeacherInstructions(passage.teacherInstructions, env) : '',
|
|
76
84
|
label: getContent(passage.title) ? passage.title : "Passage ".concat(index + 1),
|
|
77
|
-
title: normalizedQuestion.titleEnabled ? passage.title || '' : '',
|
|
78
|
-
subtitle: normalizedQuestion.subtitleEnabled ? passage.subtitle || '' : '',
|
|
79
|
-
author: normalizedQuestion.authorEnabled ? passage.author || '' : '',
|
|
80
|
-
text: normalizedQuestion.textEnabled ? passage.text || '' : ''
|
|
85
|
+
title: isEnabled(passage.titleEnabled, normalizedQuestion.titleEnabled) ? passage.title || '' : '',
|
|
86
|
+
subtitle: isEnabled(passage.subtitleEnabled, normalizedQuestion.subtitleEnabled) ? passage.subtitle || '' : '',
|
|
87
|
+
author: isEnabled(passage.authorEnabled, normalizedQuestion.authorEnabled) ? passage.author || '' : '',
|
|
88
|
+
text: isEnabled(passage.textEnabled, normalizedQuestion.textEnabled) ? passage.text || '' : ''
|
|
81
89
|
};
|
|
82
90
|
});
|
|
83
91
|
return _context.abrupt("return", _objectSpread(_objectSpread({}, normalizedQuestion), {}, {
|
|
@@ -1 +1 @@
|
|
|
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","title","titleEnabled","subtitle","subtitleEnabled","author","authorEnabled","text","textEnabled","validate","config","errors","passagesErrors","forEach","err","field","required"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AAEA;;;;;;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,iCAAMC,oBAAN,GAAmBH,KAAnB,EAAP;AACD,GAFM,CAAP;AAGD;;AAEM,IAAMI,SAAS,GAAG,SAAZA,SAAY,CAACC,QAAD;AAAA,yCAAoBF,oBAApB,GAAiCE,QAAjC;AAAA,CAAlB;;;;AAEP,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACC,YAAD,EAAeC,GAAf,EAAuB;AAC1D,MAAQC,IAAR,GAAuBD,GAAvB,CAAQC,IAAR;AAAA,MAAcC,IAAd,GAAuBF,GAAvB,CAAcE,IAAd;;AAEA,MAAID,IAAI,KAAK,YAAT,KAA0BC,IAAI,KAAK,MAAT,IAAmBA,IAAI,KAAK,UAAtD,CAAJ,EAAuE;AACrE,WAAOH,YAAY,IAAI,EAAvB;AACD;;AAED,SAAO,EAAP;AACD,CARD;AAUA;AACA;AACA;AACA;AACA;AACA;;;SACsBP,K;;;;;yFAAf,iBAAqBK,QAArB,EAA+BM,OAA/B,EAAwCH,GAAxC;AAAA;AAAA;AAAA;AAAA;AAAA;AACCI,YAAAA,kBADD,GACsBR,SAAS,CAACC,QAAD,CAD/B;AAGCQ,YAAAA,kBAHD,GAGsBD,kBAAkB,CAACE,QAAnB,CAA4BC,GAA5B,CAAgC,UAACC,OAAD,EAAUC,KAAV;AAAA,qBAAqB;AAC9EC,gBAAAA,mBAAmB,
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["getContent","html","replace","checkNullish","value","undefined","isEnabled","defaultValue","createDefaultModel","model","Promise","resolve","defaults","normalize","question","normalizeTeacherInstructions","instructions","env","role","mode","session","normalizedQuestion","normalizedPassages","passages","map","passage","index","teacherInstructions","teacherInstructionsEnabled","label","title","titleEnabled","subtitle","subtitleEnabled","author","authorEnabled","text","textEnabled","validate","config","errors","passagesErrors","forEach","err","field","required"],"mappings":"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","sourcesContent":["import isEmpty from 'lodash/isEmpty';\n\nimport defaults from './defaults';\n\nconst getContent = (html) => (html || '').replace(/(<(?!img|iframe)([^>]+)>)/gi, '');\n\nconst checkNullish = (value) => value !== null && value !== undefined;\n\nconst isEnabled = (value, defaultValue) => (checkNullish(value) ? value : defaultValue);\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: isEnabled(passage.teacherInstructionsEnabled, normalizedQuestion.teacherInstructionsEnabled)\n ? normalizeTeacherInstructions(passage.teacherInstructions, env)\n : '',\n label: getContent(passage.title) ? passage.title : `Passage ${index + 1}`,\n title: isEnabled(passage.titleEnabled, normalizedQuestion.titleEnabled) ? passage.title || '' : '',\n subtitle: isEnabled(passage.subtitleEnabled, normalizedQuestion.subtitleEnabled) ? passage.subtitle || '' : '',\n author: isEnabled(passage.authorEnabled, normalizedQuestion.authorEnabled) ? passage.author || '' : '',\n text: isEnabled(passage.textEnabled, 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 const passagesErrors = {};\n\n (model.passages || []).forEach((passage, index) => {\n // validate only the first passage\n // TODO: remove when authoring is updated to support multiple passages\n if (index !== 0) {\n return;\n }\n\n const err = {};\n\n ['teacherInstructions', 'title', 'subtitle', 'author', 'text'].forEach((field) => {\n if (config[field]?.required && !getContent(passage[field])) {\n err[field] = 'This field is required.';\n }\n });\n\n if (!isEmpty(err)) {\n passagesErrors[index] = err;\n }\n });\n\n if (!isEmpty(passagesErrors)) {\n errors.passages = passagesErrors;\n }\n\n return errors;\n};\n"],"file":"index.js"}
|
package/controller/package.json
CHANGED
package/lib/print.js
CHANGED
|
@@ -35,25 +35,33 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
35
35
|
|
|
36
36
|
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; } }
|
|
37
37
|
|
|
38
|
-
var log = (0, _debug["default"])('pie-element:passage:print');
|
|
38
|
+
var log = (0, _debug["default"])('pie-element:passage:print');
|
|
39
39
|
|
|
40
40
|
var checkNullish = function checkNullish(value) {
|
|
41
41
|
return value !== null && value !== undefined;
|
|
42
42
|
};
|
|
43
43
|
|
|
44
|
+
var isEnabled = function isEnabled(value, defaultValue) {
|
|
45
|
+
return checkNullish(value) ? value : defaultValue;
|
|
46
|
+
};
|
|
47
|
+
|
|
44
48
|
var preparePrintPassage = function preparePrintPassage(model, opts) {
|
|
45
|
-
var isInstructor = opts.role === 'instructor';
|
|
46
|
-
|
|
47
|
-
var
|
|
49
|
+
var isInstructor = opts.role === 'instructor'; // TODO: also update '../../controller/src/defaults.js' when updating defaultValue
|
|
50
|
+
|
|
51
|
+
var teacherInstructionsEnabled = isEnabled(model.teacherInstructionsEnabled, true);
|
|
52
|
+
var titleEnabled = isEnabled(model.titleEnabled, false);
|
|
53
|
+
var authorEnabled = isEnabled(model.authorEnabled, false);
|
|
54
|
+
var subtitleEnabled = isEnabled(model.subtitleEnabled, false);
|
|
55
|
+
var textEnabled = isEnabled(model.textEnabled, true);
|
|
48
56
|
return model.passages.map(function (passage, index) {
|
|
49
57
|
return {
|
|
50
58
|
id: index,
|
|
51
|
-
teacherInstructions: teacherInstructionsEnabled ? isInstructor && passage.teacherInstructions || '' : '',
|
|
59
|
+
teacherInstructions: isEnabled(passage.teacherInstructionsEnabled, teacherInstructionsEnabled) ? isInstructor && passage.teacherInstructions || '' : '',
|
|
52
60
|
label: passage.title || "Passage ".concat(index + 1),
|
|
53
|
-
title:
|
|
54
|
-
author:
|
|
55
|
-
subtitle:
|
|
56
|
-
text: textEnabled ? passage.text || '' : ''
|
|
61
|
+
title: isEnabled(passage.titleEnabled, titleEnabled) ? passage.title || '' : '',
|
|
62
|
+
author: isEnabled(passage.authorEnabled, authorEnabled) ? passage.author || '' : '',
|
|
63
|
+
subtitle: isEnabled(passage.subtitleEnabled, subtitleEnabled) ? passage.subtitle || '' : '',
|
|
64
|
+
text: isEnabled(passage.textEnabled, textEnabled) ? passage.text || '' : ''
|
|
57
65
|
};
|
|
58
66
|
});
|
|
59
67
|
};
|
package/lib/print.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/print.js"],"names":["log","checkNullish","value","undefined","preparePrintPassage","model","opts","isInstructor","role","teacherInstructionsEnabled","textEnabled","passages","map","passage","index","id","teacherInstructions","label","title","
|
|
1
|
+
{"version":3,"sources":["../src/print.js"],"names":["log","checkNullish","value","undefined","isEnabled","defaultValue","preparePrintPassage","model","opts","isInstructor","role","teacherInstructionsEnabled","titleEnabled","authorEnabled","subtitleEnabled","textEnabled","passages","map","passage","index","id","teacherInstructions","label","title","author","subtitle","text","PassagePrint","_model","_options","_session","_rerender","length","printPassage","element","React","createElement","StimulusTabs","disabledTabs","tabs","ReactDOM","render","leading","trailing","s","o","HTMLElement"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debounce from 'lodash/debounce';\nimport debug from 'debug';\n\nimport StimulusTabs from './stimulus-tabs';\n\nconst log = debug('pie-element:passage:print');\n\nconst checkNullish = (value) => value !== null && value !== undefined;\n\nconst isEnabled = (value, defaultValue) => (checkNullish(value) ? value : defaultValue);\n\nconst preparePrintPassage = (model, opts) => {\n const isInstructor = opts.role === 'instructor';\n\n // TODO: also update '../../controller/src/defaults.js' when updating defaultValue\n const teacherInstructionsEnabled = isEnabled(model.teacherInstructionsEnabled, true);\n const titleEnabled = isEnabled(model.titleEnabled, false);\n const authorEnabled = isEnabled(model.authorEnabled, false);\n const subtitleEnabled = isEnabled(model.subtitleEnabled, false);\n const textEnabled = isEnabled(model.textEnabled, true);\n\n return model.passages.map((passage, index) => ({\n id: index,\n teacherInstructions: isEnabled(passage.teacherInstructionsEnabled, teacherInstructionsEnabled)\n ? (isInstructor && passage.teacherInstructions) || ''\n : '',\n label: passage.title || `Passage ${index + 1}`,\n title: isEnabled(passage.titleEnabled, titleEnabled) ? passage.title || '' : '',\n author: isEnabled(passage.authorEnabled, authorEnabled) ? passage.author || '' : '',\n subtitle: isEnabled(passage.subtitleEnabled, subtitleEnabled) ? passage.subtitle || '' : '',\n text: isEnabled(passage.textEnabled, textEnabled) ? passage.text || '' : '',\n }));\n};\n\nexport default class PassagePrint extends HTMLElement {\n constructor() {\n super();\n this._model = null;\n this._options = null;\n this._session = [];\n\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n if (this._model.passages && this._model.passages.length > 0) {\n const printPassage = preparePrintPassage(this._model, this._options);\n\n const element = React.createElement(StimulusTabs, {\n disabledTabs: true,\n tabs: printPassage,\n });\n\n ReactDOM.render(element, this);\n }\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true },\n );\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n set options(o) {\n this._options = o;\n }\n\n connectedCallback() {}\n}\n"],"file":"print.js"}
|
package/module/configure.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_react_dom} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_react_dom} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.14/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_config_ui, _dll_pie_lib__pie_toolbox_editable_html} from "../../../@pie-lib/pie-toolbox-module@5.0.12/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
package/module/controller.js
CHANGED
|
@@ -992,6 +992,10 @@ var defaults = {
|
|
|
992
992
|
|
|
993
993
|
const getContent = (html) => (html || '').replace(/(<(?!img|iframe)([^>]+)>)/gi, '');
|
|
994
994
|
|
|
995
|
+
const checkNullish = (value) => value !== null && value !== undefined;
|
|
996
|
+
|
|
997
|
+
const isEnabled = (value, defaultValue) => (checkNullish(value) ? value : defaultValue);
|
|
998
|
+
|
|
995
999
|
function createDefaultModel(model = {}) {
|
|
996
1000
|
return new Promise((resolve) => {
|
|
997
1001
|
resolve({ ...defaults, ...model });
|
|
@@ -1020,14 +1024,14 @@ async function model(question, session, env) {
|
|
|
1020
1024
|
const normalizedQuestion = normalize(question);
|
|
1021
1025
|
|
|
1022
1026
|
const normalizedPassages = normalizedQuestion.passages.map((passage, index) => ({
|
|
1023
|
-
teacherInstructions: normalizedQuestion.teacherInstructionsEnabled
|
|
1027
|
+
teacherInstructions: isEnabled(passage.teacherInstructionsEnabled, normalizedQuestion.teacherInstructionsEnabled)
|
|
1024
1028
|
? normalizeTeacherInstructions(passage.teacherInstructions, env)
|
|
1025
1029
|
: '',
|
|
1026
1030
|
label: getContent(passage.title) ? passage.title : `Passage ${index + 1}`,
|
|
1027
|
-
title: normalizedQuestion.titleEnabled ? passage.title || '' : '',
|
|
1028
|
-
subtitle: normalizedQuestion.subtitleEnabled ? passage.subtitle || '' : '',
|
|
1029
|
-
author: normalizedQuestion.authorEnabled ? passage.author || '' : '',
|
|
1030
|
-
text: normalizedQuestion.textEnabled ? passage.text || '' : '',
|
|
1031
|
+
title: isEnabled(passage.titleEnabled, normalizedQuestion.titleEnabled) ? passage.title || '' : '',
|
|
1032
|
+
subtitle: isEnabled(passage.subtitleEnabled, normalizedQuestion.subtitleEnabled) ? passage.subtitle || '' : '',
|
|
1033
|
+
author: isEnabled(passage.authorEnabled, normalizedQuestion.authorEnabled) ? passage.author || '' : '',
|
|
1034
|
+
text: isEnabled(passage.textEnabled, normalizedQuestion.textEnabled) ? passage.text || '' : '',
|
|
1031
1035
|
}));
|
|
1032
1036
|
|
|
1033
1037
|
return {
|
package/module/element.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_pie_lib__pie_toolbox_math_rendering_accessible} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_pie_lib__pie_toolbox_math_rendering_accessible} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.14/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_render_ui} from "../../../@pie-lib/pie-toolbox-module@5.0.12/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
package/module/manifest.json
CHANGED
package/module/print.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_lodash, _dll_debug} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_lodash, _dll_debug} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.0.14/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_render_ui} from "../../../@pie-lib/pie-toolbox-module@5.0.12/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
|
@@ -8880,18 +8880,22 @@ const {debounce: debounce} = _dll_lodash;
|
|
|
8880
8880
|
const debug = _dll_debug;
|
|
8881
8881
|
const log = debug('pie-element:passage:print');
|
|
8882
8882
|
const checkNullish = value => value !== null && value !== undefined;
|
|
8883
|
+
const isEnabled = (value, defaultValue) => checkNullish(value) ? value : defaultValue;
|
|
8883
8884
|
const preparePrintPassage = (model, opts) => {
|
|
8884
8885
|
const isInstructor = opts.role === 'instructor';
|
|
8885
|
-
const teacherInstructionsEnabled =
|
|
8886
|
-
const
|
|
8886
|
+
const teacherInstructionsEnabled = isEnabled(model.teacherInstructionsEnabled, true);
|
|
8887
|
+
const titleEnabled = isEnabled(model.titleEnabled, false);
|
|
8888
|
+
const authorEnabled = isEnabled(model.authorEnabled, false);
|
|
8889
|
+
const subtitleEnabled = isEnabled(model.subtitleEnabled, false);
|
|
8890
|
+
const textEnabled = isEnabled(model.textEnabled, true);
|
|
8887
8891
|
return model.passages.map((passage, index) => ({
|
|
8888
8892
|
id: index,
|
|
8889
|
-
teacherInstructions: teacherInstructionsEnabled ? isInstructor && passage.teacherInstructions || '' : '',
|
|
8893
|
+
teacherInstructions: isEnabled(passage.teacherInstructionsEnabled, teacherInstructionsEnabled) ? isInstructor && passage.teacherInstructions || '' : '',
|
|
8890
8894
|
label: passage.title || `Passage ${index + 1}`,
|
|
8891
|
-
title:
|
|
8892
|
-
author:
|
|
8893
|
-
subtitle:
|
|
8894
|
-
text: textEnabled ? passage.text || '' : ''
|
|
8895
|
+
title: isEnabled(passage.titleEnabled, titleEnabled) ? passage.title || '' : '',
|
|
8896
|
+
author: isEnabled(passage.authorEnabled, authorEnabled) ? passage.author || '' : '',
|
|
8897
|
+
subtitle: isEnabled(passage.subtitleEnabled, subtitleEnabled) ? passage.subtitle || '' : '',
|
|
8898
|
+
text: isEnabled(passage.textEnabled, textEnabled) ? passage.text || '' : ''
|
|
8895
8899
|
}));
|
|
8896
8900
|
};
|
|
8897
8901
|
class PassagePrint extends HTMLElement {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/passage",
|
|
3
|
-
"version": "3.1.7
|
|
3
|
+
"version": "3.1.7",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"react": "^16.8.1",
|
|
18
18
|
"react-dom": "^16.8.1"
|
|
19
19
|
},
|
|
20
|
-
"gitHead": "
|
|
20
|
+
"gitHead": "788a7ed32139ddc4d6ebc48bc4f974f98620f39b",
|
|
21
21
|
"scripts": {
|
|
22
22
|
"postpublish": "../../scripts/postpublish"
|
|
23
23
|
},
|