@pie-element/multi-trait-rubric 2.10.2-next.20 → 2.10.2-next.29

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.
@@ -344,7 +344,7 @@ var Scale = /*#__PURE__*/function (_React$Component) {
344
344
  }, {
345
345
  key: "componentDidUpdate",
346
346
  value: function componentDidUpdate(prevProps) {
347
- if (prevProps.scale.maxPoints !== this.props.scale.maxPoints) {
347
+ if (prevProps.scale.maxPoints !== this.props.scale.maxPoints || prevProps.showDescription !== this.props.showDescription) {
348
348
  this.setState({
349
349
  showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth
350
350
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scale.jsx"],"names":["AdjustedBlockWidth","BlockWidth","styles","theme","scaleWrapper","display","flexDirection","wordBreak","position","marginBottom","spacing","unit","maxPoints","width","marginTop","trait","background","color","secondaryBackground","padding","Scale","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","currentPosition","showRight","showLeft","showInfoDialog","infoDialogText","newState","setState","target","props","scale","scaleIndex","onScaleChanged","scorePointsLabels","traits","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","i","push","forEach","index","scorePointsDescriptors","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","name","description","standards","Array","from","traitIndex","source","newIndex","oldIndex","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","prevProps","nextProps","excludeZero","showStandards","showDescription","classes","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","scorePointsValues","secondaryBlockWidth","DragHandleSpace","PrimaryBlockWidth","pointValue","ref","params","label","updateMaxPointsFieldValue","showDeleteScaleModal","map","showDeleteTraitModal","onTraitChanged","onTraitDropped","decreasePosition","increasePosition","onTraitAdded","__html","changeMaxPoints","deleteScale","onTraitRemoved","React","Component","propTypes","PropTypes","object","shape","number","arrayOf","string","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\n\nimport { withDragContext } from '@pie-lib/drag';\nimport { color } from '@pie-lib/render-ui';\n\nimport TraitsHeader from './traitsHeader';\nimport TraitTile from './trait';\nimport { Arrow, BlockWidth, DragHandleSpace, MultiTraitButton, PrimaryBlockWidth } from './common';\nimport { DecreaseMaxPoints, DeleteScale, DeleteTrait, InfoDialog } from './modals';\n\nconst AdjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n\nconst styles = (theme) => ({\n scaleWrapper: {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n position: 'relative',\n marginBottom: theme.spacing.unit * 2.5,\n },\n maxPoints: {\n width: '300px',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 4,\n },\n trait: {\n background: color.secondaryBackground(),\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n padding: theme.spacing.unit * 2,\n },\n});\n\nexport class Scale extends React.Component {\n state = {\n showDecreaseMaxPointsDialog: false,\n showDeleteScaleDialog: false,\n showDeleteTraitDialog: false,\n currentPosition: 0,\n showRight: null,\n showLeft: null,\n showInfoDialog: false,\n infoDialogText: '',\n };\n\n set = (newState) => this.setState(newState);\n\n componentDidMount() {\n if (this.state.showRight === null && this.secondaryBlockRef) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.scale.maxPoints !== this.props.scale.maxPoints) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.excludeZero !== this.props.excludeZero ||\n nextProps.showStandards !== this.props.showStandards ||\n nextProps.showDescription !== this.props.showDescription\n ) {\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n }\n }\n\n // Max Points\n updateMaxPointsFieldValue = ({ target }) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { maxPoints, scorePointsLabels, traits } = scale;\n\n const numberValue = parseInt(target.value, 10);\n\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n\n if (numberValue < maxPoints) {\n this.showDecreaseMaxPointsModal({ newMaxPoints: numberValue });\n } else {\n for (let i = 0; i <= numberValue; i++) {\n if (!scorePointsLabels[i]) {\n scorePointsLabels.push('');\n }\n\n traits.forEach((trait, index) => {\n if (!traits[index].scorePointsDescriptors[i]) {\n traits[index].scorePointsDescriptors.push('');\n }\n });\n }\n\n onScaleChanged(scaleIndex, { maxPoints: numberValue, scorePointsLabels, traits });\n }\n };\n\n showDecreaseMaxPointsModal = ({ newMaxPoints }) => this.set({ showDecreaseMaxPointsDialog: true, newMaxPoints });\n\n hideDecreaseMaxPointsModal = () => this.set({ showDecreaseMaxPointsDialog: false, newMaxPoints: undefined });\n\n changeMaxPoints = () => {\n const { newMaxPoints } = this.state || {};\n const { scaleIndex, onScaleChanged } = this.props || {};\n\n if (newMaxPoints) {\n onScaleChanged(scaleIndex, { maxPoints: newMaxPoints });\n }\n\n this.hideDecreaseMaxPointsModal();\n };\n\n // Delete Scale\n showDeleteScaleModal = () => this.set({ showDeleteScaleDialog: true });\n\n hideDeleteScaleModal = () => this.set({ showDeleteScaleDialog: false });\n\n deleteScale = () => {\n const { scaleIndex, onScaleRemoved } = this.props || {};\n\n this.hideDeleteScaleModal();\n\n onScaleRemoved(scaleIndex);\n };\n\n // Delete Trait\n showDeleteTraitModal = (traitToDeleteIndex) => this.set({ showDeleteTraitDialog: true, traitToDeleteIndex });\n\n hideDeleteTraitModal = () => this.set({ showDeleteTraitDialog: false, traitToDeleteIndex: undefined });\n\n onTraitRemoved = () => {\n const { traitToDeleteIndex } = this.state;\n const { scale, scaleIndex, onScaleChanged, minNoOfTraits } = this.props || {};\n let { traits, traitLabel } = scale || {};\n\n if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;\n\n if (traits.length === minNoOfTraits) {\n this.set({\n infoDialogText: `There can't be less than ${minNoOfTraits} ${(traitLabel || 'trait').toLowerCase()}s.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits = [...traits.slice(0, traitToDeleteIndex), ...traits.slice(traitToDeleteIndex + 1)];\n\n onScaleChanged(scaleIndex, { traits });\n\n this.hideDeleteTraitModal();\n };\n\n onTraitAdded = () => {\n const { scale, scaleIndex, onScaleChanged, maxNoOfTraits } = this.props || {};\n const { traits, scorePointsLabels } = scale || {};\n\n if (traits.length === maxNoOfTraits) {\n this.set({\n infoDialogText: `There can't be more than ${maxNoOfTraits} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits.push({\n name: '',\n description: '',\n standards: [],\n scorePointsDescriptors: Array.from({ length: scorePointsLabels.length }, () => ''),\n });\n\n onScaleChanged(scaleIndex, { traits });\n };\n\n onTraitChanged = (traitIndex, trait) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n\n if (traitIndex >= 0 && traitIndex < traits.length) {\n traits[traitIndex] = trait;\n\n onScaleChanged(scaleIndex, { traits });\n }\n };\n\n onTraitDropped = (source, newIndex) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n const { index: oldIndex } = source;\n const cup = traits[oldIndex];\n\n const remainingTraits = traits.filter((item, index) => index !== oldIndex);\n\n const newTraits = [...remainingTraits.slice(0, newIndex), cup, ...remainingTraits.slice(newIndex)];\n\n onScaleChanged(scaleIndex, { traits: newTraits });\n };\n\n decreasePosition = () => {\n const { currentPosition } = this.state;\n const decreasedPosition =\n currentPosition - (currentPosition === AdjustedBlockWidth / 2 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: decreasedPosition,\n showRight: decreasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: decreasedPosition > 0,\n });\n };\n\n increasePosition = () => {\n const { currentPosition } = this.state;\n const increasedPosition = currentPosition + (currentPosition === 0 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: increasedPosition,\n showRight: increasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: increasedPosition > 0,\n });\n };\n\n render() {\n const {\n classes,\n scale,\n scaleIndex,\n showStandards,\n onScaleChanged,\n excludeZero,\n showDescription,\n showLevelTagInput,\n showScorePointLabels,\n enableDragAndDrop,\n spellCheck,\n width,\n uploadSoundSupport,\n maxPointsEnabled,\n } = this.props || {};\n\n const { maxPoints, scorePointsLabels, traitLabel, traits } = scale || {};\n\n const {\n showDecreaseMaxPointsDialog,\n showDeleteScaleDialog,\n showDeleteTraitDialog,\n currentPosition,\n showRight,\n showLeft,\n showInfoDialog,\n infoDialogText,\n } = this.state;\n\n const scorePointsValues = [];\n const secondaryBlockWidth = parseInt(width) - DragHandleSpace - PrimaryBlockWidth || 320; // 320 is minWidth\n\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n return (\n <div\n key={`scale-${scaleIndex}`}\n className={classes.scaleWrapper}\n ref={(ref) => {\n this.scaleWrapper = ref;\n }}\n >\n <TraitsHeader\n setSecondaryBlockRef={(ref) => {\n if (ref) {\n this.secondaryBlockRef = ref;\n }\n }}\n key={'header-key'}\n traitLabel={traitLabel}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onScaleChange={(params) => onScaleChanged(scaleIndex, params)}\n onTraitLabelChange={(label) => onScaleChanged(scaleIndex, { traitLabel: label })}\n showStandards={showStandards}\n showDescription={showDescription}\n showLevelTagInput={showLevelTagInput}\n showScorePointLabels={showScorePointLabels}\n maxPoints={maxPoints}\n updateMaxPointsFieldValue={this.updateMaxPointsFieldValue}\n scaleIndex={scaleIndex}\n showDeleteScaleModal={this.showDeleteScaleModal}\n currentPosition={currentPosition}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n maxPointsEnabled={maxPointsEnabled}\n />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n trait={trait}\n traitLabel={traitLabel || 'Trait'}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onTraitRemoved={() => this.showDeleteTraitModal(index)}\n onTraitChanged={(trait) => this.onTraitChanged(index, trait)}\n onTraitDropped={this.onTraitDropped}\n showStandards={showStandards}\n showDescription={showDescription}\n currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n />\n ))}\n\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showLeft}\n onClick={this.decreasePosition}\n left={`${PrimaryBlockWidth}px`}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowBackIosIcon />\n </Arrow>\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showRight}\n onClick={this.increasePosition}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowForwardIosIcon />\n </Arrow>\n\n <MultiTraitButton onClick={this.onTraitAdded}>\n <div dangerouslySetInnerHTML={{ __html: `Add ${traitLabel || ' Trait'}` }} />\n </MultiTraitButton>\n\n <DecreaseMaxPoints\n open={!!showDecreaseMaxPointsDialog}\n deleteScorePoints={this.changeMaxPoints}\n cancel={this.hideDecreaseMaxPointsModal}\n />\n\n <DeleteScale\n open={!!showDeleteScaleDialog}\n scaleIndex={scaleIndex}\n deleteScale={this.deleteScale}\n cancel={this.hideDeleteScaleModal}\n />\n\n <DeleteTrait\n open={!!showDeleteTraitDialog}\n deleteTrait={this.onTraitRemoved}\n cancel={this.hideDeleteTraitModal}\n traitLabel={traitLabel.toLowerCase()}\n />\n <InfoDialog open={showInfoDialog} text={infoDialogText} onClose={() => this.set({ showInfoDialog: false })} />\n </div>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scale: PropTypes.shape({\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 width: PropTypes.string,\n excludeZero: PropTypes.bool,\n scaleIndex: PropTypes.number,\n onScaleChanged: PropTypes.func,\n onScaleRemoved: PropTypes.func,\n showStandards: PropTypes.bool,\n showLevelTagInput: PropTypes.bool,\n showDescription: PropTypes.bool,\n uploadSoundSupport: PropTypes.object,\n showScorePointLabels: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n};\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}
1
+ {"version":3,"sources":["../src/scale.jsx"],"names":["AdjustedBlockWidth","BlockWidth","styles","theme","scaleWrapper","display","flexDirection","wordBreak","position","marginBottom","spacing","unit","maxPoints","width","marginTop","trait","background","color","secondaryBackground","padding","Scale","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","currentPosition","showRight","showLeft","showInfoDialog","infoDialogText","newState","setState","target","props","scale","scaleIndex","onScaleChanged","scorePointsLabels","traits","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","i","push","forEach","index","scorePointsDescriptors","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","name","description","standards","Array","from","traitIndex","source","newIndex","oldIndex","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","prevProps","showDescription","nextProps","excludeZero","showStandards","classes","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","scorePointsValues","secondaryBlockWidth","DragHandleSpace","PrimaryBlockWidth","pointValue","ref","params","label","updateMaxPointsFieldValue","showDeleteScaleModal","map","showDeleteTraitModal","onTraitChanged","onTraitDropped","decreasePosition","increasePosition","onTraitAdded","__html","changeMaxPoints","deleteScale","onTraitRemoved","React","Component","propTypes","PropTypes","object","shape","number","arrayOf","string","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\n\nimport { withDragContext } from '@pie-lib/drag';\nimport { color } from '@pie-lib/render-ui';\n\nimport TraitsHeader from './traitsHeader';\nimport TraitTile from './trait';\nimport { Arrow, BlockWidth, DragHandleSpace, MultiTraitButton, PrimaryBlockWidth } from './common';\nimport { DecreaseMaxPoints, DeleteScale, DeleteTrait, InfoDialog } from './modals';\n\nconst AdjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n\nconst styles = (theme) => ({\n scaleWrapper: {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n position: 'relative',\n marginBottom: theme.spacing.unit * 2.5,\n },\n maxPoints: {\n width: '300px',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 4,\n },\n trait: {\n background: color.secondaryBackground(),\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n padding: theme.spacing.unit * 2,\n },\n});\n\nexport class Scale extends React.Component {\n state = {\n showDecreaseMaxPointsDialog: false,\n showDeleteScaleDialog: false,\n showDeleteTraitDialog: false,\n currentPosition: 0,\n showRight: null,\n showLeft: null,\n showInfoDialog: false,\n infoDialogText: '',\n };\n\n set = (newState) => this.setState(newState);\n\n componentDidMount() {\n if (this.state.showRight === null && this.secondaryBlockRef) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.scale.maxPoints !== this.props.scale.maxPoints || prevProps.showDescription !== this.props.showDescription) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.excludeZero !== this.props.excludeZero ||\n nextProps.showStandards !== this.props.showStandards ||\n nextProps.showDescription !== this.props.showDescription\n ) {\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n }\n }\n\n // Max Points\n updateMaxPointsFieldValue = ({ target }) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { maxPoints, scorePointsLabels, traits } = scale;\n\n const numberValue = parseInt(target.value, 10);\n\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n\n if (numberValue < maxPoints) {\n this.showDecreaseMaxPointsModal({ newMaxPoints: numberValue });\n } else {\n for (let i = 0; i <= numberValue; i++) {\n if (!scorePointsLabels[i]) {\n scorePointsLabels.push('');\n }\n\n traits.forEach((trait, index) => {\n if (!traits[index].scorePointsDescriptors[i]) {\n traits[index].scorePointsDescriptors.push('');\n }\n });\n }\n\n onScaleChanged(scaleIndex, { maxPoints: numberValue, scorePointsLabels, traits });\n }\n };\n\n showDecreaseMaxPointsModal = ({ newMaxPoints }) => this.set({ showDecreaseMaxPointsDialog: true, newMaxPoints });\n\n hideDecreaseMaxPointsModal = () => this.set({ showDecreaseMaxPointsDialog: false, newMaxPoints: undefined });\n\n changeMaxPoints = () => {\n const { newMaxPoints } = this.state || {};\n const { scaleIndex, onScaleChanged } = this.props || {};\n\n if (newMaxPoints) {\n onScaleChanged(scaleIndex, { maxPoints: newMaxPoints });\n }\n\n this.hideDecreaseMaxPointsModal();\n };\n\n // Delete Scale\n showDeleteScaleModal = () => this.set({ showDeleteScaleDialog: true });\n\n hideDeleteScaleModal = () => this.set({ showDeleteScaleDialog: false });\n\n deleteScale = () => {\n const { scaleIndex, onScaleRemoved } = this.props || {};\n\n this.hideDeleteScaleModal();\n\n onScaleRemoved(scaleIndex);\n };\n\n // Delete Trait\n showDeleteTraitModal = (traitToDeleteIndex) => this.set({ showDeleteTraitDialog: true, traitToDeleteIndex });\n\n hideDeleteTraitModal = () => this.set({ showDeleteTraitDialog: false, traitToDeleteIndex: undefined });\n\n onTraitRemoved = () => {\n const { traitToDeleteIndex } = this.state;\n const { scale, scaleIndex, onScaleChanged, minNoOfTraits } = this.props || {};\n let { traits, traitLabel } = scale || {};\n\n if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;\n\n if (traits.length === minNoOfTraits) {\n this.set({\n infoDialogText: `There can't be less than ${minNoOfTraits} ${(traitLabel || 'trait').toLowerCase()}s.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits = [...traits.slice(0, traitToDeleteIndex), ...traits.slice(traitToDeleteIndex + 1)];\n\n onScaleChanged(scaleIndex, { traits });\n\n this.hideDeleteTraitModal();\n };\n\n onTraitAdded = () => {\n const { scale, scaleIndex, onScaleChanged, maxNoOfTraits } = this.props || {};\n const { traits, scorePointsLabels } = scale || {};\n\n if (traits.length === maxNoOfTraits) {\n this.set({\n infoDialogText: `There can't be more than ${maxNoOfTraits} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits.push({\n name: '',\n description: '',\n standards: [],\n scorePointsDescriptors: Array.from({ length: scorePointsLabels.length }, () => ''),\n });\n\n onScaleChanged(scaleIndex, { traits });\n };\n\n onTraitChanged = (traitIndex, trait) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n\n if (traitIndex >= 0 && traitIndex < traits.length) {\n traits[traitIndex] = trait;\n\n onScaleChanged(scaleIndex, { traits });\n }\n };\n\n onTraitDropped = (source, newIndex) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n const { index: oldIndex } = source;\n const cup = traits[oldIndex];\n\n const remainingTraits = traits.filter((item, index) => index !== oldIndex);\n\n const newTraits = [...remainingTraits.slice(0, newIndex), cup, ...remainingTraits.slice(newIndex)];\n\n onScaleChanged(scaleIndex, { traits: newTraits });\n };\n\n decreasePosition = () => {\n const { currentPosition } = this.state;\n const decreasedPosition =\n currentPosition - (currentPosition === AdjustedBlockWidth / 2 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: decreasedPosition,\n showRight: decreasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: decreasedPosition > 0,\n });\n };\n\n increasePosition = () => {\n const { currentPosition } = this.state;\n const increasedPosition = currentPosition + (currentPosition === 0 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: increasedPosition,\n showRight: increasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: increasedPosition > 0,\n });\n };\n\n render() {\n const {\n classes,\n scale,\n scaleIndex,\n showStandards,\n onScaleChanged,\n excludeZero,\n showDescription,\n showLevelTagInput,\n showScorePointLabels,\n enableDragAndDrop,\n spellCheck,\n width,\n uploadSoundSupport,\n maxPointsEnabled,\n } = this.props || {};\n\n const { maxPoints, scorePointsLabels, traitLabel, traits } = scale || {};\n\n const {\n showDecreaseMaxPointsDialog,\n showDeleteScaleDialog,\n showDeleteTraitDialog,\n currentPosition,\n showRight,\n showLeft,\n showInfoDialog,\n infoDialogText,\n } = this.state;\n\n const scorePointsValues = [];\n const secondaryBlockWidth = parseInt(width) - DragHandleSpace - PrimaryBlockWidth || 320; // 320 is minWidth\n\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n return (\n <div\n key={`scale-${scaleIndex}`}\n className={classes.scaleWrapper}\n ref={(ref) => {\n this.scaleWrapper = ref;\n }}\n >\n <TraitsHeader\n setSecondaryBlockRef={(ref) => {\n if (ref) {\n this.secondaryBlockRef = ref;\n }\n }}\n key={'header-key'}\n traitLabel={traitLabel}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onScaleChange={(params) => onScaleChanged(scaleIndex, params)}\n onTraitLabelChange={(label) => onScaleChanged(scaleIndex, { traitLabel: label })}\n showStandards={showStandards}\n showDescription={showDescription}\n showLevelTagInput={showLevelTagInput}\n showScorePointLabels={showScorePointLabels}\n maxPoints={maxPoints}\n updateMaxPointsFieldValue={this.updateMaxPointsFieldValue}\n scaleIndex={scaleIndex}\n showDeleteScaleModal={this.showDeleteScaleModal}\n currentPosition={currentPosition}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n maxPointsEnabled={maxPointsEnabled}\n />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n trait={trait}\n traitLabel={traitLabel || 'Trait'}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onTraitRemoved={() => this.showDeleteTraitModal(index)}\n onTraitChanged={(trait) => this.onTraitChanged(index, trait)}\n onTraitDropped={this.onTraitDropped}\n showStandards={showStandards}\n showDescription={showDescription}\n currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n />\n ))}\n\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showLeft}\n onClick={this.decreasePosition}\n left={`${PrimaryBlockWidth}px`}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowBackIosIcon />\n </Arrow>\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showRight}\n onClick={this.increasePosition}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowForwardIosIcon />\n </Arrow>\n\n <MultiTraitButton onClick={this.onTraitAdded}>\n <div dangerouslySetInnerHTML={{ __html: `Add ${traitLabel || ' Trait'}` }} />\n </MultiTraitButton>\n\n <DecreaseMaxPoints\n open={!!showDecreaseMaxPointsDialog}\n deleteScorePoints={this.changeMaxPoints}\n cancel={this.hideDecreaseMaxPointsModal}\n />\n\n <DeleteScale\n open={!!showDeleteScaleDialog}\n scaleIndex={scaleIndex}\n deleteScale={this.deleteScale}\n cancel={this.hideDeleteScaleModal}\n />\n\n <DeleteTrait\n open={!!showDeleteTraitDialog}\n deleteTrait={this.onTraitRemoved}\n cancel={this.hideDeleteTraitModal}\n traitLabel={traitLabel.toLowerCase()}\n />\n <InfoDialog open={showInfoDialog} text={infoDialogText} onClose={() => this.set({ showInfoDialog: false })} />\n </div>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scale: PropTypes.shape({\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 width: PropTypes.string,\n excludeZero: PropTypes.bool,\n scaleIndex: PropTypes.number,\n onScaleChanged: PropTypes.func,\n onScaleRemoved: PropTypes.func,\n showStandards: PropTypes.bool,\n showLevelTagInput: PropTypes.bool,\n showDescription: PropTypes.bool,\n uploadSoundSupport: PropTypes.object,\n showScorePointLabels: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n};\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/multi-trait-rubric",
3
3
  "repository": "pie-framework/pie-elements",
4
- "version": "2.10.2-next.20+3fa630eb9",
4
+ "version": "2.10.2-next.29+62428efb3",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -15,7 +15,7 @@
15
15
  "react": "^16.8.1",
16
16
  "react-dom": "^16.8.1"
17
17
  },
18
- "gitHead": "3fa630eb96b116cb685ab58fbf216fb572d1c333",
18
+ "gitHead": "62428efb3e6dea0dade62bbc9ad3294cd64fa08d",
19
19
  "scripts": {
20
20
  "postpublish": "../../scripts/postpublish"
21
21
  },