@pie-element/multi-trait-rubric 1.4.0 → 1.4.3-next.1014

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/trait.jsx"],"names":["log","styles","actions","color","text","controls","display","justifyContent","position","top","right","cursor","dragHandle","left","DragHandleSpace","removeLabel","whiteSpace","TraitTile","params","props","trait","onTraitChanged","Object","keys","forEach","key","descriptor","value","scorePointsDescriptors","length","event","setState","anchorEl","currentTarget","secondaryBlock","scrollTo","onTraitRemoved","handleClose","nextProps","currentPosition","scrollLeft","scrollToPosition","classes","connectDragSource","connectDropTarget","connectDragPreview","name","standards","description","scorePointsValues","showStandards","showDescription","enableDragAndDrop","secondaryBlockWidth","state","pluginProps","image","disabled","math","handleClick","openMenu","__html","labelPlugins","ref","join","split","map","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointDescriptorChange","React","Component","propTypes","PropTypes","func","isRequired","object","isDragging","bool","id","any","isOver","number","shape","string","arrayOf","StyledTrait","NAME","traitSource","beginDrag","StyledSource","connect","monitor","dragSource","dragPreview","traitTarget","hover","drop","item","getItem","didDrop","onTraitDropped","StyledSourceAndTarget","dropTarget"],"mappings":"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","sourcesContent":["import React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport { DragSource, DropTarget } from 'react-dnd';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\n\nimport {\n Block,\n BlockWidth,\n DragHandleSpace,\n ExpandedInput,\n PrimaryBlock,\n Row,\n SecondaryBlock,\n UnderlinedInput\n} from './common';\nimport { labelPlugins } from './utils';\n\nimport IconButton from '@material-ui/core/IconButton';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport DragIndicatorIcon from '@material-ui/icons/DragIndicator';\n\nconst log = debug('@pie-element:placement-ordering:configure:trait-tile');\n\nconst styles = {\n actions: {\n color: color.text()\n },\n controls: {\n display: 'flex',\n justifyContent: 'flex-end',\n position: 'absolute',\n top: '28px',\n right: '8px',\n cursor: 'pointer',\n },\n dragHandle: {\n position: 'absolute',\n top: '80px',\n left: `-${DragHandleSpace}px`,\n cursor: 'move'\n },\n removeLabel: {\n display: 'flex',\n whiteSpace: 'break-spaces'\n }\n};\n\nexport class TraitTile extends React.Component {\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.currentPosition !== this.props.currentPosition || (this.secondaryBlock && this.secondaryBlock.scrollLeft !== nextProps.currentPosition)) {\n this.scrollToPosition(nextProps.currentPosition);\n }\n }\n\n onTraitChanged = (params) => {\n const { trait, onTraitChanged } = this.props;\n\n if (isEmpty(params)) return;\n\n Object.keys(params).forEach(key => {\n trait[key] = params[key];\n });\n\n onTraitChanged(trait);\n };\n\n onScorePointDescriptorChange = ({ descriptor, value }) => {\n const { trait: { scorePointsDescriptors } } = this.props;\n\n if (value < 0 || value >= scorePointsDescriptors.length) return;\n\n scorePointsDescriptors[value] = descriptor;\n\n this.onTraitChanged({ scorePointsDescriptors });\n };\n\n handleClick = (event) => this.setState({ anchorEl: event.currentTarget });\n\n handleClose = () => this.setState({ anchorEl: null });\n\n scrollToPosition = position => this.secondaryBlock.scrollTo({ left: position });\n\n openMenu = () => {\n this.props.onTraitRemoved();\n this.handleClose();\n };\n\n render() {\n const {\n classes,\n connectDragSource,\n connectDropTarget,\n connectDragPreview,\n trait: {\n name,\n standards,\n description,\n scorePointsDescriptors\n },\n scorePointsValues,\n showStandards,\n showDescription,\n enableDragAndDrop,\n currentPosition,\n secondaryBlockWidth\n } = this.props;\n const { anchorEl } = this.state;\n\n const pluginProps = {\n image: { disabled: true },\n math: { disabled: true }\n };\n\n return (\n connectDragPreview(\n connectDropTarget(\n <div>\n <Row>\n <PrimaryBlock>\n {enableDragAndDrop ?\n connectDragSource(\n <span className={classes.dragHandle}>\n <DragIndicatorIcon className={classes.actions}/>\n </span>) : null\n }\n <div className={classes.controls}>\n <IconButton\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon/>\n </IconButton>\n <Menu\n id=\"long-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={!!anchorEl}\n onClose={this.handleClose}\n >\n <MenuItem onClick={this.openMenu}>\n <div\n className={classes.removeLabel}\n dangerouslySetInnerHTML={{__html: `Remove ${name}`}}\n />\n </MenuItem>\n </Menu>\n </div>\n\n <UnderlinedInput\n markup={name}\n onChange={name => this.onTraitChanged({ name })}\n pluginProps={labelPlugins}\n placeholder='Enter Trait'\n />\n </PrimaryBlock>\n <SecondaryBlock\n setRef={ref => {\n this.secondaryBlock = ref;\n }}\n width={`${secondaryBlockWidth}px`}\n >\n {showStandards && standards && (\n <Block>\n <ExpandedInput\n placeholder=\"Standards\"\n markup={standards.join(',')}\n onChange={standards => this.onTraitChanged({ standards: standards.split(',') })}\n pluginProps={pluginProps}\n />\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <ExpandedInput\n placeholder=\"Description\"\n markup={description}\n onChange={description => this.onTraitChanged({ description })}\n pluginProps={pluginProps}\n />\n </Block>\n )}\n\n {(scorePointsValues || []).map((scorePointsValue, index) => {\n const adjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n const remainingSpace = secondaryBlockWidth - adjustedBlockWidth * index + currentPosition - 98;\n const value = scorePointsValues.length - index - 1;\n let scoreDescriptor;\n\n try {\n scoreDescriptor = scorePointsDescriptors[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`key-key-${index}`}>\n <ExpandedInput\n placeholder='Enter Description Here'\n markup={scoreDescriptor}\n onChange={descriptor => this.onScorePointDescriptorChange({ descriptor, value })}\n pluginProps={pluginProps}\n alignToRight={remainingSpace < 296} // 296 is the space required for the toolbar\n />\n </Block>\n )\n })}\n </SecondaryBlock>\n </Row>\n </div>\n ))\n );\n }\n}\n\nTraitTile.propTypes = {\n connectDragSource: PropTypes.func.isRequired,\n connectDropTarget: PropTypes.func.isRequired,\n connectDragPreview: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n isDragging: PropTypes.bool.isRequired,\n id: PropTypes.any,\n isOver: PropTypes.bool,\n index: PropTypes.number,\n onTraitChanged: PropTypes.func.isRequired,\n onTraitRemoved: PropTypes.func.isRequired,\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 scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n showStandards: PropTypes.bool,\n showDescription: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n currentPosition: PropTypes.number,\n secondaryBlockWidth: PropTypes.number,\n};\n\nexport const StyledTrait = withStyles(styles)(TraitTile);\n\nconst NAME = 'trait-config';\n\nconst traitSource = {\n beginDrag(props) {\n return {\n name: props.trait.name,\n index: props.index\n };\n }\n};\n\nconst StyledSource = DragSource(\n NAME,\n traitSource,\n (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging()\n })\n)(StyledTrait);\n\nconst traitTarget = {\n hover() {\n log('[hover]');\n },\n drop(props, monitor) {\n const item = monitor.getItem();\n log('[drop] item: ', item, 'didDrop?', monitor.didDrop());\n\n props.onTraitDropped(item, props.index);\n }\n};\n\nconst StyledSourceAndTarget = DropTarget(\n NAME,\n traitTarget,\n (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver()\n })\n)(StyledSource);\n\nexport default StyledSourceAndTarget;\n"],"file":"trait.js"}
1
+ {"version":3,"sources":["../src/trait.jsx"],"names":["log","styles","actions","color","text","controls","display","justifyContent","position","top","right","cursor","dragHandle","left","DragHandleSpace","removeLabel","whiteSpace","TraitTile","params","props","trait","onTraitChanged","Object","keys","forEach","key","descriptor","value","scorePointsDescriptors","length","event","setState","anchorEl","currentTarget","secondaryBlock","scrollTo","onTraitRemoved","handleClose","nextProps","currentPosition","scrollLeft","scrollToPosition","classes","connectDragSource","connectDropTarget","connectDragPreview","name","standards","description","scorePointsValues","showStandards","showDescription","enableDragAndDrop","secondaryBlockWidth","spellCheck","state","pluginProps","image","disabled","math","handleClick","openMenu","__html","labelPlugins","ref","join","split","map","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointDescriptorChange","React","Component","propTypes","PropTypes","func","isRequired","object","isDragging","bool","id","any","isOver","number","shape","string","arrayOf","StyledTrait","NAME","traitSource","beginDrag","StyledSource","connect","monitor","dragSource","dragPreview","traitTarget","hover","drop","item","getItem","didDrop","onTraitDropped","StyledSourceAndTarget","dropTarget"],"mappings":"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","sourcesContent":["import React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport { DragSource, DropTarget } from 'react-dnd';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\n\nimport {\n Block,\n BlockWidth,\n DragHandleSpace,\n ExpandedInput,\n PrimaryBlock,\n Row,\n SecondaryBlock,\n UnderlinedInput\n} from './common';\nimport { labelPlugins } from './utils';\n\nimport IconButton from '@material-ui/core/IconButton';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport DragIndicatorIcon from '@material-ui/icons/DragIndicator';\n\nconst log = debug('@pie-element:placement-ordering:configure:trait-tile');\n\nconst styles = {\n actions: {\n color: color.text()\n },\n controls: {\n display: 'flex',\n justifyContent: 'flex-end',\n position: 'absolute',\n top: '28px',\n right: '8px',\n cursor: 'pointer',\n },\n dragHandle: {\n position: 'absolute',\n top: '80px',\n left: `-${DragHandleSpace}px`,\n cursor: 'move'\n },\n removeLabel: {\n display: 'flex',\n whiteSpace: 'break-spaces'\n }\n};\n\nexport class TraitTile extends React.Component {\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.currentPosition !== this.props.currentPosition || (this.secondaryBlock && this.secondaryBlock.scrollLeft !== nextProps.currentPosition)) {\n this.scrollToPosition(nextProps.currentPosition);\n }\n }\n\n onTraitChanged = (params) => {\n const { trait, onTraitChanged } = this.props;\n\n if (isEmpty(params)) return;\n\n Object.keys(params).forEach(key => {\n trait[key] = params[key];\n });\n\n onTraitChanged(trait);\n };\n\n onScorePointDescriptorChange = ({ descriptor, value }) => {\n const { trait: { scorePointsDescriptors } } = this.props;\n\n if (value < 0 || value >= scorePointsDescriptors.length) return;\n\n scorePointsDescriptors[value] = descriptor;\n\n this.onTraitChanged({ scorePointsDescriptors });\n };\n\n handleClick = (event) => this.setState({ anchorEl: event.currentTarget });\n\n handleClose = () => this.setState({ anchorEl: null });\n\n scrollToPosition = position => this.secondaryBlock.scrollTo({ left: position });\n\n openMenu = () => {\n this.props.onTraitRemoved();\n this.handleClose();\n };\n\n render() {\n const {\n classes,\n connectDragSource,\n connectDropTarget,\n connectDragPreview,\n trait: {\n name,\n standards,\n description,\n scorePointsDescriptors\n },\n scorePointsValues,\n showStandards,\n showDescription,\n enableDragAndDrop,\n currentPosition,\n secondaryBlockWidth,\n spellCheck\n } = this.props;\n const { anchorEl } = this.state;\n\n const pluginProps = {\n image: { disabled: true },\n math: { disabled: true }\n };\n\n return (\n connectDragPreview(\n connectDropTarget(\n <div>\n <Row>\n <PrimaryBlock>\n {enableDragAndDrop ?\n connectDragSource(\n <span className={classes.dragHandle}>\n <DragIndicatorIcon className={classes.actions}/>\n </span>) : null\n }\n <div className={classes.controls}>\n <IconButton\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon/>\n </IconButton>\n <Menu\n id=\"long-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={!!anchorEl}\n onClose={this.handleClose}\n >\n <MenuItem onClick={this.openMenu}>\n <div\n className={classes.removeLabel}\n dangerouslySetInnerHTML={{__html: `Remove ${name}`}}\n />\n </MenuItem>\n </Menu>\n </div>\n\n <UnderlinedInput\n markup={name}\n onChange={name => this.onTraitChanged({ name })}\n pluginProps={labelPlugins}\n placeholder='Enter Trait'\n spellCheck={spellCheck}\n />\n </PrimaryBlock>\n <SecondaryBlock\n setRef={ref => {\n this.secondaryBlock = ref;\n }}\n width={`${secondaryBlockWidth}px`}\n >\n {showStandards && standards && (\n <Block>\n <ExpandedInput\n placeholder=\"Standards\"\n markup={standards.join(',')}\n onChange={standards => this.onTraitChanged({ standards: standards.split(',') })}\n pluginProps={pluginProps}\n spellCheck={spellCheck}\n />\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <ExpandedInput\n placeholder=\"Description\"\n markup={description}\n onChange={description => this.onTraitChanged({ description })}\n pluginProps={pluginProps}\n spellCheck={spellCheck}\n />\n </Block>\n )}\n\n {(scorePointsValues || []).map((scorePointsValue, index) => {\n const adjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n const remainingSpace = secondaryBlockWidth - adjustedBlockWidth * index + currentPosition - 98;\n const value = scorePointsValues.length - index - 1;\n let scoreDescriptor;\n\n try {\n scoreDescriptor = scorePointsDescriptors[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`key-key-${index}`}>\n <ExpandedInput\n placeholder='Enter Description Here'\n markup={scoreDescriptor}\n onChange={descriptor => this.onScorePointDescriptorChange({ descriptor, value })}\n pluginProps={pluginProps}\n alignToRight={remainingSpace < 296} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n />\n </Block>\n )\n })}\n </SecondaryBlock>\n </Row>\n </div>\n ))\n );\n }\n}\n\nTraitTile.propTypes = {\n connectDragSource: PropTypes.func.isRequired,\n connectDropTarget: PropTypes.func.isRequired,\n connectDragPreview: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n isDragging: PropTypes.bool.isRequired,\n id: PropTypes.any,\n isOver: PropTypes.bool,\n index: PropTypes.number,\n onTraitChanged: PropTypes.func.isRequired,\n onTraitRemoved: PropTypes.func.isRequired,\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 scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n showStandards: PropTypes.bool,\n showDescription: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n currentPosition: PropTypes.number,\n secondaryBlockWidth: PropTypes.number,\n};\n\nexport const StyledTrait = withStyles(styles)(TraitTile);\n\nconst NAME = 'trait-config';\n\nconst traitSource = {\n beginDrag(props) {\n return {\n name: props.trait.name,\n index: props.index\n };\n }\n};\n\nconst StyledSource = DragSource(\n NAME,\n traitSource,\n (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging()\n })\n)(StyledTrait);\n\nconst traitTarget = {\n hover() {\n log('[hover]');\n },\n drop(props, monitor) {\n const item = monitor.getItem();\n log('[drop] item: ', item, 'didDrop?', monitor.didDrop());\n\n props.onTraitDropped(item, props.index);\n }\n};\n\nconst StyledSourceAndTarget = DropTarget(\n NAME,\n traitTarget,\n (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver()\n })\n)(StyledSource);\n\nexport default StyledSourceAndTarget;\n"],"file":"trait.js"}
@@ -43,7 +43,7 @@ var _utils = require("./utils");
43
43
 
44
44
  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); }; }
