@pie-element/multi-trait-rubric 3.8.2-next.29 → 3.8.2-next.48

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.
@@ -253,6 +253,8 @@ var ScorePoint = (0, _styles.withStyles)(function (theme) {
253
253
  alignToRight = _ref6.alignToRight,
254
254
  spellCheck = _ref6.spellCheck,
255
255
  uploadSoundSupport = _ref6.uploadSoundSupport,
256
+ _ref6$imageSupport = _ref6.imageSupport,
257
+ imageSupport = _ref6$imageSupport === void 0 ? {} : _ref6$imageSupport,
256
258
  _ref6$mathMlOptions = _ref6.mathMlOptions,
257
259
  mathMlOptions = _ref6$mathMlOptions === void 0 ? {} : _ref6$mathMlOptions;
258
260
  var scoreBoxClasses = showScorePointLabels ? classes.scorePointBox : "".concat(classes.scorePointBox, " ").concat(classes.scorePointBoxDisabled);
@@ -274,16 +276,17 @@ var ScorePoint = (0, _styles.withStyles)(function (theme) {
274
276
  pluginProps: pluginProps,
275
277
  activePlugins: _utils.filteredDefaultPlugins,
276
278
  spellCheck: spellCheck,
277
- toolbarOpts: alignToRight && {
279
+ toolbarOpts: alignToRight ? {
278
280
  alignment: 'right'
279
- },
281
+ } : {},
280
282
  uploadSoundSupport: uploadSoundSupport,
281
283
  languageCharactersProps: [{
282
284
  language: 'spanish'
283
285
  }, {
284
286
  language: 'special'
285
287
  }],
286
- mathMlOptions: mathMlOptions
288
+ mathMlOptions: mathMlOptions,
289
+ imageSupport: imageSupport
287
290
  }) : null));
288
291
  });
289
292
  exports.ScorePoint = ScorePoint;
@@ -363,7 +366,9 @@ var SimpleInput = (0, _styles.withStyles)(function (theme) {
363
366
  spellCheck = _ref8.spellCheck,
364
367
  uploadSoundSupport = _ref8.uploadSoundSupport,
365
368
  _ref8$mathMlOptions = _ref8.mathMlOptions,
366
- mathMlOptions = _ref8$mathMlOptions === void 0 ? {} : _ref8$mathMlOptions;
369
+ mathMlOptions = _ref8$mathMlOptions === void 0 ? {} : _ref8$mathMlOptions,
370
+ _ref8$imageSupport = _ref8.imageSupport,
371
+ imageSupport = _ref8$imageSupport === void 0 ? {} : _ref8$imageSupport;
367
372
  return /*#__PURE__*/_react["default"].createElement("div", {
368
373
  className: classes.simpleInput
369
374
  }, label && /*#__PURE__*/_react["default"].createElement("div", null, label), /*#__PURE__*/_react["default"].createElement(_editableHtml.EditableHtml, {
@@ -383,7 +388,8 @@ var SimpleInput = (0, _styles.withStyles)(function (theme) {
383
388
  }, {
384
389
  language: 'special'
385
390
  }],
386
- mathMlOptions: mathMlOptions
391
+ mathMlOptions: mathMlOptions,
392
+ imageSupport: imageSupport
387
393
  }));
388
394
  });
389
395
  exports.SimpleInput = SimpleInput;
@@ -422,6 +428,8 @@ var UnderlinedInput = (0, _styles.withStyles)(function (theme) {
422
428
  placeholder = _ref9.placeholder,
423
429
  spellCheck = _ref9.spellCheck,
424
430
  uploadSoundSupport = _ref9.uploadSoundSupport,
431
+ _ref9$imageSupport = _ref9.imageSupport,
432
+ imageSupport = _ref9$imageSupport === void 0 ? {} : _ref9$imageSupport,
425
433
  _ref9$mathMlOptions = _ref9.mathMlOptions,
426
434
  mathMlOptions = _ref9$mathMlOptions === void 0 ? {} : _ref9$mathMlOptions;
427
435
  return /*#__PURE__*/_react["default"].createElement("div", {
@@ -444,7 +452,8 @@ var UnderlinedInput = (0, _styles.withStyles)(function (theme) {
444
452
  }, {
445
453
  language: 'special'
446
454
  }],
447
- mathMlOptions: mathMlOptions
455
+ mathMlOptions: mathMlOptions,
456
+ imageSupport: imageSupport
448
457
  }));
449
458
  });
450
459
  exports.UnderlinedInput = UnderlinedInput;
