@pie-element/matrix 0.1.18 → 0.1.20-beta.1443
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +313 -0
- package/configure/CHANGELOG.md +293 -0
- package/configure/lib/HeaderCommon.js +1 -1
- package/configure/lib/Main.js +24 -12
- package/configure/lib/Main.js.map +1 -1
- package/configure/lib/MatrixColumnsSizeHeaderInput.js +2 -2
- package/configure/lib/MatrixColumnsSizeHeaderInput.js.map +1 -1
- package/configure/lib/MatrixLabelEditableButton.js +5 -3
- package/configure/lib/MatrixLabelEditableButton.js.map +1 -1
- package/configure/lib/MatrixLabelTypeHeaderInput.js +2 -2
- package/configure/lib/MatrixLabelTypeHeaderInput.js.map +1 -1
- package/configure/lib/MatrixRowsSizeHeaderInput.js +2 -2
- package/configure/lib/MatrixRowsSizeHeaderInput.js.map +1 -1
- package/configure/lib/MatrixValues.js +9 -6
- package/configure/lib/MatrixValues.js.map +1 -1
- package/configure/lib/NumberInput.js +1 -1
- package/configure/lib/NumberInput.js.map +1 -1
- package/configure/lib/defaults.js +11 -5
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +17 -3
- package/configure/lib/index.js.map +1 -1
- package/configure/package.json +4 -4
- package/controller/CHANGELOG.md +8 -0
- package/controller/lib/defaults.js +1 -1
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +3 -3
- package/controller/lib/index.js.map +1 -1
- package/controller/package.json +1 -1
- package/docs/config-schema.json +21 -0
- package/docs/config-schema.json.md +16 -0
- package/docs/demo/config.js +2 -2
- package/docs/demo/generate.js +2 -2
- package/docs/demo/session.js +2 -2
- package/lib/ChoiceInput.js.map +1 -1
- package/lib/Main.js.map +1 -1
- package/lib/Matrix.js.map +1 -1
- package/lib/index.js +4 -1
- package/lib/index.js.map +1 -1
- package/package.json +4 -4
package/configure/lib/Main.js
CHANGED
|
@@ -41,9 +41,9 @@ var _MatrixLabelTypeHeaderInput = _interopRequireDefault(require("./MatrixLabelT
|
|
|
41
41
|
|
|
42
42
|
var _MatrixValues = _interopRequireDefault(require("./MatrixValues"));
|
|
43
43
|
|
|
44
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
44
|
+
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; }
|
|
45
45
|
|
|
46
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
46
|
+
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; }
|
|
47
47
|
|
|
48
48
|
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); }; }
|
|
49
49
|
|
|
@@ -67,7 +67,7 @@ var styles = function styles(theme) {
|
|
|
67
67
|
matrixHeaderOptionsHolder: {
|
|
68
68
|
display: 'flex',
|
|
69
69
|
width: '100%',
|
|
70
|
-
padding:
|
|
70
|
+
padding: "".concat(theme.spacing.unit * 2.5, "px 0"),
|
|
71
71
|
justifyContent: 'space-around'
|
|
72
72
|
},
|
|
73
73
|
design: {
|
|
@@ -82,6 +82,7 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
82
82
|
configuration = props.configuration,
|
|
83
83
|
onPromptChanged = props.onPromptChanged,
|
|
84
84
|
imageSupport = props.imageSupport,
|
|
85
|
+
uploadSoundSupport = props.uploadSoundSupport,
|
|
85
86
|
onChangeModel = props.onChangeModel,
|
|
86
87
|
onConfigurationChanged = props.onConfigurationChanged,
|
|
87
88
|
onTeacherInstructionsChanged = props.onTeacherInstructionsChanged;
|
|
@@ -89,27 +90,34 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
89
90
|
var _ref = configuration || {},
|
|
90
91
|
_ref$prompt = _ref.prompt,
|
|
91
92
|
prompt = _ref$prompt === void 0 ? {} : _ref$prompt,
|
|
92
|
-
_ref$teacherInstructi = _ref.teacherInstructions,
|
|
93
|
-
teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
|
|
94
93
|
_ref$scoringType = _ref.scoringType,
|
|
95
|
-
scoringType = _ref$scoringType === void 0 ? {} : _ref$scoringType
|
|
94
|
+
scoringType = _ref$scoringType === void 0 ? {} : _ref$scoringType,
|
|
95
|
+
settingsPanelDisabled = _ref.settingsPanelDisabled,
|
|
96
|
+
_ref$spellCheck = _ref.spellCheck,
|
|
97
|
+
spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
|
|
98
|
+
_ref$teacherInstructi = _ref.teacherInstructions,
|
|
99
|
+
teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi;
|
|
96
100
|
|
|
97
101
|
var _ref2 = model || {},
|
|
98
|
-
teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled
|
|
102
|
+
teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
|
|
103
|
+
spellCheckEnabled = _ref2.spellCheckEnabled;
|
|
99
104
|
|
|
105
|
+
var panelProperties = {
|
|
106
|
+
teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
|
|
107
|
+
spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
|
|
108
|
+
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])
|
|
109
|
+
};
|
|
100
110
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
101
111
|
className: classes.design
|
|
102
112
|
}, /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
|
|
113
|
+
hideSettings: settingsPanelDisabled,
|
|
103
114
|
settings: /*#__PURE__*/_react["default"].createElement(Panel, {
|
|
104
115
|
model: model,
|
|
105
116
|
onChangeModel: onChangeModel,
|
|
106
117
|
configuration: configuration,
|
|
107
118
|
onChangeConfiguration: onConfigurationChanged,
|
|
108
119
|
groups: {
|
|
109
|
-
Properties:
|
|
110
|
-
teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
|
|
111
|
-
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])
|
|
112
|
-
}
|
|
120
|
+
Properties: panelProperties
|
|
113
121
|
}
|
|
114
122
|
})
|
|
115
123
|
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -131,7 +139,9 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
131
139
|
markup: model.teacherInstructions || '',
|
|
132
140
|
onChange: onTeacherInstructionsChanged,
|
|
133
141
|
imageSupport: imageSupport,
|
|
134
|
-
nonEmpty: false
|
|
142
|
+
nonEmpty: false,
|
|
143
|
+
spellCheck: spellCheckEnabled,
|
|
144
|
+
uploadSoundSupport: uploadSoundSupport
|
|
135
145
|
})), /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
|
|
136
146
|
label: prompt.label,
|
|
137
147
|
className: classes.promptHolder
|
|
@@ -141,6 +151,8 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
141
151
|
onChange: onPromptChanged,
|
|
142
152
|
imageSupport: imageSupport,
|
|
143
153
|
nonEmpty: !prompt.settings,
|
|
154
|
+
spellCheck: spellCheckEnabled,
|
|
155
|
+
uploadSoundSupport: uploadSoundSupport,
|
|
144
156
|
disableUnderline: true
|
|
145
157
|
})), /*#__PURE__*/_react["default"].createElement(_MatrixValues["default"], {
|
|
146
158
|
model: model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Main.jsx"],"names":["Panel","settings","toggle","radio","styles","theme","promptHolder","width","paddingBottom","spacing","unit","marginBottom","prompt","paddingTop","matrixHeaderOptionsHolder","display","padding","justifyContent","design","Design","props","classes","model","configuration","onPromptChanged","imageSupport","onChangeModel","onConfigurationChanged","onTeacherInstructionsChanged","teacherInstructions","scoringType","teacherInstructionsEnabled","Properties","label","Main","onModelChanged","data","React","Component","PropTypes","object","isRequired","disableSidePanel","bool","func","shape","add","Styled"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport EditableHtml from '@pie-lib/editable-html';\nimport {\n InputContainer,\n settings,\n layout\n} from '@pie-lib/config-ui';\nimport {withStyles} from '@material-ui/core/styles';\nimport MatrixColumnsSizeHeaderInput from './MatrixColumnsSizeHeaderInput';\nimport MatrixRowsSizeHeaderInput from './MatrixRowsSizeHeaderInput';\nimport MatrixLabelTypeHeaderInput from './MatrixLabelTypeHeaderInput';\nimport MatrixValues from './MatrixValues';\n\nconst { Panel, toggle, radio } = settings;\n\nconst styles = theme => ({\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n matrixHeaderOptionsHolder: {\n display: 'flex',\n width: '100%',\n padding: '20px 0',\n justifyContent: 'space-around'\n },\n design: {\n paddingTop: theme.spacing.unit * 3\n }\n});\n\n\nconst Design = withStyles(styles)(props => {\n const {\n classes,\n model,\n configuration,\n onPromptChanged,\n imageSupport,\n onChangeModel,\n onConfigurationChanged,\n onTeacherInstructionsChanged\n } = props;\n const {\n prompt = {},\n teacherInstructions = {},\n scoringType = {},\n } = configuration || {};\n const {\n teacherInstructionsEnabled\n } = model || {};\n\n return (\n <div className={classes.design}>\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n onChangeModel={onChangeModel}\n configuration={configuration}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Properties: {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])\n }\n }}\n />\n }\n >\n <div>\n <div className={classes.matrixHeaderOptionsHolder}>\n <MatrixRowsSizeHeaderInput model={model} onChangeModel={onChangeModel}/>\n <MatrixColumnsSizeHeaderInput model={model} onChangeModel={onChangeModel}/>\n <MatrixLabelTypeHeaderInput model={model} onChangeModel={onChangeModel}/>\n </div>\n\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n />\n </InputContainer>\n )}\n\n <InputContainer label={prompt.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={onPromptChanged}\n imageSupport={imageSupport}\n nonEmpty={!prompt.settings}\n disableUnderline\n />\n </InputContainer>\n\n <MatrixValues model={model} onChangeModel={onChangeModel}/>\n </div>\n </layout.ConfigLayout>\n </div>\n );\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n disableSidePanel: PropTypes.bool,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired\n })\n };\n\n onPromptChanged = prompt => {\n this.props.onModelChanged({\n ...this.props.model,\n prompt\n });\n };\n\n onChangeModel = data => {\n this.props.onModelChanged({\n ...this.props.model,\n ...data\n });\n };\n\n onTeacherInstructionsChanged = teacherInstructions => {\n this.props.onModelChanged({\n ...this.props.model,\n teacherInstructions\n });\n };\n\n render() {\n return (\n <Design\n {...this.props}\n onChangeModel={this.props.onModelChanged}\n onPromptChanged={this.onPromptChanged}\n onTeacherInstructionsChanged={this.onTeacherInstructionsChanged}\n />\n );\n }\n}\n\nconst Styled = withStyles(styles)(Main);\n\nexport default Styled;\n"],"file":"Main.js"}
|
|
1
|
+
{"version":3,"sources":["../src/Main.jsx"],"names":["Panel","settings","toggle","radio","styles","theme","promptHolder","width","paddingBottom","spacing","unit","marginBottom","prompt","paddingTop","matrixHeaderOptionsHolder","display","padding","justifyContent","design","Design","props","classes","model","configuration","onPromptChanged","imageSupport","uploadSoundSupport","onChangeModel","onConfigurationChanged","onTeacherInstructionsChanged","scoringType","settingsPanelDisabled","spellCheck","teacherInstructions","teacherInstructionsEnabled","spellCheckEnabled","panelProperties","label","Properties","Main","onModelChanged","data","React","Component","PropTypes","object","isRequired","disableSidePanel","bool","func","shape","add","Styled"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport MatrixColumnsSizeHeaderInput from './MatrixColumnsSizeHeaderInput';\nimport MatrixRowsSizeHeaderInput from './MatrixRowsSizeHeaderInput';\nimport MatrixLabelTypeHeaderInput from './MatrixLabelTypeHeaderInput';\nimport MatrixValues from './MatrixValues';\n\nconst { Panel, toggle, radio } = settings;\n\nconst styles = (theme) => ({\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%',\n },\n matrixHeaderOptionsHolder: {\n display: 'flex',\n width: '100%',\n padding: `${theme.spacing.unit * 2.5}px 0`,\n justifyContent: 'space-around',\n },\n design: {\n paddingTop: theme.spacing.unit * 3,\n },\n});\n\nconst Design = withStyles(styles)((props) => {\n const {\n classes,\n model,\n configuration,\n onPromptChanged,\n imageSupport,\n uploadSoundSupport,\n onChangeModel,\n onConfigurationChanged,\n onTeacherInstructionsChanged,\n } = props;\n const {\n prompt = {},\n scoringType = {},\n settingsPanelDisabled,\n spellCheck = {},\n teacherInstructions = {},\n } = configuration || {};\n const { teacherInstructionsEnabled, spellCheckEnabled } = model || {};\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n };\n\n return (\n <div className={classes.design}>\n <layout.ConfigLayout\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n onChangeModel={onChangeModel}\n configuration={configuration}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Properties: panelProperties,\n }}\n />\n }\n >\n <div>\n <div className={classes.matrixHeaderOptionsHolder}>\n <MatrixRowsSizeHeaderInput model={model} onChangeModel={onChangeModel} />\n <MatrixColumnsSizeHeaderInput model={model} onChangeModel={onChangeModel} />\n <MatrixLabelTypeHeaderInput model={model} onChangeModel={onChangeModel} />\n </div>\n\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={onTeacherInstructionsChanged}\n imageSupport={imageSupport}\n nonEmpty={false}\n spellCheck={spellCheckEnabled}\n uploadSoundSupport={uploadSoundSupport}\n />\n </InputContainer>\n )}\n\n <InputContainer label={prompt.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={onPromptChanged}\n imageSupport={imageSupport}\n nonEmpty={!prompt.settings}\n spellCheck={spellCheckEnabled}\n uploadSoundSupport={uploadSoundSupport}\n disableUnderline\n />\n </InputContainer>\n\n <MatrixValues model={model} onChangeModel={onChangeModel} />\n </div>\n </layout.ConfigLayout>\n </div>\n );\n});\n\nexport class Main extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n disableSidePanel: PropTypes.bool,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n };\n\n onPromptChanged = (prompt) => {\n this.props.onModelChanged({ ...this.props.model, prompt });\n };\n\n onChangeModel = (data) => {\n this.props.onModelChanged({ ...this.props.model, ...data });\n };\n\n onTeacherInstructionsChanged = (teacherInstructions) => {\n this.props.onModelChanged({ ...this.props.model, teacherInstructions });\n };\n\n render() {\n return (\n <Design\n {...this.props}\n onChangeModel={this.props.onModelChanged}\n onPromptChanged={this.onPromptChanged}\n onTeacherInstructionsChanged={this.onTeacherInstructionsChanged}\n />\n );\n }\n}\n\nconst Styled = withStyles(styles)(Main);\n\nexport default Styled;\n"],"file":"Main.js"}
|
|
@@ -23,9 +23,9 @@ var _HeaderCommon = require("./HeaderCommon");
|
|
|
23
23
|
|
|
24
24
|
var _matrixEntities = require("./matrixEntities");
|
|
25
25
|
|
|
26
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
26
|
+
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; }
|
|
27
27
|
|
|
28
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
28
|
+
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; }
|
|
29
29
|
|
|
30
30
|
var MatrixColumnsSizeHeaderInput = function MatrixColumnsSizeHeaderInput(_ref) {
|
|
31
31
|
var model = _ref.model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MatrixColumnsSizeHeaderInput.js"],"names":["MatrixColumnsSizeHeaderInput","model","onChangeModel","onIncrementColumnsSize","columnLabels","length","labelType","MATRIX_LABEL_TYPE","custom","onDecrementColumnsSize","columnLabelsLength","columnLabelsNext","pop","matrixValuesClone","matrixValues","rowLabels","forEach","rowLabel","rowIndex","propTypes","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;
|
|
1
|
+
{"version":3,"sources":["../src/MatrixColumnsSizeHeaderInput.js"],"names":["MatrixColumnsSizeHeaderInput","model","onChangeModel","onIncrementColumnsSize","columnLabels","length","labelType","MATRIX_LABEL_TYPE","custom","onDecrementColumnsSize","columnLabelsLength","columnLabelsNext","pop","matrixValuesClone","matrixValues","rowLabels","forEach","rowLabel","rowIndex","propTypes","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAEA,IAAMA,4BAA4B,GAAG,SAA/BA,4BAA+B,OAA8B;AAAA,MAA3BC,KAA2B,QAA3BA,KAA2B;AAAA,MAApBC,aAAoB,QAApBA,aAAoB;;AACjE,MAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,GAAM;AACnCD,IAAAA,aAAa,iCACRD,KADQ;AAEXG,MAAAA,YAAY,gDAAMH,KAAK,CAACG,YAAZ,qBAAoCH,KAAK,CAACG,YAAN,CAAmBC,MAAnB,GAA4B,CAAhE,GAFD;AAGXC,MAAAA,SAAS,EAAEC,kCAAkBC;AAHlB,OAAb;AAKD,GAND;;AAQA,MAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,GAAM;AACnC,QAAMC,kBAAkB,GAAGT,KAAK,CAACG,YAAN,CAAmBC,MAA9C;;AACA,QAAIK,kBAAkB,IAAI,CAA1B,EAA6B;AAC3B;AACD;;AACD,QAAMC,gBAAgB,uCAAOV,KAAK,CAACG,YAAb,CAAtB;AACAO,IAAAA,gBAAgB,CAACC,GAAjB;;AAEA,QAAMC,iBAAiB,qBAAQZ,KAAK,CAACa,YAAd,CAAvB;;AACAb,IAAAA,KAAK,CAACc,SAAN,CAAgBC,OAAhB,CAAwB,UAACC,QAAD,EAAWC,QAAX,EAAwB;AAC9C,aAAOL,iBAAiB,WAAIK,QAAJ,cAAgBR,kBAAkB,GAAG,CAArC,EAAxB;AACD,KAFD;AAIAR,IAAAA,aAAa,iCACRD,KADQ;AAEXG,MAAAA,YAAY,EAAEO,gBAFH;AAGXG,MAAAA,YAAY,EAAED,iBAHH;AAIXP,MAAAA,SAAS,EAAEC,kCAAkBC;AAJlB,OAAb;AAMD,GAnBD;;AAoBA,sBACE,gCAAC,4BAAD,qBACE,gCAAC,2BAAD,yBADF,eAEE,gCAAC,yCAAD,qBACE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAY,IAAA,OAAO,EAAEC;AAArB,IADF,CADF,eAIE,2CAAIR,KAAK,CAACG,YAAN,CAAmBC,MAAvB,CAJF,eAKE,gCAAC,yBAAD,qBACE,gCAAC,eAAD;AAAS,IAAA,OAAO,EAAEF;AAAlB,IADF,CALF,CAFF,CADF;AAcD,CA3CD;;AA6CAH,4BAA4B,CAACmB,SAA7B,GAAyC;AACvClB,EAAAA,KAAK,EAAEmB,sBAAUC,MAAV,CAAiBC,UADe;AAEvCpB,EAAAA,aAAa,EAAEkB,sBAAUG,IAAV,CAAeD;AAFS,CAAzC;eAKetB,4B","sourcesContent":["import React from 'react';\nimport AddIcon from '@material-ui/icons/Add';\nimport RemoveIcon from '@material-ui/icons/Remove';\nimport PropTypes from 'prop-types';\n\nimport { ColumnsHeader, ColumnsWrapper, IconWrapper, NumberInputFormGroupWrapper } from './HeaderCommon';\nimport { MATRIX_LABEL_TYPE } from './matrixEntities';\n\nconst MatrixColumnsSizeHeaderInput = ({ model, onChangeModel }) => {\n const onIncrementColumnsSize = () => {\n onChangeModel({\n ...model,\n columnLabels: [...model.columnLabels, `COLUMN ${model.columnLabels.length + 1}`],\n labelType: MATRIX_LABEL_TYPE.custom,\n });\n };\n\n const onDecrementColumnsSize = () => {\n const columnLabelsLength = model.columnLabels.length;\n if (columnLabelsLength <= 1) {\n return;\n }\n const columnLabelsNext = [...model.columnLabels];\n columnLabelsNext.pop();\n\n const matrixValuesClone = { ...model.matrixValues };\n model.rowLabels.forEach((rowLabel, rowIndex) => {\n delete matrixValuesClone[`${rowIndex}-${columnLabelsLength - 1}`];\n });\n\n onChangeModel({\n ...model,\n columnLabels: columnLabelsNext,\n matrixValues: matrixValuesClone,\n labelType: MATRIX_LABEL_TYPE.custom,\n });\n };\n return (\n <ColumnsWrapper>\n <ColumnsHeader>Matrix Columns</ColumnsHeader>\n <NumberInputFormGroupWrapper>\n <IconWrapper>\n <RemoveIcon onClick={onDecrementColumnsSize} />\n </IconWrapper>\n <p>{model.columnLabels.length}</p>\n <IconWrapper>\n <AddIcon onClick={onIncrementColumnsSize} />\n </IconWrapper>\n </NumberInputFormGroupWrapper>\n </ColumnsWrapper>\n );\n};\n\nMatrixColumnsSizeHeaderInput.propTypes = {\n model: PropTypes.object.isRequired,\n onChangeModel: PropTypes.func.isRequired,\n};\n\nexport default MatrixColumnsSizeHeaderInput;\n"],"file":"MatrixColumnsSizeHeaderInput.js"}
|
|
@@ -39,7 +39,7 @@ var MatrixEditableButtonWrapper = _styledComponents["default"].div(_templateObje
|
|
|
39
39
|
|
|
40
40
|
var MatrixEditableButtonContent = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 5px 0 12px;\n width: 100%;\n display: flex;\n align-items: center;\n overflow: hidden;\n"])));
|
|
41
41
|
|
|
42
|
-
var MatrixEditableButtonText = _styledComponents["default"].p(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n padding: 3px 0 3px 4px;\n cursor: pointer;\n width: 100%;\n
|
|
42
|
+
var MatrixEditableButtonText = _styledComponents["default"].p(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n padding: 3px 0 3px 4px;\n cursor: pointer;\n width: 100%;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n :hover {\n background: #00985d;\n }\n\n transition: all 0.1s ease-in-out;\n"])));
|
|
43
43
|
|
|
44
44
|
var MatrixEditableButtonActions = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 3px;\n height: 100%;\n cursor: pointer;\n display: flex;\n align-items: center;\n border-left: 3px solid #00985d;\n :hover {\n background: #00985d;\n border-top-right-radius: 5px;\n border-bottom-right-radius: 5px;\n }\n transition: all 0.1s ease-in-out;\n"])));
|
|
45
45
|
|
|
@@ -63,7 +63,8 @@ var MatrixLabelEditableButton = function MatrixLabelEditableButton(props) {
|
|
|
63
63
|
var onLabelUpdate = props.onLabelUpdate,
|
|
64
64
|
value = props.value,
|
|
65
65
|
resourceIndex = props.resourceIndex,
|
|
66
|
-
onAction = props.onAction
|
|
66
|
+
onAction = props.onAction,
|
|
67
|
+
spellCheck = props.spellCheck;
|
|
67
68
|
|
|
68
69
|
var _useState = (0, _react.useState)(null),
|
|
69
70
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
@@ -166,7 +167,8 @@ var MatrixLabelEditableButton = function MatrixLabelEditableButton(props) {
|
|
|
166
167
|
onChange: function onChange(e) {
|
|
167
168
|
return setLabelValue(e.target.value);
|
|
168
169
|
},
|
|
169
|
-
onBlur: onBlur
|
|
170
|
+
onBlur: onBlur,
|
|
171
|
+
spellCheck: spellCheck
|
|
170
172
|
}) : /*#__PURE__*/_react["default"].createElement(MatrixEditableButtonText, {
|
|
171
173
|
onClick: onShowInput
|
|
172
174
|
}, value)), /*#__PURE__*/_react["default"].createElement(MatrixEditableButtonActions, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MatrixLabelEditableButton.js"],"names":["MatrixEditableButtonWrapper","styled","div","MatrixEditableButtonContent","MatrixEditableButtonText","p","MatrixEditableButtonActions","IconWrapper","InputWrapper","input","SetScoresToWrapper","SetScoresToInputWrapper","ACTION_TYPE","clear","sortAscending","sortDescending","set","MatrixLabelEditableButton","props","onLabelUpdate","value","resourceIndex","onAction","labelValue","setLabelValue","scoreValue","setScoreValue","showInput","setShowInput","React","useState","anchorEl","setAnchorEl","createRef","scoresToRef","open","Boolean","onActionClick","event","currentTarget","handleClose","e","stopPropagation","onClearScores","actionType","onSetScoresAscending","onSetScoresDescending","onSetScores","scoreValueNew","parseInt","setValue","onBlur","labeValueTrimmed","trim","onShowInput","onSetScoreToFocus","current","focus","target","ref","propTypes","PropTypes","string","isRequired","number","func"],"mappings":"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","sourcesContent":["import React, {useState} from 'react';\nimport styled from 'styled-components';\nimport KeyboardArrowDownIcon from '@material-ui/icons/KeyboardArrowDown';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport PropTypes from 'prop-types';\n\nimport NumberInput from './NumberInput';\nimport isNumeric from './isNumeric';\n\nconst MatrixEditableButtonWrapper = styled.div`\n width: 100%;\n height: 50px;\n margin: 1px;\n background: #04b26e;\n border-radius: 5px;\n color: white;\n font-size: 14px;\n white-space: nowrap;\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\n\nconst MatrixEditableButtonContent = styled.div`\n padding: 0 5px 0 12px;\n width: 100%;\n display: flex;\n align-items: center;\n overflow: hidden;\n`;\n\nconst MatrixEditableButtonText = styled.p`\n margin: 0;\n padding: 3px 0 3px 4px;\n cursor: pointer;\n width: 100%;\n \n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n :hover {\n background: #00985d;\n }\n \n transition: all 0.1s ease-in-out;\n`;\n\nconst MatrixEditableButtonActions = styled.div`\n padding: 0 3px;\n height: 100%;\n cursor: pointer;\n display: flex;\n align-items: center;\n border-left: 3px solid #00985d;\n :hover {\n background: #00985d;\n border-top-right-radius: 5px;\n border-bottom-right-radius: 5px;\n }\n transition: all 0.1s ease-in-out;\n`;\n\nconst IconWrapper = styled.div`\n font-size: 18px;\n`;\n\nconst InputWrapper = styled.input`\n margin: 0;\n padding: 0 0 0 4px;\n font-size: 14px;\n border: none;\n outline: none;\n color: white;\n width: 50px;\n width: 100%;\n background: #00985d;\n height: 22px;\n display: flex;\n align-items: center;\n`;\n\nconst SetScoresToWrapper = styled.div`\n display: flex;\n align-items: center;\n`;\n\nconst SetScoresToInputWrapper = styled.div`\n width: 50px;\n margin-left: 10px;\n`;\n\nexport const ACTION_TYPE = {\n clear: 'clear',\n sortAscending: 'sortAscending',\n sortDescending: 'sortDescending',\n set: 'set',\n};\n\nconst MatrixLabelEditableButton = (props) => {\n const { onLabelUpdate, value, resourceIndex, onAction } = props;\n const [labelValue, setLabelValue] = useState(null);\n const [scoreValue, setScoreValue] = useState('');\n const [showInput, setShowInput] = useState(false);\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [scoresToRef,] = React.useState(React.createRef());\n\n const open = Boolean(anchorEl);\n\n const onActionClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = (e) => {\n e.stopPropagation();\n setAnchorEl(null);\n setScoreValue('');\n };\n\n const onClearScores = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.clear });\n };\n\n const onSetScoresAscending = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.sortAscending });\n };\n\n const onSetScoresDescending = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.sortDescending });\n };\n\n const onSetScores = (value) => {\n if (!isNumeric(value)) {\n setScoreValue('');\n return;\n }\n const scoreValueNew = parseInt(value, 10);\n setScoreValue(scoreValueNew);\n onAction({ resourceIndex, actionType: ACTION_TYPE.set, setValue: scoreValueNew });\n };\n\n const onBlur = () => {\n const labeValueTrimmed = labelValue.trim();\n if (labeValueTrimmed) {\n onLabelUpdate(labeValueTrimmed);\n }\n setLabelValue(null);\n setShowInput(false);\n };\n\n const onShowInput = () => {\n setShowInput(true);\n setLabelValue(value);\n };\n\n const onSetScoreToFocus = () => {\n scoresToRef.current.focus();\n };\n\n return (\n <MatrixEditableButtonWrapper>\n <MatrixEditableButtonContent>\n {showInput\n ? (\n <InputWrapper\n autoFocus\n value={labelValue}\n onChange={e => setLabelValue(e.target.value)}\n onBlur={onBlur}\n />\n )\n : (\n <MatrixEditableButtonText onClick={onShowInput}>\n {value}\n </MatrixEditableButtonText>\n )\n }\n\n </MatrixEditableButtonContent>\n <MatrixEditableButtonActions onClick={onActionClick}>\n <IconWrapper>\n <KeyboardArrowDownIcon fontSize='inherit'/>\n </IconWrapper>\n <Menu\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n >\n <MenuItem key='item1' selected={false} onClick={onClearScores}>\n Clear Scores\n </MenuItem>\n <MenuItem key='item2' selected={false} onClick={onSetScoresAscending}>\n Set Scores Ascending\n </MenuItem>\n <MenuItem key='item3' selected={false} onClick={onSetScoresDescending}>\n Set Scores Descending\n </MenuItem>\n <MenuItem key='item4' selected={false}>\n <SetScoresToWrapper>\n <p onClick={onSetScoreToFocus}>\n Set Scores To\n </p>\n <SetScoresToInputWrapper>\n <NumberInput\n onFieldUpdate={onSetScores}\n name={'setScoreTo'}\n placeholder='#'\n fieldValue={{\n value: scoreValue,\n ref: scoresToRef\n }}\n />\n </SetScoresToInputWrapper>\n </SetScoresToWrapper>\n </MenuItem>\n </Menu>\n </MatrixEditableButtonActions>\n </MatrixEditableButtonWrapper>\n )\n};\n\nMatrixLabelEditableButton.propTypes = {\n value: PropTypes.string.isRequired,\n resourceIndex: PropTypes.number.isRequired,\n onLabelUpdate: PropTypes.func.isRequired,\n onAction: PropTypes.func.isRequired,\n};\n\n\nexport default MatrixLabelEditableButton;\n"],"file":"MatrixLabelEditableButton.js"}
|
|
1
|
+
{"version":3,"sources":["../src/MatrixLabelEditableButton.js"],"names":["MatrixEditableButtonWrapper","styled","div","MatrixEditableButtonContent","MatrixEditableButtonText","p","MatrixEditableButtonActions","IconWrapper","InputWrapper","input","SetScoresToWrapper","SetScoresToInputWrapper","ACTION_TYPE","clear","sortAscending","sortDescending","set","MatrixLabelEditableButton","props","onLabelUpdate","value","resourceIndex","onAction","spellCheck","labelValue","setLabelValue","scoreValue","setScoreValue","showInput","setShowInput","React","useState","anchorEl","setAnchorEl","createRef","scoresToRef","open","Boolean","onActionClick","event","currentTarget","handleClose","e","stopPropagation","onClearScores","actionType","onSetScoresAscending","onSetScoresDescending","onSetScores","scoreValueNew","parseInt","setValue","onBlur","labeValueTrimmed","trim","onShowInput","onSetScoreToFocus","current","focus","target","ref","propTypes","PropTypes","string","isRequired","number","func"],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport styled from 'styled-components';\nimport KeyboardArrowDownIcon from '@material-ui/icons/KeyboardArrowDown';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport PropTypes from 'prop-types';\n\nimport NumberInput from './NumberInput';\nimport isNumeric from './isNumeric';\n\nconst MatrixEditableButtonWrapper = styled.div`\n width: 100%;\n height: 50px;\n margin: 1px;\n background: #04b26e;\n border-radius: 5px;\n color: white;\n font-size: 14px;\n white-space: nowrap;\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\n\nconst MatrixEditableButtonContent = styled.div`\n padding: 0 5px 0 12px;\n width: 100%;\n display: flex;\n align-items: center;\n overflow: hidden;\n`;\n\nconst MatrixEditableButtonText = styled.p`\n margin: 0;\n padding: 3px 0 3px 4px;\n cursor: pointer;\n width: 100%;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n :hover {\n background: #00985d;\n }\n\n transition: all 0.1s ease-in-out;\n`;\n\nconst MatrixEditableButtonActions = styled.div`\n padding: 0 3px;\n height: 100%;\n cursor: pointer;\n display: flex;\n align-items: center;\n border-left: 3px solid #00985d;\n :hover {\n background: #00985d;\n border-top-right-radius: 5px;\n border-bottom-right-radius: 5px;\n }\n transition: all 0.1s ease-in-out;\n`;\n\nconst IconWrapper = styled.div`\n font-size: 18px;\n`;\n\nconst InputWrapper = styled.input`\n margin: 0;\n padding: 0 0 0 4px;\n font-size: 14px;\n border: none;\n outline: none;\n color: white;\n width: 50px;\n width: 100%;\n background: #00985d;\n height: 22px;\n display: flex;\n align-items: center;\n`;\n\nconst SetScoresToWrapper = styled.div`\n display: flex;\n align-items: center;\n`;\n\nconst SetScoresToInputWrapper = styled.div`\n width: 50px;\n margin-left: 10px;\n`;\n\nexport const ACTION_TYPE = {\n clear: 'clear',\n sortAscending: 'sortAscending',\n sortDescending: 'sortDescending',\n set: 'set',\n};\n\nconst MatrixLabelEditableButton = (props) => {\n const { onLabelUpdate, value, resourceIndex, onAction, spellCheck } = props;\n const [labelValue, setLabelValue] = useState(null);\n const [scoreValue, setScoreValue] = useState('');\n const [showInput, setShowInput] = useState(false);\n const [anchorEl, setAnchorEl] = React.useState(null);\n const [scoresToRef] = React.useState(React.createRef());\n\n const open = Boolean(anchorEl);\n\n const onActionClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = (e) => {\n e.stopPropagation();\n setAnchorEl(null);\n setScoreValue('');\n };\n\n const onClearScores = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.clear });\n };\n\n const onSetScoresAscending = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.sortAscending });\n };\n\n const onSetScoresDescending = (e) => {\n handleClose(e);\n onAction({ resourceIndex, actionType: ACTION_TYPE.sortDescending });\n };\n\n const onSetScores = (value) => {\n if (!isNumeric(value)) {\n setScoreValue('');\n return;\n }\n const scoreValueNew = parseInt(value, 10);\n setScoreValue(scoreValueNew);\n onAction({ resourceIndex, actionType: ACTION_TYPE.set, setValue: scoreValueNew });\n };\n\n const onBlur = () => {\n const labeValueTrimmed = labelValue.trim();\n if (labeValueTrimmed) {\n onLabelUpdate(labeValueTrimmed);\n }\n setLabelValue(null);\n setShowInput(false);\n };\n\n const onShowInput = () => {\n setShowInput(true);\n setLabelValue(value);\n };\n\n const onSetScoreToFocus = () => {\n scoresToRef.current.focus();\n };\n\n return (\n <MatrixEditableButtonWrapper>\n <MatrixEditableButtonContent>\n {showInput ? (\n <InputWrapper\n autoFocus\n value={labelValue}\n onChange={(e) => setLabelValue(e.target.value)}\n onBlur={onBlur}\n spellCheck={spellCheck}\n />\n ) : (\n <MatrixEditableButtonText onClick={onShowInput}>{value}</MatrixEditableButtonText>\n )}\n </MatrixEditableButtonContent>\n <MatrixEditableButtonActions onClick={onActionClick}>\n <IconWrapper>\n <KeyboardArrowDownIcon fontSize=\"inherit\" />\n </IconWrapper>\n <Menu anchorEl={anchorEl} open={open} onClose={handleClose}>\n <MenuItem key=\"item1\" selected={false} onClick={onClearScores}>\n Clear Scores\n </MenuItem>\n <MenuItem key=\"item2\" selected={false} onClick={onSetScoresAscending}>\n Set Scores Ascending\n </MenuItem>\n <MenuItem key=\"item3\" selected={false} onClick={onSetScoresDescending}>\n Set Scores Descending\n </MenuItem>\n <MenuItem key=\"item4\" selected={false}>\n <SetScoresToWrapper>\n <p onClick={onSetScoreToFocus}>Set Scores To</p>\n <SetScoresToInputWrapper>\n <NumberInput\n onFieldUpdate={onSetScores}\n name={'setScoreTo'}\n placeholder=\"#\"\n fieldValue={{\n value: scoreValue,\n ref: scoresToRef,\n }}\n />\n </SetScoresToInputWrapper>\n </SetScoresToWrapper>\n </MenuItem>\n </Menu>\n </MatrixEditableButtonActions>\n </MatrixEditableButtonWrapper>\n );\n};\n\nMatrixLabelEditableButton.propTypes = {\n value: PropTypes.string.isRequired,\n resourceIndex: PropTypes.number.isRequired,\n onLabelUpdate: PropTypes.func.isRequired,\n onAction: PropTypes.func.isRequired,\n};\n\nexport default MatrixLabelEditableButton;\n"],"file":"MatrixLabelEditableButton.js"}
|
|
@@ -31,9 +31,9 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
31
31
|
|
|
32
32
|
var _templateObject;
|
|
33
33
|
|
|
34
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
34
|
+
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; }
|
|
35
35
|
|
|
36
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
36
|
+
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; }
|
|
37
37
|
|
|
38
38
|
var Flex = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
|
|
39
39
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MatrixLabelTypeHeaderInput.js"],"names":["Flex","styled","div","MatrixLabelTypeHeaderInput","model","onChangeModel","onChangeLabelType","e","labelType","target","value","modelNew","MATRIX_LABEL_TYPE","custom","columnLabels","length","isMatrixTypeSelectionEnabled","includes","agreement","frequency","yesNo","importance","likelihood","like","propTypes","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,IAAI,GAAGC,6BAAOC,GAAV,0GAAV;;AAIA,IAAMC,0BAA0B,GAAG,SAA7BA,0BAA6B,OAA8B;AAAA,MAA3BC,KAA2B,QAA3BA,KAA2B;AAAA,MAApBC,aAAoB,QAApBA,aAAoB;;AAC/D,MAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,CAAD,EAAO;AAC/B,QAAMC,SAAS,GAAGD,CAAC,CAACE,MAAF,CAASC,KAA3B;;AACA,QAAMC,QAAQ,mCAAQP,KAAR;AAAeI,MAAAA,SAAS,EAATA;AAAf,MAAd;;AACA,QAAIA,SAAS,KAAKI,kCAAkBC,MAApC,EAA4C;AAC1CF,MAAAA,QAAQ,CAACG,YAAT,GAAwB,uCAAsBN,SAAtB,EAAiCJ,KAAK,CAACU,YAAN,CAAmBC,MAApD,CAAxB;AACD;;AACDV,IAAAA,aAAa,CAACM,QAAD,CAAb;AACD,GAPD;;AAQA,MAAMK,4BAA4B,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAUC,QAAV,CAAmBb,KAAK,CAACU,YAAN,CAAmBC,MAAtC,CAArC;AACA,sBACE,gCAAC,4BAAD,qBACE,gCAAC,2BAAD,sBADF,
|
|
1
|
+
{"version":3,"sources":["../src/MatrixLabelTypeHeaderInput.js"],"names":["Flex","styled","div","MatrixLabelTypeHeaderInput","model","onChangeModel","onChangeLabelType","e","labelType","target","value","modelNew","MATRIX_LABEL_TYPE","custom","columnLabels","length","isMatrixTypeSelectionEnabled","includes","agreement","frequency","yesNo","importance","likelihood","like","propTypes","PropTypes","object","isRequired","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport Radio from '@material-ui/core/Radio';\nimport RadioGroup from '@material-ui/core/RadioGroup';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\n\nimport { MATRIX_LABEL_TYPE } from './matrixEntities';\nimport { ColumnsWrapper, ColumnsHeader } from './HeaderCommon';\nimport columnLabelsGenerator from './columnLabelsGenerator';\nimport PropTypes from 'prop-types';\n\nconst Flex = styled.div`\n display: flex;\n`;\n\nconst MatrixLabelTypeHeaderInput = ({ model, onChangeModel }) => {\n const onChangeLabelType = (e) => {\n const labelType = e.target.value;\n const modelNew = { ...model, labelType };\n if (labelType !== MATRIX_LABEL_TYPE.custom) {\n modelNew.columnLabels = columnLabelsGenerator(labelType, model.columnLabels.length);\n }\n onChangeModel(modelNew);\n };\n const isMatrixTypeSelectionEnabled = [3, 5, 7].includes(model.columnLabels.length);\n return (\n <ColumnsWrapper>\n <ColumnsHeader>Matrix Type</ColumnsHeader>\n\n <Flex>\n <RadioGroup\n aria-label=\"matrixLabelType\"\n name=\"matrixLabelType\"\n value={model.labelType}\n onChange={onChangeLabelType}\n >\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.agreement}\n control={<Radio />}\n label=\"Agreement\"\n />\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.frequency}\n control={<Radio />}\n label=\"Frequency\"\n />\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.yesNo}\n control={<Radio />}\n label=\"Yes/No\"\n />\n </RadioGroup>\n\n <RadioGroup\n aria-label=\"matrixLabelType\"\n name=\"matrixLabelType\"\n value={model.labelType}\n onChange={onChangeLabelType}\n >\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.importance}\n control={<Radio />}\n label=\"Importance\"\n />\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.likelihood}\n control={<Radio />}\n label=\"Likelihood\"\n />\n <FormControlLabel\n disabled={!isMatrixTypeSelectionEnabled}\n value={MATRIX_LABEL_TYPE.like}\n control={<Radio />}\n label=\"Like\"\n />\n </RadioGroup>\n\n <RadioGroup\n aria-label=\"matrixLabelType\"\n name=\"matrixLabelType\"\n value={model.labelType}\n onChange={onChangeLabelType}\n >\n <FormControlLabel value={MATRIX_LABEL_TYPE.custom} control={<Radio />} label=\"Custom\" />\n </RadioGroup>\n </Flex>\n </ColumnsWrapper>\n );\n};\n\nMatrixLabelTypeHeaderInput.propTypes = {\n model: PropTypes.object.isRequired,\n onChangeModel: PropTypes.func.isRequired,\n};\n\nexport default MatrixLabelTypeHeaderInput;\n"],"file":"MatrixLabelTypeHeaderInput.js"}
|
|
@@ -23,9 +23,9 @@ var _matrixEntities = require("./matrixEntities");
|
|
|
23
23
|
|
|
24
24
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
25
25
|
|
|
26
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
26
|
+
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; }
|
|
27
27
|
|
|
28
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
28
|
+
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; }
|
|
29
29
|
|
|
30
30
|
var MatrixColumnsRowInput = function MatrixColumnsRowInput(_ref) {
|
|
31
31
|
var model = _ref.model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MatrixRowsSizeHeaderInput.js"],"names":["MatrixColumnsRowInput","model","onChangeModel","onIncrementSize","rowLabels","length","labelType","MATRIX_LABEL_TYPE","custom","onDecrementSize","rowLabelsLength","rowLabelsNext","pop","matrixValuesClone","matrixValues","columnLabels","forEach","columnLabel","columnIndex","propTypes","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;
|
|
1
|
+
{"version":3,"sources":["../src/MatrixRowsSizeHeaderInput.js"],"names":["MatrixColumnsRowInput","model","onChangeModel","onIncrementSize","rowLabels","length","labelType","MATRIX_LABEL_TYPE","custom","onDecrementSize","rowLabelsLength","rowLabelsNext","pop","matrixValuesClone","matrixValues","columnLabels","forEach","columnLabel","columnIndex","propTypes","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,OAA8B;AAAA,MAA3BC,KAA2B,QAA3BA,KAA2B;AAAA,MAApBC,aAAoB,QAApBA,aAAoB;;AAC1D,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5BD,IAAAA,aAAa,iCACRD,KADQ;AAEXG,MAAAA,SAAS,gDAAMH,KAAK,CAACG,SAAZ,wBAAoCH,KAAK,CAACG,SAAN,CAAgBC,MAAhB,GAAyB,CAA7D,GAFE;AAGXC,MAAAA,SAAS,EAAEC,kCAAkBC;AAHlB,OAAb;AAKD,GAND;;AAQA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5B,QAAMC,eAAe,GAAGT,KAAK,CAACG,SAAN,CAAgBC,MAAxC;;AACA,QAAIK,eAAe,IAAI,CAAvB,EAA0B;AACxB;AACD;;AACD,QAAMC,aAAa,uCAAOV,KAAK,CAACG,SAAb,CAAnB;AACAO,IAAAA,aAAa,CAACC,GAAd;;AACA,QAAMC,iBAAiB,qBAAQZ,KAAK,CAACa,YAAd,CAAvB;;AACAb,IAAAA,KAAK,CAACc,YAAN,CAAmBC,OAAnB,CAA2B,UAACC,WAAD,EAAcC,WAAd,EAA8B;AACvD,aAAOL,iBAAiB,WAAIH,eAAe,GAAG,CAAtB,cAA2BQ,WAA3B,EAAxB;AACD,KAFD;AAGAhB,IAAAA,aAAa,iCACRD,KADQ;AAEXG,MAAAA,SAAS,EAAEO,aAFA;AAGXG,MAAAA,YAAY,EAAED,iBAHH;AAIXP,MAAAA,SAAS,EAAEC,kCAAkBC;AAJlB,OAAb;AAMD,GAjBD;;AAmBA,sBACE,gCAAC,4BAAD,qBACE,gCAAC,2BAAD,sBADF,eAEE,gCAAC,yCAAD,qBACE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAY,IAAA,OAAO,EAAEC;AAArB,IADF,CADF,eAIE,2CAAIR,KAAK,CAACG,SAAN,CAAgBC,MAApB,CAJF,eAKE,gCAAC,yBAAD,qBACE,gCAAC,eAAD;AAAS,IAAA,OAAO,EAAEF;AAAlB,IADF,CALF,CAFF,CADF;AAcD,CA1CD;;AA4CAH,qBAAqB,CAACmB,SAAtB,GAAkC;AAChClB,EAAAA,KAAK,EAAEmB,sBAAUC,MAAV,CAAiBC,UADQ;AAEhCpB,EAAAA,aAAa,EAAEkB,sBAAUG,IAAV,CAAeD;AAFE,CAAlC;eAKetB,qB","sourcesContent":["import React from 'react';\nimport AddIcon from '@material-ui/icons/Add';\nimport RemoveIcon from '@material-ui/icons/Remove';\n\nimport { ColumnsHeader, ColumnsWrapper, IconWrapper, NumberInputFormGroupWrapper } from './HeaderCommon';\nimport { MATRIX_LABEL_TYPE } from './matrixEntities';\nimport PropTypes from 'prop-types';\n\nconst MatrixColumnsRowInput = ({ model, onChangeModel }) => {\n const onIncrementSize = () => {\n onChangeModel({\n ...model,\n rowLabels: [...model.rowLabels, `STATEMENT ${model.rowLabels.length + 1}`],\n labelType: MATRIX_LABEL_TYPE.custom,\n });\n };\n\n const onDecrementSize = () => {\n const rowLabelsLength = model.rowLabels.length;\n if (rowLabelsLength <= 1) {\n return;\n }\n const rowLabelsNext = [...model.rowLabels];\n rowLabelsNext.pop();\n const matrixValuesClone = { ...model.matrixValues };\n model.columnLabels.forEach((columnLabel, columnIndex) => {\n delete matrixValuesClone[`${rowLabelsLength - 1}-${columnIndex}`];\n });\n onChangeModel({\n ...model,\n rowLabels: rowLabelsNext,\n matrixValues: matrixValuesClone,\n labelType: MATRIX_LABEL_TYPE.custom,\n });\n };\n\n return (\n <ColumnsWrapper>\n <ColumnsHeader>Matrix Rows</ColumnsHeader>\n <NumberInputFormGroupWrapper>\n <IconWrapper>\n <RemoveIcon onClick={onDecrementSize} />\n </IconWrapper>\n <p>{model.rowLabels.length}</p>\n <IconWrapper>\n <AddIcon onClick={onIncrementSize} />\n </IconWrapper>\n </NumberInputFormGroupWrapper>\n </ColumnsWrapper>\n );\n};\n\nMatrixColumnsRowInput.propTypes = {\n model: PropTypes.object.isRequired,\n onChangeModel: PropTypes.func.isRequired,\n};\n\nexport default MatrixColumnsRowInput;\n"],"file":"MatrixRowsSizeHeaderInput.js"}
|
|
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports["default"] = exports.
|
|
10
|
+
exports["default"] = exports.ValueRowWrapper = exports.ValueItemWrapper = exports.ScoringRows = exports.ScoringNumberInputWrapper = exports.ScoringContainer = exports.RowLabelWrapper = exports.MatrixColumns = exports.GridSeparatorVertical = exports.GridSeparatorHorizontal = exports.Content = exports.ColumnLabelWrapper = void 0;
|
|
11
11
|
|
|
12
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
13
|
|
|
@@ -33,9 +33,9 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
33
33
|
|
|
34
34
|
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; }
|
|
35
35
|
|
|
36
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
36
|
+
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; }
|
|
37
37
|
|
|
38
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
38
|
+
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; }
|
|
39
39
|
|
|
40
40
|
var columnWidth = '120px';
|
|
41
41
|
|
|
@@ -88,7 +88,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
88
88
|
onChangeModel = props.onChangeModel;
|
|
89
89
|
var rowLabels = model.rowLabels,
|
|
90
90
|
columnLabels = model.columnLabels,
|
|
91
|
-
matrixValues = model.matrixValues
|
|
91
|
+
matrixValues = model.matrixValues,
|
|
92
|
+
spellCheckEnabled = model.spellCheckEnabled;
|
|
92
93
|
|
|
93
94
|
var onSetMatrixValue = function onSetMatrixValue(matrixValueIndex, value) {
|
|
94
95
|
var matrixValuesClone = _objectSpread({}, matrixValues);
|
|
@@ -199,7 +200,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
199
200
|
value: value,
|
|
200
201
|
onLabelUpdate: function onLabelUpdate(labelValue) {
|
|
201
202
|
return onSetColumnLabel(columnLabelIndex, labelValue);
|
|
202
|
-
}
|
|
203
|
+
},
|
|
204
|
+
spellCheck: spellCheckEnabled
|
|
203
205
|
}));
|
|
204
206
|
})), /*#__PURE__*/_react["default"].createElement(GridSeparatorHorizontal, null), /*#__PURE__*/_react["default"].createElement(GridSeparatorVertical, null), /*#__PURE__*/_react["default"].createElement(GridSeparatorHorizontal, null), /*#__PURE__*/_react["default"].createElement(ScoringRows, null, rowLabels.map(function (value, rowLabelIndex) {
|
|
205
207
|
return /*#__PURE__*/_react["default"].createElement(RowLabelWrapper, {
|
|
@@ -210,7 +212,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
210
212
|
value: value,
|
|
211
213
|
onLabelUpdate: function onLabelUpdate(labelValue) {
|
|
212
214
|
return onSetRowLabel(rowLabelIndex, labelValue);
|
|
213
|
-
}
|
|
215
|
+
},
|
|
216
|
+
spellCheck: spellCheckEnabled
|
|
214
217
|
}));
|
|
215
218
|
})), /*#__PURE__*/_react["default"].createElement(GridSeparatorVertical, null), /*#__PURE__*/_react["default"].createElement(Content, null, rowLabels.map(function (row, rowIndex) {
|
|
216
219
|
return /*#__PURE__*/_react["default"].createElement(ValueRowWrapper, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MatrixValues.js"],"names":["columnWidth","ScoringContainer","styled","div","MatrixColumns","ColumnLabelWrapper","RowLabelWrapper","ValueRowWrapper","ValueItemWrapper","ScoringRows","ScoringNumberInputWrapper","GridSeparatorHorizontal","GridSeparatorVertical","Content","MatrixValues","props","model","onChangeModel","rowLabels","columnLabels","matrixValues","onSetMatrixValue","matrixValueIndex","value","matrixValuesClone","parseInt","onSetColumnLabel","index","labelValue","columnLabelsClone","onSetRowLabel","rowLabelsClone","onActionByColumn","resourceIndex","actionType","setValue","columnLabelIndex","forEach","rowLabel","rowLabelIndex","ACTION_TYPE","clear","sortAscending","sortDescending","length","set","onActionByRow","columnLabel","map","row","rowIndex","column","entryIndex","e","propTypes","PropTypes","object","isRequired","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport MatrixLabelEditableButton, {ACTION_TYPE} from './MatrixLabelEditableButton';\nimport isNumeric from './isNumeric';\nimport NumberInput from './NumberInput';\nimport PropTypes from 'prop-types';\n\nconst columnWidth = '120px';\n\nexport const ScoringContainer = styled.div`\n display: grid;\n grid-template-columns: min-content min-content auto;\n`;\n\nexport const MatrixColumns = styled.div`\n display: flex;\n justify-content: space-between;\n padding: 5px;\n`;\n\nexport const ColumnLabelWrapper = styled.div`\n width: ${columnWidth};\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const RowLabelWrapper = styled.div`\n width: 200px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const ValueRowWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nexport const ValueItemWrapper = styled.div`\n width: ${columnWidth};\n height: 50px;\n margin: 1px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const ScoringRows = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 5px;\n`;\n\nexport const ScoringNumberInputWrapper = styled.div`\n width: 60px;\n justify-self: center;\n align-self: center;\n`;\n\nexport const GridSeparatorHorizontal = styled.div`\n background: gray;\n width: 100%;\n height: 1px;\n`;\n\nexport const GridSeparatorVertical = styled.div`\n background: gray;\n width: 1px;\n height: 100%;\n`;\n\nexport const Content = styled.div`\n padding: 5px;\n`;\n\nconst MatrixValues = (props) => {\n const { model, onChangeModel } = props;\n const { rowLabels, columnLabels, matrixValues } = model;\n\n const onSetMatrixValue = (matrixValueIndex, value) => {\n const matrixValuesClone = {\n ...matrixValues,\n };\n if (isNumeric(value)) {\n matrixValuesClone[matrixValueIndex] = parseInt(value, 10);\n } else {\n delete matrixValuesClone[matrixValueIndex];\n }\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone\n })\n };\n\n const onSetColumnLabel = (index, labelValue) => {\n const columnLabelsClone = [...columnLabels];\n columnLabelsClone[index] = labelValue;\n onChangeModel({\n ...model,\n columnLabels: columnLabelsClone\n })\n };\n\n\n const onSetRowLabel = (index, labelValue) => {\n const rowLabelsClone = [...rowLabels];\n rowLabelsClone[index] = labelValue;\n onChangeModel({\n ...model,\n rowLabels: rowLabelsClone\n })\n };\n\n const onActionByColumn = ({ resourceIndex, actionType, setValue }) => {\n const columnLabelIndex = resourceIndex;\n const matrixValuesClone = { ...matrixValues };\n rowLabels.forEach((rowLabel, rowLabelIndex) => {\n switch (actionType) {\n case ACTION_TYPE.clear:\n delete matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`];\n break;\n case ACTION_TYPE.sortAscending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabelIndex + 1;\n break;\n case ACTION_TYPE.sortDescending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabels.length - rowLabelIndex;\n break;\n case ACTION_TYPE.set:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = setValue;\n break;\n default:\n throw 'Incorrect actionType';\n\n }\n });\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone\n })\n };\n\n const onActionByRow = ({ resourceIndex, actionType, setValue }) => {\n const rowLabelIndex = resourceIndex;\n const matrixValuesClone = { ...matrixValues };\n columnLabels.forEach((columnLabel, columnLabelIndex) => {\n switch (actionType) {\n case ACTION_TYPE.clear:\n delete matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`];\n break;\n case ACTION_TYPE.sortAscending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabelIndex + 1;\n break;\n case ACTION_TYPE.sortDescending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabels.length - rowLabelIndex;\n break;\n case ACTION_TYPE.set:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = setValue;\n break;\n default:\n throw 'Incorrect actionType';\n\n }\n });\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone\n })\n };\n\n return (\n <ScoringContainer>\n <div/>\n <GridSeparatorVertical/>\n <MatrixColumns>\n {\n columnLabels.map((value, columnLabelIndex) => (\n <ColumnLabelWrapper key={columnLabelIndex}>\n <MatrixLabelEditableButton\n resourceIndex={columnLabelIndex}\n onAction={onActionByColumn}\n value={value}\n onLabelUpdate={(labelValue) => onSetColumnLabel(columnLabelIndex, labelValue)}\n />\n </ColumnLabelWrapper>\n ))\n }\n </MatrixColumns>\n <GridSeparatorHorizontal/>\n <GridSeparatorVertical/>\n <GridSeparatorHorizontal/>\n <ScoringRows>\n {\n rowLabels.map((value, rowLabelIndex) => (\n <RowLabelWrapper key={rowLabelIndex}>\n <MatrixLabelEditableButton\n resourceIndex={rowLabelIndex}\n onAction={onActionByRow}\n value={value}\n onLabelUpdate={(labelValue) => onSetRowLabel(rowLabelIndex, labelValue)}\n />\n </RowLabelWrapper>\n ))\n }\n </ScoringRows>\n <GridSeparatorVertical/>\n <Content>\n {rowLabels.map((row, rowIndex) => {\n return (\n <ValueRowWrapper key={rowIndex}>\n {columnLabels.map((column, entryIndex) => {\n const matrixValueIndex = `${rowIndex}-${entryIndex}`;\n return (\n <ValueItemWrapper key={entryIndex}>\n <ScoringNumberInputWrapper>\n <NumberInput\n onFieldUpdate={(e) => onSetMatrixValue(matrixValueIndex, e)}\n name={matrixValueIndex}\n placeholder='#'\n fieldValue={{\n value: isNumeric(matrixValues[matrixValueIndex]) ? matrixValues[matrixValueIndex] : ''\n }}\n />\n </ScoringNumberInputWrapper>\n </ValueItemWrapper>\n )\n })}\n </ValueRowWrapper>\n );\n })}\n </Content>\n </ScoringContainer>\n );\n};\n\nMatrixValues.propTypes = {\n model: PropTypes.object.isRequired,\n onChangeModel: PropTypes.func.isRequired\n};\n\nexport default MatrixValues;\n"],"file":"MatrixValues.js"}
|
|
1
|
+
{"version":3,"sources":["../src/MatrixValues.js"],"names":["columnWidth","ScoringContainer","styled","div","MatrixColumns","ColumnLabelWrapper","RowLabelWrapper","ValueRowWrapper","ValueItemWrapper","ScoringRows","ScoringNumberInputWrapper","GridSeparatorHorizontal","GridSeparatorVertical","Content","MatrixValues","props","model","onChangeModel","rowLabels","columnLabels","matrixValues","spellCheckEnabled","onSetMatrixValue","matrixValueIndex","value","matrixValuesClone","parseInt","onSetColumnLabel","index","labelValue","columnLabelsClone","onSetRowLabel","rowLabelsClone","onActionByColumn","resourceIndex","actionType","setValue","columnLabelIndex","forEach","rowLabel","rowLabelIndex","ACTION_TYPE","clear","sortAscending","sortDescending","length","set","onActionByRow","columnLabel","map","row","rowIndex","column","entryIndex","e","propTypes","PropTypes","object","isRequired","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nimport MatrixLabelEditableButton, { ACTION_TYPE } from './MatrixLabelEditableButton';\nimport isNumeric from './isNumeric';\nimport NumberInput from './NumberInput';\nimport PropTypes from 'prop-types';\n\nconst columnWidth = '120px';\n\nexport const ScoringContainer = styled.div`\n display: grid;\n grid-template-columns: min-content min-content auto;\n`;\n\nexport const MatrixColumns = styled.div`\n display: flex;\n justify-content: space-between;\n padding: 5px;\n`;\n\nexport const ColumnLabelWrapper = styled.div`\n width: ${columnWidth};\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const RowLabelWrapper = styled.div`\n width: 200px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const ValueRowWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nexport const ValueItemWrapper = styled.div`\n width: ${columnWidth};\n height: 50px;\n margin: 1px;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport const ScoringRows = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 5px;\n`;\n\nexport const ScoringNumberInputWrapper = styled.div`\n width: 60px;\n justify-self: center;\n align-self: center;\n`;\n\nexport const GridSeparatorHorizontal = styled.div`\n background: gray;\n width: 100%;\n height: 1px;\n`;\n\nexport const GridSeparatorVertical = styled.div`\n background: gray;\n width: 1px;\n height: 100%;\n`;\n\nexport const Content = styled.div`\n padding: 5px;\n`;\n\nconst MatrixValues = (props) => {\n const { model, onChangeModel } = props;\n const { rowLabels, columnLabels, matrixValues, spellCheckEnabled } = model;\n\n const onSetMatrixValue = (matrixValueIndex, value) => {\n const matrixValuesClone = {\n ...matrixValues,\n };\n if (isNumeric(value)) {\n matrixValuesClone[matrixValueIndex] = parseInt(value, 10);\n } else {\n delete matrixValuesClone[matrixValueIndex];\n }\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone,\n });\n };\n\n const onSetColumnLabel = (index, labelValue) => {\n const columnLabelsClone = [...columnLabels];\n columnLabelsClone[index] = labelValue;\n onChangeModel({\n ...model,\n columnLabels: columnLabelsClone,\n });\n };\n\n const onSetRowLabel = (index, labelValue) => {\n const rowLabelsClone = [...rowLabels];\n rowLabelsClone[index] = labelValue;\n onChangeModel({\n ...model,\n rowLabels: rowLabelsClone,\n });\n };\n\n const onActionByColumn = ({ resourceIndex, actionType, setValue }) => {\n const columnLabelIndex = resourceIndex;\n const matrixValuesClone = { ...matrixValues };\n rowLabels.forEach((rowLabel, rowLabelIndex) => {\n switch (actionType) {\n case ACTION_TYPE.clear:\n delete matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`];\n break;\n case ACTION_TYPE.sortAscending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabelIndex + 1;\n break;\n case ACTION_TYPE.sortDescending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabels.length - rowLabelIndex;\n break;\n case ACTION_TYPE.set:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = setValue;\n break;\n default:\n throw 'Incorrect actionType';\n }\n });\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone,\n });\n };\n\n const onActionByRow = ({ resourceIndex, actionType, setValue }) => {\n const rowLabelIndex = resourceIndex;\n const matrixValuesClone = { ...matrixValues };\n columnLabels.forEach((columnLabel, columnLabelIndex) => {\n switch (actionType) {\n case ACTION_TYPE.clear:\n delete matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`];\n break;\n case ACTION_TYPE.sortAscending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabelIndex + 1;\n break;\n case ACTION_TYPE.sortDescending:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = rowLabels.length - rowLabelIndex;\n break;\n case ACTION_TYPE.set:\n matrixValuesClone[`${rowLabelIndex}-${columnLabelIndex}`] = setValue;\n break;\n default:\n throw 'Incorrect actionType';\n }\n });\n onChangeModel({\n ...model,\n matrixValues: matrixValuesClone,\n });\n };\n\n return (\n <ScoringContainer>\n <div />\n <GridSeparatorVertical />\n <MatrixColumns>\n {columnLabels.map((value, columnLabelIndex) => (\n <ColumnLabelWrapper key={columnLabelIndex}>\n <MatrixLabelEditableButton\n resourceIndex={columnLabelIndex}\n onAction={onActionByColumn}\n value={value}\n onLabelUpdate={(labelValue) => onSetColumnLabel(columnLabelIndex, labelValue)}\n spellCheck={spellCheckEnabled}\n />\n </ColumnLabelWrapper>\n ))}\n </MatrixColumns>\n <GridSeparatorHorizontal />\n <GridSeparatorVertical />\n <GridSeparatorHorizontal />\n <ScoringRows>\n {rowLabels.map((value, rowLabelIndex) => (\n <RowLabelWrapper key={rowLabelIndex}>\n <MatrixLabelEditableButton\n resourceIndex={rowLabelIndex}\n onAction={onActionByRow}\n value={value}\n onLabelUpdate={(labelValue) => onSetRowLabel(rowLabelIndex, labelValue)}\n spellCheck={spellCheckEnabled}\n />\n </RowLabelWrapper>\n ))}\n </ScoringRows>\n <GridSeparatorVertical />\n <Content>\n {rowLabels.map((row, rowIndex) => {\n return (\n <ValueRowWrapper key={rowIndex}>\n {columnLabels.map((column, entryIndex) => {\n const matrixValueIndex = `${rowIndex}-${entryIndex}`;\n return (\n <ValueItemWrapper key={entryIndex}>\n <ScoringNumberInputWrapper>\n <NumberInput\n onFieldUpdate={(e) => onSetMatrixValue(matrixValueIndex, e)}\n name={matrixValueIndex}\n placeholder=\"#\"\n fieldValue={{\n value: isNumeric(matrixValues[matrixValueIndex]) ? matrixValues[matrixValueIndex] : '',\n }}\n />\n </ScoringNumberInputWrapper>\n </ValueItemWrapper>\n );\n })}\n </ValueRowWrapper>\n );\n })}\n </Content>\n </ScoringContainer>\n );\n};\n\nMatrixValues.propTypes = {\n model: PropTypes.object.isRequired,\n onChangeModel: PropTypes.func.isRequired,\n};\n\nexport default MatrixValues;\n"],"file":"MatrixValues.js"}
|
|
@@ -27,7 +27,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
27
27
|
|
|
28
28
|
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; }
|
|
29
29
|
|
|
30
|
-
var InputWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n height: 100%;\n input[type='number'] {\n -moz-appearance:textfield;\n }\n
|
|
30
|
+
var InputWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n height: 100%;\n input[type='number'] {\n -moz-appearance: textfield;\n }\n\n input::-webkit-outer-spin-button,\n input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n }\n"])));
|
|
31
31
|
|
|
32
32
|
var styles = {
|
|
33
33
|
InputPropsClass: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/NumberInput.js"],"names":["InputWrapper","styled","div","styles","InputPropsClass","fontSize","textAlign","padding","margin","borderColor","borderWidth","inputPropsClass","cssFocused","notchedOutline","NumericInput","props","classes","onFieldUpdate","name","placeholder","fieldValue","onFieldUpdateWrapper","e","target","value","className","root","focused","ref","propTypes","PropTypes","string","isRequired","object","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,YAAY,GAAGC,6BAAOC,GAAV,
|
|
1
|
+
{"version":3,"sources":["../src/NumberInput.js"],"names":["InputWrapper","styled","div","styles","InputPropsClass","fontSize","textAlign","padding","margin","borderColor","borderWidth","inputPropsClass","cssFocused","notchedOutline","NumericInput","props","classes","onFieldUpdate","name","placeholder","fieldValue","onFieldUpdateWrapper","e","target","value","className","root","focused","ref","propTypes","PropTypes","string","isRequired","object","func"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,YAAY,GAAGC,6BAAOC,GAAV,0SAAlB;;AAaA,IAAMC,MAAM,GAAG;AACbC,EAAAA,eAAe,EAAE;AACfC,IAAAA,QAAQ,EAAE,MADK;AAEfC,IAAAA,SAAS,EAAE,kBAFI;AAGfC,IAAAA,OAAO,EAAE,aAHM;AAIfC,IAAAA,MAAM,EAAE,OAJO;AAKf,oCAAgC;AAC9BC,MAAAA,WAAW,EAAE,kBADiB;AAE9BC,MAAAA,WAAW,EAAE;AAFiB,KALjB;AASf,+BAA2B;AACzBD,MAAAA,WAAW,EAAE;AADY;AATZ,GADJ;AAcbE,EAAAA,eAAe,EAAE;AACfN,IAAAA,QAAQ,EAAE,MADK;AAEfC,IAAAA,SAAS,EAAE,QAFI;AAGfC,IAAAA,OAAO,EAAE,GAHM;AAIfC,IAAAA,MAAM,EAAE;AAJO,GAdJ;AAoBbI,EAAAA,UAAU,EAAE,EApBC;AAsBbC,EAAAA,cAAc,EAAE;AACdH,IAAAA,WAAW,EAAE,gBADC;AAEdD,IAAAA,WAAW,EAAE;AAFC;AAtBH,CAAf;AA4BA,IAAMK,YAAY,GAAG,wBAAWX,MAAX,EAAmB,UAACY,KAAD,EAAW;AACjD,MAAQC,OAAR,GAAkED,KAAlE,CAAQC,OAAR;AAAA,MAAiBC,aAAjB,GAAkEF,KAAlE,CAAiBE,aAAjB;AAAA,MAAgCC,IAAhC,GAAkEH,KAAlE,CAAgCG,IAAhC;AAAA,MAAsCC,WAAtC,GAAkEJ,KAAlE,CAAsCI,WAAtC;AAAA,MAAmDC,UAAnD,GAAkEL,KAAlE,CAAmDK,UAAnD;;AAEA,MAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,CAAD,EAAO;AAClCL,IAAAA,aAAa,CAACK,CAAC,CAACC,MAAF,CAASC,KAAV,CAAb;AACD,GAFD;;AAIA,sBACE,oBAAC,YAAD,qBACE,oBAAC,eAAD;AACE,IAAA,IAAI,EAAEN,IADR;AAEE,IAAA,KAAK,EAAEE,UAAU,CAACI,KAFpB;AAGE,IAAA,UAAU,EAAE;AACVC,MAAAA,SAAS,EAAET,OAAO,CAACL;AADT,KAHd;AAME,IAAA,UAAU,EAAE;AACVK,MAAAA,OAAO,EAAE;AACPU,QAAAA,IAAI,EAAEV,OAAO,CAACZ,eADP;AAEPuB,QAAAA,OAAO,EAAEX,OAAO,CAACJ,UAFV;AAGPC,QAAAA,cAAc,EAAEG,OAAO,CAACH;AAHjB;AADC,KANd;AAaE,IAAA,QAAQ,EAAEO,UAAU,CAACQ,GAbvB;AAcE,IAAA,IAAI,EAAC,QAdP;AAeE,IAAA,WAAW,EAAET,WAff;AAgBE,IAAA,QAAQ,EAAEE,oBAhBZ;AAiBE,IAAA,OAAO,EAAC;AAjBV,IADF,CADF;AAuBD,CA9BoB,CAArB;AAgCAP,YAAY,CAACe,SAAb,GAAyB;AACvBX,EAAAA,IAAI,EAAEY,sBAAUC,MAAV,CAAiBC,UADA;AAEvBb,EAAAA,WAAW,EAAEW,sBAAUC,MAAV,CAAiBC,UAFP;AAGvBZ,EAAAA,UAAU,EAAEU,sBAAUG,MAAV,CAAiBD,UAHN;AAIvBhB,EAAAA,OAAO,EAAEc,sBAAUG,MAJI;AAMvBhB,EAAAA,aAAa,EAAEa,sBAAUI,IAAV,CAAeF;AANP,CAAzB;eASelB,Y","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { TextField } from '@material-ui/core';\n\nconst InputWrapper = styled.div`\n width: 100%;\n height: 100%;\n input[type='number'] {\n -moz-appearance: textfield;\n }\n\n input::-webkit-outer-spin-button,\n input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n }\n`;\n\nconst styles = {\n InputPropsClass: {\n fontSize: '16px',\n textAlign: 'center!important',\n padding: '0!important',\n margin: '5px 0',\n '&$cssFocused $notchedOutline': {\n borderColor: 'green !important',\n borderWidth: '1px !important',\n },\n '&:hover $notchedOutline': {\n borderColor: 'gray !important',\n },\n },\n inputPropsClass: {\n fontSize: '16px',\n textAlign: 'center',\n padding: '0',\n margin: '5px 0',\n },\n cssFocused: {},\n\n notchedOutline: {\n borderWidth: '1px !important',\n borderColor: '#d6d6d6 !important',\n },\n};\n\nconst NumericInput = withStyles(styles)((props) => {\n const { classes, onFieldUpdate, name, placeholder, fieldValue } = props;\n\n const onFieldUpdateWrapper = (e) => {\n onFieldUpdate(e.target.value);\n };\n\n return (\n <InputWrapper>\n <TextField\n name={name}\n value={fieldValue.value}\n inputProps={{\n className: classes.inputPropsClass,\n }}\n InputProps={{\n classes: {\n root: classes.InputPropsClass,\n focused: classes.cssFocused,\n notchedOutline: classes.notchedOutline,\n },\n }}\n inputRef={fieldValue.ref}\n type=\"number\"\n placeholder={placeholder}\n onChange={onFieldUpdateWrapper}\n variant=\"outlined\"\n />\n </InputWrapper>\n );\n});\n\nNumericInput.propTypes = {\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.string.isRequired,\n fieldValue: PropTypes.object.isRequired,\n classes: PropTypes.object,\n\n onFieldUpdate: PropTypes.func.isRequired,\n};\n\nexport default NumericInput;\n"],"file":"NumberInput.js"}
|
|
@@ -13,19 +13,25 @@ var _default = {
|
|
|
13
13
|
model: {
|
|
14
14
|
teacherInstructionsEnabled: true,
|
|
15
15
|
labelType: 'agreement',
|
|
16
|
-
rowLabels: [
|
|
16
|
+
rowLabels: ["I'm interested in politics.", "I'm interested in economics."],
|
|
17
17
|
columnLabels: ['Disagree', 'Unsure', 'Agree'],
|
|
18
18
|
matrixValues: {},
|
|
19
19
|
prompt: 'How interested are you in the following domains?'
|
|
20
20
|
},
|
|
21
21
|
configuration: {
|
|
22
|
-
teacherInstructions: {
|
|
23
|
-
settings: true,
|
|
24
|
-
label: 'Teacher Instructions'
|
|
25
|
-
},
|
|
26
22
|
prompt: {
|
|
27
23
|
settings: true,
|
|
28
24
|
label: 'Prompt'
|
|
25
|
+
},
|
|
26
|
+
settingsPanelDisabled: false,
|
|
27
|
+
spellCheck: {
|
|
28
|
+
label: 'Spellcheck',
|
|
29
|
+
settings: false,
|
|
30
|
+
enabled: true
|
|
31
|
+
},
|
|
32
|
+
teacherInstructions: {
|
|
33
|
+
settings: true,
|
|
34
|
+
label: 'Teacher Instructions'
|
|
29
35
|
}
|
|
30
36
|
}
|
|
31
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaults.js"],"names":["model","teacherInstructionsEnabled","labelType","rowLabels","columnLabels","matrixValues","prompt","configuration","
|
|
1
|
+
{"version":3,"sources":["../src/defaults.js"],"names":["model","teacherInstructionsEnabled","labelType","rowLabels","columnLabels","matrixValues","prompt","configuration","settings","label","settingsPanelDisabled","spellCheck","enabled","teacherInstructions"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;eACe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,0BAA0B,EAAE,IADvB;AAELC,IAAAA,SAAS,EAAE,WAFN;AAGLC,IAAAA,SAAS,EAAE,CAAC,6BAAD,EAAgC,8BAAhC,CAHN;AAILC,IAAAA,YAAY,EAAE,CAAC,UAAD,EAAa,QAAb,EAAuB,OAAvB,CAJT;AAKLC,IAAAA,YAAY,EAAE,EALT;AAMLC,IAAAA,MAAM,EAAE;AANH,GADM;AASbC,EAAAA,aAAa,EAAE;AACbD,IAAAA,MAAM,EAAE;AACNE,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD,KADK;AAKbC,IAAAA,qBAAqB,EAAE,KALV;AAMbC,IAAAA,UAAU,EAAE;AACVF,MAAAA,KAAK,EAAE,YADG;AAEVD,MAAAA,QAAQ,EAAE,KAFA;AAGVI,MAAAA,OAAO,EAAE;AAHC,KANC;AAWbC,IAAAA,mBAAmB,EAAE;AACnBL,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY;AAXR;AATF,C","sourcesContent":["/** NOTE: teacherInstructions, studentInstructions, rationale & scoringType\n * functionalities are not defined yet - the value for those can belong to\n * model or to configure\n */\nexport default {\n model: {\n teacherInstructionsEnabled: true,\n labelType: 'agreement',\n rowLabels: [\"I'm interested in politics.\", \"I'm interested in economics.\"],\n columnLabels: ['Disagree', 'Unsure', 'Agree'],\n matrixValues: {},\n prompt: 'How interested are you in the following domains?',\n },\n configuration: {\n prompt: {\n settings: true,\n label: 'Prompt',\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n },\n },\n};\n"],"file":"defaults.js"}
|