45
45
 
46
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
46
+ 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; } }
47
47
 
48
48
  var styles = {
49
49
  label: {
@@ -136,6 +136,7 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
136
136
  scorePointsLabels = _this$props2.scorePointsLabels,
137
137
  traitLabel = _this$props2.traitLabel,
138
138
  classes = _this$props2.classes,
139
+ currentPosition = _this$props2.currentPosition,
139
140
  showStandards = _this$props2.showStandards,
140
141
  onTraitLabelChange = _this$props2.onTraitLabelChange,
141
142
  showDescription = _this$props2.showDescription,
@@ -144,7 +145,9 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
144
145
  updateMaxPointsFieldValue = _this$props2.updateMaxPointsFieldValue,
145
146
  scaleIndex = _this$props2.scaleIndex,
146
147
  showScorePointLabels = _this$props2.showScorePointLabels,
147
- setSecondaryBlockRef = _this$props2.setSecondaryBlockRef;
148
+ secondaryBlockWidth = _this$props2.secondaryBlockWidth,
149
+ setSecondaryBlockRef = _this$props2.setSecondaryBlockRef,
150
+ spellCheck = _this$props2.spellCheck;
148
151
  var anchorEl = this.state.anchorEl;
149
152
  return /*#__PURE__*/_react["default"].createElement(_common.Row, {
150
153
  className: classes.greyHeader,
@@ -155,6 +158,7 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
155
158
  markup: traitLabel || 'Trait',
156
159
  onChange: onTraitLabelChange,
157
160
  pluginProps: _utils.labelPlugins,
161
+ spellCheck: spellCheck,
158
162
  label: "Level Label"
159
163
  }), /*#__PURE__*/_react["default"].createElement(_common.ScaleSettings, null, /*#__PURE__*/_react["default"].createElement("div", null, "Scale ", scaleIndex + 1), /*#__PURE__*/_react["default"].createElement(_common.MaxPointsPicker, {
160
164
  maxPoints: maxPoints,
@@ -181,12 +185,16 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
181
185
  _this2.secondaryBlock = ref;
182
186
  setSecondaryBlockRef(ref);
183
187
  }
184
- }
188
+ },
189
+ width: "".concat(secondaryBlockWidth, "px")
185
190
  }, showStandards && /*#__PURE__*/_react["default"].createElement(_common.Block, null, /*#__PURE__*/_react["default"].createElement("div", {
186
191
  className: classes.label
187
192
  }, "Standard(s)")), showDescription && /*#__PURE__*/_react["default"].createElement(_common.Block, null, /*#__PURE__*/_react["default"].createElement("div", {
188
193
  className: classes.label
189
194
  }, "Description")), scorePointsValues.map(function (scorePointsValue, index) {
195
+ var adjustedBlockWidth = _common.BlockWidth + 2 * 8; // 8 is padding
196
+
197
+ var remainingSpace = secondaryBlockWidth - adjustedBlockWidth * index + currentPosition - 128;
190
198
  var value = scorePointsValues.length - index - 1;
191
199
  var scoreDescriptor;
192
200
 
@@ -208,7 +216,10 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
208
216
  scorePointLabel: scorePointLabel,
209
217
  value: value
210
218
  });
211
- }
219
+ },
220
+ alignToRight: remainingSpace < 296 // 296 is the space required for the toolbar
221
+ ,
222
+ spellCheck: spellCheck
212
223
  }));
