@pie-element/matrix 0.28.2-next.15 → 0.28.2-next.17

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.
Files changed (41) hide show
  1. package/package.json +2 -2
  2. package/configure/lib/HeaderCommon.js +0 -31
  3. package/configure/lib/HeaderCommon.js.map +0 -1
  4. package/configure/lib/Main.js +0 -242
  5. package/configure/lib/Main.js.map +0 -1
  6. package/configure/lib/MatrixColumnsSizeHeaderInput.js +0 -76
  7. package/configure/lib/MatrixColumnsSizeHeaderInput.js.map +0 -1
  8. package/configure/lib/MatrixLabelEditableButton.js +0 -219
  9. package/configure/lib/MatrixLabelEditableButton.js.map +0 -1
  10. package/configure/lib/MatrixLabelTypeHeaderInput.js +0 -117
  11. package/configure/lib/MatrixLabelTypeHeaderInput.js.map +0 -1
  12. package/configure/lib/MatrixRowsSizeHeaderInput.js +0 -76
  13. package/configure/lib/MatrixRowsSizeHeaderInput.js.map +0 -1
  14. package/configure/lib/MatrixValues.js +0 -245
  15. package/configure/lib/MatrixValues.js.map +0 -1
  16. package/configure/lib/NumberInput.js +0 -98
  17. package/configure/lib/NumberInput.js.map +0 -1
  18. package/configure/lib/columnLabelsGenerator.js +0 -58
  19. package/configure/lib/columnLabelsGenerator.js.map +0 -1
  20. package/configure/lib/defaults.js +0 -74
  21. package/configure/lib/defaults.js.map +0 -1
  22. package/configure/lib/index.js +0 -162
  23. package/configure/lib/index.js.map +0 -1
  24. package/configure/lib/isNumeric.js +0 -13
  25. package/configure/lib/isNumeric.js.map +0 -1
  26. package/configure/lib/matrixEntities.js +0 -17
  27. package/configure/lib/matrixEntities.js.map +0 -1
  28. package/controller/lib/defaults.js +0 -15
  29. package/controller/lib/defaults.js.map +0 -1
  30. package/controller/lib/index.js +0 -143
  31. package/controller/lib/index.js.map +0 -1
  32. package/lib/ChoiceInput.js +0 -71
  33. package/lib/ChoiceInput.js.map +0 -1
  34. package/lib/Main.js +0 -73
  35. package/lib/Main.js.map +0 -1
  36. package/lib/Matrix.js +0 -113
  37. package/lib/Matrix.js.map +0 -1
  38. package/lib/index.js +0 -124
  39. package/lib/index.js.map +0 -1
  40. package/lib/session-updater.js +0 -11
  41. package/lib/session-updater.js.map +0 -1