@@ -470,7 +479,9 @@ var ExpandedInput = (0, _styles.withStyles)({
470
479
  spellCheck = _ref10.spellCheck,
471
480
  uploadSoundSupport = _ref10.uploadSoundSupport,
472
481
  _ref10$mathMlOptions = _ref10.mathMlOptions,
473
- mathMlOptions = _ref10$mathMlOptions === void 0 ? {} : _ref10$mathMlOptions;
482
+ mathMlOptions = _ref10$mathMlOptions === void 0 ? {} : _ref10$mathMlOptions,
483
+ _ref10$imageSupport = _ref10.imageSupport,
484
+ imageSupport = _ref10$imageSupport === void 0 ? {} : _ref10$imageSupport;
474
485
  return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_editableHtml.EditableHtml, {
475
486
  className: classes.prompt,
476
487
  classes: {
@@ -481,9 +492,9 @@ var ExpandedInput = (0, _styles.withStyles)({
481
492
  onChange: onChange,
482
493
  placeholder: placeholder,
483
494
  pluginProps: pluginProps,
484
- toolbarOpts: alignToRight && {
495
+ toolbarOpts: alignToRight ? {
485
496
  alignment: 'right'
486
- },
497
+ } : {},
487
498
  spellCheck: spellCheck,
488
499
  uploadSoundSupport: uploadSoundSupport,
489
500
  languageCharactersProps: [{
@@ -492,7 +503,8 @@ var ExpandedInput = (0, _styles.withStyles)({
492
503
  language: 'special'
493
504
  }],
494
505
  autoWidthToolbar: true,
495
- mathMlOptions: mathMlOptions
506
+ mathMlOptions: mathMlOptions,
507
+ imageSupport: imageSupport
496
508
  }));
497
509
  });
498
510
  exports.ExpandedInput = ExpandedInput;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common.jsx"],"names":["BlockWidth","PrimaryBlockWidth","DragHandleSpace","HeaderHeight","HeaderHeightLarge","InputHeight","greyBorder","grey","Padding","MultiTraitButton","theme","button","fontSize","typography","textAlign","display","flexDirection","alignItems","padding","spacing","unit","width","background","color","secondaryBackground","borderRadius","justifyContent","text","cursor","classes","children","onClick","PrimaryBlock","primaryBlock","minWidth","position","boxSizing","className","Block","block","marginBlockStart","paddingInlineStart","SecondaryBlock","secondaryBlock","overflowX","paddingBottom","setRef","Row","row","height","scorePointsStyles","scorePointBoxWrapper","scorePointBox","border","scorePointBoxDisabled","subLabel","editableLabel","flex","borderLeft","slateEditor","fontFamily","errorText","palette","error","main","ScorePoint","scorePointsValue","scoreDescriptor","pluginProps","onChange","showScorePointLabels","alignToRight","spellCheck","uploadSoundSupport","mathMlOptions","scoreBoxClasses","filteredDefaultPlugins","alignment","language","inputStyles","root","common","white","marginTop","marginBottom","input","BootstrapInput","InputBase","createMaxScoreOptions","maxMaxPoints","Array","from","length","_","i","MaxPointsPicker","maxPoints","map","maxScore","SimpleInput","simpleInput","margin","editableLevel","markup","label","UnderlinedInput","underlinedInputWrapper","borderBottom","placeholder","ExpandedInput","prompt","ScaleSettings","scaleSettings","Arrow","arrow","zIndex","right","innerGrey","bottom","show","left","showLevelTagInput","undefined"],"mappings":"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","sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport {EditableHtml} from '@pie-lib/pie-toolbox/editable-html';\nimport FormControl from '@material-ui/core/FormControl';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport InputBase from '@material-ui/core/InputBase';\nimport { color } from '@pie-lib/pie-toolbox/render-ui';\nimport grey from '@material-ui/core/colors/grey';\nimport { filteredDefaultPlugins } from './utils';\n\nexport const BlockWidth = 200;\nexport const PrimaryBlockWidth = 200;\nexport const DragHandleSpace = 32;\nexport const HeaderHeight = '100px';\nexport const HeaderHeightLarge = '160px';\nconst InputHeight = '120px';\nconst greyBorder = `solid 1px ${grey[400]}`;\nconst Padding = '8px 4px';\n\nexport const MultiTraitButton = withStyles((theme) => ({\n button: {\n fontSize: theme.typography.fontSize + 2,\n textAlign: 'right',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n padding: `${theme.spacing.unit * 1.5}px ${theme.spacing.unit * 2}px`,\n width: '114px',\n background: color.secondaryBackground(),\n borderRadius: '4px',\n justifyContent: 'space-around',\n color: color.text(),\n cursor: 'pointer',\n },\n}))(({ classes, children, onClick }) => (\n <div className={classes.button} onClick={onClick}>\n <strong>+</strong>\n <div>{children}</div>\n </div>\n));\n\nexport const PrimaryBlock = withStyles({\n primaryBlock: {\n width: `${PrimaryBlockWidth}px`,\n minWidth: `${PrimaryBlockWidth}px`,\n position: 'relative',\n padding: '0 10px',\n boxSizing: 'border-box',\n },\n})(({ classes, children, className }) => <div className={classnames(classes.primaryBlock, className)}>{children}</div>);\n\nexport const Block = withStyles((theme) => ({\n block: {\n width: `${BlockWidth}px`,\n minWidth: `${BlockWidth}px`,\n '& ul, ol': {\n marginBlockStart: 0,\n paddingInlineStart: theme.spacing.unit * 2,\n },\n },\n}))(({ classes, children }) => <div className={classes.block}>{children}</div>);\n\nexport const SecondaryBlock = withStyles({\n secondaryBlock: {\n display: 'flex',\n overflowX: 'hidden',\n alignItems: 'flex-end',\n // this is needed to show the editor toolbar!!!\n paddingBottom: '30px',\n },\n})(({ classes, children, setRef, width }) => (\n <div className={classes.secondaryBlock} style={{ width: width }} ref={setRef}>\n {children}\n </div>\n));\n\nexport const Row = withStyles({\n row: {\n display: 'flex',\n },\n})(({ classes, children, className, height }) => (\n <div\n className={classnames(classes.row, className)}\n style={{\n height,\n }}\n >\n {children}\n </div>\n));\n\nconst scorePointsStyles = (theme) => ({\n scorePointBoxWrapper: {\n padding: '0 10px',\n },\n scorePointBox: {\n display: 'flex',\n borderRadius: '4px',\n background: 'white',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n border: greyBorder,\n },\n scorePointBoxDisabled: {\n background: 'none',\n justifyContent: 'center',\n border: '0',\n },\n subLabel: {\n width: '24px',\n textAlign: 'center',\n },\n editableLabel: {\n textAlign: 'left',\n flex: 1,\n border: 'none',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderLeft: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n})\n\nexport const ScorePoint = withStyles((theme) => ({\n scorePointBoxWrapper: {\n padding: '0 10px',\n },\n scorePointBox: {\n display: 'flex',\n borderRadius: '4px',\n background: 'white',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n border: greyBorder,\n },\n scorePointBoxDisabled: {\n background: 'none',\n justifyContent: 'center',\n border: '0',\n },\n subLabel: {\n width: '24px',\n textAlign: 'center',\n },\n editableLabel: {\n textAlign: 'left',\n flex: 1,\n border: 'none',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderLeft: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n}))(\n ({\n classes, error = '',\n scorePointsValue,\n scoreDescriptor,\n pluginProps,\n onChange,\n showScorePointLabels,\n alignToRight,\n spellCheck,\n uploadSoundSupport,\n mathMlOptions = {},\n }) => {\n const scoreBoxClasses = showScorePointLabels\n ? classes.scorePointBox\n : `${classes.scorePointBox} ${classes.scorePointBoxDisabled}`;\n\n return (\n <div className={classes.scorePointBoxWrapper}>\n <div className={scoreBoxClasses}>\n <div className={classes.subLabel}>{scorePointsValue}</div>\n\n {showScorePointLabels ? (\n <EditableHtml\n className={classes.editableLabel}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={scoreDescriptor}\n placeholder=\" Enter Label\"\n onChange={onChange}\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n toolbarOpts={alignToRight && { alignment: 'right' }}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n ) : null}\n </div>\n </div>\n );\n },\n);\n\nconst inputStyles = (theme) => ({\n root: {\n background: theme.palette.common.white,\n 'label + &': {\n marginTop: theme.spacing.unit * 2.5,\n marginBottom: 0,\n width: '80px',\n },\n },\n input: {\n borderRadius: '4px',\n position: 'relative',\n border: greyBorder,\n fontSize: theme.typography.fontSize,\n fontFamily: 'Cerebri Sans',\n padding: `${theme.spacing.unit}px ${theme.spacing.unit * 1.5}px`,\n\n '&:focus': {\n borderRadius: '4px',\n },\n },\n});\n\nconst BootstrapInput = withStyles(inputStyles)(InputBase);\n\nconst createMaxScoreOptions = (maxMaxPoints) => Array.from({ length: maxMaxPoints }, (_, i) => i + 1)\n\nexport const MaxPointsPicker = withStyles({})(({ maxPoints, onChange, maxMaxPoints }) => (\n <FormControl>\n <InputLabel>Max Points</InputLabel>\n <Select value={maxPoints} onChange={onChange} input={<BootstrapInput/>}>\n {createMaxScoreOptions(maxMaxPoints).map((maxScore) => (\n <MenuItem key={`menu-item-${maxScore}`} value={maxScore}>\n {maxScore}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n));\n\nexport const SimpleInput = withStyles((theme) => ({\n simpleInput: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: `${theme.spacing.unit * 1.5}px 0`,\n },\n editableLevel: {\n background: theme.palette.common.white,\n width: '60%',\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n}))(({ classes, markup, onChange, pluginProps, label, spellCheck, uploadSoundSupport, mathMlOptions = {} }) => (\n <div className={classes.simpleInput}>\n {label && <div>{label}</div>}\n\n <EditableHtml\n className={classes.editableLevel}\n classes={{ slateEditor: classes.slateEditor }}\n markup={markup}\n onChange={onChange}\n placeholder=\"Trait Label\"\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </div>\n));\n\nexport const UnderlinedInput = withStyles((theme) => ({\n underlinedInputWrapper: {\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n editableLevel: {\n background: theme.palette.common.white,\n width: '100%',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderBottom: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n}))(\n ({\n classes,\n error,\n markup,\n onChange,\n pluginProps,\n label,\n placeholder,\n spellCheck,\n uploadSoundSupport,\n mathMlOptions = {},\n }) => (\n <div className={classes.underlinedInputWrapper}>\n {label && <div>{label}</div>}\n\n <EditableHtml\n className={classes.editableLevel}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={markup}\n onChange={onChange}\n placeholder={placeholder}\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </div>\n ),\n);\n\nexport const ExpandedInput = withStyles({\n slateEditor: {\n fontFamily: 'Cerebri',\n height: InputHeight,\n padding: 0,\n },\n prompt: {\n border: 'none',\n margin: '10px',\n marginTop: 0,\n },\n})(\n ({\n classes, error,\n markup,\n onChange,\n pluginProps,\n placeholder,\n alignToRight,\n spellCheck,\n uploadSoundSupport,\n mathMlOptions = {},\n }) => (\n <div>\n <EditableHtml\n className={classes.prompt}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={markup}\n onChange={onChange}\n placeholder={placeholder}\n pluginProps={pluginProps}\n toolbarOpts={alignToRight && { alignment: 'right' }}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n autoWidthToolbar\n mathMlOptions={mathMlOptions}\n />\n </div>\n ),\n);\n\nexport const ScaleSettings = withStyles({\n scaleSettings: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'flex-end',\n },\n})(({ classes, children }) => <div className={classes.scaleSettings}>{children}</div>);\n\nexport const Arrow = withStyles((theme) => ({\n arrow: {\n position: 'absolute',\n zIndex: 10,\n cursor: 'pointer',\n right: 0,\n alignItems: 'flex-start',\n justifyContent: 'center',\n background: `linear-gradient(to left, ${theme.palette.common.white}, ${color.background()})`,\n boxSizing: 'border-box',\n },\n innerGrey: {\n position: 'absolute',\n zIndex: 11,\n cursor: 'pointer',\n right: 0,\n alignItems: 'flex-start',\n justifyContent: 'center',\n background: `linear-gradient(to left, ${theme.palette.common.white}, ${color.background()})`,\n boxSizing: 'border-box',\n\n '& svg': {\n position: 'absolute',\n bottom: '-24px',\n },\n },\n}))(({ classes, children, className, show, width, onClick, left, showLevelTagInput }) => (\n <div\n className={classnames(classes.arrow, className)}\n style={{\n height: '-webkit-fill-available',\n display: show ? 'flex' : 'none',\n width: width,\n left: left,\n background: left ? `linear-gradient(to right, white, ${color.background()})` : undefined,\n }}\n onClick={onClick}\n >\n <div\n className={classnames(classes.innerGrey, className)}\n style={{\n display: show ? 'flex' : 'none',\n width: width,\n height: showLevelTagInput ? HeaderHeightLarge : HeaderHeight,\n left: 0,\n background: left\n ? `linear-gradient(to right, ${color.secondaryBackground()}, ${color.background()})`\n : undefined,\n }}\n onClick={onClick}\n >\n {children}\n </div>\n </div>\n));\n"],"file":"common.js"}
1
+ {"version":3,"sources":["../src/common.jsx"],"names":["BlockWidth","PrimaryBlockWidth","DragHandleSpace","HeaderHeight","HeaderHeightLarge","InputHeight","greyBorder","grey","Padding","MultiTraitButton","theme","button","fontSize","typography","textAlign","display","flexDirection","alignItems","padding","spacing","unit","width","background","color","secondaryBackground","borderRadius","justifyContent","text","cursor","classes","children","onClick","PrimaryBlock","primaryBlock","minWidth","position","boxSizing","className","Block","block","marginBlockStart","paddingInlineStart","SecondaryBlock","secondaryBlock","overflowX","paddingBottom","setRef","Row","row","height","scorePointsStyles","scorePointBoxWrapper","scorePointBox","border","scorePointBoxDisabled","subLabel","editableLabel","flex","borderLeft","slateEditor","fontFamily","errorText","palette","error","main","ScorePoint","scorePointsValue","scoreDescriptor","pluginProps","onChange","showScorePointLabels","alignToRight","spellCheck","uploadSoundSupport","imageSupport","mathMlOptions","scoreBoxClasses","filteredDefaultPlugins","alignment","language","inputStyles","root","common","white","marginTop","marginBottom","input","BootstrapInput","InputBase","createMaxScoreOptions","maxMaxPoints","Array","from","length","_","i","MaxPointsPicker","maxPoints","map","maxScore","SimpleInput","simpleInput","margin","editableLevel","markup","label","UnderlinedInput","underlinedInputWrapper","borderBottom","placeholder","ExpandedInput","prompt","ScaleSettings","scaleSettings","Arrow","arrow","zIndex","right","innerGrey","bottom","show","left","showLevelTagInput","undefined"],"mappings":"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","sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport {EditableHtml} from '@pie-lib/pie-toolbox/editable-html';\nimport FormControl from '@material-ui/core/FormControl';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport InputBase from '@material-ui/core/InputBase';\nimport { color } from '@pie-lib/pie-toolbox/render-ui';\nimport grey from '@material-ui/core/colors/grey';\nimport { filteredDefaultPlugins } from './utils';\n\nexport const BlockWidth = 200;\nexport const PrimaryBlockWidth = 200;\nexport const DragHandleSpace = 32;\nexport const HeaderHeight = '100px';\nexport const HeaderHeightLarge = '160px';\nconst InputHeight = '120px';\nconst greyBorder = `solid 1px ${grey[400]}`;\nconst Padding = '8px 4px';\n\nexport const MultiTraitButton = withStyles((theme) => ({\n button: {\n fontSize: theme.typography.fontSize + 2,\n textAlign: 'right',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'flex-start',\n padding: `${theme.spacing.unit * 1.5}px ${theme.spacing.unit * 2}px`,\n width: '114px',\n background: color.secondaryBackground(),\n borderRadius: '4px',\n justifyContent: 'space-around',\n color: color.text(),\n cursor: 'pointer',\n },\n}))(({ classes, children, onClick }) => (\n <div className={classes.button} onClick={onClick}>\n <strong>+</strong>\n <div>{children}</div>\n </div>\n));\n\nexport const PrimaryBlock = withStyles({\n primaryBlock: {\n width: `${PrimaryBlockWidth}px`,\n minWidth: `${PrimaryBlockWidth}px`,\n position: 'relative',\n padding: '0 10px',\n boxSizing: 'border-box',\n },\n})(({ classes, children, className }) => <div className={classnames(classes.primaryBlock, className)}>{children}</div>);\n\nexport const Block = withStyles((theme) => ({\n block: {\n width: `${BlockWidth}px`,\n minWidth: `${BlockWidth}px`,\n '& ul, ol': {\n marginBlockStart: 0,\n paddingInlineStart: theme.spacing.unit * 2,\n },\n },\n}))(({ classes, children }) => <div className={classes.block}>{children}</div>);\n\nexport const SecondaryBlock = withStyles({\n secondaryBlock: {\n display: 'flex',\n overflowX: 'hidden',\n alignItems: 'flex-end',\n // this is needed to show the editor toolbar!!!\n paddingBottom: '30px',\n },\n})(({ classes, children, setRef, width }) => (\n <div className={classes.secondaryBlock} style={{ width: width }} ref={setRef}>\n {children}\n </div>\n));\n\nexport const Row = withStyles({\n row: {\n display: 'flex',\n },\n})(({ classes, children, className, height }) => (\n <div\n className={classnames(classes.row, className)}\n style={{\n height,\n }}\n >\n {children}\n </div>\n));\n\nconst scorePointsStyles = (theme) => ({\n scorePointBoxWrapper: {\n padding: '0 10px',\n },\n scorePointBox: {\n display: 'flex',\n borderRadius: '4px',\n background: 'white',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n border: greyBorder,\n },\n scorePointBoxDisabled: {\n background: 'none',\n justifyContent: 'center',\n border: '0',\n },\n subLabel: {\n width: '24px',\n textAlign: 'center',\n },\n editableLabel: {\n textAlign: 'left',\n flex: 1,\n border: 'none',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderLeft: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n})\n\nexport const ScorePoint = withStyles((theme) => ({\n scorePointBoxWrapper: {\n padding: '0 10px',\n },\n scorePointBox: {\n display: 'flex',\n borderRadius: '4px',\n background: 'white',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n border: greyBorder,\n },\n scorePointBoxDisabled: {\n background: 'none',\n justifyContent: 'center',\n border: '0',\n },\n subLabel: {\n width: '24px',\n textAlign: 'center',\n },\n editableLabel: {\n textAlign: 'left',\n flex: 1,\n border: 'none',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderLeft: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n}))(\n ({\n classes, error = '',\n scorePointsValue,\n scoreDescriptor,\n pluginProps,\n onChange,\n showScorePointLabels,\n alignToRight,\n spellCheck,\n uploadSoundSupport,\n imageSupport = {},\n mathMlOptions = {},\n }) => {\n const scoreBoxClasses = showScorePointLabels\n ? classes.scorePointBox\n : `${classes.scorePointBox} ${classes.scorePointBoxDisabled}`;\n\n return (\n <div className={classes.scorePointBoxWrapper}>\n <div className={scoreBoxClasses}>\n <div className={classes.subLabel}>{scorePointsValue}</div>\n\n {showScorePointLabels ? (\n <EditableHtml\n className={classes.editableLabel}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={scoreDescriptor}\n placeholder=\" Enter Label\"\n onChange={onChange}\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n toolbarOpts={alignToRight ? { alignment: 'right' } : {}}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n ) : null}\n </div>\n </div>\n );\n },\n);\n\nconst inputStyles = (theme) => ({\n root: {\n background: theme.palette.common.white,\n 'label + &': {\n marginTop: theme.spacing.unit * 2.5,\n marginBottom: 0,\n width: '80px',\n },\n },\n input: {\n borderRadius: '4px',\n position: 'relative',\n border: greyBorder,\n fontSize: theme.typography.fontSize,\n fontFamily: 'Cerebri Sans',\n padding: `${theme.spacing.unit}px ${theme.spacing.unit * 1.5}px`,\n\n '&:focus': {\n borderRadius: '4px',\n },\n },\n});\n\nconst BootstrapInput = withStyles(inputStyles)(InputBase);\n\nconst createMaxScoreOptions = (maxMaxPoints) => Array.from({ length: maxMaxPoints }, (_, i) => i + 1)\n\nexport const MaxPointsPicker = withStyles({})(({ maxPoints, onChange, maxMaxPoints }) => (\n <FormControl>\n <InputLabel>Max Points</InputLabel>\n <Select value={maxPoints} onChange={onChange} input={<BootstrapInput/>}>\n {createMaxScoreOptions(maxMaxPoints).map((maxScore) => (\n <MenuItem key={`menu-item-${maxScore}`} value={maxScore}>\n {maxScore}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n));\n\nexport const SimpleInput = withStyles((theme) => ({\n simpleInput: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: `${theme.spacing.unit * 1.5}px 0`,\n },\n editableLevel: {\n background: theme.palette.common.white,\n width: '60%',\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n}))(({ classes, markup, onChange, pluginProps, label, spellCheck, uploadSoundSupport, mathMlOptions = {}, imageSupport={} }) => (\n <div className={classes.simpleInput}>\n {label && <div>{label}</div>}\n\n <EditableHtml\n className={classes.editableLevel}\n classes={{ slateEditor: classes.slateEditor }}\n markup={markup}\n onChange={onChange}\n placeholder=\"Trait Label\"\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n </div>\n));\n\nexport const UnderlinedInput = withStyles((theme) => ({\n underlinedInputWrapper: {\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n editableLevel: {\n background: theme.palette.common.white,\n width: '100%',\n\n '& div': {\n padding: 0,\n },\n\n '& > div': {\n border: 'none',\n borderBottom: greyBorder,\n borderRadius: 0,\n padding: Padding,\n },\n },\n slateEditor: {\n fontFamily: 'Cerebri',\n },\n}))(\n ({\n classes,\n error,\n markup,\n onChange,\n pluginProps,\n label,\n placeholder,\n spellCheck,\n uploadSoundSupport,\n imageSupport = {},\n mathMlOptions = {},\n }) => (\n <div className={classes.underlinedInputWrapper}>\n {label && <div>{label}</div>}\n\n <EditableHtml\n className={classes.editableLevel}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={markup}\n onChange={onChange}\n placeholder={placeholder}\n pluginProps={pluginProps}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n </div>\n ),\n);\n\nexport const ExpandedInput = withStyles({\n slateEditor: {\n fontFamily: 'Cerebri',\n height: InputHeight,\n padding: 0,\n },\n prompt: {\n border: 'none',\n margin: '10px',\n marginTop: 0,\n },\n})(\n ({\n classes, error,\n markup,\n onChange,\n pluginProps,\n placeholder,\n alignToRight,\n spellCheck,\n uploadSoundSupport,\n mathMlOptions = {},\n imageSupport = {},\n }) => (\n <div>\n <EditableHtml\n className={classes.prompt}\n classes={{ slateEditor: classes.slateEditor }}\n error={error}\n markup={markup}\n onChange={onChange}\n placeholder={placeholder}\n pluginProps={pluginProps}\n toolbarOpts={alignToRight ? { alignment: 'right' } : {}}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n autoWidthToolbar\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n </div>\n ),\n);\n\nexport const ScaleSettings = withStyles({\n scaleSettings: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'flex-end',\n },\n})(({ classes, children }) => <div className={classes.scaleSettings}>{children}</div>);\n\nexport const Arrow = withStyles((theme) => ({\n arrow: {\n position: 'absolute',\n zIndex: 10,\n cursor: 'pointer',\n right: 0,\n alignItems: 'flex-start',\n justifyContent: 'center',\n background: `linear-gradient(to left, ${theme.palette.common.white}, ${color.background()})`,\n boxSizing: 'border-box',\n },\n innerGrey: {\n position: 'absolute',\n zIndex: 11,\n cursor: 'pointer',\n right: 0,\n alignItems: 'flex-start',\n justifyContent: 'center',\n background: `linear-gradient(to left, ${theme.palette.common.white}, ${color.background()})`,\n boxSizing: 'border-box',\n\n '& svg': {\n position: 'absolute',\n bottom: '-24px',\n },\n },\n}))(({ classes, children, className, show, width, onClick, left, showLevelTagInput }) => (\n <div\n className={classnames(classes.arrow, className)}\n style={{\n height: '-webkit-fill-available',\n display: show ? 'flex' : 'none',\n width: width,\n left: left,\n background: left ? `linear-gradient(to right, white, ${color.background()})` : undefined,\n }}\n onClick={onClick}\n >\n <div\n className={classnames(classes.innerGrey, className)}\n style={{\n display: show ? 'flex' : 'none',\n width: width,\n height: showLevelTagInput ? HeaderHeightLarge : HeaderHeight,\n left: 0,\n background: left\n ? `linear-gradient(to right, ${color.secondaryBackground()}, ${color.background()})`\n : undefined,\n }}\n onClick={onClick}\n >\n {children}\n </div>\n </div>\n));\n"],"file":"common.js"}
@@ -40,7 +40,7 @@ var _default = {
40
40
  disabled: false
41
41
  },
42
42
  image: {
43
- disabled: true
43
+ disabled: false
44
44
  }
45
45
  }
46
46
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/defaults.js"],"names":["model","visibleToStudent","halfScoring","pointLabels","description","standards","scales","excludeZero","maxPointsEnabled","addScaleEnabled","configuration","baseInputConfiguration","audio","disabled","video","image","expandedInput","inputConfiguration","math","labelInput","excludeZeroDialogBoxContent","title","text","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","settingsPanelDisabled","spellCheck","label","settings","enabled","showExcludeZero","showScorePointLabels","showDescription","showVisibleToStudent","showHalfScoring","showStandards","showLevelTagInput","dragAndDrop","showMaxPoint","addScale","minNoOfTraits","maxNoOfTraits","minNoOfScales","maxNoOfScales","defaultTraitLabel","mathMlOptions","mmlOutput","mmlEditing","maxMaxPoints"],"mappings":"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","sourcesContent":["export default {\n model: {\n visibleToStudent: true,\n halfScoring: false,\n pointLabels: true,\n description: false,\n standards: false,\n scales: [],\n excludeZero: false,\n maxPointsEnabled: true,\n addScaleEnabled: true,\n },\n configuration: {\n baseInputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n expandedInput: {\n inputConfiguration: {\n math: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: true },\n },\n },\n labelInput: {\n inputConfiguration: {\n math: { disabled: true },\n audio: { disabled: true },\n video: { disabled: true },\n image: { disabled: true },\n },\n },\n excludeZeroDialogBoxContent: {\n title: 'Exclude 0 (Zero) from Score Point Values.',\n text: `<div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>`,\n },\n includeZeroDialogBoxContent: {\n title: 'Include 0 (Zero) in Score Point Values.',\n text: `<div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>`,\n },\n deleteScaleDialogBoxContent: {\n title: 'Delete Scale',\n text: 'Are you sure you want to delete this scale?',\n },\n maxPointsDialogBoxContent: {\n title: 'Decreasing Max Points.',\n text: ` You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted.`,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n showExcludeZero: {\n settings: true,\n label: 'Exclude Zero',\n },\n showScorePointLabels: {\n settings: true,\n label: 'Show Score Point Labels',\n },\n showDescription: {\n settings: true,\n label: 'Show Description',\n },\n showVisibleToStudent: {\n settings: true,\n label: 'Visible to Student',\n },\n showHalfScoring: {\n settings: true,\n label: 'Half Scoring',\n },\n // commenting this in order to use the dynamic width if the width was not set by the client (PD-3203)\n // width: '900px',\n // these should not be set to true (should not be used) for now\n showStandards: {\n settings: false,\n label: 'Show Standards',\n },\n showLevelTagInput: {\n settings: false,\n label: 'Show Level Tag Input',\n enabled: false,\n },\n dragAndDrop: {\n settings: true,\n label: 'Enable Drag and Drop',\n enabled: false,\n },\n showMaxPoint: {\n settings: true,\n label: 'Show Max Points Dropdown',\n },\n addScale: {\n settings: true,\n label: 'Add Scale Available',\n },\n minNoOfTraits: 1,\n maxNoOfTraits: 10,\n minNoOfScales: 1,\n maxNoOfScales: 10,\n defaultTraitLabel: 'Trait',\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n maxMaxPoints: 10,\n },\n};\n"],"file":"defaults.js"}
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["model","visibleToStudent","halfScoring","pointLabels","description","standards","scales","excludeZero","maxPointsEnabled","addScaleEnabled","configuration","baseInputConfiguration","audio","disabled","video","image","expandedInput","inputConfiguration","math","labelInput","excludeZeroDialogBoxContent","title","text","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","settingsPanelDisabled","spellCheck","label","settings","enabled","showExcludeZero","showScorePointLabels","showDescription","showVisibleToStudent","showHalfScoring","showStandards","showLevelTagInput","dragAndDrop","showMaxPoint","addScale","minNoOfTraits","maxNoOfTraits","minNoOfScales","maxNoOfScales","defaultTraitLabel","mathMlOptions","mmlOutput","mmlEditing","maxMaxPoints"],"mappings":"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","sourcesContent":["export default {\n model: {\n visibleToStudent: true,\n halfScoring: false,\n pointLabels: true,\n description: false,\n standards: false,\n scales: [],\n excludeZero: false,\n maxPointsEnabled: true,\n addScaleEnabled: true,\n },\n configuration: {\n baseInputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n expandedInput: {\n inputConfiguration: {\n math: { disabled: true },\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n labelInput: {\n inputConfiguration: {\n math: { disabled: true },\n audio: { disabled: true },\n video: { disabled: true },\n image: { disabled: true },\n },\n },\n excludeZeroDialogBoxContent: {\n title: 'Exclude 0 (Zero) from Score Point Values.',\n text: `<div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>`,\n },\n includeZeroDialogBoxContent: {\n title: 'Include 0 (Zero) in Score Point Values.',\n text: `<div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>`,\n },\n deleteScaleDialogBoxContent: {\n title: 'Delete Scale',\n text: 'Are you sure you want to delete this scale?',\n },\n maxPointsDialogBoxContent: {\n title: 'Decreasing Max Points.',\n text: ` You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted.`,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n showExcludeZero: {\n settings: true,\n label: 'Exclude Zero',\n },\n showScorePointLabels: {\n settings: true,\n label: 'Show Score Point Labels',\n },\n showDescription: {\n settings: true,\n label: 'Show Description',\n },\n showVisibleToStudent: {\n settings: true,\n label: 'Visible to Student',\n },\n showHalfScoring: {\n settings: true,\n label: 'Half Scoring',\n },\n // commenting this in order to use the dynamic width if the width was not set by the client (PD-3203)\n // width: '900px',\n // these should not be set to true (should not be used) for now\n showStandards: {\n settings: false,\n label: 'Show Standards',\n },\n showLevelTagInput: {\n settings: false,\n label: 'Show Level Tag Input',\n enabled: false,\n },\n dragAndDrop: {\n settings: true,\n label: 'Enable Drag and Drop',\n enabled: false,\n },\n showMaxPoint: {\n settings: true,\n label: 'Show Max Points Dropdown',\n },\n addScale: {\n settings: true,\n label: 'Add Scale Available',\n },\n minNoOfTraits: 1,\n maxNoOfTraits: 10,\n minNoOfScales: 1,\n maxNoOfScales: 10,\n defaultTraitLabel: 'Trait',\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n maxMaxPoints: 10,\n },\n};\n"],"file":"defaults.js"}
@@ -61,16 +61,32 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
61
61
 
62
62
  (0, _classCallCheck2["default"])(this, MultiTraitRubricElement);
63
63
  _this = _super.call(this);
64
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "validateModel", function (m) {
65
- var validatedModel = m;
66
- var scales = validatedModel.scales,
67
- excludeZero = validatedModel.excludeZero;
64
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "updateModelAccordingToReceivedProps", function (m) {
65
+ var currentModel = _objectSpread({}, _this._model);
66
+
67
+ if (!m) {
68
+ return currentModel;
69
+ }
70
+
71
+ var validatedModel = _objectSpread({}, m);
72
+
73
+ var _ref = validatedModel || {},
74
+ scales = _ref.scales,
75
+ excludeZero = _ref.excludeZero;
76
+
68
77
  (scales || []).forEach(function (scale) {
69
- var _ref = scale || {},
70
- maxPoints = _ref.maxPoints;
78
+ if (!scale) {
79
+ scale = {
80
+ scorePointsLabels: [],
81
+ traits: []
82
+ };
83
+ }
84
+
85
+ var _ref2 = scale || {},
86
+ maxPoints = _ref2.maxPoints;
71
87
 
72
- scale.scorePointsLabels = (0, _toConsumableArray2["default"])(scale.scorePointsLabels);
73
- scale.traits = (0, _toConsumableArray2["default"])(scale.traits);
88
+ scale.scorePointsLabels = (0, _toConsumableArray2["default"])(scale.scorePointsLabels || []);
89
+ scale.traits = (0, _toConsumableArray2["default"])(scale.traits || []);
74
90
  var howManyScorePointLabelsShouldHave = excludeZero ? maxPoints : maxPoints + 1;
75
91
  var howManyScorePointLabelsItHas = scale.scorePointsLabels.length;
76
92
 
@@ -85,7 +101,13 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
85
101
  }
86
102
 
87
103
  (scale.traits || []).forEach(function (trait) {
88
- trait.scorePointsDescriptors = (0, _toConsumableArray2["default"])(trait.scorePointsDescriptors);
104
+ if (!trait) {
105
+ trait = {
106
+ scorePointsDescriptors: []
107
+ };
108
+ }
109
+
110
+ trait.scorePointsDescriptors = (0, _toConsumableArray2["default"])(trait.scorePointsDescriptors || []);
89
111
  var howManyScorePointDescriptorsItHas = trait.scorePointsDescriptors.length;
90
112
 
91
113
  if (howManyScorePointDescriptorsItHas !== howManyScorePointLabelsShouldHave) {
@@ -102,7 +124,7 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
102
124
  return validatedModel;
103
125
  });
104
126
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onModelChanged", function (m) {
105
- _this._model = _this.validateModel(modelWithDefaults(m));
127
+ _this._model = _this.updateModelAccordingToReceivedProps(modelWithDefaults(m));
106
128
 
107
129
  _this._render();
108
130
 
@@ -121,7 +143,7 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
121
143
  (0, _createClass2["default"])(MultiTraitRubricElement, [{
122
144
  key: "model",
123
145
  set: function set(m) {
124
- this._model = this.validateModel(modelWithDefaults(m));
146
+ this._model = this.updateModelAccordingToReceivedProps(modelWithDefaults(m));
125
147
 
126
148
  this._render();
127
149
  }
@@ -142,11 +164,19 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
142
164
  value: function onDeleteSound(src, done) {
143
165
  this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
144
166
  }
167
+ }, {
168
+ key: "insertImage",
169
+ value: function insertImage(handler) {
170
+ this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
171
+ }
172
+ }, {
173
+ key: "onDeleteImage",
174
+ value: function onDeleteImage(src, done) {
175
+ this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
176
+ }
145
177
  }, {
146
178
  key: "_render",
147
179
  value: function _render() {
148
- console.log('THE MODEL', this._model);
149
-
150
180
  if (this._model) {
151
181
  var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
152
182
  model: this._model,
@@ -156,6 +186,10 @@ var MultiTraitRubricElement = /*#__PURE__*/function (_HTMLElement) {
156
186
  uploadSoundSupport: {
157
187
  add: this.insertSound.bind(this),
158
188
  "delete": this.onDeleteSound.bind(this)
189
+ },
190
+ imageSupport: {
191
+ add: this.insertImage.bind(this),
192
+ "delete": this.onDeleteImage.bind(this)
159
193
  }
160
194
  });
161
195
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["modelWithDefaults","m","defaults","model","configurationWithDefaults","c","configuration","MultiTraitRubricElement","validatedModel","scales","excludeZero","forEach","scale","maxPoints","scorePointsLabels","traits","howManyScorePointLabelsShouldHave","howManyScorePointLabelsItHas","length","i","push","slice","trait","scorePointsDescriptors","howManyScorePointDescriptorsItHas","_model","validateModel","_render","dispatchEvent","ModelUpdatedEvent","_configuration","handler","InsertSoundEvent","src","done","DeleteSoundEvent","console","log","element","React","createElement","Main","onModelChanged","onConfigurationChanged","uploadSoundSupport","add","insertSound","bind","onDeleteSound","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AAEA;;AACA;;;;;;;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,CAAD;AAAA,yCAAaC,qBAASC,KAAtB,GAAgCF,CAAhC;AAAA,CAA1B;;AACA,IAAMG,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACC,CAAD;AAAA,yCAAaH,qBAASI,aAAtB,GAAwCD,CAAxC;AAAA,CAAlC;;IAEqBE,uB;;;;;AACnB,qCAAc;AAAA;;AAAA;AACZ;AADY,sGAME,UAACN,CAAD,EAAO;AACrB,UAAMO,cAAc,GAAGP,CAAvB;AACA,UAAQQ,MAAR,GAAgCD,cAAhC,CAAQC,MAAR;AAAA,UAAgBC,WAAhB,GAAgCF,cAAhC,CAAgBE,WAAhB;AAEA,OAACD,MAAM,IAAI,EAAX,EAAeE,OAAf,CAAuB,UAAAC,KAAK,EAAI;AAC9B,mBAAsBA,KAAK,IAAI,EAA/B;AAAA,YAAQC,SAAR,QAAQA,SAAR;;AAEAD,QAAAA,KAAK,CAACE,iBAAN,uCAA+BF,KAAK,CAACE,iBAArC;AACAF,QAAAA,KAAK,CAACG,MAAN,uCAAoBH,KAAK,CAACG,MAA1B;AAEA,YAAMC,iCAAiC,GAAGN,WAAW,GAAGG,SAAH,GAAeA,SAAS,GAAG,CAAhF;AACA,YAAMI,4BAA4B,GAAGL,KAAK,CAACE,iBAAN,CAAwBI,MAA7D;;AAEA,YAAID,4BAA4B,KAAKD,iCAArC,EAAwE;AACtE,cAAIC,4BAA4B,GAAGD,iCAAnC,EAAsE;AACpE,iBAAK,IAAIG,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAEH,iCAAiC,GAAGC,4BAAvD,EAAqFE,CAAC,EAAtF,EAA0F;AACxFP,cAAAA,KAAK,CAACE,iBAAN,CAAwBM,IAAxB,CAA6B,EAA7B;AACD;AACF,WAJD,MAIO;AACLR,YAAAA,KAAK,CAACE,iBAAN,GAA0BF,KAAK,CAACE,iBAAN,CAAwBO,KAAxB,CAA8B,CAA9B,EAAiCL,iCAAjC,CAA1B;AACD;AACF;;AAED,SAACJ,KAAK,CAACG,MAAN,IAAgB,EAAjB,EAAqBJ,OAArB,CAA6B,UAAAW,KAAK,EAAI;AACpCA,UAAAA,KAAK,CAACC,sBAAN,uCAAoCD,KAAK,CAACC,sBAA1C;AAEA,cAAMC,iCAAiC,GAAGF,KAAK,CAACC,sBAAN,CAA6BL,MAAvE;;AAEA,cAAIM,iCAAiC,KAAKR,iCAA1C,EAA6E;AAC3E,gBAAIQ,iCAAiC,GAAGR,iCAAxC,EAA2E;AACzE,mBAAK,IAAIG,EAAC,GAAG,CAAb,EAAgBA,EAAC,GAAEH,iCAAiC,GAAGQ,iCAAvD,EAA0FL,EAAC,EAA3F,EAA+F;AAC7FG,gBAAAA,KAAK,CAACC,sBAAN,CAA6BH,IAA7B,CAAkC,EAAlC;AACD;AACF,aAJD,MAIO;AACLE,cAAAA,KAAK,CAACC,sBAAN,GAA+BD,KAAK,CAACC,sBAAN,CAA6BF,KAA7B,CAAmC,CAAnC,EAAsCL,iCAAtC,CAA/B;AACD;AACF;AACF,SAdD;AAeD,OAlCD;AAoCA,aAAOR,cAAP;AACD,KA/Ca;AAAA,uGA2DG,UAACP,CAAD,EAAO;AACtB,YAAKwB,MAAL,GAAc,MAAKC,aAAL,CAAmB1B,iBAAiB,CAACC,CAAD,CAApC,CAAd;;AACA,YAAK0B,OAAL;;AACA,YAAKC,aAAL,CAAmB,IAAIC,qCAAJ,CAAsB,MAAKJ,MAA3B,EAAmC,KAAnC,CAAnB;AACD,KA/Da;AAAA,+GAiEW,UAACpB,CAAD,EAAO;AAC9B,YAAKyB,cAAL,GAAsB1B,yBAAyB,CAACC,CAAD,CAA/C;;AAEA,YAAKsB,OAAL;AACD,KArEa;AAEZ,UAAKF,MAAL,GAAczB,iBAAiB,EAA/B;AACA,UAAK8B,cAAL,GAAsB1B,yBAAyB,EAA/C;AAHY;AAIb;;;;SA6CD,aAAUH,CAAV,EAAa;AACX,WAAKwB,MAAL,GAAc,KAAKC,aAAL,CAAmB1B,iBAAiB,CAACC,CAAD,CAApC,CAAd;;AACA,WAAK0B,OAAL;AACD;;;SAED,aAAkBtB,CAAlB,EAAqB;AACnB,WAAKyB,cAAL,GAAsB1B,yBAAyB,CAACC,CAAD,CAA/C;;AACA,WAAKsB,OAAL;AACD;;;WAcD,qBAAYI,OAAZ,EAAqB;AACnB,WAAKH,aAAL,CAAmB,IAAII,oCAAJ,CAAqBD,OAArB,CAAnB;AACD;;;WAED,uBAAcE,GAAd,EAAmBC,IAAnB,EAAyB;AACvB,WAAKN,aAAL,CAAmB,IAAIO,oCAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB;AACD;;;WAED,mBAAU;AACRE,MAAAA,OAAO,CAACC,GAAR,CAAY,WAAZ,EAAyB,KAAKZ,MAA9B;;AACA,UAAI,KAAKA,MAAT,EAAiB;AACf,YAAIa,OAAO,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACtCtC,UAAAA,KAAK,EAAE,KAAKsB,MAD0B;AAEtCnB,UAAAA,aAAa,EAAE,KAAKwB,cAFkB;AAGtCY,UAAAA,cAAc,EAAE,KAAKA,cAHiB;AAItCC,UAAAA,sBAAsB,EAAE,KAAKA,sBAJS;AAKtCC,UAAAA,kBAAkB,EAAE;AAClBC,YAAAA,GAAG,EAAE,KAAKC,WAAL,CAAiBC,IAAjB,CAAsB,IAAtB,CADa;AAElB,sBAAQ,KAAKC,aAAL,CAAmBD,IAAnB,CAAwB,IAAxB;AAFU;AALkB,SAA1B,CAAd;;AAWAE,6BAASC,MAAT,CAAgBZ,OAAhB,EAAyB,IAAzB;AACD;AACF;;;kDAhGkDa,W","sourcesContent":["import { ModelUpdatedEvent, InsertSoundEvent, DeleteSoundEvent } from '@pie-framework/pie-configure-events';\n\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport Main from './main';\nimport defaults from './defaults';\n\nconst modelWithDefaults = (m) => ({ ...defaults.model, ...m });\nconst configurationWithDefaults = (c) => ({ ...defaults.configuration, ...c });\n\nexport default class MultiTraitRubricElement extends HTMLElement {\n constructor() {\n super();\n this._model = modelWithDefaults();\n this._configuration = configurationWithDefaults();\n }\n\n validateModel = (m) => {\n const validatedModel = m;\n const { scales, excludeZero } = validatedModel;\n\n (scales || []).forEach(scale => {\n const { maxPoints } = scale || {};\n\n scale.scorePointsLabels = [ ...scale.scorePointsLabels ];\n scale.traits = [ ...scale.traits ];\n\n const howManyScorePointLabelsShouldHave = excludeZero ? maxPoints : maxPoints + 1;\n const howManyScorePointLabelsItHas = scale.scorePointsLabels.length;\n\n if (howManyScorePointLabelsItHas !== howManyScorePointLabelsShouldHave) {\n if (howManyScorePointLabelsItHas < howManyScorePointLabelsShouldHave) {\n for (let i = 0; i< howManyScorePointLabelsShouldHave - howManyScorePointLabelsItHas; i++) {\n scale.scorePointsLabels.push('');\n }\n } else {\n scale.scorePointsLabels = scale.scorePointsLabels.slice(0, howManyScorePointLabelsShouldHave);\n }\n }\n\n (scale.traits || []).forEach(trait => {\n trait.scorePointsDescriptors = [ ...trait.scorePointsDescriptors ];\n\n const howManyScorePointDescriptorsItHas = trait.scorePointsDescriptors.length;\n\n if (howManyScorePointDescriptorsItHas !== howManyScorePointLabelsShouldHave) {\n if (howManyScorePointDescriptorsItHas < howManyScorePointLabelsShouldHave) {\n for (let i = 0; i< howManyScorePointLabelsShouldHave - howManyScorePointDescriptorsItHas; i++) {\n trait.scorePointsDescriptors.push('');\n }\n } else {\n trait.scorePointsDescriptors = trait.scorePointsDescriptors.slice(0, howManyScorePointLabelsShouldHave);\n }\n }\n });\n });\n\n return validatedModel;\n };\n\n set model(m) {\n this._model = this.validateModel(modelWithDefaults(m));\n this._render();\n }\n\n set configuration(c) {\n this._configuration = configurationWithDefaults(c);\n this._render();\n }\n\n onModelChanged = (m) => {\n this._model = this.validateModel(modelWithDefaults(m));\n this._render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n };\n\n onConfigurationChanged = (c) => {\n this._configuration = configurationWithDefaults(c);\n\n this._render();\n };\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n _render() {\n console.log('THE MODEL', this._model);\n if (this._model) {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["modelWithDefaults","m","defaults","model","configurationWithDefaults","c","configuration","MultiTraitRubricElement","currentModel","_model","validatedModel","scales","excludeZero","forEach","scale","scorePointsLabels","traits","maxPoints","howManyScorePointLabelsShouldHave","howManyScorePointLabelsItHas","length","i","push","slice","trait","scorePointsDescriptors","howManyScorePointDescriptorsItHas","updateModelAccordingToReceivedProps","_render","dispatchEvent","ModelUpdatedEvent","_configuration","handler","InsertSoundEvent","src","done","DeleteSoundEvent","InsertImageEvent","DeleteImageEvent","element","React","createElement","Main","onModelChanged","onConfigurationChanged","uploadSoundSupport","add","insertSound","bind","onDeleteSound","imageSupport","insertImage","onDeleteImage","ReactDOM","render","HTMLElement"],"mappings":"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","sourcesContent":["import {\n ModelUpdatedEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n InsertImageEvent,\n DeleteImageEvent\n} from '@pie-framework/pie-configure-events';\n\nimport React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport Main from './main';\nimport defaults from './defaults';\n\nconst modelWithDefaults = (m) => ({ ...defaults.model, ...m });\nconst configurationWithDefaults = (c) => ({ ...defaults.configuration, ...c });\n\nexport default class MultiTraitRubricElement extends HTMLElement {\n constructor() {\n super();\n this._model = modelWithDefaults();\n this._configuration = configurationWithDefaults();\n }\n\n updateModelAccordingToReceivedProps = (m) => {\n const currentModel = {...this._model};\n if (!m) {\n return currentModel;\n }\n\n const validatedModel = { ...m };\n const { scales, excludeZero } = validatedModel || {};\n\n (scales || []).forEach(scale => {\n if (!scale) {\n scale = { scorePointsLabels: [], traits: [] };\n }\n\n const { maxPoints } = scale || {};\n\n scale.scorePointsLabels = [ ...(scale.scorePointsLabels || []) ];\n scale.traits = [ ...(scale.traits || []) ];\n\n const howManyScorePointLabelsShouldHave = excludeZero ? maxPoints : maxPoints + 1;\n const howManyScorePointLabelsItHas = scale.scorePointsLabels.length;\n\n if (howManyScorePointLabelsItHas !== howManyScorePointLabelsShouldHave) {\n if (howManyScorePointLabelsItHas < howManyScorePointLabelsShouldHave) {\n for (let i = 0; i < howManyScorePointLabelsShouldHave - howManyScorePointLabelsItHas; i++) {\n scale.scorePointsLabels.push('');\n }\n } else {\n scale.scorePointsLabels = scale.scorePointsLabels.slice(0, howManyScorePointLabelsShouldHave);\n }\n }\n\n (scale.traits || []).forEach(trait => {\n if (!trait) {\n trait = { scorePointsDescriptors: [] };\n }\n\n trait.scorePointsDescriptors = [ ...(trait.scorePointsDescriptors || []) ];\n\n const howManyScorePointDescriptorsItHas = trait.scorePointsDescriptors.length;\n\n if (howManyScorePointDescriptorsItHas !== howManyScorePointLabelsShouldHave) {\n if (howManyScorePointDescriptorsItHas < howManyScorePointLabelsShouldHave) {\n for (let i = 0; i < howManyScorePointLabelsShouldHave - howManyScorePointDescriptorsItHas; i++) {\n trait.scorePointsDescriptors.push('');\n }\n } else {\n trait.scorePointsDescriptors = trait.scorePointsDescriptors.slice(0, howManyScorePointLabelsShouldHave);\n }\n }\n });\n });\n\n return validatedModel;\n };\n\n set model(m) {\n this._model = this.updateModelAccordingToReceivedProps(modelWithDefaults(m));\n this._render();\n }\n\n set configuration(c) {\n this._configuration = configurationWithDefaults(c);\n this._render();\n }\n\n onModelChanged = (m) => {\n this._model = this.updateModelAccordingToReceivedProps(modelWithDefaults(m));\n this._render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n };\n\n onConfigurationChanged = (c) => {\n this._configuration = configurationWithDefaults(c);\n\n this._render();\n };\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n \n _render() {\n if (this._model) {\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n });\n\n ReactDOM.render(element, this);\n }\n }\n}\n"],"file":"index.js"}
@@ -441,7 +441,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
441
441
  model = _ref24.model,
442
442
  configuration = _ref24.configuration,
443
443
  onConfigurationChanged = _ref24.onConfigurationChanged,
444
- uploadSoundSupport = _ref24.uploadSoundSupport;
444
+ uploadSoundSupport = _ref24.uploadSoundSupport,
445
+ imageSupport = _ref24.imageSupport;
445
446
 
446
447
  var _ref25 = configuration || {},
447
448
  addScale = _ref25.addScale,
@@ -556,7 +557,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
556
557
  uploadSoundSupport: uploadSoundSupport,
557
558
  maxPointsEnabled: maxPointsEnabled,
558
559
  maxNoOfTraits: maxNoOfTraits,
559
- minNoOfTraits: minNoOfTraits
560
+ minNoOfTraits: minNoOfTraits,
561
+ imageSupport: imageSupport
560
562
  }, _this2.props, {
561
563
  classes: {},
562
564
  mathMlOptions: mathMlOptions,
@@ -587,7 +589,11 @@ Main.propTypes = {
587
589
  uploadSoundSupport: _propTypes["default"].object,
588
590
  configuration: _propTypes["default"].object,
589
591
  onModelChanged: _propTypes["default"].func,
590
- onConfigurationChanged: _propTypes["default"].func
592
+ onConfigurationChanged: _propTypes["default"].func,
593
+ imageSupport: _propTypes["default"].shape({
594
+ add: _propTypes["default"].func.isRequired,
595
+ "delete": _propTypes["default"].func.isRequired
596
+ })
591
597
  };
592
598
 
593
599
  var _default = (0, _drag.withDragContext)((0, _styles.withStyles)(styles)(Main));
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","MIN_WIDTH","styles","theme","design","fontFamily","fontSize","typography","ShowModal","showExcludeZeroDialog","excludeZero","changeExcludeZero","cancel","propTypes","PropTypes","bool","func","Main","props","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","showInfoDialog","infoDialogText","adjustedWidth","initialUpdateCompleted","model","onModelChanged","configuration","scales","maxNoOfScales","defaultTraitLabel","length","traitLabel","set","push","maxPoints","scorePointsLabels","traits","scaleIndex","params","Object","keys","forEach","key","minNoOfScales","slice","halfScoring","visibleToStudent","newState","setState","pointLabels","description","standards","excludeZeroType","newScales","reduce","acc","scale","excludeZeroTypes","remove0","map","scorePointsDescriptors","trait","add0","shiftLeft","shiftRight","hideToggleExcludeZeroModal","updatedModel","updatedProperty","showToggleExcludeZeroModal","divRef","React","createRef","updateDivWidth","bind","window","addEventListener","removeEventListener","state","current","divWidth","offsetWidth","onConfigurationChanged","uploadSoundSupport","addScale","baseInputConfiguration","dragAndDrop","contentDimensions","showDescription","showExcludeZero","showLevelTagInput","showStandards","showHalfScoring","showMaxPoint","showScorePointLabels","showVisibleToStudent","spellCheck","settingsPanelDisabled","maxNoOfTraits","minNoOfTraits","width","mathMlOptions","maxMaxPoints","expandedInput","labelInput","errors","spellCheckEnabled","maxPointsEnabled","addScaleEnabled","panelSettings","label","panelProperties","getPluginProps","assign","Settings","Properties","onScaleRemoved","onScaleChanged","enabled","inputConfiguration","onScaleAdded","Component","classes","object"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport cloneDeep from 'lodash/cloneDeep';\nimport isEmpty from 'lodash/isEmpty';\n\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { withDragContext } from '@pie-lib/pie-toolbox/drag';\nimport { layout, settings } from '@pie-lib/pie-toolbox/config-ui';\n\nimport Scale from './scale';\nimport { MultiTraitButton } from './common';\nimport { ExcludeZeroDialog, excludeZeroTypes, IncludeZeroDialog, InfoDialog } from './modals';\n\nconst { Panel, toggle } = settings;\nconst MIN_WIDTH = '650px';\n\nconst styles = (theme) => ({\n design: {\n fontFamily: 'Cerebri Sans',\n fontSize: theme.typography.fontSize,\n },\n});\n\nconst ShowModal = ({ showExcludeZeroDialog, excludeZero, changeExcludeZero, cancel }) => {\n if (showExcludeZeroDialog && !excludeZero) {\n return (\n <ExcludeZeroDialog\n open={showExcludeZeroDialog && !excludeZero}\n changeExcludeZero={changeExcludeZero}\n cancel={cancel}\n />\n );\n } else if (showExcludeZeroDialog && excludeZero) {\n return (\n <IncludeZeroDialog\n open={showExcludeZeroDialog && excludeZero}\n changeExcludeZero={changeExcludeZero}\n cancel={cancel}\n />\n );\n } else {\n return null;\n }\n};\n\nShowModal.propTypes = {\n showExcludeZeroDialog: PropTypes.bool,\n excludeZero: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nexport class Main extends React.Component {\n constructor(props) {\n super(props);\n this.divRef = React.createRef();\n this.updateDivWidth = this.updateDivWidth.bind(this);\n }\n\n state = {\n showDecreaseMaxPointsDialog: false,\n showDeleteScaleDialog: false,\n showDeleteTraitDialog: false,\n showExcludeZeroDialog: false,\n showInfoDialog: false,\n infoDialogText: '',\n adjustedWidth: MIN_WIDTH,\n initialUpdateCompleted: false, // flag to track the initial update of the div width\n };\n\n componentDidMount() {\n this.updateDivWidth();\n\n window.addEventListener('resize', this.updateDivWidth);\n window.addEventListener('load', this.updateDivWidth);\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.updateDivWidth);\n window.removeEventListener('load', this.updateDivWidth);\n }\n\n componentDidUpdate() {\n if (!this.state.initialUpdateCompleted) {\n this.updateDivWidth();\n this.setState({ initialUpdateCompleted: true });\n }\n }\n\n updateDivWidth() {\n if (this.divRef && this.divRef.current) {\n const divWidth = this.divRef.current.offsetWidth;\n this.set({\n adjustedWidth: divWidth,\n });\n }\n }\n\n onScaleAdded = () => {\n const { model, onModelChanged, configuration } = this.props;\n let { scales, excludeZero } = model || {};\n const { maxNoOfScales } = configuration || {};\n let { defaultTraitLabel } = configuration || '';\n\n if (!scales.length) {\n scales = [];\n }\n\n // if no default trait label is defined, take the trait label of the first scale\n defaultTraitLabel = typeof defaultTraitLabel === 'string' ? defaultTraitLabel : scales[0]?.traitLabel || '';\n\n if (scales.length === maxNoOfScales) {\n this.set({\n infoDialogText: `There can't be more than ${maxNoOfScales} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n scales.push({\n maxPoints: 1,\n scorePointsLabels: excludeZero ? [''] : ['', ''],\n traitLabel: defaultTraitLabel,\n traits: [],\n });\n\n onModelChanged({ ...model, scales });\n };\n\n onScaleChanged = (scaleIndex, params) => {\n const { model, onModelChanged } = this.props;\n const scales = cloneDeep((model || {}).scales);\n\n if (scaleIndex < 0 || scaleIndex >= scales.length || isEmpty(params)) return false;\n\n Object.keys(params).forEach((key) => {\n scales[scaleIndex][key] = params[key];\n });\n\n onModelChanged({ ...model, scales });\n };\n\n onScaleRemoved = (scaleIndex) => {\n const { model, onModelChanged, configuration } = this.props;\n let { scales } = model || {};\n const { minNoOfScales } = configuration || {};\n\n if (scaleIndex < 0 || scaleIndex >= scales.length) return false;\n\n if (scales.length === minNoOfScales) {\n this.set({\n infoDialogText: `There can't be less than ${minNoOfScales} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n scales = [...scales.slice(0, scaleIndex), ...scales.slice(scaleIndex + 1)];\n\n onModelChanged({ ...model, scales });\n };\n\n onHalfScoringChanged = () => {\n const { model, onModelChanged } = this.props;\n let { halfScoring } = model || {};\n\n onModelChanged({ ...model, halfScoring: !halfScoring });\n };\n\n onVisibleToStudentChanged = () => {\n const { model, onModelChanged } = this.props;\n let { visibleToStudent } = model || {};\n\n onModelChanged({ ...model, visibleToStudent: !visibleToStudent });\n };\n\n set = (newState) => this.setState(newState);\n\n changeShowScorePointLabels = () => {\n const { model, onModelChanged } = this.props || {};\n let { pointLabels } = model || {};\n\n pointLabels = !pointLabels;\n\n onModelChanged({ ...model, pointLabels });\n };\n\n changeShowDescription = () => {\n const { model, onModelChanged } = this.props || {};\n let { description } = model || {};\n\n description = !description;\n\n onModelChanged({ ...model, description });\n };\n\n changeShowStandards = () => {\n const { model, onModelChanged } = this.props || {};\n let { standards } = model || {};\n\n standards = !standards;\n\n onModelChanged({ ...model, standards });\n };\n\n // Exclude Zero\n showToggleExcludeZeroModal = () => this.set({ showExcludeZeroDialog: true });\n\n hideToggleExcludeZeroModal = () => {\n this.set({ showExcludeZeroDialog: false });\n };\n\n onCloseInfoDialog = () => this.set({ showInfoDialog: false });\n\n changeExcludeZero = (excludeZeroType) => {\n const { model, onModelChanged } = this.props || {};\n const { scales } = model || {};\n let { excludeZero } = model || {};\n\n if (!scales || !scales.length) return;\n\n excludeZero = !excludeZero;\n\n const newScales = scales.reduce((acc, scale) => {\n let { scorePointsLabels, traits } = scale || {};\n\n if (scorePointsLabels.length < 1) return acc;\n\n switch (excludeZeroType) {\n case excludeZeroTypes.remove0: {\n // removes column 0\n scorePointsLabels = scorePointsLabels.slice(1);\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: scorePointsDescriptors.slice(1),\n }));\n\n break;\n }\n\n case excludeZeroTypes.add0: {\n // adds empty column at start\n scorePointsLabels = ['', ...scorePointsLabels];\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: ['', ...scorePointsDescriptors],\n }));\n\n break;\n }\n\n case excludeZeroTypes.shiftLeft: {\n // removes last column\n scorePointsLabels = scorePointsLabels.slice(0, -1);\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: scorePointsDescriptors.slice(0, -1),\n }));\n\n break;\n }\n\n case excludeZeroTypes.shiftRight: {\n // adds empty column at end\n scorePointsLabels = [...scorePointsLabels, ''];\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: [...scorePointsDescriptors, ''],\n }));\n\n break;\n }\n\n default:\n break;\n }\n\n acc.push({ ...scale, scorePointsLabels, traits });\n\n return acc;\n }, []);\n\n onModelChanged({ ...model, scales: newScales, excludeZero });\n\n this.hideToggleExcludeZeroModal();\n };\n\n onModelChanged = (updatedModel, updatedProperty) => {\n const { onModelChanged } = this.props || {};\n\n if (updatedProperty === 'excludeZero') {\n this.showToggleExcludeZeroModal();\n } else {\n onModelChanged(updatedModel);\n }\n };\n\n render() {\n const { model, configuration, onConfigurationChanged, uploadSoundSupport } = this.props || {};\n const {\n addScale,\n baseInputConfiguration = {},\n dragAndDrop,\n contentDimensions = {},\n showDescription,\n showExcludeZero,\n showLevelTagInput,\n showStandards,\n showHalfScoring,\n showMaxPoint,\n showScorePointLabels,\n showVisibleToStudent,\n spellCheck = {},\n settingsPanelDisabled,\n maxNoOfTraits,\n minNoOfTraits,\n width,\n mathMlOptions = {},\n maxMaxPoints,\n expandedInput = {},\n labelInput = {},\n } = configuration || {};\n const {\n errors,\n scales,\n excludeZero,\n description,\n pointLabels,\n standards,\n spellCheckEnabled,\n maxPointsEnabled,\n addScaleEnabled,\n } = model || {};\n const { showExcludeZeroDialog, showInfoDialog, infoDialogText, adjustedWidth } = this.state || {};\n\n const panelSettings = {\n standards: showStandards.settings && toggle(showStandards.label),\n 'showLevelTagInput.enabled': showLevelTagInput.settings && toggle(showLevelTagInput.label, true),\n visibleToStudent: showVisibleToStudent.settings && toggle(showVisibleToStudent.label),\n excludeZero: showExcludeZero.settings && toggle(showExcludeZero.label),\n halfScoring: showHalfScoring.settings && toggle(showHalfScoring.label),\n 'dragAndDrop.enabled': dragAndDrop.settings && toggle(dragAndDrop.label, true),\n };\n const panelProperties = {\n description: showDescription.settings && toggle(showDescription.label),\n pointLabels: showScorePointLabels.settings && toggle(showScorePointLabels.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n maxPointsEnabled: showMaxPoint.settings && toggle(showMaxPoint.label),\n addScaleEnabled: addScale.settings && toggle(addScale.label),\n };\n\n const getPluginProps = (props) => {\n return Object.assign(\n {\n ...baseInputConfiguration,\n },\n props || {},\n );\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n onChangeModel={this.onModelChanged}\n configuration={configuration}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n modal={\n <ShowModal\n showExcludeZeroDialog={showExcludeZeroDialog}\n excludeZero={excludeZero}\n changeExcludeZero={this.changeExcludeZero}\n cancel={this.hideToggleExcludeZeroModal}\n ></ShowModal>\n }\n />\n }\n >\n <div style={{ width: '100%' }} ref={this.divRef} />\n <div style={{ width: width || adjustedWidth }}>\n {(scales || []).map((scale, scaleIndex) => (\n <Scale\n key={`scale-${scaleIndex}`}\n scale={scale}\n scaleIndex={scaleIndex}\n errors={errors}\n onScaleRemoved={this.onScaleRemoved}\n onScaleChanged={this.onScaleChanged}\n showStandards={standards}\n showScorePointLabels={pointLabels}\n showDescription={description}\n showLevelTagInput={showLevelTagInput.enabled}\n excludeZero={excludeZero}\n enableDragAndDrop={dragAndDrop.enabled}\n spellCheck={spellCheckEnabled}\n width={adjustedWidth}\n uploadSoundSupport={uploadSoundSupport}\n maxPointsEnabled={maxPointsEnabled}\n maxNoOfTraits={maxNoOfTraits}\n minNoOfTraits={minNoOfTraits}\n {...this.props}\n classes={{}}\n mathMlOptions={mathMlOptions}\n maxMaxPoints={maxMaxPoints}\n expandedPluginProps={getPluginProps(expandedInput?.inputConfiguration)}\n labelPluginProps={getPluginProps(labelInput?.inputConfiguration)}\n />\n ))}\n {addScaleEnabled && <MultiTraitButton onClick={this.onScaleAdded}>Add Scale</MultiTraitButton>}\n </div>\n\n <InfoDialog open={showInfoDialog} text={infoDialogText} onClose={() => this.set({ showInfoDialog: false })} />\n </layout.ConfigLayout>\n );\n }\n}\n\nMain.propTypes = {\n classes: PropTypes.object,\n model: PropTypes.object,\n uploadSoundSupport: PropTypes.object,\n configuration: PropTypes.object,\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n};\n\nexport default withDragContext(withStyles(styles)(Main));\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Panel","settings","toggle","MIN_WIDTH","styles","theme","design","fontFamily","fontSize","typography","ShowModal","showExcludeZeroDialog","excludeZero","changeExcludeZero","cancel","propTypes","PropTypes","bool","func","Main","props","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","showInfoDialog","infoDialogText","adjustedWidth","initialUpdateCompleted","model","onModelChanged","configuration","scales","maxNoOfScales","defaultTraitLabel","length","traitLabel","set","push","maxPoints","scorePointsLabels","traits","scaleIndex","params","Object","keys","forEach","key","minNoOfScales","slice","halfScoring","visibleToStudent","newState","setState","pointLabels","description","standards","excludeZeroType","newScales","reduce","acc","scale","excludeZeroTypes","remove0","map","scorePointsDescriptors","trait","add0","shiftLeft","shiftRight","hideToggleExcludeZeroModal","updatedModel","updatedProperty","showToggleExcludeZeroModal","divRef","React","createRef","updateDivWidth","bind","window","addEventListener","removeEventListener","state","current","divWidth","offsetWidth","onConfigurationChanged","uploadSoundSupport","imageSupport","addScale","baseInputConfiguration","dragAndDrop","contentDimensions","showDescription","showExcludeZero","showLevelTagInput","showStandards","showHalfScoring","showMaxPoint","showScorePointLabels","showVisibleToStudent","spellCheck","settingsPanelDisabled","maxNoOfTraits","minNoOfTraits","width","mathMlOptions","maxMaxPoints","expandedInput","labelInput","errors","spellCheckEnabled","maxPointsEnabled","addScaleEnabled","panelSettings","label","panelProperties","getPluginProps","assign","Settings","Properties","onScaleRemoved","onScaleChanged","enabled","inputConfiguration","onScaleAdded","Component","classes","object","shape","add","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport cloneDeep from 'lodash/cloneDeep';\nimport isEmpty from 'lodash/isEmpty';\n\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { withDragContext } from '@pie-lib/pie-toolbox/drag';\nimport { layout, settings } from '@pie-lib/pie-toolbox/config-ui';\n\nimport Scale from './scale';\nimport { MultiTraitButton } from './common';\nimport { ExcludeZeroDialog, excludeZeroTypes, IncludeZeroDialog, InfoDialog } from './modals';\n\nconst { Panel, toggle } = settings;\nconst MIN_WIDTH = '650px';\n\nconst styles = (theme) => ({\n design: {\n fontFamily: 'Cerebri Sans',\n fontSize: theme.typography.fontSize,\n },\n});\n\nconst ShowModal = ({ showExcludeZeroDialog, excludeZero, changeExcludeZero, cancel }) => {\n if (showExcludeZeroDialog && !excludeZero) {\n return (\n <ExcludeZeroDialog\n open={showExcludeZeroDialog && !excludeZero}\n changeExcludeZero={changeExcludeZero}\n cancel={cancel}\n />\n );\n } else if (showExcludeZeroDialog && excludeZero) {\n return (\n <IncludeZeroDialog\n open={showExcludeZeroDialog && excludeZero}\n changeExcludeZero={changeExcludeZero}\n cancel={cancel}\n />\n );\n } else {\n return null;\n }\n};\n\nShowModal.propTypes = {\n showExcludeZeroDialog: PropTypes.bool,\n excludeZero: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nexport class Main extends React.Component {\n constructor(props) {\n super(props);\n this.divRef = React.createRef();\n this.updateDivWidth = this.updateDivWidth.bind(this);\n }\n\n state = {\n showDecreaseMaxPointsDialog: false,\n showDeleteScaleDialog: false,\n showDeleteTraitDialog: false,\n showExcludeZeroDialog: false,\n showInfoDialog: false,\n infoDialogText: '',\n adjustedWidth: MIN_WIDTH,\n initialUpdateCompleted: false, // flag to track the initial update of the div width\n };\n\n componentDidMount() {\n this.updateDivWidth();\n\n window.addEventListener('resize', this.updateDivWidth);\n window.addEventListener('load', this.updateDivWidth);\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.updateDivWidth);\n window.removeEventListener('load', this.updateDivWidth);\n }\n\n componentDidUpdate() {\n if (!this.state.initialUpdateCompleted) {\n this.updateDivWidth();\n this.setState({ initialUpdateCompleted: true });\n }\n }\n\n updateDivWidth() {\n if (this.divRef && this.divRef.current) {\n const divWidth = this.divRef.current.offsetWidth;\n this.set({\n adjustedWidth: divWidth,\n });\n }\n }\n\n onScaleAdded = () => {\n const { model, onModelChanged, configuration } = this.props;\n let { scales, excludeZero } = model || {};\n const { maxNoOfScales } = configuration || {};\n let { defaultTraitLabel } = configuration || '';\n\n if (!scales.length) {\n scales = [];\n }\n\n // if no default trait label is defined, take the trait label of the first scale\n defaultTraitLabel = typeof defaultTraitLabel === 'string' ? defaultTraitLabel : scales[0]?.traitLabel || '';\n\n if (scales.length === maxNoOfScales) {\n this.set({\n infoDialogText: `There can't be more than ${maxNoOfScales} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n scales.push({\n maxPoints: 1,\n scorePointsLabels: excludeZero ? [''] : ['', ''],\n traitLabel: defaultTraitLabel,\n traits: [],\n });\n\n onModelChanged({ ...model, scales });\n };\n\n onScaleChanged = (scaleIndex, params) => {\n const { model, onModelChanged } = this.props;\n const scales = cloneDeep((model || {}).scales);\n\n if (scaleIndex < 0 || scaleIndex >= scales.length || isEmpty(params)) return false;\n\n Object.keys(params).forEach((key) => {\n scales[scaleIndex][key] = params[key];\n });\n\n onModelChanged({ ...model, scales });\n };\n\n onScaleRemoved = (scaleIndex) => {\n const { model, onModelChanged, configuration } = this.props;\n let { scales } = model || {};\n const { minNoOfScales } = configuration || {};\n\n if (scaleIndex < 0 || scaleIndex >= scales.length) return false;\n\n if (scales.length === minNoOfScales) {\n this.set({\n infoDialogText: `There can't be less than ${minNoOfScales} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n scales = [...scales.slice(0, scaleIndex), ...scales.slice(scaleIndex + 1)];\n\n onModelChanged({ ...model, scales });\n };\n\n onHalfScoringChanged = () => {\n const { model, onModelChanged } = this.props;\n let { halfScoring } = model || {};\n\n onModelChanged({ ...model, halfScoring: !halfScoring });\n };\n\n onVisibleToStudentChanged = () => {\n const { model, onModelChanged } = this.props;\n let { visibleToStudent } = model || {};\n\n onModelChanged({ ...model, visibleToStudent: !visibleToStudent });\n };\n\n set = (newState) => this.setState(newState);\n\n changeShowScorePointLabels = () => {\n const { model, onModelChanged } = this.props || {};\n let { pointLabels } = model || {};\n\n pointLabels = !pointLabels;\n\n onModelChanged({ ...model, pointLabels });\n };\n\n changeShowDescription = () => {\n const { model, onModelChanged } = this.props || {};\n let { description } = model || {};\n\n description = !description;\n\n onModelChanged({ ...model, description });\n };\n\n changeShowStandards = () => {\n const { model, onModelChanged } = this.props || {};\n let { standards } = model || {};\n\n standards = !standards;\n\n onModelChanged({ ...model, standards });\n };\n\n // Exclude Zero\n showToggleExcludeZeroModal = () => this.set({ showExcludeZeroDialog: true });\n\n hideToggleExcludeZeroModal = () => {\n this.set({ showExcludeZeroDialog: false });\n };\n\n onCloseInfoDialog = () => this.set({ showInfoDialog: false });\n\n changeExcludeZero = (excludeZeroType) => {\n const { model, onModelChanged } = this.props || {};\n const { scales } = model || {};\n let { excludeZero } = model || {};\n\n if (!scales || !scales.length) return;\n\n excludeZero = !excludeZero;\n\n const newScales = scales.reduce((acc, scale) => {\n let { scorePointsLabels, traits } = scale || {};\n\n if (scorePointsLabels.length < 1) return acc;\n\n switch (excludeZeroType) {\n case excludeZeroTypes.remove0: {\n // removes column 0\n scorePointsLabels = scorePointsLabels.slice(1);\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: scorePointsDescriptors.slice(1),\n }));\n\n break;\n }\n\n case excludeZeroTypes.add0: {\n // adds empty column at start\n scorePointsLabels = ['', ...scorePointsLabels];\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: ['', ...scorePointsDescriptors],\n }));\n\n break;\n }\n\n case excludeZeroTypes.shiftLeft: {\n // removes last column\n scorePointsLabels = scorePointsLabels.slice(0, -1);\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: scorePointsDescriptors.slice(0, -1),\n }));\n\n break;\n }\n\n case excludeZeroTypes.shiftRight: {\n // adds empty column at end\n scorePointsLabels = [...scorePointsLabels, ''];\n traits = traits.map(({ scorePointsDescriptors, ...trait }) => ({\n ...trait,\n scorePointsDescriptors: [...scorePointsDescriptors, ''],\n }));\n\n break;\n }\n\n default:\n break;\n }\n\n acc.push({ ...scale, scorePointsLabels, traits });\n\n return acc;\n }, []);\n\n onModelChanged({ ...model, scales: newScales, excludeZero });\n\n this.hideToggleExcludeZeroModal();\n };\n\n onModelChanged = (updatedModel, updatedProperty) => {\n const { onModelChanged } = this.props || {};\n\n if (updatedProperty === 'excludeZero') {\n this.showToggleExcludeZeroModal();\n } else {\n onModelChanged(updatedModel);\n }\n };\n\n render() {\n const { model, configuration, onConfigurationChanged, uploadSoundSupport, imageSupport } = this.props || {};\n const {\n addScale,\n baseInputConfiguration = {},\n dragAndDrop,\n contentDimensions = {},\n showDescription,\n showExcludeZero,\n showLevelTagInput,\n showStandards,\n showHalfScoring,\n showMaxPoint,\n showScorePointLabels,\n showVisibleToStudent,\n spellCheck = {},\n settingsPanelDisabled,\n maxNoOfTraits,\n minNoOfTraits,\n width,\n mathMlOptions = {},\n maxMaxPoints,\n expandedInput = {},\n labelInput = {},\n } = configuration || {};\n const {\n errors,\n scales,\n excludeZero,\n description,\n pointLabels,\n standards,\n spellCheckEnabled,\n maxPointsEnabled,\n addScaleEnabled,\n } = model || {};\n const { showExcludeZeroDialog, showInfoDialog, infoDialogText, adjustedWidth } = this.state || {};\n\n const panelSettings = {\n standards: showStandards.settings && toggle(showStandards.label),\n 'showLevelTagInput.enabled': showLevelTagInput.settings && toggle(showLevelTagInput.label, true),\n visibleToStudent: showVisibleToStudent.settings && toggle(showVisibleToStudent.label),\n excludeZero: showExcludeZero.settings && toggle(showExcludeZero.label),\n halfScoring: showHalfScoring.settings && toggle(showHalfScoring.label),\n 'dragAndDrop.enabled': dragAndDrop.settings && toggle(dragAndDrop.label, true),\n };\n const panelProperties = {\n description: showDescription.settings && toggle(showDescription.label),\n pointLabels: showScorePointLabels.settings && toggle(showScorePointLabels.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n maxPointsEnabled: showMaxPoint.settings && toggle(showMaxPoint.label),\n addScaleEnabled: addScale.settings && toggle(addScale.label),\n };\n\n const getPluginProps = (props) => {\n return Object.assign(\n {\n ...baseInputConfiguration,\n },\n props || {},\n );\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n onChangeModel={this.onModelChanged}\n configuration={configuration}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n modal={\n <ShowModal\n showExcludeZeroDialog={showExcludeZeroDialog}\n excludeZero={excludeZero}\n changeExcludeZero={this.changeExcludeZero}\n cancel={this.hideToggleExcludeZeroModal}\n ></ShowModal>\n }\n />\n }\n >\n <div style={{ width: '100%' }} ref={this.divRef} />\n <div style={{ width: width || adjustedWidth }}>\n {(scales || []).map((scale, scaleIndex) => (\n <Scale\n key={`scale-${scaleIndex}`}\n scale={scale}\n scaleIndex={scaleIndex}\n errors={errors}\n onScaleRemoved={this.onScaleRemoved}\n onScaleChanged={this.onScaleChanged}\n showStandards={standards}\n showScorePointLabels={pointLabels}\n showDescription={description}\n showLevelTagInput={showLevelTagInput.enabled}\n excludeZero={excludeZero}\n enableDragAndDrop={dragAndDrop.enabled}\n spellCheck={spellCheckEnabled}\n width={adjustedWidth}\n uploadSoundSupport={uploadSoundSupport}\n maxPointsEnabled={maxPointsEnabled}\n maxNoOfTraits={maxNoOfTraits}\n minNoOfTraits={minNoOfTraits}\n imageSupport={imageSupport}\n {...this.props}\n classes={{}}\n mathMlOptions={mathMlOptions}\n maxMaxPoints={maxMaxPoints}\n expandedPluginProps={getPluginProps(expandedInput?.inputConfiguration)}\n labelPluginProps={getPluginProps(labelInput?.inputConfiguration)}\n />\n ))}\n {addScaleEnabled && <MultiTraitButton onClick={this.onScaleAdded}>Add Scale</MultiTraitButton>}\n </div>\n\n <InfoDialog open={showInfoDialog} text={infoDialogText} onClose={() => this.set({ showInfoDialog: false })} />\n </layout.ConfigLayout>\n );\n }\n}\n\nMain.propTypes = {\n classes: PropTypes.object,\n model: PropTypes.object,\n uploadSoundSupport: PropTypes.object,\n configuration: PropTypes.object,\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n};\n\nexport default withDragContext(withStyles(styles)(Main));\n"],"file":"main.js"}
@@ -369,7 +369,9 @@ var Scale = /*#__PURE__*/function (_React$Component) {
369
369
  _ref15$expandedPlugin = _ref15.expandedPluginProps,
370
370
  expandedPluginProps = _ref15$expandedPlugin === void 0 ? {} : _ref15$expandedPlugin,
371
371
  _ref15$labelPluginPro = _ref15.labelPluginProps,
372
- labelPluginProps = _ref15$labelPluginPro === void 0 ? {} : _ref15$labelPluginPro;
372
+ labelPluginProps = _ref15$labelPluginPro === void 0 ? {} : _ref15$labelPluginPro,
373
+ _ref15$imageSupport = _ref15.imageSupport,
374
+ imageSupport = _ref15$imageSupport === void 0 ? {} : _ref15$imageSupport;
373
375
 
374
376
  var _ref16 = scale || {},
375
377
  maxPoints = _ref16.maxPoints,
@@ -442,7 +444,8 @@ var Scale = /*#__PURE__*/function (_React$Component) {
442
444
  mathMlOptions: mathMlOptions,
443
445
  maxMaxPoints: maxMaxPoints,
444
446
  expandedPluginProps: expandedPluginProps,
445
- labelPluginProps: labelPluginProps
447
+ labelPluginProps: labelPluginProps,
448
+ imageSupport: imageSupport
446
449
  }), traits.map(function (trait, index) {
447
450
  return /*#__PURE__*/_react["default"].createElement(_trait["default"], {
448
451
  key: index,
@@ -469,7 +472,8 @@ var Scale = /*#__PURE__*/function (_React$Component) {
469
472
  uploadSoundSupport: uploadSoundSupport,
470
473
  mathMlOptions: mathMlOptions,
471
474
  expandedPluginProps: expandedPluginProps,
472
- labelPluginProps: labelPluginProps
475
+ labelPluginProps: labelPluginProps,
476
+ imageSupport: imageSupport
473
477
  });
474
478
  }), /*#__PURE__*/_react["default"].createElement(_common.Arrow, {
475
479
  width: "".concat(AdjustedBlockWidth / 2, "px"),
@@ -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","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","scorePointsLabels","push","name","description","standards","scorePointsDescriptors","Array","from","traitIndex","source","newIndex","oldIndex","index","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","prevProps","showDescription","excludeZero","nextProps","showStandards","classes","errors","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","mathMlOptions","maxMaxPoints","expandedPluginProps","labelPluginProps","traitsErrors","scorePointsErrors","currentScaleTraitsErrors","currentScalePointsLabelsErrors","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/pie-toolbox/drag';\nimport { color } from '@pie-lib/pie-toolbox/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 (\n prevProps.scale.maxPoints !== this.props.scale.maxPoints ||\n prevProps.showDescription !== this.props.showDescription ||\n prevProps.excludeZero !== this.props.excludeZero\n ) {\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 } = 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 onScaleChanged(scaleIndex, { maxPoints: numberValue });\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 errors,\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 mathMlOptions = {},\n maxMaxPoints,\n expandedPluginProps = {},\n labelPluginProps = {},\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 { traitsErrors, scorePointsErrors } = errors || {};\n const currentScaleTraitsErrors = (traitsErrors && traitsErrors[scaleIndex]) || {};\n const currentScalePointsLabelsErrors = (scorePointsErrors && scorePointsErrors[scaleIndex]) || {};\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 errors={currentScalePointsLabelsErrors}\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 mathMlOptions={mathMlOptions}\n maxMaxPoints={maxMaxPoints}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\n />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n error={currentScaleTraitsErrors && currentScaleTraitsErrors[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 maxPoints={maxPoints}\n currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\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 errors: 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 expandedPluginProps: PropTypes.object,\n labelPluginProps: PropTypes.object,\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","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","scorePointsLabels","push","name","description","standards","scorePointsDescriptors","Array","from","traitIndex","source","newIndex","oldIndex","index","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","prevProps","showDescription","excludeZero","nextProps","showStandards","classes","errors","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","mathMlOptions","maxMaxPoints","expandedPluginProps","labelPluginProps","imageSupport","traitsErrors","scorePointsErrors","currentScaleTraitsErrors","currentScalePointsLabelsErrors","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/pie-toolbox/drag';\nimport { color } from '@pie-lib/pie-toolbox/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 (\n prevProps.scale.maxPoints !== this.props.scale.maxPoints ||\n prevProps.showDescription !== this.props.showDescription ||\n prevProps.excludeZero !== this.props.excludeZero\n ) {\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 } = 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 onScaleChanged(scaleIndex, { maxPoints: numberValue });\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 errors,\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 mathMlOptions = {},\n maxMaxPoints,\n expandedPluginProps = {},\n labelPluginProps = {},\n imageSupport = {},\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 { traitsErrors, scorePointsErrors } = errors || {};\n const currentScaleTraitsErrors = (traitsErrors && traitsErrors[scaleIndex]) || {};\n const currentScalePointsLabelsErrors = (scorePointsErrors && scorePointsErrors[scaleIndex]) || {};\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 errors={currentScalePointsLabelsErrors}\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 mathMlOptions={mathMlOptions}\n maxMaxPoints={maxMaxPoints}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\n imageSupport={imageSupport}\n />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n error={currentScaleTraitsErrors && currentScaleTraitsErrors[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 maxPoints={maxPoints}\n currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\n imageSupport={imageSupport}\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 errors: 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 expandedPluginProps: PropTypes.object,\n labelPluginProps: PropTypes.object,\n};\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}
@@ -184,7 +184,9 @@ var TraitTile = /*#__PURE__*/function (_React$Component) {
184
184
  _this$props2$expanded = _this$props2.expandedPluginProps,
185
185
  expandedPluginProps = _this$props2$expanded === void 0 ? {} : _this$props2$expanded,
186
186
  _this$props2$labelPlu = _this$props2.labelPluginProps,
187
- labelPluginProps = _this$props2$labelPlu === void 0 ? {} : _this$props2$labelPlu;
187
+ labelPluginProps = _this$props2$labelPlu === void 0 ? {} : _this$props2$labelPlu,
188
+ _this$props2$imageSup = _this$props2.imageSupport,
189
+ imageSupport = _this$props2$imageSup === void 0 ? {} : _this$props2$imageSup;
188
190
  var anchorEl = this.state.anchorEl;
189
191
  return connectDragPreview(connectDropTarget( /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_common.Row, null, /*#__PURE__*/_react["default"].createElement(_common.PrimaryBlock, {
190
192
  className: classes.primaryBlock
@@ -225,7 +227,8 @@ var TraitTile = /*#__PURE__*/function (_React$Component) {
225
227
  placeholder: "Enter ".concat(traitLabel),
226
228
  spellCheck: spellCheck,
227
229
  uploadSoundSupport: uploadSoundSupport,
228
- mathMlOptions: mathMlOptions
230
+ mathMlOptions: mathMlOptions,
231
+ imageSupport: imageSupport
229
232
  }), error && /*#__PURE__*/_react["default"].createElement("div", {
230
233
  className: classes.errorText
231
234
  }, error.name || '')), /*#__PURE__*/_react["default"].createElement(_common.SecondaryBlock, {
@@ -244,7 +247,8 @@ var TraitTile = /*#__PURE__*/function (_React$Component) {
244
247
  pluginProps: expandedPluginProps,
245
248
  spellCheck: spellCheck,
246
249
  uploadSoundSupport: uploadSoundSupport,
247
- mathMlOptions: mathMlOptions
250
+ mathMlOptions: mathMlOptions,
251
+ imageSupport: imageSupport
248
252
  })), showDescription && /*#__PURE__*/_react["default"].createElement(_common.Block, null, /*#__PURE__*/_react["default"].createElement(_common.ExpandedInput, {
249
253
  placeholder: "Enter Description",
250
254
  markup: description,
@@ -257,7 +261,8 @@ var TraitTile = /*#__PURE__*/function (_React$Component) {
257
261
  pluginProps: expandedPluginProps,
258
262
  spellCheck: spellCheck,
259
263
  uploadSoundSupport: uploadSoundSupport,
260
- mathMlOptions: mathMlOptions
264
+ mathMlOptions: mathMlOptions,
265
+ imageSupport: imageSupport
261
266
  }), error && /*#__PURE__*/_react["default"].createElement("div", {
262
267
  className: classes.errorText
263
268
  }, error.description || '')), (scorePointsValues || []).map(function (scorePointsValue, index) {
@@ -289,7 +294,8 @@ var TraitTile = /*#__PURE__*/function (_React$Component) {
289
294
  ,
290
295
  spellCheck: spellCheck,
291
296
  uploadSoundSupport: uploadSoundSupport,
292
- mathMlOptions: mathMlOptions
297
+ mathMlOptions: mathMlOptions,
298
+ imageSupport: imageSupport
293
299
  }));
294
300
  }))))));
295
301
  }
@@ -329,7 +335,11 @@ TraitTile.propTypes = {
329
335
  currentPosition: _propTypes["default"].number,
330
336
  secondaryBlockWidth: _propTypes["default"].number,
331
337
  expandedPluginProps: _propTypes["default"].object,
332
- labelPluginProps: _propTypes["default"].object
338
+ labelPluginProps: _propTypes["default"].object,
339
+ imageSupport: _propTypes["default"].shape({
340
+ add: _propTypes["default"].func.isRequired,
341
+ "delete": _propTypes["default"].func.isRequired
342
+ })
333
343
  };
334
344
  var StyledTrait = (0, _styles.withStyles)(styles)(TraitTile);
335
345
  exports.StyledTrait = StyledTrait;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/trait.jsx"],"names":["log","styles","theme","actions","color","text","primaryBlock","display","flexDirection","justifyContent","marginBottom","spacing","unit","controls","alignItems","width","cursor","options","marginLeft","dragHandle","removeLabel","whiteSpace","errorText","fontSize","typography","palette","error","main","paddingBottom","TraitTile","params","props","trait","onTraitChanged","Object","keys","forEach","key","descriptor","value","scorePointsDescriptors","length","event","setState","anchorEl","currentTarget","position","secondaryBlock","scrollTo","left","onTraitRemoved","handleClose","nextProps","currentPosition","scrollLeft","scrollToPosition","classes","connectDragSource","connectDropTarget","connectDragPreview","name","standards","description","traitLabel","scorePointsValues","showStandards","showDescription","enableDragAndDrop","secondaryBlockWidth","spellCheck","maxPoints","uploadSoundSupport","mathMlOptions","expandedPluginProps","labelPluginProps","state","handleClick","openMenu","__html","ref","join","split","map","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointDescriptorChange","React","Component","PropTypes","bool","object","propTypes","func","isRequired","isDragging","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":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,sDAAN,CAAZ;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBC,IAAAA,OAAO,EAAE;AACPC,MAAAA,KAAK,EAAEA,gBAAMC,IAAN;AADA,KADgB;AAIzBC,IAAAA,YAAY,EAAE;AACZC,MAAAA,OAAO,EAAE,MADG;AAEZC,MAAAA,aAAa,EAAE,QAFH;AAGZC,MAAAA,cAAc,EAAE,eAHJ;AAIZC,MAAAA,YAAY,EAAER,KAAK,CAACS,OAAN,CAAcC,IAAd,GAAqB;AAJvB,KAJW;AAUzBC,IAAAA,QAAQ,EAAE;AACRN,MAAAA,OAAO,EAAE,MADD;AAERO,MAAAA,UAAU,EAAE,QAFJ;AAGRC,MAAAA,KAAK,EAAE,MAHC;AAIRC,MAAAA,MAAM,EAAE;AAJA,KAVe;AAgBzBC,IAAAA,OAAO,EAAE;AACPC,MAAAA,UAAU,EAAE;AADL,KAhBgB;AAmBzBC,IAAAA,UAAU,EAAE,EAnBa;AAoBzBC,IAAAA,WAAW,EAAE;AACXb,MAAAA,OAAO,EAAE,MADE;AAEXc,MAAAA,UAAU,EAAE;AAFD,KApBY;AAwBzBC,IAAAA,SAAS,EAAE;AACTC,MAAAA,QAAQ,EAAErB,KAAK,CAACsB,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETnB,MAAAA,KAAK,EAAEF,KAAK,CAACuB,OAAN,CAAcC,KAAd,CAAoBC,IAFlB;AAGTC,MAAAA,aAAa,EAAE1B,KAAK,CAACS,OAAN,CAAcC;AAHpB;AAxBc,GAAZ;AAAA,CAAf;;IA+BaiB,S;;;;;;;;;;;;;;;8FAMH,E;uGAWS,UAACC,MAAD,EAAY;AAC3B,wBAAkC,MAAKC,KAAvC;AAAA,UAAQC,KAAR,eAAQA,KAAR;AAAA,UAAeC,cAAf,eAAeA,cAAf;AAEA,UAAI,yBAAQH,MAAR,CAAJ,EAAqB;AAErBI,MAAAA,MAAM,CAACC,IAAP,CAAYL,MAAZ,EAAoBM,OAApB,CAA4B,UAACC,GAAD,EAAS;AACnCL,QAAAA,KAAK,CAACK,GAAD,CAAL,GAAaP,MAAM,CAACO,GAAD,CAAnB;AACD,OAFD;AAIAJ,MAAAA,cAAc,CAACD,KAAD,CAAd;AACD,K;qHAE8B,gBAA2B;AAAA,UAAxBM,UAAwB,QAAxBA,UAAwB;AAAA,UAAZC,KAAY,QAAZA,KAAY;AACxD,UACWC,sBADX,GAEI,MAAKT,KAFT,CACEC,KADF,CACWQ,sBADX;AAIA,UAAID,KAAK,GAAG,CAAR,IAAaA,KAAK,IAAIC,sBAAsB,CAACC,MAAjD,EAAyD;AAEzDD,MAAAA,sBAAsB,CAACD,KAAD,CAAtB,GAAgCD,UAAhC;;AAEA,YAAKL,cAAL,CAAoB;AAAEO,QAAAA,sBAAsB,EAAtBA;AAAF,OAApB;AACD,K;oGAEa,UAACE,KAAD;AAAA,aAAW,MAAKC,QAAL,CAAc;AAAEC,QAAAA,QAAQ,EAAEF,KAAK,CAACG;AAAlB,OAAd,CAAX;AAAA,K;oGAEA;AAAA,aAAM,MAAKF,QAAL,CAAc;AAAEC,QAAAA,QAAQ,EAAE;AAAZ,OAAd,CAAN;AAAA,K;yGAEK,UAACE,QAAD;AAAA,aAAc,MAAKC,cAAL,CAAoBC,QAApB,CAA6B;AAAEC,QAAAA,IAAI,EAAEH;AAAR,OAA7B,CAAd;AAAA,K;iGAER,YAAM;AACf,YAAKf,KAAL,CAAWmB,cAAX;;AACA,YAAKC,WAAL;AACD,K;;;;;;WA1CD,0CAAiCC,SAAjC,EAA4C;AAC1C,UACEA,SAAS,CAACC,eAAV,KAA8B,KAAKtB,KAAL,CAAWsB,eAAzC,IACC,KAAKN,cAAL,IAAuB,KAAKA,cAAL,CAAoBO,UAApB,KAAmCF,SAAS,CAACC,eAFvE,EAGE;AACA,aAAKE,gBAAL,CAAsBH,SAAS,CAACC,eAAhC;AACD;AACF;;;WAqCD,kBAAS;AAAA;;AACP,yBAoBI,KAAKtB,KApBT;AAAA,UACEyB,OADF,gBACEA,OADF;AAAA,UAEEC,iBAFF,gBAEEA,iBAFF;AAAA,UAGEC,iBAHF,gBAGEA,iBAHF;AAAA,UAIEC,kBAJF,gBAIEA,kBAJF;AAAA,UAKEjC,KALF,gBAKEA,KALF;AAAA,4CAMEM,KANF;AAAA,UAMW4B,IANX,sBAMWA,IANX;AAAA,UAMiBC,SANjB,sBAMiBA,SANjB;AAAA,UAM4BC,WAN5B,sBAM4BA,WAN5B;AAAA,UAMyCtB,sBANzC,sBAMyCA,sBANzC;AAAA,UAOEuB,UAPF,gBAOEA,UAPF;AAAA,UAQEC,iBARF,gBAQEA,iBARF;AAAA,UASEC,aATF,gBASEA,aATF;AAAA,UAUEC,eAVF,gBAUEA,eAVF;AAAA,UAWEC,iBAXF,gBAWEA,iBAXF;AAAA,UAYEd,eAZF,gBAYEA,eAZF;AAAA,UAaEe,mBAbF,gBAaEA,mBAbF;AAAA,UAcEC,UAdF,gBAcEA,UAdF;AAAA,UAeEC,SAfF,gBAeEA,SAfF;AAAA,UAgBEC,kBAhBF,gBAgBEA,kBAhBF;AAAA,+CAiBEC,aAjBF;AAAA,UAiBEA,aAjBF,sCAiBkB,EAjBlB;AAAA,+CAkBEC,mBAlBF;AAAA,UAkBEA,mBAlBF,sCAkBwB,EAlBxB;AAAA,+CAmBEC,gBAnBF;AAAA,UAmBEA,gBAnBF,sCAmBqB,EAnBrB;AAqBA,UAAQ9B,QAAR,GAAqB,KAAK+B,KAA1B,CAAQ/B,QAAR;AAEA,aAAOe,kBAAkB,CACvBD,iBAAiB,eACf,0DACE,gCAAC,WAAD,qBACE,gCAAC,oBAAD;AAAc,QAAA,SAAS,EAAEF,OAAO,CAAClD;AAAjC,sBACE;AAAK,QAAA,SAAS,EAAEkD,OAAO,CAAC3C;AAAxB,SACGsD,iBAAiB,GACdV,iBAAiB,eACf;AAAM,QAAA,SAAS,EAAED,OAAO,CAACrC;AAAzB,sBACE,gCAAC,yBAAD;AAAmB,QAAA,SAAS,EAAEqC,OAAO,CAACrD;AAAtC,QADF,CADe,CADH,GAMd,IAPN,eASE,gCAAC,sBAAD;AACE,QAAA,SAAS,EAAEqD,OAAO,CAACvC,OADrB;AAEE,sBAAW,MAFb;AAGE,yBAAc,WAHhB;AAIE,yBAAc,MAJhB;AAKE,QAAA,OAAO,EAAE,KAAK2D;AALhB,sBAOE,gCAAC,oBAAD,OAPF,CATF,eAmBE,gCAAC,gBAAD;AAAM,QAAA,EAAE,EAAC,WAAT;AAAqB,QAAA,QAAQ,EAAEhC,QAA/B;AAAyC,QAAA,WAAW,MAApD;AAAqD,QAAA,IAAI,EAAE,CAAC,CAACA,QAA7D;AAAuE,QAAA,OAAO,EAAE,KAAKO;AAArF,sBACE,gCAAC,oBAAD;AAAU,QAAA,OAAO,EAAE,KAAK0B;AAAxB,sBACE;AACE,QAAA,SAAS,EAAErB,OAAO,CAACpC,WADrB;AAEE,QAAA,uBAAuB,EAAE;AAAE0D,UAAAA,MAAM,mBAAYlB,IAAI,IAAIG,UAApB;AAAR;AAF3B,QADF,CADF,CAnBF,CADF,eA8BE,gCAAC,uBAAD;AACE,QAAA,MAAM,EAAEH,IADV;AAEE,QAAA,KAAK,EAAE,CAAAlC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEkC,IAAP,KAAe,EAFxB;AAGE,QAAA,QAAQ,EAAE,kBAACA,IAAD;AAAA,iBAAU,MAAI,CAAC3B,cAAL,CAAoB;AAAE2B,YAAAA,IAAI,EAAJA;AAAF,WAApB,CAAV;AAAA,SAHZ;AAIE,QAAA,WAAW,EAAEc,gBAJf;AAKE,QAAA,WAAW,kBAAWX,UAAX,CALb;AAME,QAAA,UAAU,EAAEM,UANd;AAOE,QAAA,kBAAkB,EAAEE,kBAPtB;AAQE,QAAA,aAAa,EAAEC;AARjB,QA9BF,EAwCG9C,KAAK,iBAAI;AAAK,QAAA,SAAS,EAAE8B,OAAO,CAAClC;AAAxB,SAAoCI,KAAK,CAACkC,IAAN,IAAc,EAAlD,CAxCZ,CADF,eA4CE,gCAAC,sBAAD;AACE,QAAA,MAAM,EAAE,gBAACmB,GAAD,EAAS;AACf,UAAA,MAAI,CAAChC,cAAL,GAAsBgC,GAAtB;AACD,SAHH;AAIE,QAAA,KAAK,YAAKX,mBAAL;AAJP,SAMGH,aAAa,IAAIJ,SAAjB,iBACC,gCAAC,aAAD,qBACE,gCAAC,qBAAD;AACE,QAAA,WAAW,EAAC,WADd;AAEE,QAAA,MAAM,EAAEA,SAAS,CAACmB,IAAV,CAAe,GAAf,CAFV;AAGE,QAAA,QAAQ,EAAE,kBAACnB,SAAD;AAAA,iBAAe,MAAI,CAAC5B,cAAL,CAAoB;AAAE4B,YAAAA,SAAS,EAAEA,SAAS,CAACoB,KAAV,CAAgB,GAAhB;AAAb,WAApB,CAAf;AAAA,SAHZ;AAIE,QAAA,WAAW,EAAER,mBAJf;AAKE,QAAA,UAAU,EAAEJ,UALd;AAME,QAAA,kBAAkB,EAAEE,kBANtB;AAOE,QAAA,aAAa,EAAEC;AAPjB,QADF,CAPJ,EAoBGN,eAAe,iBACd,gCAAC,aAAD,qBACE,gCAAC,qBAAD;AACE,QAAA,WAAW,EAAC,mBADd;AAEE,QAAA,MAAM,EAAEJ,WAFV;AAGE,QAAA,KAAK,EAAE,CAAApC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEoC,WAAP,KAAsB,EAH/B;AAIE,QAAA,QAAQ,EAAE,kBAACA,WAAD;AAAA,iBAAiB,MAAI,CAAC7B,cAAL,CAAoB;AAAE6B,YAAAA,WAAW,EAAXA;AAAF,WAApB,CAAjB;AAAA,SAJZ;AAKE,QAAA,WAAW,EAAEW,mBALf;AAME,QAAA,UAAU,EAAEJ,UANd;AAOE,QAAA,kBAAkB,EAAEE,kBAPtB;AAQE,QAAA,aAAa,EAAEC;AARjB,QADF,EAWG9C,KAAK,iBAAI;AAAK,QAAA,SAAS,EAAE8B,OAAO,CAAClC;AAAxB,SAAoCI,KAAK,CAACoC,WAAN,IAAqB,EAAzD,CAXZ,CArBJ,EAoCG,CAACE,iBAAiB,IAAI,EAAtB,EAA0BkB,GAA1B,CAA8B,UAACC,gBAAD,EAAmBC,KAAnB,EAA6B;AAC1D,YAAMC,kBAAkB,GAAGC,qBAAa,IAAI,CAA5C,CAD0D,CACX;;AAC/C,YAAMC,cAAc,GAAGnB,mBAAmB,GAAGiB,kBAAkB,GAAGD,KAA3C,GAAmD/B,eAAnD,GAAqE,EAA5F;AACA,YAAMd,KAAK,GAAGyB,iBAAiB,CAACvB,MAAlB,GAA2B2C,KAA3B,GAAmC,CAAjD;AACA,YAAII,eAAJ;;AAEA,YAAI;AACFA,UAAAA,eAAe,GAAGhD,sBAAsB,CAACD,KAAD,CAAtB,IAAiC,EAAnD;AACD,SAFD,CAEE,OAAOkD,CAAP,EAAU;AACVD,UAAAA,eAAe,GAAG,EAAlB;AACD;;AAED,4BACE,gCAAC,aAAD;AAAO,UAAA,GAAG,oBAAaJ,KAAb;AAAV,wBACE,gCAAC,qBAAD;AACE,UAAA,WAAW,EAAC,kBADd;AAEE,UAAA,MAAM,EAAEI,eAFV;AAGE,UAAA,QAAQ,EAAE,kBAAClD,UAAD;AAAA,mBAAgB,MAAI,CAACoD,4BAAL,CAAkC;AAAEpD,cAAAA,UAAU,EAAVA,UAAF;AAAcC,cAAAA,KAAK,EAALA;AAAd,aAAlC,CAAhB;AAAA,WAHZ;AAIE,UAAA,WAAW,EAAEkC,mBAJf;AAKE,UAAA,YAAY,EAAEc,cAAc,GAAG,GAAjB,IAAwBJ,gBAAgB,GAAGb,SAL3D,CAKsE;AALtE;AAME,UAAA,UAAU,EAAED,UANd;AAOE,UAAA,kBAAkB,EAAEE,kBAPtB;AAQE,UAAA,aAAa,EAAEC;AARjB,UADF,CADF;AAcD,OA1BA,CApCH,CA5CF,CADF,CADe,CADM,CAAzB;AAmHD;;;EA/L4BmB,kBAAMC,S;;;iCAAxB/D,S,eACQ;AACjBwC,EAAAA,UAAU,EAAEwB,sBAAUC,IADL;AAEjBvB,EAAAA,kBAAkB,EAAEsB,sBAAUE;AAFb,C;AAiMrBlE,SAAS,CAACmE,SAAV,GAAsB;AACpBvC,EAAAA,iBAAiB,EAAEoC,sBAAUI,IAAV,CAAeC,UADd;AAEpBxC,EAAAA,iBAAiB,EAAEmC,sBAAUI,IAAV,CAAeC,UAFd;AAGpBvC,EAAAA,kBAAkB,EAAEkC,sBAAUI,IAAV,CAAeC,UAHf;AAIpB1C,EAAAA,OAAO,EAAEqC,sBAAUE,MAAV,CAAiBG,UAJN;AAKpBxE,EAAAA,KAAK,EAAEmE,sBAAUE,MALG;AAMpBI,EAAAA,UAAU,EAAEN,sBAAUC,IAAV,CAAeI,UANP;AAOpBE,EAAAA,EAAE,EAAEP,sBAAUQ,GAPM;AAQpBC,EAAAA,MAAM,EAAET,sBAAUC,IARE;AASpBV,EAAAA,KAAK,EAAES,sBAAUU,MATG;AAUpBtE,EAAAA,cAAc,EAAE4D,sBAAUI,IAAV,CAAeC,UAVX;AAWpBhD,EAAAA,cAAc,EAAE2C,sBAAUI,IAAV,CAAeC,UAXX;AAYpBlE,EAAAA,KAAK,EAAE6D,sBAAUW,KAAV,CAAgB;AACrB5C,IAAAA,IAAI,EAAEiC,sBAAUY,MADK;AAErB5C,IAAAA,SAAS,EAAEgC,sBAAUa,OAAV,CAAkBb,sBAAUY,MAA5B,CAFU;AAGrBjE,IAAAA,sBAAsB,EAAEqD,sBAAUa,OAAV,CAAkBb,sBAAUY,MAA5B,CAHH;AAIrB3C,IAAAA,WAAW,EAAE+B,sBAAUY;AAJF,GAAhB,CAZa;AAkBpB1C,EAAAA,UAAU,EAAE8B,sBAAUY,MAlBF;AAmBpBzC,EAAAA,iBAAiB,EAAE6B,sBAAUa,OAAV,CAAkBb,sBAAUU,MAA5B,CAnBC;AAoBpBtC,EAAAA,aAAa,EAAE4B,sBAAUC,IApBL;AAqBpB5B,EAAAA,eAAe,EAAE2B,sBAAUC,IArBP;AAsBpBxB,EAAAA,SAAS,EAAEuB,sBAAUU,MAtBD;AAuBpBpC,EAAAA,iBAAiB,EAAE0B,sBAAUC,IAvBT;AAwBpBzC,EAAAA,eAAe,EAAEwC,sBAAUU,MAxBP;AAyBpBnC,EAAAA,mBAAmB,EAAEyB,sBAAUU,MAzBX;AA0BpB9B,EAAAA,mBAAmB,EAAEoB,sBAAUE,MA1BX;AA2BpBrB,EAAAA,gBAAgB,EAAEmB,sBAAUE;AA3BR,CAAtB;AA8BO,IAAMY,WAAW,GAAG,wBAAW1G,MAAX,EAAmB4B,SAAnB,CAApB;;AAEP,IAAM+E,IAAI,GAAG,cAAb;AAEA,IAAMC,WAAW,GAAG;AAClBC,EAAAA,SADkB,qBACR/E,KADQ,EACD;AACf,WAAO;AACL6B,MAAAA,IAAI,EAAE7B,KAAK,CAACC,KAAN,CAAY4B,IADb;AAELwB,MAAAA,KAAK,EAAErD,KAAK,CAACqD;AAFR,KAAP;AAID;AANiB,CAApB;AASA,IAAM2B,YAAY,GAAG,0BAAWH,IAAX,EAAiBC,WAAjB,EAA8B,UAACG,OAAD,EAAUC,OAAV;AAAA,SAAuB;AACxExD,IAAAA,iBAAiB,EAAEuD,OAAO,CAACE,UAAR,EADqD;AAExEvD,IAAAA,kBAAkB,EAAEqD,OAAO,CAACG,WAAR,EAFoD;AAGxEhB,IAAAA,UAAU,EAAEc,OAAO,CAACd,UAAR;AAH4D,GAAvB;AAAA,CAA9B,EAIjBQ,WAJiB,CAArB;AAMA,IAAMS,WAAW,GAAG;AAClBC,EAAAA,KADkB,mBACV;AACNrH,IAAAA,GAAG,CAAC,SAAD,CAAH;AACD,GAHiB;AAIlBsH,EAAAA,IAJkB,gBAIbvF,KAJa,EAINkF,OAJM,EAIG;AACnB,QAAMM,IAAI,GAAGN,OAAO,CAACO,OAAR,EAAb;AACAxH,IAAAA,GAAG,CAAC,eAAD,EAAkBuH,IAAlB,EAAwB,UAAxB,EAAoCN,OAAO,CAACQ,OAAR,EAApC,CAAH;AAEA1F,IAAAA,KAAK,CAAC2F,cAAN,CAAqBH,IAArB,EAA2BxF,KAAK,CAACqD,KAAjC;AACD;AATiB,CAApB;AAYA,IAAMuC,qBAAqB,GAAG,0BAAWf,IAAX,EAAiBQ,WAAjB,EAA8B,UAACJ,OAAD,EAAUC,OAAV;AAAA,SAAuB;AACjFvD,IAAAA,iBAAiB,EAAEsD,OAAO,CAACY,UAAR,EAD8D;AAEjFtB,IAAAA,MAAM,EAAEW,OAAO,CAACX,MAAR;AAFyE,GAAvB;AAAA,CAA9B,EAG1BS,YAH0B,CAA9B;eAKeY,qB","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/pie-toolbox/render-ui';\n\nimport { Block, BlockWidth, ExpandedInput, PrimaryBlock, Row, SecondaryBlock, UnderlinedInput } from './common';\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 = (theme) => ({\n actions: {\n color: color.text(),\n },\n primaryBlock: {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n marginBottom: theme.spacing.unit * 5,\n },\n controls: {\n display: 'flex',\n alignItems: 'center',\n width: '100%',\n cursor: 'pointer',\n },\n options: {\n marginLeft: 'auto',\n },\n dragHandle: {},\n removeLabel: {\n display: 'flex',\n whiteSpace: 'break-spaces',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n});\n\nexport class TraitTile extends React.Component {\n static propTypes = {\n spellCheck: PropTypes.bool,\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.currentPosition !== this.props.currentPosition ||\n (this.secondaryBlock && this.secondaryBlock.scrollLeft !== nextProps.currentPosition)\n ) {\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 {\n trait: { scorePointsDescriptors },\n } = 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 error,\n trait: { name, standards, description, scorePointsDescriptors },\n traitLabel,\n scorePointsValues,\n showStandards,\n showDescription,\n enableDragAndDrop,\n currentPosition,\n secondaryBlockWidth,\n spellCheck,\n maxPoints,\n uploadSoundSupport,\n mathMlOptions = {},\n expandedPluginProps = {},\n labelPluginProps = {},\n } = this.props;\n const { anchorEl } = this.state;\n\n return connectDragPreview(\n connectDropTarget(\n <div>\n <Row>\n <PrimaryBlock className={classes.primaryBlock}>\n <div className={classes.controls}>\n {enableDragAndDrop\n ? connectDragSource(\n <span className={classes.dragHandle}>\n <DragIndicatorIcon className={classes.actions} />\n </span>,\n )\n : null}\n\n <IconButton\n className={classes.options}\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon />\n </IconButton>\n\n <Menu id=\"long-menu\" anchorEl={anchorEl} keepMounted open={!!anchorEl} onClose={this.handleClose}>\n <MenuItem onClick={this.openMenu}>\n <div\n className={classes.removeLabel}\n dangerouslySetInnerHTML={{ __html: `Remove ${name || traitLabel}` }}\n />\n </MenuItem>\n </Menu>\n </div>\n\n <UnderlinedInput\n markup={name}\n error={error?.name || ''}\n onChange={(name) => this.onTraitChanged({ name })}\n pluginProps={labelPluginProps}\n placeholder={`Enter ${traitLabel}`}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n {error && <div className={classes.errorText}>{error.name || ''}</div>}\n </PrimaryBlock>\n\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={expandedPluginProps}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <ExpandedInput\n placeholder=\"Enter Description\"\n markup={description}\n error={error?.description || ''}\n onChange={(description) => this.onTraitChanged({ description })}\n pluginProps={expandedPluginProps}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n {error && <div className={classes.errorText}>{error.description || ''}</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 - 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 Descriptor\"\n markup={scoreDescriptor}\n onChange={(descriptor) => this.onScorePointDescriptorChange({ descriptor, value })}\n pluginProps={expandedPluginProps}\n alignToRight={remainingSpace < 296 && scorePointsValue < maxPoints} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\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 error: PropTypes.object,\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 traitLabel: PropTypes.string,\n scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n showStandards: PropTypes.bool,\n showDescription: PropTypes.bool,\n maxPoints: PropTypes.number,\n enableDragAndDrop: PropTypes.bool,\n currentPosition: PropTypes.number,\n secondaryBlockWidth: PropTypes.number,\n expandedPluginProps: PropTypes.object,\n labelPluginProps: PropTypes.object,\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(NAME, traitSource, (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging(),\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(NAME, traitTarget, (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver(),\n}))(StyledSource);\n\nexport default StyledSourceAndTarget;\n"],"file":"trait.js"}
1
+ {"version":3,"sources":["../src/trait.jsx"],"names":["log","styles","theme","actions","color","text","primaryBlock","display","flexDirection","justifyContent","marginBottom","spacing","unit","controls","alignItems","width","cursor","options","marginLeft","dragHandle","removeLabel","whiteSpace","errorText","fontSize","typography","palette","error","main","paddingBottom","TraitTile","params","props","trait","onTraitChanged","Object","keys","forEach","key","descriptor","value","scorePointsDescriptors","length","event","setState","anchorEl","currentTarget","position","secondaryBlock","scrollTo","left","onTraitRemoved","handleClose","nextProps","currentPosition","scrollLeft","scrollToPosition","classes","connectDragSource","connectDropTarget","connectDragPreview","name","standards","description","traitLabel","scorePointsValues","showStandards","showDescription","enableDragAndDrop","secondaryBlockWidth","spellCheck","maxPoints","uploadSoundSupport","mathMlOptions","expandedPluginProps","labelPluginProps","imageSupport","state","handleClick","openMenu","__html","ref","join","split","map","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointDescriptorChange","React","Component","PropTypes","bool","object","propTypes","func","isRequired","isDragging","id","any","isOver","number","shape","string","arrayOf","add","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/pie-toolbox/render-ui';\n\nimport { Block, BlockWidth, ExpandedInput, PrimaryBlock, Row, SecondaryBlock, UnderlinedInput } from './common';\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 = (theme) => ({\n actions: {\n color: color.text(),\n },\n primaryBlock: {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n marginBottom: theme.spacing.unit * 5,\n },\n controls: {\n display: 'flex',\n alignItems: 'center',\n width: '100%',\n cursor: 'pointer',\n },\n options: {\n marginLeft: 'auto',\n },\n dragHandle: {},\n removeLabel: {\n display: 'flex',\n whiteSpace: 'break-spaces',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n});\n\nexport class TraitTile extends React.Component {\n static propTypes = {\n spellCheck: PropTypes.bool,\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.currentPosition !== this.props.currentPosition ||\n (this.secondaryBlock && this.secondaryBlock.scrollLeft !== nextProps.currentPosition)\n ) {\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 {\n trait: { scorePointsDescriptors },\n } = 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 error,\n trait: { name, standards, description, scorePointsDescriptors },\n traitLabel,\n scorePointsValues,\n showStandards,\n showDescription,\n enableDragAndDrop,\n currentPosition,\n secondaryBlockWidth,\n spellCheck,\n maxPoints,\n uploadSoundSupport,\n mathMlOptions = {},\n expandedPluginProps = {},\n labelPluginProps = {},\n imageSupport = {},\n } = this.props;\n const { anchorEl } = this.state;\n\n return connectDragPreview(\n connectDropTarget(\n <div>\n <Row>\n <PrimaryBlock className={classes.primaryBlock}>\n <div className={classes.controls}>\n {enableDragAndDrop\n ? connectDragSource(\n <span className={classes.dragHandle}>\n <DragIndicatorIcon className={classes.actions} />\n </span>,\n )\n : null}\n\n <IconButton\n className={classes.options}\n aria-label=\"more\"\n aria-controls=\"long-menu\"\n aria-haspopup=\"true\"\n onClick={this.handleClick}\n >\n <MoreVertIcon />\n </IconButton>\n\n <Menu id=\"long-menu\" anchorEl={anchorEl} keepMounted open={!!anchorEl} onClose={this.handleClose}>\n <MenuItem onClick={this.openMenu}>\n <div\n className={classes.removeLabel}\n dangerouslySetInnerHTML={{ __html: `Remove ${name || traitLabel}` }}\n />\n </MenuItem>\n </Menu>\n </div>\n\n <UnderlinedInput\n markup={name}\n error={error?.name || ''}\n onChange={(name) => this.onTraitChanged({ name })}\n pluginProps={labelPluginProps}\n placeholder={`Enter ${traitLabel}`}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n {error && <div className={classes.errorText}>{error.name || ''}</div>}\n </PrimaryBlock>\n\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={expandedPluginProps}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <ExpandedInput\n placeholder=\"Enter Description\"\n markup={description}\n error={error?.description || ''}\n onChange={(description) => this.onTraitChanged({ description })}\n pluginProps={expandedPluginProps}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n {error && <div className={classes.errorText}>{error.description || ''}</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 - 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 Descriptor\"\n markup={scoreDescriptor}\n onChange={(descriptor) => this.onScorePointDescriptorChange({ descriptor, value })}\n pluginProps={expandedPluginProps}\n alignToRight={remainingSpace < 296 && scorePointsValue < maxPoints} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\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 error: PropTypes.object,\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 traitLabel: PropTypes.string,\n scorePointsValues: PropTypes.arrayOf(PropTypes.number),\n showStandards: PropTypes.bool,\n showDescription: PropTypes.bool,\n maxPoints: PropTypes.number,\n enableDragAndDrop: PropTypes.bool,\n currentPosition: PropTypes.number,\n secondaryBlockWidth: PropTypes.number,\n expandedPluginProps: PropTypes.object,\n labelPluginProps: PropTypes.object,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\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(NAME, traitSource, (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging(),\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(NAME, traitTarget, (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver(),\n}))(StyledSource);\n\nexport default StyledSourceAndTarget;\n"],"file":"trait.js"}
@@ -64,7 +64,8 @@ var styles = function styles(theme) {
64
64
  primaryBlockGreyHeader: {
65
65
  paddingTop: theme.spacing.unit * 1.5
66
66
  },
67
- errorText: {
67
+ scorePointErrorText: {
68
+ position: 'absolute',
68
69
  fontSize: theme.typography.fontSize - 2,
69
70
  color: theme.palette.error.main,
70
71
  paddingTop: theme.spacing.unit / 2
@@ -162,7 +163,9 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
162
163
  errors = _this$props2$errors === void 0 ? {} : _this$props2$errors,
163
164
  maxMaxPoints = _this$props2.maxMaxPoints,
164
165
  _this$props2$labelPlu = _this$props2.labelPluginProps,
165
- labelPluginProps = _this$props2$labelPlu === void 0 ? {} : _this$props2$labelPlu;
166
+ labelPluginProps = _this$props2$labelPlu === void 0 ? {} : _this$props2$labelPlu,
167
+ _this$props2$imageSup = _this$props2.imageSupport,
168
+ imageSupport = _this$props2$imageSup === void 0 ? {} : _this$props2$imageSup;
166
169
  var anchorEl = this.state.anchorEl;
167
170
  return /*#__PURE__*/_react["default"].createElement(_common.Row, {
168
171
  className: classes.greyHeader,
@@ -176,7 +179,8 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
176
179
  spellCheck: spellCheck,
177
180
  label: "Level Label",
178
181
  uploadSoundSupport: uploadSoundSupport,
179
- mathMlOptions: mathMlOptions
182
+ mathMlOptions: mathMlOptions,
183
+ imageSupport: imageSupport
180
184
  }), /*#__PURE__*/_react["default"].createElement(_common.ScaleSettings, null, /*#__PURE__*/_react["default"].createElement("div", null, "Scale ", scaleIndex + 1), maxPointsEnabled && /*#__PURE__*/_react["default"].createElement(_common.MaxPointsPicker, {
181
185
  maxPoints: maxPoints,
182
186
  maxMaxPoints: maxMaxPoints,
@@ -242,9 +246,10 @@ var TraitsHeaderTile = /*#__PURE__*/function (_React$Component) {
242
246
  ,
243
247
  spellCheck: spellCheck,
244
248
  uploadSoundSupport: uploadSoundSupport,
245
- mathMlOptions: mathMlOptions
249
+ mathMlOptions: mathMlOptions,
250
+ imageSupport: imageSupport
246
251
  }), error && /*#__PURE__*/_react["default"].createElement("div", {
247
- className: classes.errorText
252
+ className: classes.scorePointErrorText
248
253
  }, error));
249
254
  })));
250
255
  }
@@ -278,7 +283,11 @@ TraitsHeaderTile.propTypes = {
278
283
  setSecondaryBlockRef: _propTypes["default"].func,
279
284
  uploadSoundSupport: _propTypes["default"].object,
280
285
  maxMaxPoints: _propTypes["default"].number,
281
- labelPluginProps: _propTypes["default"].object
286
+ labelPluginProps: _propTypes["default"].object,
287
+ imageSupport: _propTypes["default"].shape({
288
+ add: _propTypes["default"].func.isRequired,
289
+ "delete": _propTypes["default"].func.isRequired
290
+ })
282
291
  };
283
292
 
284
293
  var _default = (0, _styles.withStyles)(styles)(TraitsHeaderTile);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/traitsHeader.jsx"],"names":["styles","theme","label","textAlign","width","border","margin","spacing","unit","padding","display","alignItems","justifyContent","greyHeader","background","color","secondaryBackground","borderRadius","position","marginBottom","primaryBlockGreyHeader","paddingTop","errorText","fontSize","typography","palette","error","main","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","uploadSoundSupport","maxPointsEnabled","mathMlOptions","errors","maxMaxPoints","labelPluginProps","state","HeaderHeightLarge","HeaderHeight","handleClick","map","option","openMenu","ref","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointLabelChange","React","Component","PropTypes","bool","object","propTypes","isRequired","func","arrayOf","number","string"],"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/pie-toolbox/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';\n\nconst styles = (theme) => ({\n label: {\n textAlign: 'center',\n width: '140px',\n border: 'none',\n margin: theme.spacing.unit,\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 marginBottom: theme.spacing.unit * 2,\n },\n primaryBlockGreyHeader: {\n paddingTop: theme.spacing.unit * 1.5,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit / 2,\n },\n});\n\nexport class TraitsHeaderTile extends React.Component {\n static propTypes = {\n maxPointsEnabled: PropTypes.bool,\n spellCheck: PropTypes.bool,\n errors: PropTypes.object,\n };\n\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 uploadSoundSupport,\n maxPointsEnabled,\n mathMlOptions = {},\n errors = {},\n maxMaxPoints,\n labelPluginProps = {},\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={labelPluginProps}\n spellCheck={spellCheck}\n label=\"Level Label\"\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n )}\n\n <ScaleSettings>\n <div>Scale {scaleIndex + 1}</div>\n\n {maxPointsEnabled && (\n <MaxPointsPicker maxPoints={maxPoints} maxMaxPoints={maxMaxPoints} onChange={updateMaxPointsFieldValue} />\n )}\n\n <div>\n <IconButton aria-label=\"more\" aria-controls=\"long-menu\" aria-haspopup=\"true\" onClick={this.handleClick}>\n <MoreVertIcon />\n </IconButton>\n <Menu id=\"long-menu\" anchorEl={anchorEl} keepMounted open={!!anchorEl} onClose={this.handleClose}>\n {['Remove Scale'].map((option) => (\n <MenuItem key={option} onClick={this.openMenu}>\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 {showStandards && (\n <Block>\n <div className={classes.label}>Standard(s)</div>\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <div className={classes.label}>Description</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 let error;\n\n try {\n scoreDescriptor = scorePointsLabels[value] || '';\n error = errors[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`secondary-block-part-${index}`}>\n <ScorePoint\n scorePointsValue={scorePointsValue}\n error={error}\n scoreDescriptor={scoreDescriptor}\n pluginProps={labelPluginProps}\n showScorePointLabels={showScorePointLabels}\n onChange={(scorePointLabel) => this.onScorePointLabelChange({ scorePointLabel, value })}\n alignToRight={remainingSpace < 296 && scorePointsValue < maxPoints} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n {error && <div className={classes.errorText}>{error}</div>}\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 uploadSoundSupport: PropTypes.object,\n maxMaxPoints: PropTypes.number,\n labelPluginProps: PropTypes.object,\n};\n\nexport default withStyles(styles)(TraitsHeaderTile);\n"],"file":"traitsHeader.js"}
1
+ {"version":3,"sources":["../src/traitsHeader.jsx"],"names":["styles","theme","label","textAlign","width","border","margin","spacing","unit","padding","display","alignItems","justifyContent","greyHeader","background","color","secondaryBackground","borderRadius","position","marginBottom","primaryBlockGreyHeader","paddingTop","scorePointErrorText","fontSize","typography","palette","error","main","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","uploadSoundSupport","maxPointsEnabled","mathMlOptions","errors","maxMaxPoints","labelPluginProps","imageSupport","state","HeaderHeightLarge","HeaderHeight","handleClick","map","option","openMenu","ref","scorePointsValue","index","adjustedBlockWidth","BlockWidth","remainingSpace","scoreDescriptor","e","onScorePointLabelChange","React","Component","PropTypes","bool","object","propTypes","isRequired","func","arrayOf","number","string","shape","add"],"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/pie-toolbox/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';\n\nconst styles = (theme) => ({\n label: {\n textAlign: 'center',\n width: '140px',\n border: 'none',\n margin: theme.spacing.unit,\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 marginBottom: theme.spacing.unit * 2,\n },\n primaryBlockGreyHeader: {\n paddingTop: theme.spacing.unit * 1.5,\n },\n scorePointErrorText: {\n position: 'absolute',\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit / 2,\n },\n});\n\nexport class TraitsHeaderTile extends React.Component {\n static propTypes = {\n maxPointsEnabled: PropTypes.bool,\n spellCheck: PropTypes.bool,\n errors: PropTypes.object,\n };\n\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 uploadSoundSupport,\n maxPointsEnabled,\n mathMlOptions = {},\n errors = {},\n maxMaxPoints,\n labelPluginProps = {},\n imageSupport = {},\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={labelPluginProps}\n spellCheck={spellCheck}\n label=\"Level Label\"\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n )}\n\n <ScaleSettings>\n <div>Scale {scaleIndex + 1}</div>\n\n {maxPointsEnabled && (\n <MaxPointsPicker maxPoints={maxPoints} maxMaxPoints={maxMaxPoints} onChange={updateMaxPointsFieldValue} />\n )}\n\n <div>\n <IconButton aria-label=\"more\" aria-controls=\"long-menu\" aria-haspopup=\"true\" onClick={this.handleClick}>\n <MoreVertIcon />\n </IconButton>\n <Menu id=\"long-menu\" anchorEl={anchorEl} keepMounted open={!!anchorEl} onClose={this.handleClose}>\n {['Remove Scale'].map((option) => (\n <MenuItem key={option} onClick={this.openMenu}>\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 {showStandards && (\n <Block>\n <div className={classes.label}>Standard(s)</div>\n </Block>\n )}\n\n {showDescription && (\n <Block>\n <div className={classes.label}>Description</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 let error;\n\n try {\n scoreDescriptor = scorePointsLabels[value] || '';\n error = errors[value] || '';\n } catch (e) {\n scoreDescriptor = '';\n }\n\n return (\n <Block key={`secondary-block-part-${index}`}>\n <ScorePoint\n scorePointsValue={scorePointsValue}\n error={error}\n scoreDescriptor={scoreDescriptor}\n pluginProps={labelPluginProps}\n showScorePointLabels={showScorePointLabels}\n onChange={(scorePointLabel) => this.onScorePointLabelChange({ scorePointLabel, value })}\n alignToRight={remainingSpace < 296 && scorePointsValue < maxPoints} // 296 is the space required for the toolbar\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n imageSupport={imageSupport}\n />\n {error && <div className={classes.scorePointErrorText}>{error}</div>}\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 uploadSoundSupport: PropTypes.object,\n maxMaxPoints: PropTypes.number,\n labelPluginProps: PropTypes.object,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n};\n\nexport default withStyles(styles)(TraitsHeaderTile);\n"],"file":"traitsHeader.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": "3.8.2-next.29+ddcae38d5",
4
+ "version": "3.8.2-next.48+bd7303c2a",
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": "ddcae38d593f1103e73ef26ed1f9f1b1f3af65e2",
18
+ "gitHead": "bd7303c2a8774d73ac50417797994e6f7c0ad268",
19
19
  "scripts": {
20
20
  "postpublish": "../../scripts/postpublish"
21
21
  },