213
224
  })));
214
225
  }
@@ -231,6 +242,7 @@ TraitsHeaderTile.propTypes = {
231
242
  updateMaxPointsFieldValue: _propTypes["default"].func,
232
243
  scaleIndex: _propTypes["default"].number,
233
244
  currentPosition: _propTypes["default"].number,
245
+ secondaryBlockWidth: _propTypes["default"].number,
234
246
  showDeleteScaleModal: _propTypes["default"].func,
235
247
  showScorePointLabels: _propTypes["default"].bool,
236
248
  setSecondaryBlockRef: _propTypes["default"].func
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/traitsHeader.jsx"],"names":["styles","label","textAlign","width","border","margin","padding","display","alignItems","justifyContent","greyHeader","background","color","secondaryBackground","borderRadius","position","primaryBlockGreyHeader","paddingTop","TraitsHeaderTile","anchorEl","scorePointLabel","value","props","scorePointsLabels","onScaleChange","length","event","setState","currentTarget","secondaryBlock","scrollTo","left","showDeleteScaleModal","handleClose","nextProps","currentPosition","scrollToPosition","scorePointsValues","traitLabel","classes","showStandards","onTraitLabelChange","showDescription","showLevelTagInput","maxPoints","updateMaxPointsFieldValue","scaleIndex","showScorePointLabels","setSecondaryBlockRef","state","HeaderHeightLarge","HeaderHeight","labelPlugins","handleClick","map","option","openMenu","ref","scorePointsValue","index","scoreDescriptor","e","onScorePointLabelChange","React","Component","propTypes","PropTypes","object","isRequired","func","arrayOf","number","string","bool"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport IconButton from '@material-ui/core/IconButton';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport { color } from '@pie-lib/render-ui';\n\nimport {\n Block,\n PrimaryBlock,\n Row,\n SecondaryBlock,\n ScorePoint,\n MaxPointsPicker,\n SimpleInput,\n ScaleSettings,\n HeaderHeight,\n HeaderHeightLarge\n} from './common';\nimport { labelPlugins } from './utils';\n\nconst styles = {\n label: {\n textAlign: 'center',\n width: '140px',\n border: 'none',\n margin: '8px',\n padding: '10px 0',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-around'\n },\n greyHeader: {\n background: color.secondaryBackground(),\n borderRadius: '4px',\n position: 'relative'\n },\n primaryBlockGreyHeader: {\n paddingTop: '12px'\n }\n};\n\nexport class TraitsHeaderTile extends React.Component {\n state = {\n anchorEl: null,\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.currentPosition !== this.props.currentPosition) {\n this.scrollToPosition(nextProps.currentPosition);\n }\n }\n\n onScorePointLabelChange = ({ scorePointLabel, value }) => {\n const { scorePointsLabels, onScaleChange } = this.props;\n\n if (value < 0 || value >= scorePointsLabels.length) return;\n\n scorePointsLabels[value] = scorePointLabel;\n\n onScaleChange({ scorePointsLabels });\n };\n\n handleClick = (event) => this.setState({ anchorEl: event.currentTarget });\n\n handleClose = () => this.setState({ anchorEl: null });\n\n scrollToPosition = position => this.secondaryBlock.scrollTo({ left: position });\n\n openMenu = () => {\n this.props.showDeleteScaleModal();\n this.handleClose();\n };\n\n render() {\n const {\n scorePointsValues,\n scorePointsLabels,\n traitLabel,\n classes,\n showStandards,\n onTraitLabelChange,\n showDescription,\n showLevelTagInput,\n maxPoints,\n updateMaxPointsFieldValue,\n scaleIndex,\n showScorePointLabels,\n setSecondaryBlockRef,\n } = this.props;\n const { anchorEl } = this.state;\n\n return (\n <Row className={classes.greyHeader} height={showLevelTagInput ? HeaderHeightLarge : HeaderHeight}>\n <PrimaryBlock className={classes.primaryBlockGreyHeader}>\n {showLevelTagInput && (\n <SimpleInput\n markup={traitLabel || 'Trait'}\n onChange={onTraitLabelChange}\n pluginProps={labelPlugins}\n label='Level Label'\n />\n )}\n\n <ScaleSettings>\n <div>\n Scale {scaleIndex + 1}\n </div>\n\n <MaxPointsPicker\n maxPoints={maxPoints}\n onChange={updateMaxPointsFieldValue}\n />\n\n <div>\n <IconButton\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon/>\n </IconButton>\n <Menu\n id=\"long-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={!!anchorEl}\n onClose={this.handleClose}\n >\n {['Remove Scale'].map((option) => (\n <MenuItem\n key={option}\n onClick={this.openMenu}\n >\n {option}\n </MenuItem>\n ))}\n </Menu>\n </div>\n </ScaleSettings>\n </PrimaryBlock>\n\n <SecondaryBlock\n setRef={ref => {\n if (ref) {\n this.secondaryBlock = ref;\n\n setSecondaryBlockRef(ref);\n }\n }}\n >\n\n {showStandards && (\n <Block>\n <div className={classes.label}>\n Standard(s)\n </div>\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <div className={classes.label}>\n Description\n </div>\n </Block>\n )}\n\n {scorePointsValues.map((scorePointsValue, index) => {\n const value = scorePointsValues.length - index - 1;\n let scoreDescriptor;\n\n try {\n scoreDescriptor = scorePointsLabels[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`secondary-block-part-${index}`}>\n <ScorePoint\n scorePointsValue={scorePointsValue}\n scoreDescriptor={scoreDescriptor}\n pluginProps={labelPlugins}\n showScorePointLabels={showScorePointLabels}\n onChange={scorePointLabel => this.onScorePointLabelChange({ scorePointLabel, value })}\n />\n </Block>\n )\n })}\n </SecondaryBlock>\n </Row>\n );\n }\n}\n\nTraitsHeaderTile.propTypes = {\n classes: PropTypes.object.isRequired,\n onTraitLabelChange: PropTypes.func,\n onScaleChange: PropTypes.func,\n scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n showStandards: PropTypes.bool,\n showLevelTagInput: PropTypes.bool,\n showDescription: PropTypes.bool,\n maxPoints: PropTypes.number,\n updateMaxPointsFieldValue: PropTypes.func,\n scaleIndex: PropTypes.number,\n currentPosition: PropTypes.number,\n showDeleteScaleModal: PropTypes.func,\n showScorePointLabels: PropTypes.bool,\n setSecondaryBlockRef: PropTypes.func\n};\n\nexport default withStyles(styles)(TraitsHeaderTile);\n"],"file":"traitsHeader.js"}
1
+ {"version":3,"sources":["../src/traitsHeader.jsx"],"names":["styles","label","textAlign","width","border","margin","padding","display","alignItems","justifyContent","greyHeader","background","color","secondaryBackground","borderRadius","position","primaryBlockGreyHeader","paddingTop","TraitsHeaderTile","anchorEl","scorePointLabel","value","props","scorePointsLabels","onScaleChange","length","event","setState","currentTarget","secondaryBlock","scrollTo","left","showDeleteScaleModal","handleClose","nextProps","currentPosition","scrollToPosition","scorePointsValues","traitLabel","classes","showStandards","onTraitLabelChange","showDescription","showLevelTagInput","maxPoints","updateMaxPointsFieldValue","scaleIndex","showScorePointLabels","secondaryBlockWidth","setSecondaryBlockRef","spellCheck","state","HeaderHeightLarge","HeaderHeight","labelPlugins","handleClick","map","option","openMenu","ref","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointLabelChange","React","Component","propTypes","PropTypes","object","isRequired","func","arrayOf","number","string","bool"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport IconButton from '@material-ui/core/IconButton';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport { color } from '@pie-lib/render-ui';\n\nimport {\n Block,\n BlockWidth,\n PrimaryBlock,\n Row,\n SecondaryBlock,\n ScorePoint,\n MaxPointsPicker,\n SimpleInput,\n ScaleSettings,\n HeaderHeight,\n HeaderHeightLarge\n} from './common';\nimport { labelPlugins } from './utils';\n\nconst styles = {\n label: {\n textAlign: 'center',\n width: '140px',\n border: 'none',\n margin: '8px',\n padding: '10px 0',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-around'\n },\n greyHeader: {\n background: color.secondaryBackground(),\n borderRadius: '4px',\n position: 'relative'\n },\n primaryBlockGreyHeader: {\n paddingTop: '12px'\n }\n};\n\nexport class TraitsHeaderTile extends React.Component {\n state = {\n anchorEl: null,\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.currentPosition !== this.props.currentPosition) {\n this.scrollToPosition(nextProps.currentPosition);\n }\n }\n\n onScorePointLabelChange = ({ scorePointLabel, value }) => {\n const { scorePointsLabels, onScaleChange } = this.props;\n\n if (value < 0 || value >= scorePointsLabels.length) return;\n\n scorePointsLabels[value] = scorePointLabel;\n\n onScaleChange({ scorePointsLabels });\n };\n\n handleClick = (event) => this.setState({ anchorEl: event.currentTarget });\n\n handleClose = () => this.setState({ anchorEl: null });\n\n scrollToPosition = position => this.secondaryBlock.scrollTo({ left: position });\n\n openMenu = () => {\n this.props.showDeleteScaleModal();\n this.handleClose();\n };\n\n render() {\n const {\n scorePointsValues,\n scorePointsLabels,\n traitLabel,\n classes,\n currentPosition,\n showStandards,\n onTraitLabelChange,\n showDescription,\n showLevelTagInput,\n maxPoints,\n updateMaxPointsFieldValue,\n scaleIndex,\n showScorePointLabels,\n secondaryBlockWidth,\n setSecondaryBlockRef,\n spellCheck\n } = this.props;\n const { anchorEl } = this.state;\n\n return (\n <Row className={classes.greyHeader} height={showLevelTagInput ? HeaderHeightLarge : HeaderHeight}>\n <PrimaryBlock className={classes.primaryBlockGreyHeader}>\n {showLevelTagInput && (\n <SimpleInput\n markup={traitLabel || 'Trait'}\n onChange={onTraitLabelChange}\n pluginProps={labelPlugins}\n spellCheck={spellCheck}\n label='Level Label'\n />\n )}\n\n <ScaleSettings>\n <div>\n Scale {scaleIndex + 1}\n </div>\n\n <MaxPointsPicker\n maxPoints={maxPoints}\n onChange={updateMaxPointsFieldValue}\n />\n\n <div>\n <IconButton\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon/>\n </IconButton>\n <Menu\n id=\"long-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={!!anchorEl}\n onClose={this.handleClose}\n >\n {['Remove Scale'].map((option) => (\n <MenuItem\n key={option}\n onClick={this.openMenu}\n >\n {option}\n </MenuItem>\n ))}\n </Menu>\n </div>\n </ScaleSettings>\n </PrimaryBlock>\n\n <SecondaryBlock\n setRef={ref => {\n if (ref) {\n this.secondaryBlock = ref;\n setSecondaryBlockRef(ref);\n }\n }}\n width={`${secondaryBlockWidth}px`}\n >\n\n {showStandards && (\n <Block>\n <div className={classes.label}>\n Standard(s)\n </div>\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <div className={classes.label}>\n Description\n </div>\n </Block>\n )}\n\n {scorePointsValues.map((scorePointsValue, index) => {\n const adjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n const remainingSpace = secondaryBlockWidth - adjustedBlockWidth * index + currentPosition - 128;\n const value = scorePointsValues.length - index - 1;\n let scoreDescriptor;\n\n try {\n scoreDescriptor = scorePointsLabels[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`secondary-block-part-${index}`}>\n <ScorePoint\n scorePointsValue={scorePointsValue}\n scoreDescriptor={scoreDescriptor}\n pluginProps={labelPlugins}\n showScorePointLabels={showScorePointLabels}\n onChange={scorePointLabel => this.onScorePointLabelChange({ scorePointLabel, value })}\n alignToRight={remainingSpace < 296} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n />\n </Block>\n )\n })}\n </SecondaryBlock>\n </Row>\n );\n }\n}\n\nTraitsHeaderTile.propTypes = {\n classes: PropTypes.object.isRequired,\n onTraitLabelChange: PropTypes.func,\n onScaleChange: PropTypes.func,\n scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n showStandards: PropTypes.bool,\n showLevelTagInput: PropTypes.bool,\n showDescription: PropTypes.bool,\n maxPoints: PropTypes.number,\n updateMaxPointsFieldValue: PropTypes.func,\n scaleIndex: PropTypes.number,\n currentPosition: PropTypes.number,\n secondaryBlockWidth: PropTypes.number,\n showDeleteScaleModal: PropTypes.func,\n showScorePointLabels: PropTypes.bool,\n setSecondaryBlockRef: PropTypes.func\n};\n\nexport default withStyles(styles)(TraitsHeaderTile);\n"],"file":"traitsHeader.js"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/multi-trait-rubric-configure",
3
- "version": "1.4.0",
3
+ "version": "1.4.19",
4
4
  "private": true,
5
5
  "main": "lib/index.js",
6
6
  "module": "src/index.js",
@@ -8,11 +8,11 @@
8
8
  "@material-ui/core": "^3.9.2",
9
9
  "@material-ui/icons": "^3.0.1",
10
10
  "@pie-framework/pie-configure-events": "^1.2.0",
11
- "@pie-lib/config-ui": "^10.9.2",
12
- "@pie-lib/editable-html": "^7.16.19",
13
- "@pie-lib/render-ui": "^4.11.7",
14
- "@pie-lib/rubric": "^0.3.2",
15
- "@pie-lib/scoring-config": "^3.5.128",
11
+ "@pie-lib/config-ui": "^10.13.3",
12
+ "@pie-lib/editable-html": "^7.22.6",
13
+ "@pie-lib/render-ui": "^4.12.9",
14
+ "@pie-lib/rubric": "^0.4.23",
15
+ "@pie-lib/scoring-config": "^3.5.163",
16
16
  "debug": "^3.1.0",
17
17
  "lodash": "^4.17.15",
18
18
  "prop-types": "^15.6.2",
@@ -3,6 +3,33 @@
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.2.8](https://github.com/pie-framework/pie-elements/compare/@pie-element/multi-trait-rubric-controller@1.2.6...@pie-element/multi-trait-rubric-controller@1.2.8) (2021-11-11)
7
+
8
+ **Note:** Version bump only for package @pie-element/multi-trait-rubric-controller
9
+
10
+
11
+
12
+
13
+
14
+ ## [1.2.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/multi-trait-rubric-controller@1.2.6...@pie-element/multi-trait-rubric-controller@1.2.7) (2021-11-11)
15
+
16
+ **Note:** Version bump only for package @pie-element/multi-trait-rubric-controller
17
+
18
+
19
+
20
+
21
+
22
+ ## [1.2.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/multi-trait-rubric-controller@1.2.4...@pie-element/multi-trait-rubric-controller@1.2.6) (2021-08-05)
23
+
24
+
25
+ ### Bug Fixes
26
+
27
+ * force bump ([5ea7295](https://github.com/pie-framework/pie-elements/commit/5ea7295e4755fbc492a76e7ec69e5fc35b196919))
28
+
29
+
30
+
31
+
32
+
6
33
  ## [1.2.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/multi-trait-rubric-controller@1.2.3...@pie-element/multi-trait-rubric-controller@1.2.4) (2021-06-29)
7
34
 
8
35
  **Note:** Version bump only for package @pie-element/multi-trait-rubric-controller
@@ -5,10 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
+ exports.createCorrectResponseSession = void 0;
8
9
  exports.createDefaultModel = createDefaultModel;
10
+ exports.getScore = void 0;
9
11
  exports.model = model;
12
+ exports.normalize = void 0;
10
13
  exports.outcome = outcome;
11
- exports.createCorrectResponseSession = exports.getScore = exports.normalize = void 0;
12
14
 
13
15
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
14
16
 
@@ -18,9 +20,9 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
18
20
 
19
21
  var _defaults = _interopRequireDefault(require("./defaults"));
20
22
 
21
- 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; }
23
+ 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; }
22
24
 
23
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
25
+ 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; }
24
26
 
25
27
  function createDefaultModel() {
26
28
  var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["createDefaultModel","model","Promise","resolve","defaults","normalize","question","session","env","normalizedQuestion","role","visible","visibleToStudent","scales","excludeZero","parsedScales","map","scale","getScore","outcome","score","empty","createCorrectResponseSession","mode","id"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEO,SAASA,kBAAT,GAAwC;AAAA,MAAZC,KAAY,uEAAJ,EAAI;AAC7C,SAAO,IAAIC,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,iCAAMC,oBAAN,GAAmBH,KAAnB,EAAX;AAAA,GAAnB,CAAP;AACD;;AAEM,IAAMI,SAAS,GAAG,SAAZA,SAAY,CAAAC,QAAQ;AAAA,yCAAUF,oBAAV,GAAuBE,QAAvB;AAAA,CAA1B;AAEP;AACA;AACA;AACA;AACA;AACA;;;;;SACsBL,K;;;;;yFAAf,iBAAqBK,QAArB,EAA+BC,OAA/B,EAAwCC,GAAxC;AAAA;;AAAA;AAAA;AAAA;AAAA;AACCC,YAAAA,kBADD,GACsBJ,SAAS,CAACC,QAAD,CAD/B;;AAGL,gBAAI,CAACE,GAAG,CAACE,IAAL,IAAaF,GAAG,CAACE,IAAJ,KAAa,SAA9B,EAAyC;AACvCD,cAAAA,kBAAkB,CAACE,OAAnB,GAA6BF,kBAAkB,CAACG,gBAAhD;AACD,aAFD,MAEO;AACLH,cAAAA,kBAAkB,CAACE,OAAnB,GAA6B,IAA7B;AACD,aAPI,CASL;;;AATK,mBAU2BF,kBAAkB,IAAI,EAVjD,EAUGI,MAVH,QAUGA,MAVH,EAUWC,WAVX,QAUWA,WAVX;AAWCC,YAAAA,YAXD,GAWgB,CAACF,MAAM,IAAI,EAAX,EAAeG,GAAf,CAAmB,UAAAC,KAAK;AAAA,qDAAUA,KAAV;AAAiBH,gBAAAA,WAAW,EAAXA;AAAjB;AAAA,aAAxB,CAXhB;AAAA,6EAcAL,kBAdA;AAeHI,cAAAA,MAAM,EAAEE;AAfL;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAoBA,IAAMG,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAM,CAAN;AAAA,CAAjB;AAEP;AACA;AACA;AACA;AACA;;;;;AACO,SAASC,OAAT,CAAiBlB,KAAjB,EAAwBM,OAAxB,EAAiCC,GAAjC,EAAsC;AAC3C,SAAO,IAAIN,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,CAAC;AAAEiB,MAAAA,KAAK,EAAE,CAAT;AAAYC,MAAAA,KAAK,EAAE;AAAnB,KAAD,CAAX;AAAA,GAAnB,CAAP;AACD;;AAEM,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA+B,CAAChB,QAAD,EAAWE,GAAX,EAAmB;AAC7D,SAAO,IAAIN,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAIK,GAAG,CAACe,IAAJ,KAAa,UAAb,IAA2Bf,GAAG,CAACE,IAAJ,KAAa,YAA5C,EAA0D;AACxDP,MAAAA,OAAO,CAAC;AAAEqB,QAAAA,EAAE,EAAE;AAAN,OAAD,CAAP;AACD,KAFD,MAEO;AACLrB,MAAAA,OAAO,CAAC,IAAD,CAAP;AACD;AACF,GANM,CAAP;AAOD,CARM","sourcesContent":["import defaults from './defaults';\n\nexport function createDefaultModel(model = {}) {\n return new Promise(resolve => resolve({ ...defaults, ...model }));\n}\n\nexport const normalize = question => ({ ...defaults, ...question });\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 if (!env.role || env.role === 'student') {\n normalizedQuestion.visible = normalizedQuestion.visibleToStudent;\n } else {\n normalizedQuestion.visible = true;\n }\n\n // todo update pie-ui instead of parsing this here:\n const { scales, excludeZero } = normalizedQuestion || {};\n const parsedScales = (scales || []).map(scale => ({ ...scale, excludeZero }));\n\n return {\n ...normalizedQuestion,\n scales: parsedScales\n };\n}\n\n\nexport const getScore = () => 0;\n\n/**\n * @param {Object} model - the main model\n * @param {*} session\n * @param {Object} env\n */\nexport function outcome(model, session, env) {\n return new Promise(resolve => resolve({ score: 0, empty: true }));\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise(resolve => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n resolve({ id: '1' });\n } else {\n resolve(null);\n }\n });\n};\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["createDefaultModel","model","Promise","resolve","defaults","normalize","question","session","env","normalizedQuestion","role","visible","visibleToStudent","scales","excludeZero","parsedScales","map","scale","getScore","outcome","score","empty","createCorrectResponseSession","mode","id"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEO,SAASA,kBAAT,GAAwC;AAAA,MAAZC,KAAY,uEAAJ,EAAI;AAC7C,SAAO,IAAIC,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,iCAAMC,oBAAN,GAAmBH,KAAnB,EAAX;AAAA,GAAnB,CAAP;AACD;;AAEM,IAAMI,SAAS,GAAG,SAAZA,SAAY,CAAAC,QAAQ;AAAA,yCAAUF,oBAAV,GAAuBE,QAAvB;AAAA,CAA1B;AAEP;AACA;AACA;AACA;AACA;AACA;;;;;SACsBL,K;;;;;yFAAf,iBAAqBK,QAArB,EAA+BC,OAA/B,EAAwCC,GAAxC;AAAA;;AAAA;AAAA;AAAA;AAAA;AACCC,YAAAA,kBADD,GACsBJ,SAAS,CAACC,QAAD,CAD/B;;AAGL,gBAAI,CAACE,GAAG,CAACE,IAAL,IAAaF,GAAG,CAACE,IAAJ,KAAa,SAA9B,EAAyC;AACvCD,cAAAA,kBAAkB,CAACE,OAAnB,GAA6BF,kBAAkB,CAACG,gBAAhD;AACD,aAFD,MAEO;AACLH,cAAAA,kBAAkB,CAACE,OAAnB,GAA6B,IAA7B;AACD,aAPI,CASL;;;AATK,mBAU2BF,kBAAkB,IAAI,EAVjD,EAUGI,MAVH,QAUGA,MAVH,EAUWC,WAVX,QAUWA,WAVX;AAWCC,YAAAA,YAXD,GAWgB,CAACF,MAAM,IAAI,EAAX,EAAeG,GAAf,CAAmB,UAAAC,KAAK;AAAA,qDAAUA,KAAV;AAAiBH,gBAAAA,WAAW,EAAXA;AAAjB;AAAA,aAAxB,CAXhB;AAAA,6EAcAL,kBAdA;AAeHI,cAAAA,MAAM,EAAEE;AAfL;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAoBA,IAAMG,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAM,CAAN;AAAA,CAAjB;AAEP;AACA;AACA;AACA;AACA;;;;;AACO,SAASC,OAAT,CAAiBlB,KAAjB,EAAwBM,OAAxB,EAAiCC,GAAjC,EAAsC;AAC3C,SAAO,IAAIN,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,CAAC;AAAEiB,MAAAA,KAAK,EAAE,CAAT;AAAYC,MAAAA,KAAK,EAAE;AAAnB,KAAD,CAAX;AAAA,GAAnB,CAAP;AACD;;AAEM,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA+B,CAAChB,QAAD,EAAWE,GAAX,EAAmB;AAC7D,SAAO,IAAIN,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAIK,GAAG,CAACe,IAAJ,KAAa,UAAb,IAA2Bf,GAAG,CAACE,IAAJ,KAAa,YAA5C,EAA0D;AACxDP,MAAAA,OAAO,CAAC;AAAEqB,QAAAA,EAAE,EAAE;AAAN,OAAD,CAAP;AACD,KAFD,MAEO;AACLrB,MAAAA,OAAO,CAAC,IAAD,CAAP;AACD;AACF,GANM,CAAP;AAOD,CARM","sourcesContent":["import defaults from './defaults';\n\nexport function createDefaultModel(model = {}) {\n return new Promise(resolve => resolve({ ...defaults, ...model }));\n}\n\nexport const normalize = question => ({ ...defaults, ...question });\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 if (!env.role || env.role === 'student') {\n normalizedQuestion.visible = normalizedQuestion.visibleToStudent;\n } else {\n normalizedQuestion.visible = true;\n }\n\n // todo update pie-ui instead of parsing this here:\n const { scales, excludeZero } = normalizedQuestion || {};\n const parsedScales = (scales || []).map(scale => ({ ...scale, excludeZero }));\n\n return {\n ...normalizedQuestion,\n scales: parsedScales\n };\n}\n\n\nexport const getScore = () => 0;\n\n/**\n * @param {Object} model - the main model\n * @param {*} session\n * @param {Object} env\n */\nexport function outcome(model, session, env) {\n return new Promise(resolve => resolve({ score: 0, empty: true }));\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise(resolve => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n resolve({ id: '1' });\n } else {\n resolve(null);\n }\n });\n};\n"],"file":"index.js"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/multi-trait-rubric-controller",
3
3
  "private": true,
4
- "version": "1.2.4",
4
+ "version": "1.2.11",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
@@ -163,6 +163,22 @@
163
163
  }
164
164
  }
165
165
  },
166
+ "spellCheck": {
167
+ "title": "ConfigureProp",
168
+ "type": "object",
169
+ "properties": {
170
+ "settings": {
171
+ "description": "Indicates if the item has to be displayed in the Settings Panel",
172
+ "type": "boolean",
173
+ "title": "settings"
174
+ },
175
+ "label": {
176
+ "description": "Indicates the label for the item that has to be displayed in the Settings Panel",
177
+ "type": "string",
178
+ "title": "label"
179
+ }
180
+ }
181
+ },
166
182
  "width": {
167
183
  "description": "How large (in px) should multi-trait-rubric be",
168
184
  "type": "string",
@@ -207,4 +223,4 @@
207
223
  }
208
224
  },
209
225
  "$schema": "http://json-schema.org/draft-07/schema#"
210
- }
226
+ }
@@ -122,6 +122,18 @@ Indicates if the item has to be displayed in the Settings Panel
122
122
 