@@ -1 +0,0 @@
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","bool"],"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 spellCheck: PropTypes.bool,\n};\n\nexport default MatrixLabelEditableButton;\n"],"file":"MatrixLabelEditableButton.js"}
@@ -1,117 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _styledComponents = _interopRequireDefault(require("styled-components"));
17
-
18
- var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
19
-
20
- var _RadioGroup = _interopRequireDefault(require("@material-ui/core/RadioGroup"));
21
-
22
- var _FormControlLabel = _interopRequireDefault(require("@material-ui/core/FormControlLabel"));
23
-
24
- var _matrixEntities = require("./matrixEntities");
25
-
26
- var _HeaderCommon = require("./HeaderCommon");
27
-
28
- var _columnLabelsGenerator = _interopRequireDefault(require("./columnLabelsGenerator"));
29
-
30
- var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
- var _templateObject;
33
-
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
-
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
-
38
- var Flex = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"])));
39
-
40
- var MatrixLabelTypeHeaderInput = function MatrixLabelTypeHeaderInput(_ref) {
41
- var model = _ref.model,
42
- onChangeModel = _ref.onChangeModel;
43
-
44
- var onChangeLabelType = function onChangeLabelType(e) {
45
- var labelType = e.target.value;
46
-
47
- var modelNew = _objectSpread(_objectSpread({}, model), {}, {
48
- labelType: labelType
49
- });
50
-
51
- if (labelType !== _matrixEntities.MATRIX_LABEL_TYPE.custom) {
52
- modelNew.columnLabels = (0, _columnLabelsGenerator["default"])(labelType, model.columnLabels.length);
53
- }
54
-
55
- onChangeModel(modelNew);
56
- };
57
-
58
- var isMatrixTypeSelectionEnabled = [3, 5, 7].includes(model.columnLabels.length);
59
- return /*#__PURE__*/_react["default"].createElement(_HeaderCommon.ColumnsWrapper, null, /*#__PURE__*/_react["default"].createElement(_HeaderCommon.ColumnsHeader, null, "Matrix Type"), /*#__PURE__*/_react["default"].createElement(Flex, null, /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
60
- "aria-label": "matrixLabelType",
61
- name: "matrixLabelType",
62
- value: model.labelType,
63
- onChange: onChangeLabelType
64
- }, /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
65
- disabled: !isMatrixTypeSelectionEnabled,
66
- value: _matrixEntities.MATRIX_LABEL_TYPE.agreement,
67
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
68
- label: "Agreement"
69
- }), /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
70
- disabled: !isMatrixTypeSelectionEnabled,
71
- value: _matrixEntities.MATRIX_LABEL_TYPE.frequency,
72
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
73
- label: "Frequency"
74
- }), /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
75
- disabled: !isMatrixTypeSelectionEnabled,
76
- value: _matrixEntities.MATRIX_LABEL_TYPE.yesNo,
77
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
78
- label: "Yes/No"
79
- })), /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
80
- "aria-label": "matrixLabelType",
81
- name: "matrixLabelType",
82
- value: model.labelType,
83
- onChange: onChangeLabelType
84
- }, /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
85
- disabled: !isMatrixTypeSelectionEnabled,
86
- value: _matrixEntities.MATRIX_LABEL_TYPE.importance,
87
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
88
- label: "Importance"
89
- }), /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
90
- disabled: !isMatrixTypeSelectionEnabled,
91
- value: _matrixEntities.MATRIX_LABEL_TYPE.likelihood,
92
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
93
- label: "Likelihood"
94
- }), /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
95
- disabled: !isMatrixTypeSelectionEnabled,
96
- value: _matrixEntities.MATRIX_LABEL_TYPE.like,
97
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
98
- label: "Like"
99
- })), /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
100
- "aria-label": "matrixLabelType",
101
- name: "matrixLabelType",
102
- value: model.labelType,
103
- onChange: onChangeLabelType
104
- }, /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
105
- value: _matrixEntities.MATRIX_LABEL_TYPE.custom,
106
- control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], null),
107
- label: "Custom"
108
- }))));
109
- };
110
-
111
- MatrixLabelTypeHeaderInput.propTypes = {
112
- model: _propTypes["default"].object.isRequired,
113
- onChangeModel: _propTypes["default"].func.isRequired
114
- };
115
- var _default = MatrixLabelTypeHeaderInput;
116
- exports["default"] = _default;
117
- //# sourceMappingURL=MatrixLabelTypeHeaderInput.js.map
@@ -1 +0,0 @@
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,eAGE,gCAAC,IAAD,qBACE,gCAAC,sBAAD;AACE,kBAAW,iBADb;AAEE,IAAA,IAAI,EAAC,iBAFP;AAGE,IAAA,KAAK,EAAEX,KAAK,CAACI,SAHf;AAIE,IAAA,QAAQ,EAAEF;AAJZ,kBAME,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACU,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBM,SAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IANF,eAYE,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACF,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBO,SAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IAZF,eAkBE,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACH,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBQ,KAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IAlBF,CADF,eA2BE,gCAAC,sBAAD;AACE,kBAAW,iBADb;AAEE,IAAA,IAAI,EAAC,iBAFP;AAGE,IAAA,KAAK,EAAEhB,KAAK,CAACI,SAHf;AAIE,IAAA,QAAQ,EAAEF;AAJZ,kBAME,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACU,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBS,UAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IANF,eAYE,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACL,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBU,UAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IAZF,eAkBE,gCAAC,4BAAD;AACE,IAAA,QAAQ,EAAE,CAACN,4BADb;AAEE,IAAA,KAAK,EAAEJ,kCAAkBW,IAF3B;AAGE,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAHX;AAIE,IAAA,KAAK,EAAC;AAJR,IAlBF,CA3BF,eAqDE,gCAAC,sBAAD;AACE,kBAAW,iBADb;AAEE,IAAA,IAAI,EAAC,iBAFP;AAGE,IAAA,KAAK,EAAEnB,KAAK,CAACI,SAHf;AAIE,IAAA,QAAQ,EAAEF;AAJZ,kBAME,gCAAC,4BAAD;AAAkB,IAAA,KAAK,EAAEM,kCAAkBC,MAA3C;AAAmD,IAAA,OAAO,eAAE,gCAAC,iBAAD,OAA5D;AAAuE,IAAA,KAAK,EAAC;AAA7E,IANF,CArDF,CAHF,CADF;AAoED,CA9ED;;AAgFAV,0BAA0B,CAACqB,SAA3B,GAAuC;AACrCpB,EAAAA,KAAK,EAAEqB,sBAAUC,MAAV,CAAiBC,UADa;AAErCtB,EAAAA,aAAa,EAAEoB,sBAAUG,IAAV,CAAeD;AAFO,CAAvC;eAKexB,0B","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"}
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _Add = _interopRequireDefault(require("@material-ui/icons/Add"));
17
-
18
- var _Remove = _interopRequireDefault(require("@material-ui/icons/Remove"));
19
-
20
- var _HeaderCommon = require("./HeaderCommon");
21
-
22
- var _matrixEntities = require("./matrixEntities");
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
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
-
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
-
30
- var MatrixColumnsRowInput = function MatrixColumnsRowInput(_ref) {
31
- var model = _ref.model,
32
- onChangeModel = _ref.onChangeModel;
33
-
34
- var onIncrementSize = function onIncrementSize() {
35
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
36
- rowLabels: [].concat((0, _toConsumableArray2["default"])(model.rowLabels), ["STATEMENT ".concat(model.rowLabels.length + 1)]),
37
- labelType: _matrixEntities.MATRIX_LABEL_TYPE.custom
38
- }));
39
- };
40
-
41
- var onDecrementSize = function onDecrementSize() {
42
- var rowLabelsLength = model.rowLabels.length;
43
-
44
- if (rowLabelsLength <= 1) {
45
- return;
46
- }
47
-
48
- var rowLabelsNext = (0, _toConsumableArray2["default"])(model.rowLabels);
49
- rowLabelsNext.pop();
50
-
51
- var matrixValuesClone = _objectSpread({}, model.matrixValues);
52
-
53
- model.columnLabels.forEach(function (columnLabel, columnIndex) {
54
- delete matrixValuesClone["".concat(rowLabelsLength - 1, "-").concat(columnIndex)];
55
- });
56
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
57
- rowLabels: rowLabelsNext,
58
- matrixValues: matrixValuesClone,
59
- labelType: _matrixEntities.MATRIX_LABEL_TYPE.custom
60
- }));
61
- };
62
-
63
- return /*#__PURE__*/_react["default"].createElement(_HeaderCommon.ColumnsWrapper, null, /*#__PURE__*/_react["default"].createElement(_HeaderCommon.ColumnsHeader, null, "Matrix Rows"), /*#__PURE__*/_react["default"].createElement(_HeaderCommon.NumberInputFormGroupWrapper, null, /*#__PURE__*/_react["default"].createElement(_HeaderCommon.IconWrapper, null, /*#__PURE__*/_react["default"].createElement(_Remove["default"], {
64
- onClick: onDecrementSize
65
- })), /*#__PURE__*/_react["default"].createElement("p", null, model.rowLabels.length), /*#__PURE__*/_react["default"].createElement(_HeaderCommon.IconWrapper, null, /*#__PURE__*/_react["default"].createElement(_Add["default"], {
66
- onClick: onIncrementSize
67
- }))));
68
- };
69
-
70
- MatrixColumnsRowInput.propTypes = {
71
- model: _propTypes["default"].object.isRequired,
72
- onChangeModel: _propTypes["default"].func.isRequired
73
- };
74
- var _default = MatrixColumnsRowInput;
75
- exports["default"] = _default;
76
- //# sourceMappingURL=MatrixRowsSizeHeaderInput.js.map
@@ -1 +0,0 @@
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"}
@@ -1,245 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
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
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _react = _interopRequireDefault(require("react"));
19
-
20
- var _styledComponents = _interopRequireDefault(require("styled-components"));
21
-
22
- var _MatrixLabelEditableButton = _interopRequireWildcard(require("./MatrixLabelEditableButton"));
23
-
24
- var _isNumeric = _interopRequireDefault(require("./isNumeric"));
25
-
26
- var _NumberInput = _interopRequireDefault(require("./NumberInput"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
31
-
32
- 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); }
33
-
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
-
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
-
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
-
40
- var columnWidth = '120px';
41
-
42
- var ScoringContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: min-content min-content auto;\n"])));
43
-
44
- exports.ScoringContainer = ScoringContainer;
45
-
46
- var MatrixColumns = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n padding: 5px;\n"])));
47
-
48
- exports.MatrixColumns = MatrixColumns;
49
-
50
- var ColumnLabelWrapper = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n display: flex;\n align-items: center;\n justify-content: center;\n"])), columnWidth);
51
-
52
- exports.ColumnLabelWrapper = ColumnLabelWrapper;
53
-
54
- var RowLabelWrapper = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 200px;\n display: flex;\n align-items: center;\n justify-content: center;\n"])));
55
-
56
- exports.RowLabelWrapper = RowLabelWrapper;
57
-
58
- var ValueRowWrapper = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n"])));
59
-
60
- exports.ValueRowWrapper = ValueRowWrapper;
61
-
62
- var ValueItemWrapper = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: 50px;\n margin: 1px;\n display: flex;\n align-items: center;\n justify-content: center;\n"])), columnWidth);
63
-
64
- exports.ValueItemWrapper = ValueItemWrapper;
65
-
66
- var ScoringRows = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: 5px;\n"])));
67
-
68
- exports.ScoringRows = ScoringRows;
69
-
70
- var ScoringNumberInputWrapper = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n width: 60px;\n justify-self: center;\n align-self: center;\n"])));
71
-
72
- exports.ScoringNumberInputWrapper = ScoringNumberInputWrapper;
73
-
74
- var GridSeparatorHorizontal = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n background: gray;\n width: 100%;\n height: 1px;\n"])));
75
-
76
- exports.GridSeparatorHorizontal = GridSeparatorHorizontal;
77
-
78
- var GridSeparatorVertical = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n background: gray;\n width: 1px;\n height: 100%;\n"])));
79
-
80
- exports.GridSeparatorVertical = GridSeparatorVertical;
81
-
82
- var Content = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 5px;\n"])));
83
-
84
- exports.Content = Content;
85
-
86
- var MatrixValues = function MatrixValues(props) {
87
- var model = props.model,
88
- onChangeModel = props.onChangeModel;
89
- var rowLabels = model.rowLabels,
90
- columnLabels = model.columnLabels,
91
- matrixValues = model.matrixValues,
92
- spellCheckEnabled = model.spellCheckEnabled;
93
-
94
- var onSetMatrixValue = function onSetMatrixValue(matrixValueIndex, value) {
95
- var matrixValuesClone = _objectSpread({}, matrixValues);
96
-
97
- if ((0, _isNumeric["default"])(value)) {
98
- matrixValuesClone[matrixValueIndex] = parseInt(value, 10);
99
- } else {
100
- delete matrixValuesClone[matrixValueIndex];
101
- }
102
-
103
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
104
- matrixValues: matrixValuesClone
105
- }));
106
- };
107
-
108
- var onSetColumnLabel = function onSetColumnLabel(index, labelValue) {
109
- var columnLabelsClone = (0, _toConsumableArray2["default"])(columnLabels);
110
- columnLabelsClone[index] = labelValue;
111
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
112
- columnLabels: columnLabelsClone
113
- }));
114
- };
115
-
116
- var onSetRowLabel = function onSetRowLabel(index, labelValue) {
117
- var rowLabelsClone = (0, _toConsumableArray2["default"])(rowLabels);
118
- rowLabelsClone[index] = labelValue;
119
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
120
- rowLabels: rowLabelsClone
121
- }));
122
- };
123
-
124
- var onActionByColumn = function onActionByColumn(_ref) {
125
- var resourceIndex = _ref.resourceIndex,
126
- actionType = _ref.actionType,
127
- setValue = _ref.setValue;
128
- var columnLabelIndex = resourceIndex;
129
-
130
- var matrixValuesClone = _objectSpread({}, matrixValues);
131
-
132
- rowLabels.forEach(function (rowLabel, rowLabelIndex) {
133
- switch (actionType) {
134
- case _MatrixLabelEditableButton.ACTION_TYPE.clear:
135
- delete matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)];
136
- break;
137
-
138
- case _MatrixLabelEditableButton.ACTION_TYPE.sortAscending:
139
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = rowLabelIndex + 1;
140
- break;
141
-
142
- case _MatrixLabelEditableButton.ACTION_TYPE.sortDescending:
143
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = rowLabels.length - rowLabelIndex;
144
- break;
145
-
146
- case _MatrixLabelEditableButton.ACTION_TYPE.set:
147
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = setValue;
148
- break;
149
-
150
- default:
151
- throw 'Incorrect actionType';
152
- }
153
- });
154
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
155
- matrixValues: matrixValuesClone
156
- }));
157
- };
158
-
159
- var onActionByRow = function onActionByRow(_ref2) {
160
- var resourceIndex = _ref2.resourceIndex,
161
- actionType = _ref2.actionType,
162
- setValue = _ref2.setValue;
163
- var rowLabelIndex = resourceIndex;
164
-
165
- var matrixValuesClone = _objectSpread({}, matrixValues);
166
-
167
- columnLabels.forEach(function (columnLabel, columnLabelIndex) {
168
- switch (actionType) {
169
- case _MatrixLabelEditableButton.ACTION_TYPE.clear:
170
- delete matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)];
171
- break;
172
-
173
- case _MatrixLabelEditableButton.ACTION_TYPE.sortAscending:
174
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = rowLabelIndex + 1;
175
- break;
176
-
177
- case _MatrixLabelEditableButton.ACTION_TYPE.sortDescending:
178
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = rowLabels.length - rowLabelIndex;
179
- break;
180
-
181
- case _MatrixLabelEditableButton.ACTION_TYPE.set:
182
- matrixValuesClone["".concat(rowLabelIndex, "-").concat(columnLabelIndex)] = setValue;
183
- break;
184
-
185
- default:
186
- throw 'Incorrect actionType';
187
- }
188
- });
189
- onChangeModel(_objectSpread(_objectSpread({}, model), {}, {
190
- matrixValues: matrixValuesClone
191
- }));
192
- };
193
-
194
- return /*#__PURE__*/_react["default"].createElement(ScoringContainer, null, /*#__PURE__*/_react["default"].createElement("div", null), /*#__PURE__*/_react["default"].createElement(GridSeparatorVertical, null), /*#__PURE__*/_react["default"].createElement(MatrixColumns, null, columnLabels.map(function (value, columnLabelIndex) {
195
- return /*#__PURE__*/_react["default"].createElement(ColumnLabelWrapper, {
196
- key: columnLabelIndex
197
- }, /*#__PURE__*/_react["default"].createElement(_MatrixLabelEditableButton["default"], {
198
- resourceIndex: columnLabelIndex,
199
- onAction: onActionByColumn,
200
- value: value,
201
- onLabelUpdate: function onLabelUpdate(labelValue) {
202
- return onSetColumnLabel(columnLabelIndex, labelValue);
203
- },
204
- spellCheck: spellCheckEnabled
205
- }));
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) {
207
- return /*#__PURE__*/_react["default"].createElement(RowLabelWrapper, {
208
- key: rowLabelIndex
209
- }, /*#__PURE__*/_react["default"].createElement(_MatrixLabelEditableButton["default"], {
210
- resourceIndex: rowLabelIndex,
211
- onAction: onActionByRow,
212
- value: value,
213
- onLabelUpdate: function onLabelUpdate(labelValue) {
214
- return onSetRowLabel(rowLabelIndex, labelValue);
215
- },
216
- spellCheck: spellCheckEnabled
217
- }));
218
- })), /*#__PURE__*/_react["default"].createElement(GridSeparatorVertical, null), /*#__PURE__*/_react["default"].createElement(Content, null, rowLabels.map(function (row, rowIndex) {
219
- return /*#__PURE__*/_react["default"].createElement(ValueRowWrapper, {
220
- key: rowIndex
221
- }, columnLabels.map(function (column, entryIndex) {
222
- var matrixValueIndex = "".concat(rowIndex, "-").concat(entryIndex);
223
- return /*#__PURE__*/_react["default"].createElement(ValueItemWrapper, {
224
- key: entryIndex
225
- }, /*#__PURE__*/_react["default"].createElement(ScoringNumberInputWrapper, null, /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
226
- onFieldUpdate: function onFieldUpdate(e) {
227
- return onSetMatrixValue(matrixValueIndex, e);
228
- },
229
- name: matrixValueIndex,
230
- placeholder: "#",
231
- fieldValue: {
232
- value: (0, _isNumeric["default"])(matrixValues[matrixValueIndex]) ? matrixValues[matrixValueIndex] : ''
233
- }
234
- })));
235
- }));
236
- })));
237
- };
238
-
239
- MatrixValues.propTypes = {
240
- model: _propTypes["default"].object.isRequired,
241
- onChangeModel: _propTypes["default"].func.isRequired
242
- };
243
- var _default = MatrixValues;
244
- exports["default"] = _default;
245
- //# sourceMappingURL=MatrixValues.js.map
@@ -1 +0,0 @@
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"}
@@ -1,98 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var React = _interopRequireWildcard(require("react"));
15
-
16
- var _styledComponents = _interopRequireDefault(require("styled-components"));
17
-
18
- var _propTypes = _interopRequireDefault(require("prop-types"));
19
-
20
- var _styles = require("@material-ui/core/styles");
21
-
22
- var _core = require("@material-ui/core");
23
-
24
- var _templateObject;
25
-
26
- 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); }
27
-
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
-
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
-
32
- var styles = {
33
- InputPropsClass: {
34
- fontSize: '16px',
35
- textAlign: 'center!important',
36
- padding: '0!important',
37
- margin: '5px 0',
38
- '&$cssFocused $notchedOutline': {
39
- borderColor: 'green !important',
40
- borderWidth: '1px !important'
41
- },
42
- '&:hover $notchedOutline': {
43
- borderColor: 'gray !important'
44
- }
45
- },
46
- inputPropsClass: {
47
- fontSize: '16px',
48
- textAlign: 'center',
49
- padding: '0',
50
- margin: '5px 0'
51
- },
52
- cssFocused: {},
53
- notchedOutline: {
54
- borderWidth: '1px !important',
55
- borderColor: '#d6d6d6 !important'
56
- }
57
- };
58
- var NumericInput = (0, _styles.withStyles)(styles)(function (props) {
59
- var classes = props.classes,
60
- onFieldUpdate = props.onFieldUpdate,
61
- name = props.name,
62
- placeholder = props.placeholder,
63
- fieldValue = props.fieldValue;
64
-
65
- var onFieldUpdateWrapper = function onFieldUpdateWrapper(e) {
66
- onFieldUpdate(e.target.value);
67
- };
68
-
69
- return /*#__PURE__*/React.createElement(InputWrapper, null, /*#__PURE__*/React.createElement(_core.TextField, {
70
- name: name,
71
- value: fieldValue.value,
72
- inputProps: {
73
- className: classes.inputPropsClass
74
- },
75
- InputProps: {
76
- classes: {
77
- root: classes.InputPropsClass,
78
- focused: classes.cssFocused,
79
- notchedOutline: classes.notchedOutline
80
- }
81
- },
82
- inputRef: fieldValue.ref,
83
- type: "number",
84
- placeholder: placeholder,
85
- onChange: onFieldUpdateWrapper,
86
- variant: "outlined"
87
- }));
88
- });
89
- NumericInput.propTypes = {
90
- name: _propTypes["default"].string.isRequired,
91
- placeholder: _propTypes["default"].string.isRequired,
92
- fieldValue: _propTypes["default"].object.isRequired,
93
- classes: _propTypes["default"].object,
94
- onFieldUpdate: _propTypes["default"].func.isRequired
95
- };
96
- var _default = NumericInput;
97
- exports["default"] = _default;
98
- //# sourceMappingURL=NumberInput.js.map
@@ -1 +0,0 @@
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"}