@pie-element/multi-trait-rubric 1.4.18 → 1.4.20-beta.1443
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 +342 -0
- package/configure/CHANGELOG.md +322 -0
- package/configure/lib/common.js +47 -10
- package/configure/lib/common.js.map +1 -1
- package/configure/lib/defaults.js +22 -6
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +17 -3
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/main.js +155 -94
- package/configure/lib/main.js.map +1 -1
- package/configure/lib/modals.js +36 -5
- package/configure/lib/modals.js.map +1 -1
- package/configure/lib/scale.js +56 -10
- package/configure/lib/scale.js.map +1 -1
- package/configure/lib/trait.js +16 -6
- package/configure/lib/trait.js.map +1 -1
- package/configure/lib/traitsHeader.js +13 -5
- package/configure/lib/traitsHeader.js.map +1 -1
- package/configure/lib/utils.js.map +1 -1
- package/configure/package.json +7 -7
- package/controller/CHANGELOG.md +22 -0
- package/controller/lib/defaults.js +85 -1
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +5 -3
- package/controller/lib/index.js.map +1 -1
- package/controller/package.json +2 -2
- package/docs/config-schema.json +41 -16
- package/docs/config-schema.json.md +32 -12
- package/docs/demo/config.js +2 -2
- package/docs/demo/generate.js +92 -20
- package/docs/demo/session.js +1 -1
- package/docs/pie-schema.json +7 -1
- package/docs/pie-schema.json.md +4 -0
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/main.js +41 -6
- package/lib/main.js.map +1 -1
- package/lib/scale.js.map +1 -1
- package/lib/trait.js.map +1 -1
- package/package.json +3 -3
package/docs/pie-schema.json
CHANGED
|
@@ -33,6 +33,11 @@
|
|
|
33
33
|
"type": "boolean",
|
|
34
34
|
"title": "excludeZero"
|
|
35
35
|
},
|
|
36
|
+
"spellCheckEnabled": {
|
|
37
|
+
"description": "Indicates if spellcheck is enabled for the author. Default value is true",
|
|
38
|
+
"type": "boolean",
|
|
39
|
+
"title": "spellCheckEnabled"
|
|
40
|
+
},
|
|
36
41
|
"scales": {
|
|
37
42
|
"description": "scales",
|
|
38
43
|
"type": "array",
|
|
@@ -125,7 +130,8 @@
|
|
|
125
130
|
"required": [
|
|
126
131
|
"element",
|
|
127
132
|
"id",
|
|
128
|
-
"scales"
|
|
133
|
+
"scales",
|
|
134
|
+
"spellCheckEnabled"
|
|
129
135
|
],
|
|
130
136
|
"definitions": {
|
|
131
137
|
"DialogContent": {
|
package/docs/pie-schema.json.md
CHANGED
|
@@ -26,6 +26,10 @@ Indicates if standards should be shown
|
|
|
26
26
|
|
|
27
27
|
Indicates if scoring should start at 0 or 1
|
|
28
28
|
|
|
29
|
+
# `spellCheckEnabled` (boolean, required)
|
|
30
|
+
|
|
31
|
+
Indicates if spellcheck is enabled for the author. Default value is true
|
|
32
|
+
|
|
29
33
|
# `scales` (array, required)
|
|
30
34
|
|
|
31
35
|
scales
|
package/lib/index.js
CHANGED
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.js"],"names":["MultiTraitRubric","_model","_session","s","dispatchEvent","ModelSetEvent","tagName","toLowerCase","_render","el","React","createElement","Main","model","session","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEqBA,gB;;;;;AACnB,8BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAc,EAAd;AACA,UAAKC,QAAL,GAAgB,IAAhB;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKF,MAAL,GAAcE,CAAd;AACA,WAAKC,aAAL,CAAmB,IAAIC,8BAAJ,CAAkB,KAAKC,OAAL,CAAaC,WAAb,EAAlB,EAA8C,KAAKL,QAAnD,EAA6D,CAAC,CAAC,KAAKD,MAApE,CAAnB;;AAEA,WAAKO,OAAL;AACD;;;
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["MultiTraitRubric","_model","_session","s","dispatchEvent","ModelSetEvent","tagName","toLowerCase","_render","el","React","createElement","Main","model","session","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEqBA,gB;;;;;AACnB,8BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAc,EAAd;AACA,UAAKC,QAAL,GAAgB,IAAhB;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKF,MAAL,GAAcE,CAAd;AACA,WAAKC,aAAL,CAAmB,IAAIC,8BAAJ,CAAkB,KAAKC,OAAL,CAAaC,WAAb,EAAlB,EAA8C,KAAKL,QAAnD,EAA6D,CAAC,CAAC,KAAKD,MAApE,CAAnB;;AAEA,WAAKO,OAAL;AACD;;;SAMD,eAAc;AACZ,aAAO,KAAKN,QAAZ;AACD,K;SAND,aAAYC,CAAZ,EAAe;AACb,WAAKD,QAAL,GAAgBC,CAAhB;AACD;;;WAMD,6BAAoB;AAClB,WAAKK,OAAL;AACD;;;WAED,mBAAU;AACR,UAAMC,EAAE,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AAAEC,QAAAA,KAAK,EAAE,KAAKZ,MAAd;AAAsBa,QAAAA,OAAO,EAAE,KAAKZ;AAApC,OAA1B,CAAX;;AAEAa,2BAASC,MAAT,CAAgBP,EAAhB,EAAoB,IAApB;AACD;;;kDA9B2CQ,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { ModelSetEvent } from '@pie-framework/pie-player-events';\nimport Main from './main';\n\nexport default class MultiTraitRubric extends HTMLElement {\n constructor() {\n super();\n this._model = {};\n this._session = null;\n }\n\n set model(s) {\n this._model = s;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));\n\n this._render();\n }\n\n set session(s) {\n this._session = s;\n }\n\n get session() {\n return this._session;\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n const el = React.createElement(Main, { model: this._model, session: this._session });\n\n ReactDOM.render(el, this);\n }\n}\n"],"file":"index.js"}
|
package/lib/main.js
CHANGED
|
@@ -11,6 +11,8 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
|
|
|
11
11
|
|
|
12
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
13
|
|
|
14
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
+
|
|
14
16
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
17
|
|
|
16
18
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
@@ -23,6 +25,10 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
23
25
|
|
|
24
26
|
var _scale = _interopRequireDefault(require("./scale"));
|
|
25
27
|
|
|
28
|
+
var _Link = _interopRequireDefault(require("@material-ui/core/Link"));
|
|
29
|
+
|
|
30
|
+
var _Collapse = _interopRequireDefault(require("@material-ui/core/Collapse"));
|
|
31
|
+
|
|
26
32
|
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); }; }
|
|
27
33
|
|
|
28
34
|
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; } }
|
|
@@ -32,15 +38,35 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
32
38
|
|
|
33
39
|
var _super = _createSuper(Main);
|
|
34
40
|
|
|
35
|
-
function Main() {
|
|
41
|
+
function Main(props) {
|
|
42
|
+
var _this;
|
|
43
|
+
|
|
36
44
|
(0, _classCallCheck2["default"])(this, Main);
|
|
37
|
-
|
|
45
|
+
_this = _super.call(this, props);
|
|
46
|
+
_this.state = {
|
|
47
|
+
rubricOpen: false,
|
|
48
|
+
linkPrefix: 'Show'
|
|
49
|
+
};
|
|
50
|
+
_this.toggleRubric = _this.toggleRubric.bind((0, _assertThisInitialized2["default"])(_this));
|
|
51
|
+
return _this;
|
|
38
52
|
}
|
|
39
53
|
|
|
40
54
|
(0, _createClass2["default"])(Main, [{
|
|
55
|
+
key: "toggleRubric",
|
|
56
|
+
value: function toggleRubric() {
|
|
57
|
+
this.setState({
|
|
58
|
+
rubricOpen: !this.state.rubricOpen
|
|
59
|
+
});
|
|
60
|
+
this.setState({
|
|
61
|
+
linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide'
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}, {
|
|
41
65
|
key: "render",
|
|
42
66
|
value: function render() {
|
|
43
|
-
var
|
|
67
|
+
var _this$props = this.props,
|
|
68
|
+
model = _this$props.model,
|
|
69
|
+
animationsDisabled = _this$props.animationsDisabled;
|
|
44
70
|
|
|
45
71
|
var _ref = model || {},
|
|
46
72
|
halfScoring = _ref.halfScoring,
|
|
@@ -51,10 +77,10 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
51
77
|
standards = _ref.standards;
|
|
52
78
|
|
|
53
79
|
if (!scales || !visible) {
|
|
54
|
-
return
|
|
80
|
+
return null;
|
|
55
81
|
}
|
|
56
82
|
|
|
57
|
-
|
|
83
|
+
var rubricItem = /*#__PURE__*/_react["default"].createElement("div", {
|
|
58
84
|
style: {
|
|
59
85
|
fontFamily: 'Cerebri Sans'
|
|
60
86
|
}
|
|
@@ -68,6 +94,14 @@ var Main = /*#__PURE__*/function (_React$Component) {
|
|
|
68
94
|
showStandards: standards
|
|
69
95
|
});
|
|
70
96
|
}));
|
|
97
|
+
|
|
98
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
99
|
+
href: this.dudUrl,
|
|
100
|
+
onClick: this.toggleRubric
|
|
101
|
+
}, this.state.linkPrefix, " Rubric"), /*#__PURE__*/_react["default"].createElement(_Collapse["default"], {
|
|
102
|
+
"in": this.state.rubricOpen,
|
|
103
|
+
timeout: "auto"
|
|
104
|
+
}, rubricItem)) : rubricItem);
|
|
71
105
|
}
|
|
72
106
|
}]);
|
|
73
107
|
return Main;
|
|
@@ -92,7 +126,8 @@ Main.propTypes = {
|
|
|
92
126
|
pointLabels: _propTypes["default"].bool,
|
|
93
127
|
description: _propTypes["default"].bool,
|
|
94
128
|
standards: _propTypes["default"].bool
|
|
95
|
-
})
|
|
129
|
+
}),
|
|
130
|
+
animationsDisabled: _propTypes["default"].bool
|
|
96
131
|
};
|
|
97
132
|
var _default = Main;
|
|
98
133
|
exports["default"] = _default;
|
package/lib/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/main.jsx"],"names":["Main","model","
|
|
1
|
+
{"version":3,"sources":["../src/main.jsx"],"names":["Main","props","state","rubricOpen","linkPrefix","toggleRubric","bind","setState","model","animationsDisabled","halfScoring","scales","visible","pointLabels","description","standards","rubricItem","fontFamily","map","scale","scaleIndex","dudUrl","React","Component","propTypes","PropTypes","shape","bool","arrayOf","excludeZero","maxPoints","number","scorePointsLabels","string","traitLabel","traits","name","scorePointsDescriptors"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Scale from './scale';\nimport Link from '@material-ui/core/Link';\nimport Collapse from '@material-ui/core/Collapse';\n\nclass Main extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n rubricOpen: false,\n linkPrefix: 'Show',\n };\n this.toggleRubric = this.toggleRubric.bind(this);\n }\n\n toggleRubric() {\n this.setState({ rubricOpen: !this.state.rubricOpen });\n this.setState({ linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide' });\n }\n\n render() {\n const { model, animationsDisabled } = this.props;\n const { halfScoring, scales, visible, pointLabels, description, standards } = model || {};\n\n if (!scales || !visible) {\n return null;\n }\n\n const rubricItem = (\n <div style={{ fontFamily: 'Cerebri Sans' }}>\n {halfScoring ? <p>* Half-point or in-between scores are permitted under this rubric.</p> : null}\n {scales.map((scale, scaleIndex) => (\n <Scale\n key={`scale_${scaleIndex}`}\n scale={scale}\n scaleIndex={scaleIndex}\n showPointsLabels={pointLabels}\n showDescription={description}\n showStandards={standards}\n />\n ))}\n </div>\n );\n\n return (\n <div>\n {!animationsDisabled ? (\n <React.Fragment>\n <Link href={this.dudUrl} onClick={this.toggleRubric}>\n {this.state.linkPrefix} Rubric\n </Link>\n <Collapse in={this.state.rubricOpen} timeout=\"auto\">\n {rubricItem}\n </Collapse>\n </React.Fragment>\n ) : (\n rubricItem\n )}\n </div>\n );\n }\n}\n\nMain.propTypes = {\n model: PropTypes.shape({\n halfScoring: PropTypes.bool,\n scales: PropTypes.arrayOf(\n PropTypes.shape({\n excludeZero: PropTypes.bool,\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n description: PropTypes.string,\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n standards: PropTypes.arrayOf(PropTypes.string),\n }),\n ),\n }),\n ),\n visible: PropTypes.bool,\n pointLabels: PropTypes.bool,\n description: PropTypes.bool,\n standards: PropTypes.bool,\n }),\n animationsDisabled: PropTypes.bool,\n};\n\nexport default Main;\n"],"file":"main.js"}
|
package/lib/scale.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/scale.jsx"],"names":["styles","table","borderSpacing","marginBottom","borderRadius","color","text","fontSize","lineHeight","marginBlockStart","paddingInlineStart","padding","textAlign","backgroundColor","secondaryBackground","verticalAlign","width","scorePointHeader","border","minWidth","pointLabel","scorePointValue","fontWeight","Scale","props","classes","scale","scaleIndex","showDescription","showPointsLabels","showStandards","excludeZero","maxPoints","traitLabel","traits","scorePointsLabels","scorePointsValues","descriptions","pointsLabels","standards","pointValue","push","reduce","tcc","trait","traitStandards","traitDescriptions","description","length","e","__html","map","index","traitIndex","React","Component","propTypes","PropTypes","object","number","shape","bool","arrayOf","string","name","scorePointsDescriptors"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {withStyles} from '@material-ui/core/styles';\nimport {color} from '@pie-lib/render-ui';\nimport Trait from './trait';\n\n\nconst styles = () => ({\n table: {\n borderSpacing: 0,\n marginBottom: '16px',\n borderRadius: '4px',\n color: color.text(),\n fontSize: '14px',\n lineHeight: '16px',\n\n '& ul, ol': {\n marginBlockStart: 0,\n paddingInlineStart: '16px'\n },\n\n '& th': {\n padding: '16px',\n textAlign: 'left',\n backgroundColor: color.secondaryBackground(),\n verticalAlign: 'bottom'\n },\n\n '& th div': {\n width: '200px',\n },\n\n '& td': {\n width: '200px',\n padding: '16px 8px',\n verticalAlign: 'top'\n }\n },\n scorePointHeader: {\n '& td': {\n border: 0,\n padding: 0,\n textAlign: 'center',\n minWidth: '200px'\n }\n },\n pointLabel: {\n marginBottom: '4px'\n },\n scorePointValue: {\n fontWeight: 'normal',\n }\n});\n\nclass Scale extends React.Component {\n render() {\n const {classes, scale, scaleIndex, showDescription, showPointsLabels, showStandards} = this.props;\n const {excludeZero, maxPoints, traitLabel, traits, scorePointsLabels} = scale || {};\n\n let scorePointsValues = [];\n let descriptions;\n let pointsLabels;\n let standards;\n try {\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n const {traitStandards, traitDescriptions} = traits.reduce(\n (tcc, trait) => ({\n traitStandards: [...tcc.traitStandards, ...(trait.standards || [])],\n traitDescriptions: [...tcc.traitDescriptions, ...(trait.description || [])],\n }),\n {\n traitStandards: [],\n traitDescriptions: [],\n }\n );\n\n descriptions = showDescription && traitDescriptions.length;\n pointsLabels = showPointsLabels && scorePointsLabels.length;\n standards = showStandards && traitStandards.length;\n } catch (e) {\n descriptions = false;\n pointsLabels = false;\n standards = false;\n }\n\n return (\n <table\n key={`scale-${scaleIndex}`}\n className={classes.table}\n >\n <thead>\n <tr>\n <th>\n <div dangerouslySetInnerHTML={{__html: traitLabel}}/>\n </th>\n\n {standards ? <th>\n <div>Standard(s)</div>\n </th> : null}\n\n {descriptions ? <th>\n <div>Description</div>\n </th> : null}\n\n {\n scorePointsValues && scorePointsValues.map((scorePointValue, index) => {\n let pointLabel = '';\n\n // to handle the case when there aren't enough labels\n try {\n pointLabel = scorePointsLabels[scorePointsValues.length - index - 1] || '';\n } catch (e) {\n pointLabel = '';\n }\n\n return (\n <th key={`table-header-${index}`}>\n <table className={classes.scorePointHeader}>\n <thead>\n {pointsLabels\n ? (\n <tr>\n <td>\n <div className={classes.pointLabel} dangerouslySetInnerHTML={{__html: pointLabel}}/>\n </td>\n </tr>\n )\n : null\n }\n <tr>\n <td className={classes.scorePointValue}>\n {scorePointValue === 1 ? `${scorePointValue} point` : `${scorePointValue} points`}\n </td>\n </tr>\n </thead>\n </table>\n </th>\n );\n })\n }\n\n </tr>\n </thead>\n\n <tbody>\n {\n traits && traits.map((trait, traitIndex) => (\n <Trait\n key={`trait_${scaleIndex}_${traitIndex}`}\n trait={trait}\n traitIndex={traitIndex}\n showDescription={!!descriptions}\n showStandards={!!standards}\n scaleIndex={scaleIndex}\n scorePointsValues={scorePointsValues}\n excludeZero={excludeZero}\n />\n ))\n }\n </tbody>\n </table>\n )\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scaleIndex: PropTypes.number,\n scale: PropTypes.shape({\n excludeZero: PropTypes.bool,\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(PropTypes.shape({\n name: PropTypes.string,\n standards: PropTypes.arrayOf(PropTypes.string),\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n description: PropTypes.string,\n }))\n }),\n showPointsLabels: PropTypes.bool,\n showDescription: PropTypes.bool,\n showStandards: PropTypes.bool,\n};\n\nexport default withStyles(styles)(Scale);\n"],"file":"scale.js"}
|
|
1
|
+
{"version":3,"sources":["../src/scale.jsx"],"names":["styles","table","borderSpacing","marginBottom","borderRadius","color","text","fontSize","lineHeight","marginBlockStart","paddingInlineStart","padding","textAlign","backgroundColor","secondaryBackground","verticalAlign","width","scorePointHeader","border","minWidth","pointLabel","scorePointValue","fontWeight","Scale","props","classes","scale","scaleIndex","showDescription","showPointsLabels","showStandards","excludeZero","maxPoints","traitLabel","traits","scorePointsLabels","scorePointsValues","descriptions","pointsLabels","standards","pointValue","push","reduce","tcc","trait","traitStandards","traitDescriptions","description","length","e","__html","map","index","traitIndex","React","Component","propTypes","PropTypes","object","number","shape","bool","arrayOf","string","name","scorePointsDescriptors"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBC,IAAAA,KAAK,EAAE;AACLC,MAAAA,aAAa,EAAE,CADV;AAELC,MAAAA,YAAY,EAAE,MAFT;AAGLC,MAAAA,YAAY,EAAE,KAHT;AAILC,MAAAA,KAAK,EAAEA,gBAAMC,IAAN,EAJF;AAKLC,MAAAA,QAAQ,EAAE,MALL;AAMLC,MAAAA,UAAU,EAAE,MANP;AAQL,kBAAY;AACVC,QAAAA,gBAAgB,EAAE,CADR;AAEVC,QAAAA,kBAAkB,EAAE;AAFV,OARP;AAaL,cAAQ;AACNC,QAAAA,OAAO,EAAE,MADH;AAENC,QAAAA,SAAS,EAAE,MAFL;AAGNC,QAAAA,eAAe,EAAER,gBAAMS,mBAAN,EAHX;AAINC,QAAAA,aAAa,EAAE;AAJT,OAbH;AAoBL,kBAAY;AACVC,QAAAA,KAAK,EAAE;AADG,OApBP;AAwBL,cAAQ;AACNA,QAAAA,KAAK,EAAE,OADD;AAENL,QAAAA,OAAO,EAAE,UAFH;AAGNI,QAAAA,aAAa,EAAE;AAHT;AAxBH,KADa;AA+BpBE,IAAAA,gBAAgB,EAAE;AAChB,cAAQ;AACNC,QAAAA,MAAM,EAAE,CADF;AAENP,QAAAA,OAAO,EAAE,CAFH;AAGNC,QAAAA,SAAS,EAAE,QAHL;AAINO,QAAAA,QAAQ,EAAE;AAJJ;AADQ,KA/BE;AAuCpBC,IAAAA,UAAU,EAAE;AACVjB,MAAAA,YAAY,EAAE;AADJ,KAvCQ;AA0CpBkB,IAAAA,eAAe,EAAE;AACfC,MAAAA,UAAU,EAAE;AADG;AA1CG,GAAP;AAAA,CAAf;;IA+CMC,K;;;;;;;;;;;;WACJ,kBAAS;AACP,wBAAyF,KAAKC,KAA9F;AAAA,UAAQC,OAAR,eAAQA,OAAR;AAAA,UAAiBC,KAAjB,eAAiBA,KAAjB;AAAA,UAAwBC,UAAxB,eAAwBA,UAAxB;AAAA,UAAoCC,eAApC,eAAoCA,eAApC;AAAA,UAAqDC,gBAArD,eAAqDA,gBAArD;AAAA,UAAuEC,aAAvE,eAAuEA,aAAvE;;AACA,iBAA0EJ,KAAK,IAAI,EAAnF;AAAA,UAAQK,WAAR,QAAQA,WAAR;AAAA,UAAqBC,SAArB,QAAqBA,SAArB;AAAA,UAAgCC,UAAhC,QAAgCA,UAAhC;AAAA,UAA4CC,MAA5C,QAA4CA,MAA5C;AAAA,UAAoDC,iBAApD,QAAoDA,iBAApD;;AAEA,UAAIC,iBAAiB,GAAG,EAAxB;AACA,UAAIC,YAAJ;AACA,UAAIC,YAAJ;AACA,UAAIC,SAAJ;;AACA,UAAI;AACF;AACA,aAAK,IAAIC,UAAU,GAAGR,SAAtB,EAAiCQ,UAAU,IAAIT,WAAd,GAA4B,CAA5B,GAAgC,CAAjE,EAAoES,UAAU,IAAI,CAAlF,EAAqF;AACnFJ,UAAAA,iBAAiB,CAACK,IAAlB,CAAuBD,UAAvB;AACD;;AAED,6BAA8CN,MAAM,CAACQ,MAAP,CAC5C,UAACC,GAAD,EAAMC,KAAN;AAAA,iBAAiB;AACfC,YAAAA,cAAc,gDAAMF,GAAG,CAACE,cAAV,uCAA8BD,KAAK,CAACL,SAAN,IAAmB,EAAjD,EADC;AAEfO,YAAAA,iBAAiB,gDAAMH,GAAG,CAACG,iBAAV,uCAAiCF,KAAK,CAACG,WAAN,IAAqB,EAAtD;AAFF,WAAjB;AAAA,SAD4C,EAK5C;AACEF,UAAAA,cAAc,EAAE,EADlB;AAEEC,UAAAA,iBAAiB,EAAE;AAFrB,SAL4C,CAA9C;AAAA,YAAQD,cAAR,kBAAQA,cAAR;AAAA,YAAwBC,iBAAxB,kBAAwBA,iBAAxB;;AAWAT,QAAAA,YAAY,GAAGT,eAAe,IAAIkB,iBAAiB,CAACE,MAApD;AACAV,QAAAA,YAAY,GAAGT,gBAAgB,IAAIM,iBAAiB,CAACa,MAArD;AACAT,QAAAA,SAAS,GAAGT,aAAa,IAAIe,cAAc,CAACG,MAA5C;AACD,OApBD,CAoBE,OAAOC,CAAP,EAAU;AACVZ,QAAAA,YAAY,GAAG,KAAf;AACAC,QAAAA,YAAY,GAAG,KAAf;AACAC,QAAAA,SAAS,GAAG,KAAZ;AACD;;AAED,0BACE;AAAO,QAAA,GAAG,kBAAWZ,UAAX,CAAV;AAAmC,QAAA,SAAS,EAAEF,OAAO,CAACxB;AAAtD,sBACE,4DACE,yDACE,yDACE;AAAK,QAAA,uBAAuB,EAAE;AAAEiD,UAAAA,MAAM,EAAEjB;AAAV;AAA9B,QADF,CADF,EAKGM,SAAS,gBACR,yDACE,2DADF,CADQ,GAIN,IATN,EAWGF,YAAY,gBACX,yDACE,2DADF,CADW,GAIT,IAfN,EAiBGD,iBAAiB,IAChBA,iBAAiB,CAACe,GAAlB,CAAsB,UAAC9B,eAAD,EAAkB+B,KAAlB,EAA4B;AAChD,YAAIhC,UAAU,GAAG,EAAjB,CADgD,CAGhD;;AACA,YAAI;AACFA,UAAAA,UAAU,GAAGe,iBAAiB,CAACC,iBAAiB,CAACY,MAAlB,GAA2BI,KAA3B,GAAmC,CAApC,CAAjB,IAA2D,EAAxE;AACD,SAFD,CAEE,OAAOH,CAAP,EAAU;AACV7B,UAAAA,UAAU,GAAG,EAAb;AACD;;AAED,4BACE;AAAI,UAAA,GAAG,yBAAkBgC,KAAlB;AAAP,wBACE;AAAO,UAAA,SAAS,EAAE3B,OAAO,CAACR;AAA1B,wBACE,+CACGqB,YAAY,gBACX,yDACE,yDACE;AAAK,UAAA,SAAS,EAAEb,OAAO,CAACL,UAAxB;AAAoC,UAAA,uBAAuB,EAAE;AAAE8B,YAAAA,MAAM,EAAE9B;AAAV;AAA7D,UADF,CADF,CADW,GAMT,IAPN,eAQE,yDACE;AAAI,UAAA,SAAS,EAAEK,OAAO,CAACJ;AAAvB,WACGA,eAAe,KAAK,CAApB,aAA2BA,eAA3B,wBAAwDA,eAAxD,YADH,CADF,CARF,CADF,CADF,CADF;AAoBD,OA9BD,CAlBJ,CADF,CADF,eAsDE,+CACGa,MAAM,IACLA,MAAM,CAACiB,GAAP,CAAW,UAACP,KAAD,EAAQS,UAAR;AAAA,4BACT,gCAAC,iBAAD;AACE,UAAA,GAAG,kBAAW1B,UAAX,cAAyB0B,UAAzB,CADL;AAEE,UAAA,KAAK,EAAET,KAFT;AAGE,UAAA,UAAU,EAAES,UAHd;AAIE,UAAA,eAAe,EAAE,CAAC,CAAChB,YAJrB;AAKE,UAAA,aAAa,EAAE,CAAC,CAACE,SALnB;AAME,UAAA,UAAU,EAAEZ,UANd;AAOE,UAAA,iBAAiB,EAAES,iBAPrB;AAQE,UAAA,WAAW,EAAEL;AARf,UADS;AAAA,OAAX,CAFJ,CAtDF,CADF;AAwED;;;EA3GiBuB,kBAAMC,S;;AA8G1BhC,KAAK,CAACiC,SAAN,GAAkB;AAChB/B,EAAAA,OAAO,EAAEgC,sBAAUC,MADH;AAEhB/B,EAAAA,UAAU,EAAE8B,sBAAUE,MAFN;AAGhBjC,EAAAA,KAAK,EAAE+B,sBAAUG,KAAV,CAAgB;AACrB7B,IAAAA,WAAW,EAAE0B,sBAAUI,IADF;AAErB7B,IAAAA,SAAS,EAAEyB,sBAAUE,MAFA;AAGrBxB,IAAAA,iBAAiB,EAAEsB,sBAAUK,OAAV,CAAkBL,sBAAUM,MAA5B,CAHE;AAIrB9B,IAAAA,UAAU,EAAEwB,sBAAUM,MAJD;AAKrB7B,IAAAA,MAAM,EAAEuB,sBAAUK,OAAV,CACNL,sBAAUG,KAAV,CAAgB;AACdI,MAAAA,IAAI,EAAEP,sBAAUM,MADF;AAEdxB,MAAAA,SAAS,EAAEkB,sBAAUK,OAAV,CAAkBL,sBAAUM,MAA5B,CAFG;AAGdE,MAAAA,sBAAsB,EAAER,sBAAUK,OAAV,CAAkBL,sBAAUM,MAA5B,CAHV;AAIdhB,MAAAA,WAAW,EAAEU,sBAAUM;AAJT,KAAhB,CADM;AALa,GAAhB,CAHS;AAiBhBlC,EAAAA,gBAAgB,EAAE4B,sBAAUI,IAjBZ;AAkBhBjC,EAAAA,eAAe,EAAE6B,sBAAUI,IAlBX;AAmBhB/B,EAAAA,aAAa,EAAE2B,sBAAUI;AAnBT,CAAlB;;eAsBe,wBAAW7D,MAAX,EAAmBuB,KAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\nimport Trait from './trait';\n\nconst styles = () => ({\n table: {\n borderSpacing: 0,\n marginBottom: '16px',\n borderRadius: '4px',\n color: color.text(),\n fontSize: '14px',\n lineHeight: '16px',\n\n '& ul, ol': {\n marginBlockStart: 0,\n paddingInlineStart: '16px',\n },\n\n '& th': {\n padding: '16px',\n textAlign: 'left',\n backgroundColor: color.secondaryBackground(),\n verticalAlign: 'bottom',\n },\n\n '& th div': {\n width: '200px',\n },\n\n '& td': {\n width: '200px',\n padding: '16px 8px',\n verticalAlign: 'top',\n },\n },\n scorePointHeader: {\n '& td': {\n border: 0,\n padding: 0,\n textAlign: 'center',\n minWidth: '200px',\n },\n },\n pointLabel: {\n marginBottom: '4px',\n },\n scorePointValue: {\n fontWeight: 'normal',\n },\n});\n\nclass Scale extends React.Component {\n render() {\n const { classes, scale, scaleIndex, showDescription, showPointsLabels, showStandards } = this.props;\n const { excludeZero, maxPoints, traitLabel, traits, scorePointsLabels } = scale || {};\n\n let scorePointsValues = [];\n let descriptions;\n let pointsLabels;\n let standards;\n try {\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n const { traitStandards, traitDescriptions } = traits.reduce(\n (tcc, trait) => ({\n traitStandards: [...tcc.traitStandards, ...(trait.standards || [])],\n traitDescriptions: [...tcc.traitDescriptions, ...(trait.description || [])],\n }),\n {\n traitStandards: [],\n traitDescriptions: [],\n },\n );\n\n descriptions = showDescription && traitDescriptions.length;\n pointsLabels = showPointsLabels && scorePointsLabels.length;\n standards = showStandards && traitStandards.length;\n } catch (e) {\n descriptions = false;\n pointsLabels = false;\n standards = false;\n }\n\n return (\n <table key={`scale-${scaleIndex}`} className={classes.table}>\n <thead>\n <tr>\n <th>\n <div dangerouslySetInnerHTML={{ __html: traitLabel }} />\n </th>\n\n {standards ? (\n <th>\n <div>Standard(s)</div>\n </th>\n ) : null}\n\n {descriptions ? (\n <th>\n <div>Description</div>\n </th>\n ) : null}\n\n {scorePointsValues &&\n scorePointsValues.map((scorePointValue, index) => {\n let pointLabel = '';\n\n // to handle the case when there aren't enough labels\n try {\n pointLabel = scorePointsLabels[scorePointsValues.length - index - 1] || '';\n } catch (e) {\n pointLabel = '';\n }\n\n return (\n <th key={`table-header-${index}`}>\n <table className={classes.scorePointHeader}>\n <thead>\n {pointsLabels ? (\n <tr>\n <td>\n <div className={classes.pointLabel} dangerouslySetInnerHTML={{ __html: pointLabel }} />\n </td>\n </tr>\n ) : null}\n <tr>\n <td className={classes.scorePointValue}>\n {scorePointValue === 1 ? `${scorePointValue} point` : `${scorePointValue} points`}\n </td>\n </tr>\n </thead>\n </table>\n </th>\n );\n })}\n </tr>\n </thead>\n\n <tbody>\n {traits &&\n traits.map((trait, traitIndex) => (\n <Trait\n key={`trait_${scaleIndex}_${traitIndex}`}\n trait={trait}\n traitIndex={traitIndex}\n showDescription={!!descriptions}\n showStandards={!!standards}\n scaleIndex={scaleIndex}\n scorePointsValues={scorePointsValues}\n excludeZero={excludeZero}\n />\n ))}\n </tbody>\n </table>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scaleIndex: PropTypes.number,\n scale: PropTypes.shape({\n excludeZero: PropTypes.bool,\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n standards: PropTypes.arrayOf(PropTypes.string),\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n description: PropTypes.string,\n }),\n ),\n }),\n showPointsLabels: PropTypes.bool,\n showDescription: PropTypes.bool,\n showStandards: PropTypes.bool,\n};\n\nexport default withStyles(styles)(Scale);\n"],"file":"scale.js"}
|
package/lib/trait.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/trait.jsx"],"names":["styles","trait","color","primaryDark","verticalAlign","noDescription","secondaryBackground","textAlign","traitName","Trait","props","traitIndex","scaleIndex","showStandards","showDescription","scorePointsValues","classes","name","standards","scorePointsDescriptors","description","__html","join","map","scorePointValue","index","scoreDescriptor","length","e","propTypes","PropTypes","object","bool","arrayOf","number","shape","string"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBC,IAAAA,KAAK,EAAE;AACL,qBAAe;AACbC,QAAAA,KAAK,EAAEA,gBAAMC,WAAN,EADM;AAEbC,QAAAA,aAAa,EAAE;AAFF;AADV,KADa;AAOpBC,IAAAA,aAAa,EAAE;AACbH,MAAAA,KAAK,EAAEA,gBAAMI,mBAAN,EADM;AAEbC,MAAAA,SAAS,EAAE;AAFE,KAPK;AAWpBC,IAAAA,SAAS,EAAE;AAXS,GAAP;AAAA,CAAf;;AAcA,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAACC,KAAD,EAAW;AACvB,
|
|
1
|
+
{"version":3,"sources":["../src/trait.jsx"],"names":["styles","trait","color","primaryDark","verticalAlign","noDescription","secondaryBackground","textAlign","traitName","Trait","props","traitIndex","scaleIndex","showStandards","showDescription","scorePointsValues","classes","name","standards","scorePointsDescriptors","description","__html","join","map","scorePointValue","index","scoreDescriptor","length","e","propTypes","PropTypes","object","bool","arrayOf","number","shape","string"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\n\nconst styles = () => ({\n trait: {\n '&$traitName': {\n color: color.primaryDark(),\n verticalAlign: 'middle',\n },\n },\n noDescription: {\n color: color.secondaryBackground(),\n textAlign: 'center',\n },\n traitName: {},\n});\n\nconst Trait = (props) => {\n const { trait, traitIndex, scaleIndex, showStandards, showDescription, scorePointsValues, classes } = props;\n const { name, standards, scorePointsDescriptors, description } = trait || {};\n\n return (\n <tr key={`scale-${scaleIndex}-trait-${traitIndex}`}>\n <td className={`${classes.trait} ${classes.traitName}`}>\n <div dangerouslySetInnerHTML={{ __html: name }} />\n </td>\n\n {showStandards ? (\n <td>\n <div dangerouslySetInnerHTML={{ __html: standards.join(',') }} />\n </td>\n ) : null}\n\n {showDescription ? (\n <td>\n <div dangerouslySetInnerHTML={{ __html: description }} />\n </td>\n ) : null}\n\n {scorePointsValues &&\n scorePointsValues.map((scorePointValue, index) => {\n let scoreDescriptor;\n\n try {\n scoreDescriptor = scorePointsDescriptors[scorePointsValues.length - index - 1] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <td key={`table-cell-${index}`}>\n <div\n className={!scoreDescriptor ? classes.noDescription : ''}\n dangerouslySetInnerHTML={{ __html: scoreDescriptor || 'No Description' }}\n />\n </td>\n );\n })}\n </tr>\n );\n};\n\nTrait.propTypes = {\n classes: PropTypes.object,\n showStandards: PropTypes.bool,\n showDescription: PropTypes.bool,\n scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n scaleIndex: PropTypes.number,\n traitIndex: PropTypes.number,\n trait: PropTypes.shape({\n name: PropTypes.string,\n standards: PropTypes.arrayOf(PropTypes.string),\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n description: PropTypes.string,\n }),\n};\n\nexport default withStyles(styles)(Trait);\n"],"file":"trait.js"}
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/multi-trait-rubric",
|
|
3
3
|
"repository": "pie-framework/pie-elements",
|
|
4
|
-
"version": "1.4.
|
|
4
|
+
"version": "1.4.20-beta.1443+449763c04",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@material-ui/core": "^3.9.2",
|
|
10
10
|
"@pie-framework/pie-player-events": "^0.1.0",
|
|
11
|
-
"@pie-lib/render-ui": "^4.12
|
|
11
|
+
"@pie-lib/render-ui": "^4.14.12",
|
|
12
12
|
"clsx": "^1.1.1",
|
|
13
13
|
"enzyme-to-json": "^3.3.5",
|
|
14
14
|
"prop-types": "^15.6.1",
|
|
15
15
|
"react": "^16.8.1",
|
|
16
16
|
"react-dom": "^16.8.1"
|
|
17
17
|
},
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "449763c046b78327513c38ea5367b8d4da120760",
|
|
19
19
|
"scripts": {
|
|
20
20
|
"postpublish": "../../scripts/postpublish"
|
|
21
21
|
},
|