123
123
  Indicates the label for the item that has to be displayed in the Settings Panel
124
124
 
125
+ # `spellCheck` (object)
126
+
127
+ Properties of the `spellCheck` object:
128
+
129
+ ## `settings` (boolean)
130
+
131
+ Indicates if the item has to be displayed in the Settings Panel
132
+
133
+ ## `label` (string)
134
+
135
+ Indicates the label for the item that has to be displayed in the Settings Panel
136
+
125
137
  # `width` (string, required)
126
138
 
127
139
  How large (in px) should multi-trait-rubric be
@@ -154,4 +166,4 @@ Indicates if the item has to be displayed in the Settings Panel
154
166
 
155
167
  ### `label` (string)
156
168
 
157
- Indicates the label for the item that has to be displayed in the Settings Panel
169
+ Indicates the label for the item that has to be displayed in the Settings Panel
@@ -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": {
@@ -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
@@ -29,7 +29,7 @@ var _main = _interopRequireDefault(require("./main"));
29
29
 
30
30
  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); }; }
31
31
 
32
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
32
+ 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; } }
33
33
 
34
34
  var MultiTraitRubric = /*#__PURE__*/function (_HTMLElement) {
35
35
  (0, _inherits2["default"])(MultiTraitRubric, _HTMLElement);
@@ -56,6 +56,9 @@ var MultiTraitRubric = /*#__PURE__*/function (_HTMLElement) {
56
56
  }
57
57
  }, {
58
58
  key: "session",
59
+ get: function get() {
60
+ return this._session;
61
+ },
59
62
  set: function set(s) {
60
63
  this._session = s;
61
64
  }
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;;;SAED,aAAYL,CAAZ,EAAe;AACb,WAAKD,QAAL,GAAgBC,CAAhB;AACD;;;WAED,6BAAoB;AAClB,WAAKK,OAAL;AACD;;;WAED,mBAAU;AACR,UAAMC,EAAE,gBAAGC,kBAAMC,aAAN,CACTC,gBADS,EAET;AAAEC,QAAAA,KAAK,EAAE,KAAKZ,MAAd;AAAsBa,QAAAA,OAAO,EAAE,KAAKZ;AAApC,OAFS,CAAX;;AAKAa,2BAASC,MAAT,CAAgBP,EAAhB,EAAoB,IAApB;AACD;;;kDA7B2CQ,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 connectedCallback() {\n this._render();\n }\n\n _render() {\n const el = React.createElement(\n Main,\n { model: this._model, session: this._session }\n );\n\n ReactDOM.render(el, this);\n }\n}\n"],"file":"index.js"}
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,CACTC,gBADS,EAET;AAAEC,QAAAA,KAAK,EAAE,KAAKZ,MAAd;AAAsBa,QAAAA,OAAO,EAAE,KAAKZ;AAApC,OAFS,CAAX;;AAKAa,2BAASC,MAAT,CAAgBP,EAAhB,EAAoB,IAApB;AACD;;;kDAjC2CQ,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(\n Main,\n { model: this._model, session: this._session }\n );\n\n ReactDOM.render(el, this);\n }\n}\n"],"file":"index.js"}
package/lib/main.js CHANGED
@@ -25,7 +25,7 @@ var _scale = _interopRequireDefault(require("./scale"));
25
25
 
