@pie-lib/config-ui 11.1.5-next.48 → 11.1.5-next.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/alert-dialog.js +10 -4
- package/lib/alert-dialog.js.map +1 -1
- package/lib/checkbox.js +17 -5
- package/lib/checkbox.js.map +1 -1
- package/lib/choice-configuration/feedback-menu.js +38 -5
- package/lib/choice-configuration/feedback-menu.js.map +1 -1
- package/lib/choice-configuration/index.js +94 -48
- package/lib/choice-configuration/index.js.map +1 -1
- package/lib/choice-utils.js +11 -1
- package/lib/choice-utils.js.map +1 -1
- package/lib/feedback-config/feedback-selector.js +41 -9
- package/lib/feedback-config/feedback-selector.js.map +1 -1
- package/lib/feedback-config/group.js +16 -5
- package/lib/feedback-config/group.js.map +1 -1
- package/lib/feedback-config/index.js +46 -6
- package/lib/feedback-config/index.js.map +1 -1
- package/lib/form-section.js +12 -4
- package/lib/form-section.js.map +1 -1
- package/lib/help.js +37 -6
- package/lib/help.js.map +1 -1
- package/lib/index.js +29 -0
- package/lib/index.js.map +1 -1
- package/lib/input.js +37 -9
- package/lib/input.js.map +1 -1
- package/lib/inputs.js +35 -16
- package/lib/inputs.js.map +1 -1
- package/lib/langs.js +39 -10
- package/lib/langs.js.map +1 -1
- package/lib/layout/config-layout.js +26 -3
- package/lib/layout/config-layout.js.map +1 -1
- package/lib/layout/index.js +3 -0
- package/lib/layout/index.js.map +1 -1
- package/lib/layout/layout-contents.js +39 -13
- package/lib/layout/layout-contents.js.map +1 -1
- package/lib/layout/settings-box.js +24 -3
- package/lib/layout/settings-box.js.map +1 -1
- package/lib/mui-box/index.js +10 -3
- package/lib/mui-box/index.js.map +1 -1
- package/lib/number-text-field-custom.js +82 -29
- package/lib/number-text-field-custom.js.map +1 -1
- package/lib/number-text-field.js +66 -16
- package/lib/number-text-field.js.map +1 -1
- package/lib/radio-with-label.js +11 -4
- package/lib/radio-with-label.js.map +1 -1
- package/lib/settings/display-size.js +15 -3
- package/lib/settings/display-size.js.map +1 -1
- package/lib/settings/index.js +27 -4
- package/lib/settings/index.js.map +1 -1
- package/lib/settings/panel.js +102 -40
- package/lib/settings/panel.js.map +1 -1
- package/lib/settings/settings-radio-label.js +11 -4
- package/lib/settings/settings-radio-label.js.map +1 -1
- package/lib/settings/toggle.js +10 -3
- package/lib/settings/toggle.js.map +1 -1
- package/lib/tabs/index.js +29 -6
- package/lib/tabs/index.js.map +1 -1
- package/lib/tags-input/index.js +41 -4
- package/lib/tags-input/index.js.map +1 -1
- package/lib/two-choice.js +48 -14
- package/lib/two-choice.js.map +1 -1
- package/lib/with-stateful-model.js +19 -0
- package/lib/with-stateful-model.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["EditableHtmlContainer","withStyles","theme","labelContainer","editorHolder","marginTop","spacing","unit","label","classes","onChange","value","className","imageSupport","disableImageAlignmentButtons","disabled","spellCheck","nonEmpty","toolbarOpts","error","maxImageWidth","maxImageHeight","uploadSoundSupport","names","classNames","editor","language","Feedback","text","width","feedbackContainer","position","arrowIcon","fill","left","top","type","correct","defaults","incorrect","ChoiceConfiguration","key","update","props","data","_changeFn","event","target","checked","v","feedback","fb","t","undefined","mode","onDelete","defaultFeedback","index","noLabels","useLetterOrdering","allowFeedBack","allowDelete","noCorrectAnswerError","InputToggle","InputCheckbox","InputRadio","choiceConfiguration","topRow","String","fromCharCode","toUpperCase","toggle","onCheckedChange","middleColumn","onLabelChange","errorText","onFeedbackValueChange","onFeedbackTypeChange","icon","feedbackIcon","deleteIcon","React","Component","PropTypes","object","isRequired","bool","string","oneOf","shape","func","number","add","styles","padding","display","flex","paddingRight","paddingTop","paddingLeft","marginLeft","margin","flexDirection","fontSize","color"],"sources":["../../src/choice-configuration/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport TextField from '@material-ui/core/TextField';\nimport classNames from 'classnames';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputCheckbox, InputRadio } from '../inputs';\nimport FeedbackMenu from './feedback-menu';\nimport ActionDelete from '@material-ui/icons/Delete';\nimport ArrowRight from '@material-ui/icons/SubdirectoryArrowRight';\nimport IconButton from '@material-ui/core/IconButton';\n\nconst EditableHtmlContainer = withStyles((theme) => ({\n labelContainer: {},\n editorHolder: {\n marginTop: theme.spacing.unit * 2,\n },\n}))(\n ({\n label,\n classes,\n onChange,\n value,\n className,\n imageSupport,\n disableImageAlignmentButtons,\n disabled,\n spellCheck,\n nonEmpty,\n toolbarOpts,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n }) => {\n const names = classNames(classes.labelContainer, className);\n\n return (\n <InputContainer label={label} className={names}>\n <div className={classes.editorHolder}>\n <EditableHtml\n markup={value || ''}\n disabled={disabled}\n spellCheck={spellCheck}\n nonEmpty={nonEmpty}\n onChange={onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={disableImageAlignmentButtons}\n className={classes.editor}\n toolbarOpts={toolbarOpts}\n error={error}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </div>\n </InputContainer>\n );\n },\n);\n\nconst Feedback = withStyles(() => ({\n text: {\n width: '100%',\n },\n feedbackContainer: {\n position: 'relative',\n },\n arrowIcon: {\n fill: '#ccc',\n left: -56,\n position: 'absolute',\n top: 20,\n },\n}))(({ value, onChange, type, correct, classes, defaults, toolbarOpts }) => {\n if (!type || type === 'none') {\n return null;\n } else if (type === 'default') {\n return (\n <div className={classes.feedbackContainer}>\n <ArrowRight className={classes.arrowIcon} />\n <TextField\n className={classes.text}\n label=\"Feedback Text\"\n value={correct ? defaults.correct : defaults.incorrect}\n />\n </div>\n );\n } else {\n return (\n <div className={classes.feedbackContainer}>\n <ArrowRight className={classes.arrowIcon} />\n <EditableHtmlContainer\n className={classes.text}\n label=\"Feedback Text\"\n value={value}\n onChange={onChange}\n toolbarOpts={toolbarOpts}\n />\n </div>\n );\n }\n});\n\nexport class ChoiceConfiguration extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n noLabels: PropTypes.bool,\n useLetterOrdering: PropTypes.bool,\n className: PropTypes.string,\n mode: PropTypes.oneOf(['checkbox', 'radio']),\n defaultFeedback: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n nonEmpty: PropTypes.bool,\n data: PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n correct: PropTypes.bool,\n feedback: PropTypes.shape({\n type: PropTypes.string,\n value: PropTypes.string,\n }),\n }),\n onDelete: PropTypes.func,\n onChange: PropTypes.func,\n index: PropTypes.number,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n disableImageAlignmentButtons: PropTypes.bool,\n allowFeedBack: PropTypes.bool,\n allowDelete: PropTypes.bool,\n toolbarOpts: PropTypes.object,\n };\n\n static defaultProps = {\n index: -1,\n noLabels: false,\n useLetterOrdering: false,\n allowFeedBack: true,\n allowDelete: true,\n };\n\n _changeFn = (key) => (update) => {\n const { data, onChange } = this.props;\n if (onChange) {\n onChange({ ...data, [key]: update });\n }\n };\n\n onLabelChange = this._changeFn('label');\n\n onCheckedChange = (event) => {\n const correct = event.target.checked;\n const { data, onChange } = this.props;\n\n if (onChange) {\n onChange({ ...data, correct });\n }\n };\n\n onFeedbackValueChange = (v) => {\n const { data, onChange } = this.props;\n\n if (data.feedback.type !== 'custom') {\n return;\n }\n\n const fb = { ...data.feedback, value: v };\n\n if (onChange) onChange({ ...data, feedback: fb });\n };\n\n onFeedbackTypeChange = (t) => {\n const { data, onChange } = this.props;\n const fb = { ...data.feedback, type: t };\n if (fb.type !== 'custom') {\n fb.value = undefined;\n }\n\n if (onChange) onChange({ ...data, feedback: fb });\n };\n\n render() {\n const {\n data,\n classes,\n mode,\n onDelete,\n defaultFeedback,\n index,\n className,\n noLabels,\n useLetterOrdering,\n imageSupport,\n disableImageAlignmentButtons,\n disabled,\n spellCheck,\n nonEmpty,\n allowFeedBack,\n allowDelete,\n toolbarOpts,\n error,\n noCorrectAnswerError,\n uploadSoundSupport,\n } = this.props;\n\n const InputToggle = mode === 'checkbox' ? InputCheckbox : InputRadio;\n const names = classNames(classes.choiceConfiguration, className);\n return (\n <div className={names}>\n <div className={classes.topRow}>\n {index > 0 && (\n <span className={classes.index} type=\"title\">\n {useLetterOrdering ? String.fromCharCode(96 + index).toUpperCase() : index}\n </span>\n )}\n <InputToggle\n className={classes.toggle}\n onChange={this.onCheckedChange}\n label={!noLabels ? 'Correct' : ''}\n checked={!!data.correct}\n error={noCorrectAnswerError}\n />\n <div className={classes.middleColumn}>\n <EditableHtmlContainer\n label={!noLabels ? 'Label' : ''}\n value={data.label}\n onChange={this.onLabelChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={disableImageAlignmentButtons}\n disabled={disabled}\n spellCheck={spellCheck}\n nonEmpty={nonEmpty}\n toolbarOpts={toolbarOpts}\n error={error}\n uploadSoundSupport={uploadSoundSupport}\n />\n {error && <div className={classes.errorText}>{error}</div>}\n\n {allowFeedBack && (\n <Feedback\n {...data.feedback}\n correct={data.correct}\n defaults={defaultFeedback}\n onChange={this.onFeedbackValueChange}\n toolbarOpts={toolbarOpts}\n />\n )}\n </div>\n {allowFeedBack && (\n <InputContainer className={classes.feedback} label={!noLabels ? 'Feedback' : ''}>\n <FeedbackMenu\n onChange={this.onFeedbackTypeChange}\n value={data.feedback}\n classes={{\n icon: classes.feedbackIcon,\n }}\n />\n </InputContainer>\n )}\n {allowDelete && (\n <InputContainer className={classes.delete} label={!noLabels ? 'Delete' : ''}>\n <IconButton aria-label=\"delete\" className={classes.deleteIcon} onClick={onDelete}>\n <ActionDelete />\n </IconButton>\n </InputContainer>\n )}\n </div>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n index: {\n padding: '24px 10px 0 0',\n },\n choiceConfiguration: {},\n topRow: {\n display: 'flex',\n },\n value: {\n flex: '0.5',\n paddingRight: theme.spacing.unit,\n },\n editorHolder: {\n marginTop: theme.spacing.unit * 2,\n },\n toggle: {\n flex: '0 1 auto',\n },\n feedback: {\n flex: '0 1 auto',\n paddingTop: theme.spacing.unit,\n paddingLeft: 0,\n marginLeft: 0,\n paddingRight: theme.spacing.unit * 3,\n },\n feedbackIcon: {\n margin: 0,\n paddingLeft: 0,\n width: 'inherit',\n },\n deleteIcon: {\n margin: 0,\n width: 'inherit',\n },\n delete: {\n flex: '0 1 auto',\n paddingTop: theme.spacing.unit,\n paddingLeft: 0,\n marginLeft: 0,\n },\n middleColumn: {\n display: 'flex',\n flex: 1,\n flexDirection: 'column',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n },\n});\n\nexport default withStyles(styles)(ChoiceConfiguration);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/choice-configuration/index.jsx"],"names":["EditableHtmlContainer","theme","labelContainer","editorHolder","marginTop","spacing","unit","label","classes","onChange","value","className","imageSupport","disableImageAlignmentButtons","disabled","spellCheck","nonEmpty","toolbarOpts","error","maxImageWidth","maxImageHeight","uploadSoundSupport","names","editor","language","Feedback","text","width","feedbackContainer","position","arrowIcon","fill","left","top","type","correct","defaults","incorrect","ChoiceConfiguration","key","update","props","data","_changeFn","event","target","checked","v","feedback","fb","t","undefined","mode","onDelete","defaultFeedback","index","noLabels","useLetterOrdering","allowFeedBack","allowDelete","noCorrectAnswerError","InputToggle","InputCheckbox","InputRadio","choiceConfiguration","topRow","String","fromCharCode","toUpperCase","toggle","onCheckedChange","middleColumn","onLabelChange","errorText","onFeedbackValueChange","onFeedbackTypeChange","icon","feedbackIcon","deleteIcon","React","Component","PropTypes","object","isRequired","bool","string","oneOf","shape","func","number","add","styles","padding","display","flex","paddingRight","paddingTop","paddingLeft","marginLeft","margin","flexDirection","fontSize","color"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport TextField from '@material-ui/core/TextField';\nimport classNames from 'classnames';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputCheckbox, InputRadio } from '../inputs';\nimport FeedbackMenu from './feedback-menu';\nimport ActionDelete from '@material-ui/icons/Delete';\nimport ArrowRight from '@material-ui/icons/SubdirectoryArrowRight';\nimport IconButton from '@material-ui/core/IconButton';\n\nconst EditableHtmlContainer = withStyles((theme) => ({\n labelContainer: {},\n editorHolder: {\n marginTop: theme.spacing.unit * 2,\n },\n}))(\n ({\n label,\n classes,\n onChange,\n value,\n className,\n imageSupport,\n disableImageAlignmentButtons,\n disabled,\n spellCheck,\n nonEmpty,\n toolbarOpts,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n }) => {\n const names = classNames(classes.labelContainer, className);\n\n return (\n <InputContainer label={label} className={names}>\n <div className={classes.editorHolder}>\n <EditableHtml\n markup={value || ''}\n disabled={disabled}\n spellCheck={spellCheck}\n nonEmpty={nonEmpty}\n onChange={onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={disableImageAlignmentButtons}\n className={classes.editor}\n toolbarOpts={toolbarOpts}\n error={error}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </div>\n </InputContainer>\n );\n },\n);\n\nconst Feedback = withStyles(() => ({\n text: {\n width: '100%',\n },\n feedbackContainer: {\n position: 'relative',\n },\n arrowIcon: {\n fill: '#ccc',\n left: -56,\n position: 'absolute',\n top: 20,\n },\n}))(({ value, onChange, type, correct, classes, defaults, toolbarOpts }) => {\n if (!type || type === 'none') {\n return null;\n } else if (type === 'default') {\n return (\n <div className={classes.feedbackContainer}>\n <ArrowRight className={classes.arrowIcon} />\n <TextField\n className={classes.text}\n label=\"Feedback Text\"\n value={correct ? defaults.correct : defaults.incorrect}\n />\n </div>\n );\n } else {\n return (\n <div className={classes.feedbackContainer}>\n <ArrowRight className={classes.arrowIcon} />\n <EditableHtmlContainer\n className={classes.text}\n label=\"Feedback Text\"\n value={value}\n onChange={onChange}\n toolbarOpts={toolbarOpts}\n />\n </div>\n );\n }\n});\n\nexport class ChoiceConfiguration extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n noLabels: PropTypes.bool,\n useLetterOrdering: PropTypes.bool,\n className: PropTypes.string,\n mode: PropTypes.oneOf(['checkbox', 'radio']),\n defaultFeedback: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n nonEmpty: PropTypes.bool,\n data: PropTypes.shape({\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n correct: PropTypes.bool,\n feedback: PropTypes.shape({\n type: PropTypes.string,\n value: PropTypes.string,\n }),\n }),\n onDelete: PropTypes.func,\n onChange: PropTypes.func,\n index: PropTypes.number,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n disableImageAlignmentButtons: PropTypes.bool,\n allowFeedBack: PropTypes.bool,\n allowDelete: PropTypes.bool,\n toolbarOpts: PropTypes.object,\n };\n\n static defaultProps = {\n index: -1,\n noLabels: false,\n useLetterOrdering: false,\n allowFeedBack: true,\n allowDelete: true,\n };\n\n _changeFn = (key) => (update) => {\n const { data, onChange } = this.props;\n if (onChange) {\n onChange({ ...data, [key]: update });\n }\n };\n\n onLabelChange = this._changeFn('label');\n\n onCheckedChange = (event) => {\n const correct = event.target.checked;\n const { data, onChange } = this.props;\n\n if (onChange) {\n onChange({ ...data, correct });\n }\n };\n\n onFeedbackValueChange = (v) => {\n const { data, onChange } = this.props;\n\n if (data.feedback.type !== 'custom') {\n return;\n }\n\n const fb = { ...data.feedback, value: v };\n\n if (onChange) onChange({ ...data, feedback: fb });\n };\n\n onFeedbackTypeChange = (t) => {\n const { data, onChange } = this.props;\n const fb = { ...data.feedback, type: t };\n if (fb.type !== 'custom') {\n fb.value = undefined;\n }\n\n if (onChange) onChange({ ...data, feedback: fb });\n };\n\n render() {\n const {\n data,\n classes,\n mode,\n onDelete,\n defaultFeedback,\n index,\n className,\n noLabels,\n useLetterOrdering,\n imageSupport,\n disableImageAlignmentButtons,\n disabled,\n spellCheck,\n nonEmpty,\n allowFeedBack,\n allowDelete,\n toolbarOpts,\n error,\n noCorrectAnswerError,\n uploadSoundSupport,\n } = this.props;\n\n const InputToggle = mode === 'checkbox' ? InputCheckbox : InputRadio;\n const names = classNames(classes.choiceConfiguration, className);\n return (\n <div className={names}>\n <div className={classes.topRow}>\n {index > 0 && (\n <span className={classes.index} type=\"title\">\n {useLetterOrdering ? String.fromCharCode(96 + index).toUpperCase() : index}\n </span>\n )}\n <InputToggle\n className={classes.toggle}\n onChange={this.onCheckedChange}\n label={!noLabels ? 'Correct' : ''}\n checked={!!data.correct}\n error={noCorrectAnswerError}\n />\n <div className={classes.middleColumn}>\n <EditableHtmlContainer\n label={!noLabels ? 'Label' : ''}\n value={data.label}\n onChange={this.onLabelChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={disableImageAlignmentButtons}\n disabled={disabled}\n spellCheck={spellCheck}\n nonEmpty={nonEmpty}\n toolbarOpts={toolbarOpts}\n error={error}\n uploadSoundSupport={uploadSoundSupport}\n />\n {error && <div className={classes.errorText}>{error}</div>}\n\n {allowFeedBack && (\n <Feedback\n {...data.feedback}\n correct={data.correct}\n defaults={defaultFeedback}\n onChange={this.onFeedbackValueChange}\n toolbarOpts={toolbarOpts}\n />\n )}\n </div>\n {allowFeedBack && (\n <InputContainer className={classes.feedback} label={!noLabels ? 'Feedback' : ''}>\n <FeedbackMenu\n onChange={this.onFeedbackTypeChange}\n value={data.feedback}\n classes={{\n icon: classes.feedbackIcon,\n }}\n />\n </InputContainer>\n )}\n {allowDelete && (\n <InputContainer className={classes.delete} label={!noLabels ? 'Delete' : ''}>\n <IconButton aria-label=\"delete\" className={classes.deleteIcon} onClick={onDelete}>\n <ActionDelete />\n </IconButton>\n </InputContainer>\n )}\n </div>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n index: {\n padding: '24px 10px 0 0',\n },\n choiceConfiguration: {},\n topRow: {\n display: 'flex',\n },\n value: {\n flex: '0.5',\n paddingRight: theme.spacing.unit,\n },\n editorHolder: {\n marginTop: theme.spacing.unit * 2,\n },\n toggle: {\n flex: '0 1 auto',\n },\n feedback: {\n flex: '0 1 auto',\n paddingTop: theme.spacing.unit,\n paddingLeft: 0,\n marginLeft: 0,\n paddingRight: theme.spacing.unit * 3,\n },\n feedbackIcon: {\n margin: 0,\n paddingLeft: 0,\n width: 'inherit',\n },\n deleteIcon: {\n margin: 0,\n width: 'inherit',\n },\n delete: {\n flex: '0 1 auto',\n paddingTop: theme.spacing.unit,\n paddingLeft: 0,\n marginLeft: 0,\n },\n middleColumn: {\n display: 'flex',\n flex: 1,\n flexDirection: 'column',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n },\n});\n\nexport default withStyles(styles)(ChoiceConfiguration);\n"],"file":"index.js"}
|
package/lib/choice-utils.js
CHANGED
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.normalizeChoices = exports.firstAvailableIndex = void 0;
|
|
9
|
+
|
|
8
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
9
12
|
var _includes = _interopRequireDefault(require("lodash/includes"));
|
|
13
|
+
|
|
10
14
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
+
|
|
11
16
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
|
+
|
|
12
18
|
/**
|
|
13
19
|
* Add value to every model.choices.
|
|
14
20
|
* @param {Object} model the model to normalize
|
|
@@ -19,20 +25,23 @@ var normalizeChoices = function normalizeChoices(model) {
|
|
|
19
25
|
if (!c.value) {
|
|
20
26
|
c.value = "".concat(index);
|
|
21
27
|
}
|
|
28
|
+
|
|
22
29
|
return c;
|
|
23
30
|
});
|
|
24
31
|
return _objectSpread(_objectSpread({}, model), {}, {
|
|
25
32
|
choices: choices
|
|
26
33
|
});
|
|
27
34
|
};
|
|
28
|
-
|
|
29
35
|
/**
|
|
30
36
|
* Find the first available index.
|
|
31
37
|
* @param {string[]} values
|
|
32
38
|
* @param {number} index
|
|
33
39
|
* @return {string}
|
|
34
40
|
*/
|
|
41
|
+
|
|
42
|
+
|
|
35
43
|
exports.normalizeChoices = normalizeChoices;
|
|
44
|
+
|
|
36
45
|
var firstAvailableIndex = function firstAvailableIndex(values, index) {
|
|
37
46
|
if ((0, _includes["default"])(values, "".concat(index))) {
|
|
38
47
|
return firstAvailableIndex(values, index + 1);
|
|
@@ -40,5 +49,6 @@ var firstAvailableIndex = function firstAvailableIndex(values, index) {
|
|
|
40
49
|
return "".concat(index);
|
|
41
50
|
}
|
|
42
51
|
};
|
|
52
|
+
|
|
43
53
|
exports.firstAvailableIndex = firstAvailableIndex;
|
|
44
54
|
//# sourceMappingURL=choice-utils.js.map
|
package/lib/choice-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../src/choice-utils.js"],"names":["normalizeChoices","model","choices","map","c","index","value","firstAvailableIndex","values"],"mappings":";;;;;;;;;;;AAAA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAAW;AACzC,MAAMC,OAAO,GAAGD,KAAK,CAACC,OAAN,CAAcC,GAAd,CAAkB,UAACC,CAAD,EAAIC,KAAJ,EAAc;AAC9C,QAAI,CAACD,CAAC,CAACE,KAAP,EAAc;AACZF,MAAAA,CAAC,CAACE,KAAF,aAAaD,KAAb;AACD;;AACD,WAAOD,CAAP;AACD,GALe,CAAhB;AAMA,yCAAYH,KAAZ;AAAmBC,IAAAA,OAAO,EAAPA;AAAnB;AACD,CARM;AAUP;AACA;AACA;AACA;AACA;AACA;;;;;AACO,IAAMK,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,MAAD,EAASH,KAAT,EAAmB;AACpD,MAAI,0BAASG,MAAT,YAAoBH,KAApB,EAAJ,EAAkC;AAChC,WAAOE,mBAAmB,CAACC,MAAD,EAASH,KAAK,GAAG,CAAjB,CAA1B;AACD,GAFD,MAEO;AACL,qBAAUA,KAAV;AACD;AACF,CANM","sourcesContent":["import includes from 'lodash/includes';\n\n/**\n * Add value to every model.choices.\n * @param {Object} model the model to normalize\n * @return {Object} the updated model\n */\nexport const normalizeChoices = (model) => {\n const choices = model.choices.map((c, index) => {\n if (!c.value) {\n c.value = `${index}`;\n }\n return c;\n });\n return { ...model, choices };\n};\n\n/**\n * Find the first available index.\n * @param {string[]} values\n * @param {number} index\n * @return {string}\n */\nexport const firstAvailableIndex = (values, index) => {\n if (includes(values, `${index}`)) {\n return firstAvailableIndex(values, index + 1);\n } else {\n return `${index}`;\n }\n};\n"],"file":"choice-utils.js"}
|
|
@@ -1,32 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = exports.FeedbackType = exports.FeedbackSelector = void 0;
|
|
9
|
+
|
|
8
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
|
|
9
12
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
+
|
|
10
14
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
+
|
|
11
16
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
+
|
|
12
18
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
+
|
|
13
20
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
+
|
|
14
22
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
+
|
|
15
24
|
var _editableHtml = _interopRequireDefault(require("@pie-lib/editable-html"));
|
|
25
|
+
|
|
16
26
|
var _renderUi = require("@pie-lib/render-ui");
|
|
27
|
+
|
|
17
28
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
29
|
+
|
|
18
30
|
var _react = _interopRequireDefault(require("react"));
|
|
31
|
+
|
|
19
32
|
var _styles = require("@material-ui/core/styles");
|
|
33
|
+
|
|
20
34
|
var _group = _interopRequireDefault(require("./group"));
|
|
35
|
+
|
|
21
36
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
37
|
+
|
|
22
38
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
39
|
+
|
|
23
40
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
41
|
+
|
|
24
42
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
43
|
+
|
|
25
44
|
var feedbackLabels = {
|
|
26
45
|
"default": 'Simple Feedback',
|
|
27
46
|
none: 'No Feedback',
|
|
28
47
|
custom: 'Customized Feedback'
|
|
29
48
|
};
|
|
49
|
+
|
|
30
50
|
var holder = function holder(theme, extras) {
|
|
31
51
|
return _objectSpread({
|
|
32
52
|
marginTop: '0px',
|
|
@@ -35,6 +55,7 @@ var holder = function holder(theme, extras) {
|
|
|
35
55
|
marginBottom: theme.spacing.unit * 2
|
|
36
56
|
}, extras);
|
|
37
57
|
};
|
|
58
|
+
|
|
38
59
|
var style = function style(theme) {
|
|
39
60
|
return {
|
|
40
61
|
feedbackSelector: {
|
|
@@ -65,34 +86,41 @@ var style = function style(theme) {
|
|
|
65
86
|
}
|
|
66
87
|
};
|
|
67
88
|
};
|
|
89
|
+
|
|
68
90
|
var FeedbackType = {
|
|
69
91
|
type: _propTypes["default"].oneOf(['default', 'custom', 'none']),
|
|
70
92
|
"default": _propTypes["default"].string,
|
|
71
93
|
custom: _propTypes["default"].string
|
|
72
94
|
};
|
|
73
95
|
exports.FeedbackType = FeedbackType;
|
|
96
|
+
|
|
74
97
|
var FeedbackSelector = /*#__PURE__*/function (_React$Component) {
|
|
75
98
|
(0, _inherits2["default"])(FeedbackSelector, _React$Component);
|
|
99
|
+
|
|
76
100
|
var _super = _createSuper(FeedbackSelector);
|
|
101
|
+
|
|
77
102
|
function FeedbackSelector() {
|
|
78
103
|
var _this;
|
|
104
|
+
|
|
79
105
|
(0, _classCallCheck2["default"])(this, FeedbackSelector);
|
|
106
|
+
|
|
80
107
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
81
108
|
args[_key] = arguments[_key];
|
|
82
109
|
}
|
|
110
|
+
|
|
83
111
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
84
112
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeType", function (type) {
|
|
85
113
|
var _this$props = _this.props,
|
|
86
|
-
|
|
87
|
-
|
|
114
|
+
onChange = _this$props.onChange,
|
|
115
|
+
feedback = _this$props.feedback;
|
|
88
116
|
onChange(_objectSpread(_objectSpread({}, feedback), {}, {
|
|
89
117
|
type: type
|
|
90
118
|
}));
|
|
91
119
|
});
|
|
92
120
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeCustom", function (custom) {
|
|
93
121
|
var _this$props2 = _this.props,
|
|
94
|
-
|
|
95
|
-
|
|
122
|
+
onChange = _this$props2.onChange,
|
|
123
|
+
feedback = _this$props2.feedback;
|
|
96
124
|
onChange(_objectSpread(_objectSpread({}, feedback), {}, {
|
|
97
125
|
type: 'custom',
|
|
98
126
|
custom: custom
|
|
@@ -100,15 +128,16 @@ var FeedbackSelector = /*#__PURE__*/function (_React$Component) {
|
|
|
100
128
|
});
|
|
101
129
|
return _this;
|
|
102
130
|
}
|
|
131
|
+
|
|
103
132
|
(0, _createClass2["default"])(FeedbackSelector, [{
|
|
104
133
|
key: "render",
|
|
105
134
|
value: function render() {
|
|
106
135
|
var _this$props3 = this.props,
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
136
|
+
keys = _this$props3.keys,
|
|
137
|
+
classes = _this$props3.classes,
|
|
138
|
+
label = _this$props3.label,
|
|
139
|
+
feedback = _this$props3.feedback,
|
|
140
|
+
toolbarOpts = _this$props3.toolbarOpts;
|
|
112
141
|
var feedbackKeys = keys || Object.keys(feedbackLabels);
|
|
113
142
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
114
143
|
className: classes.feedbackSelector
|
|
@@ -144,6 +173,7 @@ var FeedbackSelector = /*#__PURE__*/function (_React$Component) {
|
|
|
144
173
|
}]);
|
|
145
174
|
return FeedbackSelector;
|
|
146
175
|
}(_react["default"].Component);
|
|
176
|
+
|
|
147
177
|
exports.FeedbackSelector = FeedbackSelector;
|
|
148
178
|
(0, _defineProperty2["default"])(FeedbackSelector, "propTypes", {
|
|
149
179
|
keys: _propTypes["default"].arrayOf(_propTypes["default"].string),
|
|
@@ -153,6 +183,8 @@ exports.FeedbackSelector = FeedbackSelector;
|
|
|
153
183
|
onChange: _propTypes["default"].func.isRequired,
|
|
154
184
|
toolbarOpts: _propTypes["default"].object
|
|
155
185
|
});
|
|
186
|
+
|
|
156
187
|
var _default = (0, _styles.withStyles)(style)(FeedbackSelector);
|
|
188
|
+
|
|
157
189
|
exports["default"] = _default;
|
|
158
190
|
//# sourceMappingURL=feedback-selector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/feedback-config/feedback-selector.jsx"],"names":["feedbackLabels","none","custom","holder","theme","extras","marginTop","background","padding","spacing","unit","marginBottom","style","feedbackSelector","label","cursor","inputContainerLabel","transform","feedbackInputContainer","paddingBottom","customHolder","defaultHolder","fontFamily","typography","editor","group","paddingTop","FeedbackType","type","PropTypes","oneOf","string","FeedbackSelector","props","onChange","feedback","keys","classes","toolbarOpts","feedbackKeys","Object","changeType","changeCustom","language","React","Component","arrayOf","object","isRequired","shape","func"],"mappings":"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","sourcesContent":["import EditableHTML from '@pie-lib/editable-html';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport Group from './group';\n\nconst feedbackLabels = {\n default: 'Simple Feedback',\n none: 'No Feedback',\n custom: 'Customized Feedback',\n};\n\nconst holder = (theme, extras) => ({\n marginTop: '0px',\n background: '#e0dee0',\n padding: theme.spacing.unit * 0.9,\n marginBottom: theme.spacing.unit * 2,\n ...extras,\n});\n\nconst style = (theme) => ({\n feedbackSelector: {\n marginBottom: theme.spacing.unit,\n },\n label: {\n cursor: 'pointer',\n },\n inputContainerLabel: {\n transform: 'translateY(-20%)',\n },\n feedbackInputContainer: {\n paddingBottom: 0,\n },\n customHolder: holder(theme, {\n background: '#e0dee0',\n padding: 0,\n }),\n defaultHolder: holder(theme, {\n fontFamily: theme.typography.fontFamily,\n cursor: 'default',\n }),\n editor: {\n fontFamily: theme.typography.fontFamily,\n },\n group: {\n paddingTop: theme.spacing.unit,\n },\n});\n\nexport const FeedbackType = {\n type: PropTypes.oneOf(['default', 'custom', 'none']),\n default: PropTypes.string,\n custom: PropTypes.string,\n};\n\nexport class FeedbackSelector extends React.Component {\n static propTypes = {\n keys: PropTypes.arrayOf(PropTypes.string),\n classes: PropTypes.object.isRequired,\n label: PropTypes.string.isRequired,\n feedback: PropTypes.shape(FeedbackType).isRequired,\n onChange: PropTypes.func.isRequired,\n toolbarOpts: PropTypes.object,\n };\n\n changeType = (type) => {\n const { onChange, feedback } = this.props;\n onChange({ ...feedback, type });\n };\n\n changeCustom = (custom) => {\n const { onChange, feedback } = this.props;\n onChange({ ...feedback, type: 'custom', custom });\n };\n\n render() {\n const { keys, classes, label, feedback, toolbarOpts } = this.props;\n\n const feedbackKeys = keys || Object.keys(feedbackLabels);\n\n return (\n <div className={classes.feedbackSelector}>\n <InputContainer\n label={label}\n className={classes.feedbackInputContainer}\n extraClasses={{ label: classes.inputContainerLabel }}\n >\n <Group\n className={classes.group}\n keys={feedbackKeys}\n label={label}\n value={feedback.type}\n onChange={this.changeType}\n feedbackLabels={feedbackLabels}\n />\n </InputContainer>\n {feedback.type === 'custom' && (\n <div className={classes.customHolder}>\n <EditableHTML\n className={classes.editor}\n onChange={this.changeCustom}\n markup={feedback.custom || ''}\n toolbarOpts={toolbarOpts}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </div>\n )}\n {feedback.type === 'default' && <div className={classes.defaultHolder}> {feedback.default}</div>}\n </div>\n );\n }\n}\n\nexport default withStyles(style)(FeedbackSelector);\n"],"file":"feedback-selector.js"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports["default"] = void 0;
|
|
9
|
+
|
|
8
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
9
12
|
var _radioWithLabel = _interopRequireDefault(require("../radio-with-label"));
|
|
13
|
+
|
|
10
14
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
+
|
|
11
16
|
var _styles = require("@material-ui/core/styles");
|
|
17
|
+
|
|
12
18
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
|
+
|
|
13
20
|
var styles = function styles() {
|
|
14
21
|
return {
|
|
15
22
|
radioLabel: {
|
|
@@ -25,13 +32,14 @@ var styles = function styles() {
|
|
|
25
32
|
}
|
|
26
33
|
};
|
|
27
34
|
};
|
|
35
|
+
|
|
28
36
|
var Group = function Group(props) {
|
|
29
37
|
var feedbackLabels = props.feedbackLabels,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
38
|
+
value = props.value,
|
|
39
|
+
classes = props.classes,
|
|
40
|
+
className = props.className,
|
|
41
|
+
_onChange = props.onChange,
|
|
42
|
+
keys = props.keys;
|
|
35
43
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
36
44
|
className: (0, _classnames["default"])(classes.choiceHolder, className)
|
|
37
45
|
}, keys.map(function (key) {
|
|
@@ -51,6 +59,7 @@ var Group = function Group(props) {
|
|
|
51
59
|
}));
|
|
52
60
|
}));
|
|
53
61
|
};
|
|
62
|
+
|
|
54
63
|
Group.propTypes = {
|
|
55
64
|
className: _propTypes["default"].string,
|
|
56
65
|
feedbackLabels: _propTypes["default"].object.isRequired,
|
|
@@ -59,6 +68,8 @@ Group.propTypes = {
|
|
|
59
68
|
keys: _propTypes["default"].arrayOf(_propTypes["default"].string),
|
|
60
69
|
onChange: _propTypes["default"].func
|
|
61
70
|
};
|
|
71
|
+
|
|
62
72
|
var _default = (0, _styles.withStyles)(styles)(Group);
|
|
73
|
+
|
|
63
74
|
exports["default"] = _default;
|
|
64
75
|
//# sourceMappingURL=group.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/feedback-config/group.jsx"],"names":["styles","radioLabel","fontSize","choice","display","alignItems","choiceHolder","Group","props","feedbackLabels","value","classes","className","onChange","keys","map","key","label","e","currentTarget","propTypes","PropTypes","string","object","isRequired","arrayOf","func"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBC,IAAAA,UAAU,EAAE;AACVC,MAAAA,QAAQ,EAAE;AADA,KADQ;AAIpBC,IAAAA,MAAM,EAAE;AACNC,MAAAA,OAAO,EAAE,MADH;AAENC,MAAAA,UAAU,EAAE;AAFN,KAJY;AAQpBC,IAAAA,YAAY,EAAE;AACZF,MAAAA,OAAO,EAAE,MADG;AAEZC,MAAAA,UAAU,EAAE;AAFA;AARM,GAAP;AAAA,CAAf;;AAcA,IAAME,KAAK,GAAG,SAARA,KAAQ,CAACC,KAAD,EAAW;AACvB,MAAQC,cAAR,GAAsED,KAAtE,CAAQC,cAAR;AAAA,MAAwBC,KAAxB,GAAsEF,KAAtE,CAAwBE,KAAxB;AAAA,MAA+BC,OAA/B,GAAsEH,KAAtE,CAA+BG,OAA/B;AAAA,MAAwCC,SAAxC,GAAsEJ,KAAtE,CAAwCI,SAAxC;AAAA,MAAmDC,SAAnD,GAAsEL,KAAtE,CAAmDK,QAAnD;AAAA,MAA6DC,IAA7D,GAAsEN,KAAtE,CAA6DM,IAA7D;AAEA,sBACE;AAAK,IAAA,SAAS,EAAE,4BAAWH,OAAO,CAACL,YAAnB,EAAiCM,SAAjC;AAAhB,KACGE,IAAI,CAACC,GAAL,CAAS,UAACC,GAAD,EAAS;AACjB,wBACE;AAAK,MAAA,SAAS,EAAEL,OAAO,CAACR,MAAxB;AAAgC,MAAA,GAAG,EAAEa;AAArC,oBACE,gCAAC,0BAAD;AACE,MAAA,KAAK,EAAEA,GADT;AAEE,MAAA,OAAO,EAAEN,KAAK,KAAKM,GAFrB;AAGE,MAAA,OAAO,EAAE;AACPC,QAAAA,KAAK,EAAEN,OAAO,CAACV;AADR,OAHX;AAME,MAAA,QAAQ,EAAE,kBAACiB,CAAD;AAAA,eAAOL,SAAQ,CAACK,CAAC,CAACC,aAAF,CAAgBT,KAAjB,CAAf;AAAA,OANZ;AAOE,MAAA,KAAK,EAAED,cAAc,CAACO,GAAD;AAPvB,MADF,CADF;AAaD,GAdA,CADH,CADF;AAmBD,CAtBD;;AAwBAT,KAAK,CAACa,SAAN,GAAkB;AAChBR,EAAAA,SAAS,EAAES,sBAAUC,MADL;AAEhBb,EAAAA,cAAc,EAAEY,sBAAUE,MAAV,CAAiBC,UAFjB;AAGhBd,EAAAA,KAAK,EAAEW,sBAAUC,MAAV,CAAiBE,UAHR;AAIhBb,EAAAA,OAAO,EAAEU,sBAAUE,MAAV,CAAiBC,UAJV;AAKhBV,EAAAA,IAAI,EAAEO,sBAAUI,OAAV,CAAkBJ,sBAAUC,MAA5B,CALU;AAMhBT,EAAAA,QAAQ,EAAEQ,sBAAUK;AANJ,CAAlB;;eASe,wBAAW1B,MAAX,EAAmBO,KAAnB,C","sourcesContent":["import PropTypes from 'prop-types';\nimport RadioWithLabel from '../radio-with-label';\nimport React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\n\nconst styles = () => ({\n radioLabel: {\n fontSize: '12px',\n },\n choice: {\n display: 'flex',\n alignItems: 'center',\n },\n choiceHolder: {\n display: 'flex',\n alignItems: 'center',\n },\n});\n\nconst Group = (props) => {\n const { feedbackLabels, value, classes, className, onChange, keys } = props;\n\n return (\n <div className={classNames(classes.choiceHolder, className)}>\n {keys.map((key) => {\n return (\n <div className={classes.choice} key={key}>\n <RadioWithLabel\n value={key}\n checked={value === key}\n classes={{\n label: classes.radioLabel,\n }}\n onChange={(e) => onChange(e.currentTarget.value)}\n label={feedbackLabels[key]}\n />\n </div>\n );\n })}\n </div>\n );\n};\n\nGroup.propTypes = {\n className: PropTypes.string,\n feedbackLabels: PropTypes.object.isRequired,\n value: PropTypes.string.isRequired,\n classes: PropTypes.object.isRequired,\n keys: PropTypes.arrayOf(PropTypes.string),\n onChange: PropTypes.func,\n};\n\nexport default withStyles(styles)(Group);\n"],"file":"group.js"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
@@ -13,35 +15,60 @@ Object.defineProperty(exports, "FeedbackSelector", {
|
|
|
13
15
|
}
|
|
14
16
|
});
|
|
15
17
|
exports["default"] = exports.buildDefaults = void 0;
|
|
18
|
+
|
|
16
19
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
20
|
+
|
|
17
21
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
22
|
+
|
|
18
23
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
24
|
+
|
|
19
25
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
26
|
+
|
|
20
27
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
28
|
+
|
|
21
29
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
30
|
+
|
|
22
31
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
32
|
+
|
|
23
33
|
var _feedbackSelector = _interopRequireWildcard(require("./feedback-selector"));
|
|
34
|
+
|
|
24
35
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
36
|
+
|
|
25
37
|
var _react = _interopRequireDefault(require("react"));
|
|
38
|
+
|
|
26
39
|
var _styles = require("@material-ui/core/styles");
|
|
40
|
+
|
|
27
41
|
var _ExpansionPanel = _interopRequireDefault(require("@material-ui/core/ExpansionPanel"));
|
|
42
|
+
|
|
28
43
|
var _ExpansionPanelSummary = _interopRequireDefault(require("@material-ui/core/ExpansionPanelSummary"));
|
|
44
|
+
|
|
29
45
|
var _ExpansionPanelDetails = _interopRequireDefault(require("@material-ui/core/ExpansionPanelDetails"));
|
|
46
|
+
|
|
30
47
|
var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
|
|
48
|
+
|
|
31
49
|
var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"));
|
|
50
|
+
|
|
32
51
|
var _merge = _interopRequireDefault(require("lodash/merge"));
|
|
52
|
+
|
|
33
53
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
54
|
+
|
|
34
55
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
56
|
+
|
|
35
57
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
58
|
+
|
|
36
59
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
60
|
+
|
|
37
61
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
62
|
+
|
|
38
63
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
64
|
+
|
|
39
65
|
var style = {
|
|
40
66
|
feedbackContainer: {
|
|
41
67
|
display: 'flex',
|
|
42
68
|
flexDirection: 'column'
|
|
43
69
|
}
|
|
44
70
|
};
|
|
71
|
+
|
|
45
72
|
var buildDefaults = function buildDefaults(input) {
|
|
46
73
|
return (0, _merge["default"])({}, {
|
|
47
74
|
correct: {
|
|
@@ -58,39 +85,49 @@ var buildDefaults = function buildDefaults(input) {
|
|
|
58
85
|
}
|
|
59
86
|
}, input);
|
|
60
87
|
};
|
|
88
|
+
|
|
61
89
|
exports.buildDefaults = buildDefaults;
|
|
90
|
+
|
|
62
91
|
var FeedbackConfig = /*#__PURE__*/function (_React$Component) {
|
|
63
92
|
(0, _inherits2["default"])(FeedbackConfig, _React$Component);
|
|
93
|
+
|
|
64
94
|
var _super = _createSuper(FeedbackConfig);
|
|
95
|
+
|
|
65
96
|
function FeedbackConfig() {
|
|
66
97
|
var _this;
|
|
98
|
+
|
|
67
99
|
(0, _classCallCheck2["default"])(this, FeedbackConfig);
|
|
100
|
+
|
|
68
101
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
69
102
|
args[_key] = arguments[_key];
|
|
70
103
|
}
|
|
104
|
+
|
|
71
105
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
72
106
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onCorrectChange", _this.onChange.bind((0, _assertThisInitialized2["default"])(_this), 'correct'));
|
|
73
107
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onIncorrectChange", _this.onChange.bind((0, _assertThisInitialized2["default"])(_this), 'incorrect'));
|
|
74
108
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onPartialChange", _this.onChange.bind((0, _assertThisInitialized2["default"])(_this), 'partial'));
|
|
75
109
|
return _this;
|
|
76
110
|
}
|
|
111
|
+
|
|
77
112
|
(0, _createClass2["default"])(FeedbackConfig, [{
|
|
78
113
|
key: "onChange",
|
|
79
114
|
value: function onChange(key, config) {
|
|
80
115
|
var _this$props = this.props,
|
|
81
|
-
|
|
82
|
-
|
|
116
|
+
feedback = _this$props.feedback,
|
|
117
|
+
onChange = _this$props.onChange;
|
|
118
|
+
|
|
83
119
|
var update = _objectSpread(_objectSpread({}, feedback), {}, (0, _defineProperty2["default"])({}, key, config));
|
|
120
|
+
|
|
84
121
|
onChange(update);
|
|
85
122
|
}
|
|
86
123
|
}, {
|
|
87
124
|
key: "render",
|
|
88
125
|
value: function render() {
|
|
89
126
|
var _this$props2 = this.props,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
127
|
+
classes = _this$props2.classes,
|
|
128
|
+
allowPartial = _this$props2.allowPartial,
|
|
129
|
+
feedback = _this$props2.feedback,
|
|
130
|
+
toolbarOpts = _this$props2.toolbarOpts;
|
|
94
131
|
return /*#__PURE__*/_react["default"].createElement(_ExpansionPanel["default"], null, /*#__PURE__*/_react["default"].createElement(_ExpansionPanelSummary["default"], {
|
|
95
132
|
expandIcon: /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], null)
|
|
96
133
|
}, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
|
|
@@ -117,6 +154,7 @@ var FeedbackConfig = /*#__PURE__*/function (_React$Component) {
|
|
|
117
154
|
}]);
|
|
118
155
|
return FeedbackConfig;
|
|
119
156
|
}(_react["default"].Component);
|
|
157
|
+
|
|
120
158
|
exports.FeedbackConfig = FeedbackConfig;
|
|
121
159
|
(0, _defineProperty2["default"])(FeedbackConfig, "propTypes", {
|
|
122
160
|
allowPartial: _propTypes["default"].bool,
|
|
@@ -133,6 +171,8 @@ exports.FeedbackConfig = FeedbackConfig;
|
|
|
133
171
|
allowPartial: true,
|
|
134
172
|
feedback: buildDefaults()
|
|
135
173
|
});
|
|
174
|
+
|
|
136
175
|
var _default = (0, _styles.withStyles)(style)(FeedbackConfig);
|
|
176
|
+
|
|
137
177
|
exports["default"] = _default;
|
|
138
178
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/feedback-config/index.jsx"],"names":["style","feedbackContainer","display","flexDirection","buildDefaults","input","correct","type","incorrect","partial","FeedbackConfig","onChange","bind","key","config","props","feedback","update","classes","allowPartial","toolbarOpts","heading","onCorrectChange","onPartialChange","onIncorrectChange","React","Component","PropTypes","bool","shape","FeedbackType","func","isRequired","object"],"mappings":"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","sourcesContent":["import FeedbackSelector, { FeedbackType } from './feedback-selector';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport ExpansionPanel from '@material-ui/core/ExpansionPanel';\nimport ExpansionPanelSummary from '@material-ui/core/ExpansionPanelSummary';\nimport ExpansionPanelDetails from '@material-ui/core/ExpansionPanelDetails';\nimport Typography from '@material-ui/core/Typography';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport merge from 'lodash/merge';\n\nexport { FeedbackSelector };\n\nconst style = {\n feedbackContainer: {\n display: 'flex',\n flexDirection: 'column',\n },\n};\n\nexport const buildDefaults = (input) => {\n return merge(\n {},\n {\n correct: { type: 'default', default: 'Correct' },\n incorrect: { type: 'default', default: 'Incorrect' },\n partial: { type: 'default', default: 'Nearly' },\n },\n input,\n );\n};\n\nexport class FeedbackConfig extends React.Component {\n static propTypes = {\n allowPartial: PropTypes.bool,\n feedback: PropTypes.shape({\n correct: PropTypes.shape(FeedbackType),\n incorrect: PropTypes.shape(FeedbackType),\n partial: PropTypes.shape(FeedbackType),\n }),\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n toolbarOpts: PropTypes.object,\n };\n\n static defaultProps = {\n allowPartial: true,\n feedback: buildDefaults(),\n };\n\n onChange(key, config) {\n const { feedback, onChange } = this.props;\n const update = { ...feedback, [key]: config };\n onChange(update);\n }\n\n onCorrectChange = this.onChange.bind(this, 'correct');\n onIncorrectChange = this.onChange.bind(this, 'incorrect');\n onPartialChange = this.onChange.bind(this, 'partial');\n\n render() {\n const { classes, allowPartial, feedback, toolbarOpts } = this.props;\n\n return (\n <ExpansionPanel>\n <ExpansionPanelSummary expandIcon={<ExpandMoreIcon />}>\n <Typography className={classes.heading}>Feedback</Typography>\n </ExpansionPanelSummary>\n <ExpansionPanelDetails>\n <div className={classes.feedbackContainer}>\n <FeedbackSelector\n label=\"If correct, show\"\n feedback={feedback.correct}\n onChange={this.onCorrectChange}\n toolbarOpts={toolbarOpts}\n />\n {allowPartial && (\n <FeedbackSelector\n label=\"If partially correct, show\"\n feedback={feedback.partial}\n onChange={this.onPartialChange}\n toolbarOpts={toolbarOpts}\n />\n )}\n <FeedbackSelector\n label=\"If incorrect, show\"\n feedback={feedback.incorrect}\n onChange={this.onIncorrectChange}\n toolbarOpts={toolbarOpts}\n />\n </div>\n </ExpansionPanelDetails>\n </ExpansionPanel>\n );\n }\n}\n\nexport default withStyles(style)(FeedbackConfig);\n"],"file":"index.js"}
|