26
26
  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
27
 
28
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
28
+ 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; } }
29
29
 
30
30
  var Main = /*#__PURE__*/function (_React$Component) {
31
31
  (0, _inherits2["default"])(Main, _React$Component);
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Main","model","props","halfScoring","scales","visible","pointLabels","description","standards","fontFamily","map","scale","scaleIndex","React","Component","propTypes","PropTypes","shape","bool","arrayOf","excludeZero","maxPoints","number","scorePointsLabels","string","traitLabel","traits","name","scorePointsDescriptors"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;IAGMA,I;;;;;;;;;;;;WACJ,kBAAS;AAAA,UACAC,KADA,GACS,KAAKC,KADd,CACAD,KADA;;AAAA,iBAEqEA,KAAK,IAAI,EAF9E;AAAA,UAEAE,WAFA,QAEAA,WAFA;AAAA,UAEaC,MAFb,QAEaA,MAFb;AAAA,UAEqBC,OAFrB,QAEqBA,OAFrB;AAAA,UAE8BC,WAF9B,QAE8BA,WAF9B;AAAA,UAE2CC,WAF3C,QAE2CA,WAF3C;AAAA,UAEwDC,SAFxD,QAEwDA,SAFxD;;AAIP,UAAI,CAACJ,MAAD,IAAW,CAACC,OAAhB,EAAyB;AACvB,4BAAO,4CAAP;AACD;;AAED,0BACE;AAAK,QAAA,KAAK,EAAE;AAACI,UAAAA,UAAU,EAAE;AAAb;AAAZ,SACGN,WAAW,gBAAG,gHAAH,GAA+E,IAD7F,EAEGC,MAAM,CAACM,GAAP,CAAW,UAACC,KAAD,EAAQC,UAAR;AAAA,4BACV,gCAAC,iBAAD;AACE,UAAA,GAAG,kBAAWA,UAAX,CADL;AAEE,UAAA,KAAK,EAAED,KAFT;AAGE,UAAA,UAAU,EAAEC,UAHd;AAIE,UAAA,gBAAgB,EAAEN,WAJpB;AAKE,UAAA,eAAe,EAAEC,WALnB;AAME,UAAA,aAAa,EAAEC;AANjB,UADU;AAAA,OAAX,CAFH,CADF;AAeD;;;EAxBgBK,kBAAMC,S;;AA2BzBd,IAAI,CAACe,SAAL,GAAiB;AACfd,EAAAA,KAAK,EAAEe,sBAAUC,KAAV,CAAgB;AACrBd,IAAAA,WAAW,EAAEa,sBAAUE,IADF;AAErBd,IAAAA,MAAM,EAAEY,sBAAUG,OAAV,CAAkBH,sBAAUC,KAAV,CAAgB;AACxCG,MAAAA,WAAW,EAAEJ,sBAAUE,IADiB;AAExCG,MAAAA,SAAS,EAAEL,sBAAUM,MAFmB;AAGxCC,MAAAA,iBAAiB,EAAEP,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B,CAHqB;AAIxCC,MAAAA,UAAU,EAAET,sBAAUQ,MAJkB;AAKxCE,MAAAA,MAAM,EAAEV,sBAAUG,OAAV,CAAkBH,sBAAUC,KAAV,CAAgB;AACxCU,QAAAA,IAAI,EAAEX,sBAAUQ,MADwB;AAExCjB,QAAAA,WAAW,EAAES,sBAAUQ,MAFiB;AAGxCI,QAAAA,sBAAsB,EAAEZ,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B,CAHgB;AAIxChB,QAAAA,SAAS,EAAEQ,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B;AAJ6B,OAAhB,CAAlB;AALgC,KAAhB,CAAlB,CAFa;AAcrBnB,IAAAA,OAAO,EAAEW,sBAAUE,IAdE;AAerBZ,IAAAA,WAAW,EAAEU,sBAAUE,IAfF;AAgBrBX,IAAAA,WAAW,EAAES,sBAAUE,IAhBF;AAiBrBV,IAAAA,SAAS,EAAEQ,sBAAUE;AAjBA,GAAhB;AADQ,CAAjB;eAsBelB,I","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Scale from './scale';\n\n\nclass Main extends React.Component {\n render() {\n const {model} = this.props;\n const {halfScoring, scales, visible, pointLabels, description, standards} = model || {};\n\n if (!scales || !visible) {\n return <div/>;\n }\n\n return (\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}\n\nMain.propTypes = {\n model: PropTypes.shape({\n halfScoring: PropTypes.bool,\n scales: PropTypes.arrayOf(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 description: PropTypes.string,\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n standards: PropTypes.arrayOf(PropTypes.string),\n }))\n })),\n visible: PropTypes.bool,\n pointLabels: PropTypes.bool,\n description: PropTypes.bool,\n standards: PropTypes.bool,\n })\n};\n\nexport default Main;\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Main","model","props","halfScoring","scales","visible","pointLabels","description","standards","fontFamily","map","scale","scaleIndex","React","Component","propTypes","PropTypes","shape","bool","arrayOf","excludeZero","maxPoints","number","scorePointsLabels","string","traitLabel","traits","name","scorePointsDescriptors"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;;;;;IAGMA,I;;;;;;;;;;;;WACJ,kBAAS;AACP,UAAOC,KAAP,GAAgB,KAAKC,KAArB,CAAOD,KAAP;;AACA,iBAA4EA,KAAK,IAAI,EAArF;AAAA,UAAOE,WAAP,QAAOA,WAAP;AAAA,UAAoBC,MAApB,QAAoBA,MAApB;AAAA,UAA4BC,OAA5B,QAA4BA,OAA5B;AAAA,UAAqCC,WAArC,QAAqCA,WAArC;AAAA,UAAkDC,WAAlD,QAAkDA,WAAlD;AAAA,UAA+DC,SAA/D,QAA+DA,SAA/D;;AAEA,UAAI,CAACJ,MAAD,IAAW,CAACC,OAAhB,EAAyB;AACvB,4BAAO,4CAAP;AACD;;AAED,0BACE;AAAK,QAAA,KAAK,EAAE;AAACI,UAAAA,UAAU,EAAE;AAAb;AAAZ,SACGN,WAAW,gBAAG,gHAAH,GAA+E,IAD7F,EAEGC,MAAM,CAACM,GAAP,CAAW,UAACC,KAAD,EAAQC,UAAR;AAAA,4BACV,gCAAC,iBAAD;AACE,UAAA,GAAG,kBAAWA,UAAX,CADL;AAEE,UAAA,KAAK,EAAED,KAFT;AAGE,UAAA,UAAU,EAAEC,UAHd;AAIE,UAAA,gBAAgB,EAAEN,WAJpB;AAKE,UAAA,eAAe,EAAEC,WALnB;AAME,UAAA,aAAa,EAAEC;AANjB,UADU;AAAA,OAAX,CAFH,CADF;AAeD;;;EAxBgBK,kBAAMC,S;;AA2BzBd,IAAI,CAACe,SAAL,GAAiB;AACfd,EAAAA,KAAK,EAAEe,sBAAUC,KAAV,CAAgB;AACrBd,IAAAA,WAAW,EAAEa,sBAAUE,IADF;AAErBd,IAAAA,MAAM,EAAEY,sBAAUG,OAAV,CAAkBH,sBAAUC,KAAV,CAAgB;AACxCG,MAAAA,WAAW,EAAEJ,sBAAUE,IADiB;AAExCG,MAAAA,SAAS,EAAEL,sBAAUM,MAFmB;AAGxCC,MAAAA,iBAAiB,EAAEP,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B,CAHqB;AAIxCC,MAAAA,UAAU,EAAET,sBAAUQ,MAJkB;AAKxCE,MAAAA,MAAM,EAAEV,sBAAUG,OAAV,CAAkBH,sBAAUC,KAAV,CAAgB;AACxCU,QAAAA,IAAI,EAAEX,sBAAUQ,MADwB;AAExCjB,QAAAA,WAAW,EAAES,sBAAUQ,MAFiB;AAGxCI,QAAAA,sBAAsB,EAAEZ,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B,CAHgB;AAIxChB,QAAAA,SAAS,EAAEQ,sBAAUG,OAAV,CAAkBH,sBAAUQ,MAA5B;AAJ6B,OAAhB,CAAlB;AALgC,KAAhB,CAAlB,CAFa;AAcrBnB,IAAAA,OAAO,EAAEW,sBAAUE,IAdE;AAerBZ,IAAAA,WAAW,EAAEU,sBAAUE,IAfF;AAgBrBX,IAAAA,WAAW,EAAES,sBAAUE,IAhBF;AAiBrBV,IAAAA,SAAS,EAAEQ,sBAAUE;AAjBA,GAAhB;AADQ,CAAjB;eAsBelB,I","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Scale from './scale';\n\n\nclass Main extends React.Component {\n render() {\n const {model} = this.props;\n const {halfScoring, scales, visible, pointLabels, description, standards} = model || {};\n\n if (!scales || !visible) {\n return <div/>;\n }\n\n return (\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}\n\nMain.propTypes = {\n model: PropTypes.shape({\n halfScoring: PropTypes.bool,\n scales: PropTypes.arrayOf(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 description: PropTypes.string,\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n standards: PropTypes.arrayOf(PropTypes.string),\n }))\n })),\n visible: PropTypes.bool,\n pointLabels: PropTypes.bool,\n description: PropTypes.bool,\n standards: PropTypes.bool,\n })\n};\n\nexport default Main;\n"],"file":"main.js"}
package/lib/scale.js CHANGED
@@ -31,7 +31,7 @@ var _trait = _interopRequireDefault(require("./trait"));
31
31
 
32
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); }; }
33
33
 
34
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
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; } }
35
35
 
36
36
  var styles = function styles() {
37
37
  return {
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;;;;;;AAGA,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,wBAAuF,KAAKC,KAA5F;AAAA,UAAOC,OAAP,eAAOA,OAAP;AAAA,UAAgBC,KAAhB,eAAgBA,KAAhB;AAAA,UAAuBC,UAAvB,eAAuBA,UAAvB;AAAA,UAAmCC,eAAnC,eAAmCA,eAAnC;AAAA,UAAoDC,gBAApD,eAAoDA,gBAApD;AAAA,UAAsEC,aAAtE,eAAsEA,aAAtE;;AACA,iBAAwEJ,KAAK,IAAI,EAAjF;AAAA,UAAOK,WAAP,QAAOA,WAAP;AAAA,UAAoBC,SAApB,QAAoBA,SAApB;AAAA,UAA+BC,UAA/B,QAA+BA,UAA/B;AAAA,UAA2CC,MAA3C,QAA2CA,MAA3C;AAAA,UAAmDC,iBAAnD,QAAmDA,iBAAnD;;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,6BAA4CN,MAAM,CAACQ,MAAP,CAC1C,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,SAD0C,EAK1C;AACEF,UAAAA,cAAc,EAAE,EADlB;AAEEC,UAAAA,iBAAiB,EAAE;AAFrB,SAL0C,CAA5C;AAAA,YAAOD,cAAP,kBAAOA,cAAP;AAAA,YAAuBC,iBAAvB,kBAAuBA,iBAAvB;;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;AACE,QAAA,GAAG,kBAAWZ,UAAX,CADL;AAEE,QAAA,SAAS,EAAEF,OAAO,CAACxB;AAFrB,sBAIE,4DACA,yDACE,yDACE;AAAK,QAAA,uBAAuB,EAAE;AAACiD,UAAAA,MAAM,EAAEjB;AAAT;AAA9B,QADF,CADF,EAKGM,SAAS,gBAAG,yDACX,2DADW,CAAH,GAEF,IAPV,EASGF,YAAY,gBAAG,yDACd,2DADc,CAAH,GAEL,IAXV,EAcID,iBAAiB,IAAIA,iBAAiB,CAACe,GAAlB,CAAsB,UAAC9B,eAAD,EAAkB+B,KAAlB,EAA4B;AACrE,YAAIhC,UAAU,GAAG,EAAjB,CADqE,CAGrE;;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,+CACCqB,YAAY,gBAET,yDACE,yDACE;AAAK,UAAA,SAAS,EAAEb,OAAO,CAACL,UAAxB;AAAoC,UAAA,uBAAuB,EAAE;AAAC8B,YAAAA,MAAM,EAAE9B;AAAT;AAA7D,UADF,CADF,CAFS,GAQT,IATJ,eAWA,yDACE;AAAI,UAAA,SAAS,EAAEK,OAAO,CAACJ;AAAvB,WACGA,eAAe,KAAK,CAApB,aAA2BA,eAA3B,wBAAwDA,eAAxD,YADH,CADF,CAXA,CADF,CADF,CADF;AAuBD,OAjCoB,CAdzB,CADA,CAJF,eA0DE,+CAEEa,MAAM,IAAIA,MAAM,CAACiB,GAAP,CAAW,UAACP,KAAD,EAAQS,UAAR;AAAA,4BACnB,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,UADmB;AAAA,OAAX,CAFZ,CA1DF,CADF;AA6ED;;;EAhHiBuB,kBAAMC,S;;AAmH1BhC,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,CAAkBL,sBAAUG,KAAV,CAAgB;AACxCI,MAAAA,IAAI,EAAEP,sBAAUM,MADwB;AAExCxB,MAAAA,SAAS,EAAEkB,sBAAUK,OAAV,CAAkBL,sBAAUM,MAA5B,CAF6B;AAGxCE,MAAAA,sBAAsB,EAAER,sBAAUK,OAAV,CAAkBL,sBAAUM,MAA5B,CAHgB;AAIxChB,MAAAA,WAAW,EAAEU,sBAAUM;AAJiB,KAAhB,CAAlB;AALa,GAAhB,CAHS;AAehBlC,EAAAA,gBAAgB,EAAE4B,sBAAUI,IAfZ;AAgBhBjC,EAAAA,eAAe,EAAE6B,sBAAUI,IAhBX;AAiBhB/B,EAAAA,aAAa,EAAE2B,sBAAUI;AAjBT,CAAlB;;eAoBe,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\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"}