@pie-element/matrix 0.1.1 → 0.1.4-next.1014
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 +161 -0
- package/configure/CHANGELOG.md +128 -0
- package/configure/lib/HeaderCommon.js +1 -1
- package/configure/lib/Main.js +12 -6
- package/configure/lib/Main.js.map +1 -1
- package/configure/lib/MatrixColumnsSizeHeaderInput.js +2 -2
- package/configure/lib/MatrixLabelEditableButton.js +9 -3
- package/configure/lib/MatrixLabelEditableButton.js.map +1 -1
- package/configure/lib/MatrixLabelTypeHeaderInput.js +2 -2
- package/configure/lib/MatrixRowsSizeHeaderInput.js +2 -2
- package/configure/lib/MatrixValues.js +14 -7
- package/configure/lib/MatrixValues.js.map +1 -1
- package/configure/lib/NumberInput.js +5 -1
- package/configure/lib/NumberInput.js.map +1 -1
- package/configure/lib/defaults.js +5 -0
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +3 -3
- package/configure/package.json +3 -3
- package/controller/CHANGELOG.md +27 -0
- 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 +16 -0
- package/docs/config-schema.json.md +12 -0
- package/lib/ChoiceInput.js.map +1 -1
- package/lib/Main.js +1 -1
- package/lib/Main.js.map +1 -1
- package/lib/Matrix.js +9 -14
- package/lib/Matrix.js.map +1 -1
- package/lib/index.js +5 -2
- package/lib/index.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,167 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.1.25](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.24...@pie-element/matrix@0.1.25) (2022-03-28)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.1.24](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.23...@pie-element/matrix@0.1.24) (2022-03-22)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [0.1.23](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.22...@pie-element/matrix@0.1.23) (2022-03-08)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## [0.1.22](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.21...@pie-element/matrix@0.1.22) (2022-03-08)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## [0.1.21](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.20...@pie-element/matrix@0.1.21) (2022-02-21)
|
|
39
|
+
|
|
40
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## [0.1.20](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.19...@pie-element/matrix@0.1.20) (2022-02-04)
|
|
47
|
+
|
|
48
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## [0.1.19](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.18...@pie-element/matrix@0.1.19) (2022-01-24)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
### Bug Fixes
|
|
58
|
+
|
|
59
|
+
* use preview prompt for prompt, rationale and teacher instructions to fix table rendering PD-1456 ([f330601](https://github.com/pie-framework/pie-elements/commit/f3306019a2d1c8ce3e2783823dfe9ef0a0394e4f))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
## [0.1.18](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.17...@pie-element/matrix@0.1.18) (2022-01-10)
|
|
66
|
+
|
|
67
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
## [0.1.17](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.16...@pie-element/matrix@0.1.17) (2021-12-23)
|
|
74
|
+
|
|
75
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
## [0.1.15](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.14...@pie-element/matrix@0.1.15) (2021-12-13)
|
|
82
|
+
|
|
83
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
## [0.1.12](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.11...@pie-element/matrix@0.1.12) (2021-11-29)
|
|
90
|
+
|
|
91
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
## [0.1.11](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.7...@pie-element/matrix@0.1.11) (2021-11-11)
|
|
98
|
+
|
|
99
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
## [0.1.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.3...@pie-element/matrix@0.1.10) (2021-11-11)
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
### Bug Fixes
|
|
109
|
+
|
|
110
|
+
* pie-lib updates ([e521c2f](https://github.com/pie-framework/pie-elements/commit/e521c2f1a44aa7f3e14f82a1cee05ceb484ed0a6))
|
|
111
|
+
* Updated pie-lib versions ([2fe4c5d](https://github.com/pie-framework/pie-elements/commit/2fe4c5d0be2d40f5fdb34815855695a7f1087f56))
|
|
112
|
+
* Updated pie-lib versions ([1c23830](https://github.com/pie-framework/pie-elements/commit/1c23830fc75d1de5f7bb3bb16de3c665ae5fa350))
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
## [0.1.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.6...@pie-element/matrix@0.1.7) (2021-10-04)
|
|
120
|
+
|
|
121
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
## [0.1.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.5...@pie-element/matrix@0.1.6) (2021-09-20)
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
### Bug Fixes
|
|
131
|
+
|
|
132
|
+
* pie-lib updates ([e521c2f](https://github.com/pie-framework/pie-elements/commit/e521c2f1a44aa7f3e14f82a1cee05ceb484ed0a6))
|
|
133
|
+
* Updated pie-lib versions ([2fe4c5d](https://github.com/pie-framework/pie-elements/commit/2fe4c5d0be2d40f5fdb34815855695a7f1087f56))
|
|
134
|
+
* Updated pie-lib versions ([1c23830](https://github.com/pie-framework/pie-elements/commit/1c23830fc75d1de5f7bb3bb16de3c665ae5fa350))
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
## [0.1.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.4...@pie-element/matrix@0.1.5) (2021-09-01)
|
|
141
|
+
|
|
142
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
## [0.1.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.3...@pie-element/matrix@0.1.4) (2021-08-05)
|
|
149
|
+
|
|
150
|
+
**Note:** Version bump only for package @pie-element/matrix
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
## [0.1.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.1...@pie-element/matrix@0.1.3) (2021-08-05)
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
### Bug Fixes
|
|
160
|
+
|
|
161
|
+
* force bump ([5ea7295](https://github.com/pie-framework/pie-elements/commit/5ea7295e4755fbc492a76e7ec69e5fc35b196919))
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
6
167
|
## [0.1.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix@0.1.0...@pie-element/matrix@0.1.1) (2021-06-29)
|
|
7
168
|
|
|
8
169
|
|
package/configure/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,134 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.1.20](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.19...@pie-element/matrix-configure@0.1.20) (2022-03-28)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.1.19](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.18...@pie-element/matrix-configure@0.1.19) (2022-03-22)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [0.1.18](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.17...@pie-element/matrix-configure@0.1.18) (2022-03-08)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## [0.1.17](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.16...@pie-element/matrix-configure@0.1.17) (2022-03-08)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
## [0.1.16](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.15...@pie-element/matrix-configure@0.1.16) (2022-02-21)
|
|
39
|
+
|
|
40
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
## [0.1.15](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.14...@pie-element/matrix-configure@0.1.15) (2022-02-04)
|
|
47
|
+
|
|
48
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
## [0.1.14](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.13...@pie-element/matrix-configure@0.1.14) (2022-01-24)
|
|
55
|
+
|
|
56
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## [0.1.13](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.12...@pie-element/matrix-configure@0.1.13) (2022-01-10)
|
|
63
|
+
|
|
64
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## [0.1.12](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.11...@pie-element/matrix-configure@0.1.12) (2021-12-23)
|
|
71
|
+
|
|
72
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
## [0.1.10](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.9...@pie-element/matrix-configure@0.1.10) (2021-12-13)
|
|
79
|
+
|
|
80
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## [0.1.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.6...@pie-element/matrix-configure@0.1.7) (2021-11-29)
|
|
87
|
+
|
|
88
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
## [0.1.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.5...@pie-element/matrix-configure@0.1.6) (2021-10-04)
|
|
95
|
+
|
|
96
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## [0.1.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.4...@pie-element/matrix-configure@0.1.5) (2021-09-20)
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
### Bug Fixes
|
|
106
|
+
|
|
107
|
+
* pie-lib updates ([e521c2f](https://github.com/pie-framework/pie-elements/commit/e521c2f1a44aa7f3e14f82a1cee05ceb484ed0a6))
|
|
108
|
+
* Updated pie-lib versions ([2fe4c5d](https://github.com/pie-framework/pie-elements/commit/2fe4c5d0be2d40f5fdb34815855695a7f1087f56))
|
|
109
|
+
* Updated pie-lib versions ([1c23830](https://github.com/pie-framework/pie-elements/commit/1c23830fc75d1de5f7bb3bb16de3c665ae5fa350))
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
## [0.1.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.3...@pie-element/matrix-configure@0.1.4) (2021-08-05)
|
|
116
|
+
|
|
117
|
+
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
## [0.1.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.1...@pie-element/matrix-configure@0.1.3) (2021-08-05)
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
### Bug Fixes
|
|
127
|
+
|
|
128
|
+
* force bump ([5ea7295](https://github.com/pie-framework/pie-elements/commit/5ea7295e4755fbc492a76e7ec69e5fc35b196919))
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
6
134
|
## [0.1.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-configure@0.1.0...@pie-element/matrix-configure@0.1.1) (2021-06-29)
|
|
7
135
|
|
|
8
136
|
**Note:** Version bump only for package @pie-element/matrix-configure
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.NumberInputFormGroupWrapper = exports.IconWrapper = exports.ColumnsWrapper = exports.ColumnsHeader = void 0;
|
|
9
9
|
|
|
10
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
11
|
|
package/configure/lib/Main.js
CHANGED
|
@@ -41,13 +41,13 @@ 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
|
|
|
50
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
50
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
51
51
|
|
|
52
52
|
var Panel = _configUi.settings.Panel,
|
|
53
53
|
toggle = _configUi.settings.toggle,
|
|
@@ -92,10 +92,13 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
92
92
|
_ref$teacherInstructi = _ref.teacherInstructions,
|
|
93
93
|
teacherInstructions = _ref$teacherInstructi === void 0 ? {} : _ref$teacherInstructi,
|
|
94
94
|
_ref$scoringType = _ref.scoringType,
|
|
95
|
-
scoringType = _ref$scoringType === void 0 ? {} : _ref$scoringType
|
|
95
|
+
scoringType = _ref$scoringType === void 0 ? {} : _ref$scoringType,
|
|
96
|
+
_ref$spellCheck = _ref.spellCheck,
|
|
97
|
+
spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck;
|
|
96
98
|
|
|
97
99
|
var _ref2 = model || {},
|
|
98
|
-
teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled
|
|
100
|
+
teacherInstructionsEnabled = _ref2.teacherInstructionsEnabled,
|
|
101
|
+
spellCheckEnabled = _ref2.spellCheckEnabled;
|
|
99
102
|
|
|
100
103
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
101
104
|
className: classes.design
|
|
@@ -108,6 +111,7 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
108
111
|
groups: {
|
|
109
112
|
Properties: {
|
|
110
113
|
teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),
|
|
114
|
+
spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
|
|
111
115
|
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric'])
|
|
112
116
|
}
|
|
113
117
|
}
|
|
@@ -131,7 +135,8 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
131
135
|
markup: model.teacherInstructions || '',
|
|
132
136
|
onChange: onTeacherInstructionsChanged,
|
|
133
137
|
imageSupport: imageSupport,
|
|
134
|
-
nonEmpty: false
|
|
138
|
+
nonEmpty: false,
|
|
139
|
+
spellCheck: spellCheckEnabled
|
|
135
140
|
})), /*#__PURE__*/_react["default"].createElement(_configUi.InputContainer, {
|
|
136
141
|
label: prompt.label,
|
|
137
142
|
className: classes.promptHolder
|
|
@@ -141,6 +146,7 @@ var Design = (0, _styles.withStyles)(styles)(function (props) {
|
|
|
141
146
|
onChange: onPromptChanged,
|
|
142
147
|
imageSupport: imageSupport,
|
|
143
148
|
nonEmpty: !prompt.settings,
|
|
149
|
+
spellCheck: spellCheckEnabled,
|
|
144
150
|
disableUnderline: true
|
|
145
151
|
})), /*#__PURE__*/_react["default"].createElement(_MatrixValues["default"], {
|
|
146
152
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;
|
|
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","spellCheck","teacherInstructionsEnabled","spellCheckEnabled","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 spellCheck = {}\n } = configuration || {};\n const {\n teacherInstructionsEnabled, spellCheckEnabled\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 spellCheckEnabled:\n spellCheck.settings && toggle(spellCheck.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 spellCheck={spellCheckEnabled}\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 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"}
|
|
@@ -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,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
@@ -31,6 +31,10 @@ var _isNumeric = _interopRequireDefault(require("./isNumeric"));
|
|
|
31
31
|
|
|
32
32
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
33
33
|
|
|
34
|
+
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); }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
34
38
|
var MatrixEditableButtonWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\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"])));
|
|
35
39
|
|
|
36
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"])));
|
|
@@ -59,7 +63,8 @@ var MatrixLabelEditableButton = function MatrixLabelEditableButton(props) {
|
|
|
59
63
|
var onLabelUpdate = props.onLabelUpdate,
|
|
60
64
|
value = props.value,
|
|
61
65
|
resourceIndex = props.resourceIndex,
|
|
62
|
-
onAction = props.onAction
|
|
66
|
+
onAction = props.onAction,
|
|
67
|
+
spellCheck = props.spellCheck;
|
|
63
68
|
|
|
64
69
|
var _useState = (0, _react.useState)(null),
|
|
65
70
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
@@ -162,7 +167,8 @@ var MatrixLabelEditableButton = function MatrixLabelEditableButton(props) {
|
|
|
162
167
|
onChange: function onChange(e) {
|
|
163
168
|
return setLabelValue(e.target.value);
|
|
164
169
|
},
|
|
165
|
-
onBlur: onBlur
|
|
170
|
+
onBlur: onBlur,
|
|
171
|
+
spellCheck: spellCheck
|
|
166
172
|
}) : /*#__PURE__*/_react["default"].createElement(MatrixEditableButtonText, {
|
|
167
173
|
onClick: onShowInput
|
|
168
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":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;AAEA,IAAMA,2BAA2B,GAAGC,6BAAOC,GAAV,kUAAjC;;AAcA,IAAMC,2BAA2B,GAAGF,6BAAOC,GAAV,mMAAjC;;AAQA,IAAME,wBAAwB,GAAGH,6BAAOI,CAAV,0UAA9B;;AAiBA,IAAMC,2BAA2B,GAAGL,6BAAOC,GAAV,wXAAjC;;AAeA,IAAMK,WAAW,GAAGN,6BAAOC,GAAV,8GAAjB;;AAIA,IAAMM,YAAY,GAAGP,6BAAOQ,KAAV,0TAAlB;;AAeA,IAAMC,kBAAkB,GAAGT,6BAAOC,GAAV,oIAAxB;;AAKA,IAAMS,uBAAuB,GAAGV,6BAAOC,GAAV,gIAA7B;;AAKO,IAAMU,WAAW,GAAG;AACzBC,EAAAA,KAAK,EAAE,OADkB;AAEzBC,EAAAA,aAAa,EAAE,eAFU;AAGzBC,EAAAA,cAAc,EAAE,gBAHS;AAIzBC,EAAAA,GAAG,EAAE;AAJoB,CAApB;;;AAOP,IAAMC,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACC,KAAD,EAAW;AAAA,MACnCC,aADmC,GACeD,KADf,CACnCC,aADmC;AAAA,MACpBC,KADoB,GACeF,KADf,CACpBE,KADoB;AAAA,MACbC,aADa,GACeH,KADf,CACbG,aADa;AAAA,MACEC,QADF,GACeJ,KADf,CACEI,QADF;;AAAA,kBAEP,qBAAS,IAAT,CAFO;AAAA;AAAA,MAEpCC,UAFoC;AAAA,MAExBC,aAFwB;;AAAA,mBAGP,qBAAS,EAAT,CAHO;AAAA;AAAA,MAGpCC,UAHoC;AAAA,MAGxBC,aAHwB;;AAAA,mBAIT,qBAAS,KAAT,CAJS;AAAA;AAAA,MAIpCC,SAJoC;AAAA,MAIzBC,YAJyB;;AAAA,wBAKXC,kBAAMC,QAAN,CAAe,IAAf,CALW;AAAA;AAAA,MAKpCC,QALoC;AAAA,MAK1BC,WAL0B;;AAAA,yBAMpBH,kBAAMC,QAAN,eAAeD,kBAAMI,SAAN,EAAf,CANoB;AAAA;AAAA,MAMpCC,WANoC;;AAQ3C,MAAMC,IAAI,GAAGC,OAAO,CAACL,QAAD,CAApB;;AAEA,MAAMM,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD,EAAW;AAC/BN,IAAAA,WAAW,CAACM,KAAK,CAACC,aAAP,CAAX;AACD,GAFD;;AAIA,MAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAAO;AACzBA,IAAAA,CAAC,CAACC,eAAF;AACAV,IAAAA,WAAW,CAAC,IAAD,CAAX;AACAN,IAAAA,aAAa,CAAC,EAAD,CAAb;AACD,GAJD;;AAMA,MAAMiB,aAAa,GAAG,SAAhBA,aAAgB,CAACF,CAAD,EAAO;AAC3BD,IAAAA,WAAW,CAACC,CAAD,CAAX;AACAnB,IAAAA,QAAQ,CAAC;AAAED,MAAAA,aAAa,EAAbA,aAAF;AAAiBuB,MAAAA,UAAU,EAAEhC,WAAW,CAACC;AAAzC,KAAD,CAAR;AACD,GAHD;;AAKA,MAAMgC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACJ,CAAD,EAAO;AAClCD,IAAAA,WAAW,CAACC,CAAD,CAAX;AACAnB,IAAAA,QAAQ,CAAC;AAAED,MAAAA,aAAa,EAAbA,aAAF;AAAiBuB,MAAAA,UAAU,EAAEhC,WAAW,CAACE;AAAzC,KAAD,CAAR;AACD,GAHD;;AAKA,MAAMgC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACL,CAAD,EAAO;AACnCD,IAAAA,WAAW,CAACC,CAAD,CAAX;AACAnB,IAAAA,QAAQ,CAAC;AAAED,MAAAA,aAAa,EAAbA,aAAF;AAAiBuB,MAAAA,UAAU,EAAEhC,WAAW,CAACG;AAAzC,KAAD,CAAR;AACD,GAHD;;AAKA,MAAMgC,WAAW,GAAG,SAAdA,WAAc,CAAC3B,KAAD,EAAW;AAC7B,QAAI,CAAC,2BAAUA,KAAV,CAAL,EAAuB;AACrBM,MAAAA,aAAa,CAAC,EAAD,CAAb;AACA;AACD;;AACD,QAAMsB,aAAa,GAAGC,QAAQ,CAAC7B,KAAD,EAAQ,EAAR,CAA9B;AACAM,IAAAA,aAAa,CAACsB,aAAD,CAAb;AACA1B,IAAAA,QAAQ,CAAC;AAAED,MAAAA,aAAa,EAAbA,aAAF;AAAiBuB,MAAAA,UAAU,EAAEhC,WAAW,CAACI,GAAzC;AAA8CkC,MAAAA,QAAQ,EAAEF;AAAxD,KAAD,CAAR;AACD,GARD;;AAUA,MAAMG,MAAM,GAAG,SAATA,MAAS,GAAM;AACnB,QAAMC,gBAAgB,GAAG7B,UAAU,CAAC8B,IAAX,EAAzB;;AACA,QAAID,gBAAJ,EAAsB;AACpBjC,MAAAA,aAAa,CAACiC,gBAAD,CAAb;AACD;;AACD5B,IAAAA,aAAa,CAAC,IAAD,CAAb;AACAI,IAAAA,YAAY,CAAC,KAAD,CAAZ;AACD,GAPD;;AASA,MAAM0B,WAAW,GAAG,SAAdA,WAAc,GAAM;AACxB1B,IAAAA,YAAY,CAAC,IAAD,CAAZ;AACAJ,IAAAA,aAAa,CAACJ,KAAD,CAAb;AACD,GAHD;;AAKA,MAAMmC,iBAAiB,GAAG,SAApBA,iBAAoB,GAAM;AAC9BrB,IAAAA,WAAW,CAACsB,OAAZ,CAAoBC,KAApB;AACD,GAFD;;AAIA,sBACE,gCAAC,2BAAD,qBACE,gCAAC,2BAAD,QACG9B,SAAS,gBAEN,gCAAC,YAAD;AACE,IAAA,SAAS,MADX;AAEE,IAAA,KAAK,EAAEJ,UAFT;AAGE,IAAA,QAAQ,EAAE,kBAAAkB,CAAC;AAAA,aAAIjB,aAAa,CAACiB,CAAC,CAACiB,MAAF,CAAStC,KAAV,CAAjB;AAAA,KAHb;AAIE,IAAA,MAAM,EAAE+B;AAJV,IAFM,gBAUN,gCAAC,wBAAD;AAA0B,IAAA,OAAO,EAAEG;AAAnC,KACGlC,KADH,CAXN,CADF,eAmBE,gCAAC,2BAAD;AAA6B,IAAA,OAAO,EAAEiB;AAAtC,kBACE,gCAAC,WAAD,qBACE,gCAAC,6BAAD;AAAuB,IAAA,QAAQ,EAAC;AAAhC,IADF,CADF,eAIE,gCAAC,gBAAD;AACE,IAAA,QAAQ,EAAEN,QADZ;AAEE,IAAA,IAAI,EAAEI,IAFR;AAGE,IAAA,OAAO,EAAEK;AAHX,kBAKE,gCAAC,oBAAD;AAAU,IAAA,GAAG,EAAC,OAAd;AAAsB,IAAA,QAAQ,EAAE,KAAhC;AAAuC,IAAA,OAAO,EAAEG;AAAhD,oBALF,eAQE,gCAAC,oBAAD;AAAU,IAAA,GAAG,EAAC,OAAd;AAAsB,IAAA,QAAQ,EAAE,KAAhC;AAAuC,IAAA,OAAO,EAAEE;AAAhD,4BARF,eAWE,gCAAC,oBAAD;AAAU,IAAA,GAAG,EAAC,OAAd;AAAsB,IAAA,QAAQ,EAAE,KAAhC;AAAuC,IAAA,OAAO,EAAEC;AAAhD,6BAXF,eAcE,gCAAC,oBAAD;AAAU,IAAA,GAAG,EAAC,OAAd;AAAsB,IAAA,QAAQ,EAAE;AAAhC,kBACE,gCAAC,kBAAD,qBACE;AAAG,IAAA,OAAO,EAAES;AAAZ,qBADF,eAIE,gCAAC,uBAAD,qBACE,gCAAC,uBAAD;AACE,IAAA,aAAa,EAAER,WADjB;AAEE,IAAA,IAAI,EAAE,YAFR;AAGE,IAAA,WAAW,EAAC,GAHd;AAIE,IAAA,UAAU,EAAE;AACV3B,MAAAA,KAAK,EAAEK,UADG;AAEVkC,MAAAA,GAAG,EAAEzB;AAFK;AAJd,IADF,CAJF,CADF,CAdF,CAJF,CAnBF,CADF;AA4DD,CA3HD;;AA6HAjB,yBAAyB,CAAC2C,SAA1B,GAAsC;AACpCxC,EAAAA,KAAK,EAAEyC,sBAAUC,MAAV,CAAiBC,UADY;AAEpC1C,EAAAA,aAAa,EAAEwC,sBAAUG,MAAV,CAAiBD,UAFI;AAGpC5C,EAAAA,aAAa,EAAE0C,sBAAUI,IAAV,CAAeF,UAHM;AAIpCzC,EAAAA,QAAQ,EAAEuC,sBAAUI,IAAV,CAAeF;AAJW,CAAtC;eAQe9C,yB","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 ? (\n <InputWrapper\n autoFocus\n value={labelValue}\n onChange={e => setLabelValue(e.target.value)}\n onBlur={onBlur}\n spellCheck = {spellCheck}\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"}
|
|
@@ -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
|
|
|
@@ -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,
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
6
|
|
|
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
|
|
|
@@ -29,9 +29,13 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
29
29
|
|
|
30
30
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
31
31
|
|
|
32
|
-
function
|
|
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
33
|
|
|
34
|
-
function
|
|
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; }
|
|
35
39
|
|
|
36
40
|
var columnWidth = '120px';
|
|
37
41
|
|
|
@@ -84,7 +88,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
84
88
|
onChangeModel = props.onChangeModel;
|
|
85
89
|
var rowLabels = model.rowLabels,
|
|
86
90
|
columnLabels = model.columnLabels,
|
|
87
|
-
matrixValues = model.matrixValues
|
|
91
|
+
matrixValues = model.matrixValues,
|
|
92
|
+
spellCheckEnabled = model.spellCheckEnabled;
|
|
88
93
|
|
|
89
94
|
var onSetMatrixValue = function onSetMatrixValue(matrixValueIndex, value) {
|
|
90
95
|
var matrixValuesClone = _objectSpread({}, matrixValues);
|
|
@@ -195,7 +200,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
195
200
|
value: value,
|
|
196
201
|
onLabelUpdate: function onLabelUpdate(labelValue) {
|
|
197
202
|
return onSetColumnLabel(columnLabelIndex, labelValue);
|
|
198
|
-
}
|
|
203
|
+
},
|
|
204
|
+
spellCheck: spellCheckEnabled
|
|
199
205
|
}));
|
|
200
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) {
|
|
201
207
|
return /*#__PURE__*/_react["default"].createElement(RowLabelWrapper, {
|
|
@@ -206,7 +212,8 @@ var MatrixValues = function MatrixValues(props) {
|
|
|
206
212
|
value: value,
|
|
207
213
|
onLabelUpdate: function onLabelUpdate(labelValue) {
|
|
208
214
|
return onSetRowLabel(rowLabelIndex, labelValue);
|
|
209
|
-
}
|
|
215
|
+
},
|
|
216
|
+
spellCheck: spellCheckEnabled
|
|
210
217
|
}));
|
|
211
218
|
})), /*#__PURE__*/_react["default"].createElement(GridSeparatorVertical, null), /*#__PURE__*/_react["default"].createElement(Content, null, rowLabels.map(function (row, rowIndex) {
|
|
212
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":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,WAAW,GAAG,OAApB;;AAEO,IAAMC,gBAAgB,GAAGC,6BAAOC,GAAV,kKAAtB;;;;AAKA,IAAMC,aAAa,GAAGF,6BAAOC,GAAV,gKAAnB;;;;AAMA,IAAME,kBAAkB,GAAGH,6BAAOC,GAAV,iLACpBH,WADoB,CAAxB;;;;AAOA,IAAMM,eAAe,GAAGJ,6BAAOC,GAAV,iLAArB;;;;AAOA,IAAMI,eAAe,GAAGL,6BAAOC,GAAV,+IAArB;;;;AAKA,IAAMK,gBAAgB,GAAGN,6BAAOC,GAAV,kNAClBH,WADkB,CAAtB;;;;AASA,IAAMS,WAAW,GAAGP,6BAAOC,GAAV,2LAAjB;;;;AAOA,IAAMO,yBAAyB,GAAGR,6BAAOC,GAAV,0JAA/B;;;;AAMA,IAAMQ,uBAAuB,GAAGT,6BAAOC,GAAV,+IAA7B;;;;AAMA,IAAMS,qBAAqB,GAAGV,6BAAOC,GAAV,iJAA3B;;;;AAMA,IAAMU,OAAO,GAAGX,6BAAOC,GAAV,6GAAb;;;;AAIP,IAAMW,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,EAAW;AAAA,MACtBC,KADsB,GACGD,KADH,CACtBC,KADsB;AAAA,MACfC,aADe,GACGF,KADH,CACfE,aADe;AAAA,MAEtBC,SAFsB,GAEoBF,KAFpB,CAEtBE,SAFsB;AAAA,MAEXC,YAFW,GAEoBH,KAFpB,CAEXG,YAFW;AAAA,MAEGC,YAFH,GAEoBJ,KAFpB,CAEGI,YAFH;;AAI9B,MAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,gBAAD,EAAmBC,KAAnB,EAA6B;AACpD,QAAMC,iBAAiB,qBAClBJ,YADkB,CAAvB;;AAGA,QAAI,2BAAUG,KAAV,CAAJ,EAAsB;AACpBC,MAAAA,iBAAiB,CAACF,gBAAD,CAAjB,GAAsCG,QAAQ,CAACF,KAAD,EAAQ,EAAR,CAA9C;AACD,KAFD,MAEO;AACL,aAAOC,iBAAiB,CAACF,gBAAD,CAAxB;AACD;;AACDL,IAAAA,aAAa,iCACRD,KADQ;AAEXI,MAAAA,YAAY,EAAEI;AAFH,OAAb;AAID,GAbD;;AAeA,MAAME,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAAQC,UAAR,EAAuB;AAC9C,QAAMC,iBAAiB,uCAAOV,YAAP,CAAvB;AACAU,IAAAA,iBAAiB,CAACF,KAAD,CAAjB,GAA2BC,UAA3B;AACAX,IAAAA,aAAa,iCACRD,KADQ;AAEXG,MAAAA,YAAY,EAAEU;AAFH,OAAb;AAID,GAPD;;AAUA,MAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACH,KAAD,EAAQC,UAAR,EAAuB;AAC3C,QAAMG,cAAc,uCAAOb,SAAP,CAApB;AACAa,IAAAA,cAAc,CAACJ,KAAD,CAAd,GAAwBC,UAAxB;AACAX,IAAAA,aAAa,iCACRD,KADQ;AAEXE,MAAAA,SAAS,EAAEa;AAFA,OAAb;AAID,GAPD;;AASA,MAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,OAA6C;AAAA,QAA1CC,aAA0C,QAA1CA,aAA0C;AAAA,QAA3BC,UAA2B,QAA3BA,UAA2B;AAAA,QAAfC,QAAe,QAAfA,QAAe;AACpE,QAAMC,gBAAgB,GAAGH,aAAzB;;AACA,QAAMT,iBAAiB,qBAAQJ,YAAR,CAAvB;;AACAF,IAAAA,SAAS,CAACmB,OAAV,CAAkB,UAACC,QAAD,EAAWC,aAAX,EAA6B;AAC7C,cAAQL,UAAR;AACE,aAAKM,uCAAYC,KAAjB;AACE,iBAAOjB,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAxB;AACA;;AACF,aAAKI,uCAAYE,aAAjB;AACElB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DG,aAAa,GAAG,CAA5E;AACA;;AACF,aAAKC,uCAAYG,cAAjB;AACEnB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DlB,SAAS,CAAC0B,MAAV,GAAmBL,aAA/E;AACA;;AACF,aAAKC,uCAAYK,GAAjB;AACErB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DD,QAA5D;AACA;;AACF;AACE,gBAAM,sBAAN;AAdJ;AAiBD,KAlBD;AAmBAlB,IAAAA,aAAa,iCACRD,KADQ;AAEXI,MAAAA,YAAY,EAAEI;AAFH,OAAb;AAID,GA1BD;;AA4BA,MAAMsB,aAAa,GAAG,SAAhBA,aAAgB,QAA6C;AAAA,QAA1Cb,aAA0C,SAA1CA,aAA0C;AAAA,QAA3BC,UAA2B,SAA3BA,UAA2B;AAAA,QAAfC,QAAe,SAAfA,QAAe;AACjE,QAAMI,aAAa,GAAGN,aAAtB;;AACA,QAAMT,iBAAiB,qBAAQJ,YAAR,CAAvB;;AACAD,IAAAA,YAAY,CAACkB,OAAb,CAAqB,UAACU,WAAD,EAAcX,gBAAd,EAAmC;AACtD,cAAQF,UAAR;AACE,aAAKM,uCAAYC,KAAjB;AACE,iBAAOjB,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAxB;AACA;;AACF,aAAKI,uCAAYE,aAAjB;AACElB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DG,aAAa,GAAG,CAA5E;AACA;;AACF,aAAKC,uCAAYG,cAAjB;AACEnB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DlB,SAAS,CAAC0B,MAAV,GAAmBL,aAA/E;AACA;;AACF,aAAKC,uCAAYK,GAAjB;AACErB,UAAAA,iBAAiB,WAAIe,aAAJ,cAAqBH,gBAArB,EAAjB,GAA4DD,QAA5D;AACA;;AACF;AACE,gBAAM,sBAAN;AAdJ;AAiBD,KAlBD;AAmBAlB,IAAAA,aAAa,iCACRD,KADQ;AAEXI,MAAAA,YAAY,EAAEI;AAFH,OAAb;AAID,GA1BD;;AA4BA,sBACE,gCAAC,gBAAD,qBACE,4CADF,eAEE,gCAAC,qBAAD,OAFF,eAGE,gCAAC,aAAD,QAEIL,YAAY,CAAC6B,GAAb,CAAiB,UAACzB,KAAD,EAAQa,gBAAR;AAAA,wBACf,gCAAC,kBAAD;AAAoB,MAAA,GAAG,EAAEA;AAAzB,oBACE,gCAAC,qCAAD;AACE,MAAA,aAAa,EAAEA,gBADjB;AAEE,MAAA,QAAQ,EAAEJ,gBAFZ;AAGE,MAAA,KAAK,EAAET,KAHT;AAIE,MAAA,aAAa,EAAE,uBAACK,UAAD;AAAA,eAAgBF,gBAAgB,CAACU,gBAAD,EAAmBR,UAAnB,CAAhC;AAAA;AAJjB,MADF,CADe;AAAA,GAAjB,CAFJ,CAHF,eAiBE,gCAAC,uBAAD,OAjBF,eAkBE,gCAAC,qBAAD,OAlBF,eAmBE,gCAAC,uBAAD,OAnBF,eAoBE,gCAAC,WAAD,QAEIV,SAAS,CAAC8B,GAAV,CAAc,UAACzB,KAAD,EAAQgB,aAAR;AAAA,wBACZ,gCAAC,eAAD;AAAiB,MAAA,GAAG,EAAEA;AAAtB,oBACE,gCAAC,qCAAD;AACE,MAAA,aAAa,EAAEA,aADjB;AAEE,MAAA,QAAQ,EAAEO,aAFZ;AAGE,MAAA,KAAK,EAAEvB,KAHT;AAIE,MAAA,aAAa,EAAE,uBAACK,UAAD;AAAA,eAAgBE,aAAa,CAACS,aAAD,EAAgBX,UAAhB,CAA7B;AAAA;AAJjB,MADF,CADY;AAAA,GAAd,CAFJ,CApBF,eAkCE,gCAAC,qBAAD,OAlCF,eAmCE,gCAAC,OAAD,QACGV,SAAS,CAAC8B,GAAV,CAAc,UAACC,GAAD,EAAMC,QAAN,EAAmB;AAChC,wBACE,gCAAC,eAAD;AAAiB,MAAA,GAAG,EAAEA;AAAtB,OACG/B,YAAY,CAAC6B,GAAb,CAAiB,UAACG,MAAD,EAASC,UAAT,EAAwB;AACxC,UAAM9B,gBAAgB,aAAM4B,QAAN,cAAkBE,UAAlB,CAAtB;AACA,0BACE,gCAAC,gBAAD;AAAkB,QAAA,GAAG,EAAEA;AAAvB,sBACE,gCAAC,yBAAD,qBACE,gCAAC,uBAAD;AACE,QAAA,aAAa,EAAE,uBAACC,CAAD;AAAA,iBAAOhC,gBAAgB,CAACC,gBAAD,EAAmB+B,CAAnB,CAAvB;AAAA,SADjB;AAEE,QAAA,IAAI,EAAE/B,gBAFR;AAGE,QAAA,WAAW,EAAC,GAHd;AAIE,QAAA,UAAU,EAAE;AACVC,UAAAA,KAAK,EAAE,2BAAUH,YAAY,CAACE,gBAAD,CAAtB,IAA4CF,YAAY,CAACE,gBAAD,CAAxD,GAA6E;AAD1E;AAJd,QADF,CADF,CADF;AAcD,KAhBA,CADH,CADF;AAqBD,GAtBA,CADH,CAnCF,CADF;AA+DD,CA7JD;;AA+JAR,YAAY,CAACwC,SAAb,GAAyB;AACvBtC,EAAAA,KAAK,EAAEuC,sBAAUC,MAAV,CAAiBC,UADD;AAEvBxC,EAAAA,aAAa,EAAEsC,sBAAUG,IAAV,CAAeD;AAFP,CAAzB;eAKe3C,Y","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\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 spellCheck = {spellCheckEnabled}\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 spellCheck = {spellCheckEnabled}\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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
@@ -23,6 +23,10 @@ var _core = require("@material-ui/core");
|
|
|
23
23
|
|
|
24
24
|
var _templateObject;
|
|
25
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
|
+
|
|
26
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"])));
|
|
27
31
|
|
|
28
32
|
var styles = {
|
|
@@ -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
|
|
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,2SAAlB;;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,MACEC,OADF,GAMID,KANJ,CACEC,OADF;AAAA,MAEEC,aAFF,GAMIF,KANJ,CAEEE,aAFF;AAAA,MAGEC,IAHF,GAMIH,KANJ,CAGEG,IAHF;AAAA,MAIEC,WAJF,GAMIJ,KANJ,CAIEI,WAJF;AAAA,MAKEC,UALF,GAMIL,KANJ,CAKEK,UALF;;AAQA,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,CApCoB,CAArB;AAsCAP,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 {\n classes,\n onFieldUpdate,\n name,\n placeholder,\n fieldValue\n } = 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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaults.js"],"names":["model","teacherInstructionsEnabled","labelType","rowLabels","columnLabels","matrixValues","prompt","configuration","teacherInstructions","settings","label"],"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,8BAAD,EAAiC,+BAAjC,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;AACbC,IAAAA,mBAAmB,EAAE;AACnBC,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KADR;
|
|
1
|
+
{"version":3,"sources":["../src/defaults.js"],"names":["model","teacherInstructionsEnabled","labelType","rowLabels","columnLabels","matrixValues","prompt","configuration","teacherInstructions","settings","label","spellCheck","enabled"],"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,8BAAD,EAAiC,+BAAjC,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;AACbC,IAAAA,mBAAmB,EAAE;AACnBC,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KADR;AAKbC,IAAAA,UAAU,EAAE;AACVD,MAAAA,KAAK,EAAE,YADG;AAEVD,MAAAA,QAAQ,EAAC,KAFC;AAGVG,MAAAA,OAAO,EAAC;AAHE,KALC;AAUbN,IAAAA,MAAM,EAAE;AACNG,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD;AAVK;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 teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions'\n },\n spellCheck: {\n label: 'Spellcheck',\n settings:false,\n enabled:true\n },\n prompt: {\n settings: true,\n label: 'Prompt'\n }\n }\n};\n"],"file":"defaults.js"}
|
package/configure/lib/index.js
CHANGED
|
@@ -37,13 +37,13 @@ var _defaults = _interopRequireDefault(require("lodash/defaults"));
|
|
|
37
37
|
|
|
38
38
|
var _defaults2 = _interopRequireDefault(require("./defaults"));
|
|
39
39
|
|
|
40
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
40
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
41
41
|
|
|
42
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
42
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
43
43
|
|
|
44
44
|
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); }; }
|
|
45
45
|
|
|
46
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
46
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
47
47
|
|
|
48
48
|
var log = (0, _debug["default"])('matrix:configure');
|
|
49
49
|
|
package/configure/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/matrix-configure",
|
|
3
3
|
"private": true,
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.20",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"module": "src/index.js",
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@material-ui/core": "^3.9.2",
|
|
11
11
|
"@pie-framework/pie-configure-events": "^1.2.0",
|
|
12
|
-
"@pie-lib/config-ui": "^10.
|
|
13
|
-
"@pie-lib/editable-html": "^7.
|
|
12
|
+
"@pie-lib/config-ui": "^10.13.3",
|
|
13
|
+
"@pie-lib/editable-html": "^7.22.6",
|
|
14
14
|
"debug": "^4.1.1",
|
|
15
15
|
"prop-types": "^15.6.2",
|
|
16
16
|
"react": "^16.8.1",
|
package/controller/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.0.9](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-controller@0.0.7...@pie-element/matrix-controller@0.0.9) (2021-11-11)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-element/matrix-controller
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.0.8](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-controller@0.0.7...@pie-element/matrix-controller@0.0.8) (2021-11-11)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @pie-element/matrix-controller
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [0.0.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-controller@0.0.5...@pie-element/matrix-controller@0.0.7) (2021-08-05)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* force bump ([5ea7295](https://github.com/pie-framework/pie-elements/commit/5ea7295e4755fbc492a76e7ec69e5fc35b196919))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
## [0.0.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/matrix-controller@0.0.2...@pie-element/matrix-controller@0.0.5) (2021-03-03)
|
|
7
34
|
|
|
8
35
|
**Note:** Version bump only for package @pie-element/matrix-controller
|
package/controller/lib/index.js
CHANGED
|
@@ -5,9 +5,9 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
+
exports.createDefaultModel = exports.createCorrectResponseSession = void 0;
|
|
8
9
|
exports.model = model;
|
|
9
10
|
exports.outcome = outcome;
|
|
10
|
-
exports.createCorrectResponseSession = exports.createDefaultModel = void 0;
|
|
11
11
|
|
|
12
12
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
13
13
|
|
|
@@ -19,9 +19,9 @@ var _defaults = _interopRequireDefault(require("./defaults"));
|
|
|
19
19
|
|
|
20
20
|
var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
|
|
21
21
|
|
|
22
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
22
|
+
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; }
|
|
23
23
|
|
|
24
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
24
|
+
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; }
|
|
25
25
|
|
|
26
26
|
var createDefaultModel = function createDefaultModel() {
|
|
27
27
|
var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.js"],"names":["createDefaultModel","model","Promise","resolve","defaults","question","session","env","normalizedQuestion","out","disabled","mode","role","teacherInstructions","teacherInstructionsEnabled","outcome","score","empty","Object","keys","value","reduce","acc","key","matrixValue","matrixValues","createCorrectResponseSession","id"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,MAACC,KAAD,uEAAS,EAAT;AAAA,SAAgB,IAAIC,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,iCAAMC,oBAAN,GAAmBH,KAAnB,EAAX;AAAA,GAAnB,CAAhB;AAAA,CAA3B;AAEP;AACA;AACA;AACA;AACA;AACA;;;;;SACsBA,K;;;;;yFAAf,iBAAqBI,QAArB,EAA+BC,OAA/B,EAAwCC,GAAxC;AAAA;;AAAA;AAAA;AAAA;AAAA;AACCC,YAAAA,kBADD,mCAC2BJ,oBAD3B,GACwCC,QADxC;AAGCI,YAAAA,GAHD,mCAIAD,kBAJA;AAKHE,cAAAA,QAAQ,EAAEH,GAAG,CAACI,IAAJ,KAAa,QALpB;AAMHA,cAAAA,IAAI,EAAEJ,GAAG,CAACI;AANP;AAAA,oBASkBJ,GAAG,IAAI,EATzB,EASGK,IATH,SASGA,IATH,EASSD,IATT,SASSA,IATT;;AAWL,gBAAIC,IAAI,KAAK,YAAT,KAA0BD,IAAI,KAAK,MAAT,IAAmBA,IAAI,KAAK,UAAtD,CAAJ,EAAuE;AACrEF,cAAAA,GAAG,CAACI,mBAAJ,GAA0BL,kBAAkB,CAACM,0BAAnB,GACtBN,kBAAkB,CAACK,mBADG,GAEtB,IAFJ;AAGD,aAJD,MAIO;AACLJ,cAAAA,GAAG,CAACI,mBAAJ,GAA0B,IAA1B;AACD;;AAjBI,6CAmBEJ,GAnBF;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAsBA,SAASM,OAAT,CAAiBd,KAAjB,EAAwBK,OAAxB,EAAiC;AACtC,SAAO,IAAIJ,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAI,CAACG,OAAD,IAAY,yBAAQA,OAAR,CAAhB,EAAkC;AAChC,aAAOH,OAAO,CAAC;AAAEa,QAAAA,KAAK,EAAE,CAAT;AAAYC,QAAAA,KAAK,EAAE;AAAnB,OAAD,CAAd;AACD;;AAED,QAAMD,KAAK,GAAGE,MAAM,CAACC,IAAP,CAAYb,OAAO,CAACc,KAApB,EAA2BC,MAA3B,CAAkC,UAACC,GAAD,EAAMC,GAAN,EAAa;AAC3D,UAAMC,WAAW,GAAGvB,KAAK,CAACwB,YAAN,CAAmBF,GAAnB,CAApB;AACA,aAAOD,GAAG,IAAIE,WAAW,IAAI,CAAnB,CAAV;AACD,KAHa,EAGX,CAHW,CAAd;AAKArB,IAAAA,OAAO,CAAC;AAAEa,MAAAA,KAAK,EAALA,KAAF;AAASC,MAAAA,KAAK,EAAE;AAAhB,KAAD,CAAP;AACD,GAXM,CAAP;AAYD;;AAEM,IAAMS,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACrB,QAAD,EAAWE,GAAX,EAAmB;AAC7D,SAAO,IAAIL,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAII,GAAG,CAACI,IAAJ,KAAa,UAAb,IAA2BJ,GAAG,CAACK,IAAJ,KAAa,YAA5C,EAA0D;
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["createDefaultModel","model","Promise","resolve","defaults","question","session","env","normalizedQuestion","out","disabled","mode","role","teacherInstructions","teacherInstructionsEnabled","outcome","score","empty","Object","keys","value","reduce","acc","key","matrixValue","matrixValues","createCorrectResponseSession","id"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEO,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,MAACC,KAAD,uEAAS,EAAT;AAAA,SAAgB,IAAIC,OAAJ,CAAY,UAAAC,OAAO;AAAA,WAAIA,OAAO,iCAAMC,oBAAN,GAAmBH,KAAnB,EAAX;AAAA,GAAnB,CAAhB;AAAA,CAA3B;AAEP;AACA;AACA;AACA;AACA;AACA;;;;;SACsBA,K;;;;;yFAAf,iBAAqBI,QAArB,EAA+BC,OAA/B,EAAwCC,GAAxC;AAAA;;AAAA;AAAA;AAAA;AAAA;AACCC,YAAAA,kBADD,mCAC2BJ,oBAD3B,GACwCC,QADxC;AAGCI,YAAAA,GAHD,mCAIAD,kBAJA;AAKHE,cAAAA,QAAQ,EAAEH,GAAG,CAACI,IAAJ,KAAa,QALpB;AAMHA,cAAAA,IAAI,EAAEJ,GAAG,CAACI;AANP;AAAA,oBASkBJ,GAAG,IAAI,EATzB,EASGK,IATH,SASGA,IATH,EASSD,IATT,SASSA,IATT;;AAWL,gBAAIC,IAAI,KAAK,YAAT,KAA0BD,IAAI,KAAK,MAAT,IAAmBA,IAAI,KAAK,UAAtD,CAAJ,EAAuE;AACrEF,cAAAA,GAAG,CAACI,mBAAJ,GAA0BL,kBAAkB,CAACM,0BAAnB,GACtBN,kBAAkB,CAACK,mBADG,GAEtB,IAFJ;AAGD,aAJD,MAIO;AACLJ,cAAAA,GAAG,CAACI,mBAAJ,GAA0B,IAA1B;AACD;;AAjBI,6CAmBEJ,GAnBF;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAsBA,SAASM,OAAT,CAAiBd,KAAjB,EAAwBK,OAAxB,EAAiC;AACtC,SAAO,IAAIJ,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAI,CAACG,OAAD,IAAY,yBAAQA,OAAR,CAAhB,EAAkC;AAChC,aAAOH,OAAO,CAAC;AAAEa,QAAAA,KAAK,EAAE,CAAT;AAAYC,QAAAA,KAAK,EAAE;AAAnB,OAAD,CAAd;AACD;;AAED,QAAMD,KAAK,GAAGE,MAAM,CAACC,IAAP,CAAYb,OAAO,CAACc,KAApB,EAA2BC,MAA3B,CAAkC,UAACC,GAAD,EAAMC,GAAN,EAAa;AAC3D,UAAMC,WAAW,GAAGvB,KAAK,CAACwB,YAAN,CAAmBF,GAAnB,CAApB;AACA,aAAOD,GAAG,IAAIE,WAAW,IAAI,CAAnB,CAAV;AACD,KAHa,EAGX,CAHW,CAAd;AAKArB,IAAAA,OAAO,CAAC;AAAEa,MAAAA,KAAK,EAALA,KAAF;AAASC,MAAAA,KAAK,EAAE;AAAhB,KAAD,CAAP;AACD,GAXM,CAAP;AAYD;;AAEM,IAAMS,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACrB,QAAD,EAAWE,GAAX,EAAmB;AAC7D,SAAO,IAAIL,OAAJ,CAAY,UAAAC,OAAO,EAAI;AAC5B,QAAII,GAAG,CAACI,IAAJ,KAAa,UAAb,IAA2BJ,GAAG,CAACK,IAAJ,KAAa,YAA5C,EAA0D;AACxD,iBAAyBP,QAAQ,IAAI,EAArC;AAAA,UAAQoB,YAAR,QAAQA,YAAR;;AAEAtB,MAAAA,OAAO,CAAC;AACNwB,QAAAA,EAAE,EAAE,GADE;AAENP,QAAAA,KAAK,EAAEK;AAFD,OAAD,CAAP;AAID,KAPD,MAOO;AACLtB,MAAAA,OAAO,CAAC,IAAD,CAAP;AACD;AACF,GAXM,CAAP;AAYD,CAbM","sourcesContent":["import defaults from './defaults';\nimport isEmpty from 'lodash/isEmpty';\n\nexport const createDefaultModel = (model = {}) => new Promise(resolve => resolve({ ...defaults, ...model }));\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = { ...defaults, ...question };\n\n const out = {\n ...normalizedQuestion,\n disabled: env.mode !== 'gather',\n mode: env.mode\n };\n\n const { role, mode } = env || {};\n\n if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {\n out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled\n ? normalizedQuestion.teacherInstructions\n : null;\n } else {\n out.teacherInstructions = null;\n }\n\n return out;\n}\n\nexport function outcome(model, session) {\n return new Promise(resolve => {\n if (!session || isEmpty(session)) {\n return resolve({ score: 0, empty: true });\n }\n\n const score = Object.keys(session.value).reduce((acc, key)=> {\n const matrixValue = model.matrixValues[key];\n return acc + (matrixValue || 0);\n }, 0);\n\n resolve({ score, empty: false });\n });\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise(resolve => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n const { matrixValues } = question || [];\n\n resolve({\n id: '1',\n value: matrixValues\n });\n } else {\n resolve(null);\n }\n });\n};\n"],"file":"index.js"}
|
package/controller/package.json
CHANGED
package/docs/config-schema.json
CHANGED
|
@@ -19,6 +19,22 @@
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
|
+
"spellCheck": {
|
|
23
|
+
"title": "ConfigureProp",
|
|
24
|
+
"type": "object",
|
|
25
|
+
"properties": {
|
|
26
|
+
"settings": {
|
|
27
|
+
"description": "Indicates if the item has to be displayed in the Settings Panel",
|
|
28
|
+
"type": "boolean",
|
|
29
|
+
"title": "settings"
|
|
30
|
+
},
|
|
31
|
+
"label": {
|
|
32
|
+
"description": "Indicates the label for the item that has to be displayed in the Settings Panel",
|
|
33
|
+
"type": "string",
|
|
34
|
+
"title": "label"
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
22
38
|
"showPrompt": {
|
|
23
39
|
"description": "Determines whether prompt field will be displayed or not",
|
|
24
40
|
"default": true,
|
|
@@ -14,6 +14,18 @@ Indicates if the item has to be displayed in the Settings Panel
|
|
|
14
14
|
|
|
15
15
|
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
16
16
|
|
|
17
|
+
# `spellCheck` (object)
|
|
18
|
+
|
|
19
|
+
Properties of the `spellCheck` object:
|
|
20
|
+
|
|
21
|
+
## `settings` (boolean)
|
|
22
|
+
|
|
23
|
+
Indicates if the item has to be displayed in the Settings Panel
|
|
24
|
+
|
|
25
|
+
## `label` (string)
|
|
26
|
+
|
|
27
|
+
Indicates the label for the item that has to be displayed in the Settings Panel
|
|
28
|
+
|
|
17
29
|
# `showPrompt` (boolean)
|
|
18
30
|
|
|
19
31
|
Determines whether prompt field will be displayed or not
|
package/lib/ChoiceInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ChoiceInput.jsx"],"names":["radioStyles","root","color","text","checked","ChoiceInput","props","disabled","matrixKey","matrixValue","classes","onChange","onChangeWrapper","propTypes","PropTypes","bool","isRequired","number","string","object","func","defaultProps"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA,IAAMA,WAAW,GAAG;AAClBC,EAAAA,IAAI,EAAE;AACJC,IAAAA,KAAK,sCAA+BA,gBAAMC,IAAN,EAA/B;AADD,GADY;AAIlBC,EAAAA,OAAO,EAAE;AACPF,IAAAA,KAAK,+CAAwCA,gBAAMC,IAAN,EAAxC;AADE;AAJS,CAApB;AASA,IAAME,WAAW,GAAG,wBAAWL,WAAX,EAAwB,UAACM,KAAD,EAAW;
|
|
1
|
+
{"version":3,"sources":["../src/ChoiceInput.jsx"],"names":["radioStyles","root","color","text","checked","ChoiceInput","props","disabled","matrixKey","matrixValue","classes","onChange","onChangeWrapper","propTypes","PropTypes","bool","isRequired","number","string","object","func","defaultProps"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA,IAAMA,WAAW,GAAG;AAClBC,EAAAA,IAAI,EAAE;AACJC,IAAAA,KAAK,sCAA+BA,gBAAMC,IAAN,EAA/B;AADD,GADY;AAIlBC,EAAAA,OAAO,EAAE;AACPF,IAAAA,KAAK,+CAAwCA,gBAAMC,IAAN,EAAxC;AADE;AAJS,CAApB;AASA,IAAME,WAAW,GAAG,wBAAWL,WAAX,EAAwB,UAACM,KAAD,EAAW;AACrD,MAAOC,QAAP,GAAuED,KAAvE,CAAOC,QAAP;AAAA,MAAiBH,OAAjB,GAAuEE,KAAvE,CAAiBF,OAAjB;AAAA,MAA0BI,SAA1B,GAAuEF,KAAvE,CAA0BE,SAA1B;AAAA,MAAqCC,WAArC,GAAuEH,KAAvE,CAAqCG,WAArC;AAAA,MAAkDC,OAAlD,GAAuEJ,KAAvE,CAAkDI,OAAlD;AAAA,MAA2DC,QAA3D,GAAuEL,KAAvE,CAA2DK,QAA3D;;AAEA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5B,QAAIL,QAAJ,EAAc;AACZ;AACD;;AACDI,IAAAA,QAAQ,CAAC;AACPF,MAAAA,WAAW,EAAXA,WADO;AAEPD,MAAAA,SAAS,EAATA;AAFO,KAAD,CAAR;AAID,GARD;;AAUA,sBACE,gCAAC,iBAAD;AACE,IAAA,OAAO,EAAEJ,OADX;AAEE,IAAA,QAAQ,EAAEQ,eAFZ;AAGE,IAAA,QAAQ,EAAEL,QAHZ;AAIE,IAAA,OAAO,EAAE;AACPN,MAAAA,IAAI,EAAES,OAAO,CAACT,IADP;AAEPG,MAAAA,OAAO,EAAEM,OAAO,CAACN;AAFV;AAJX,IADF;AAWD,CAxBmB,CAApB;AA0BAC,WAAW,CAACQ,SAAZ,GAAwB;AACtBT,EAAAA,OAAO,EAAEU,sBAAUC,IAAV,CAAeC,UADF;AAEtBT,EAAAA,QAAQ,EAAEO,sBAAUC,IAAV,CAAeC,UAFH;AAGtBP,EAAAA,WAAW,EAAEK,sBAAUG,MAAV,CAAiBD,UAHR;AAItBR,EAAAA,SAAS,EAAEM,sBAAUI,MAAV,CAAiBF,UAJN;AAKtBN,EAAAA,OAAO,EAAEI,sBAAUK,MALG;AAMtBR,EAAAA,QAAQ,EAAEG,sBAAUM,IAAV,CAAeJ;AANH,CAAxB;AASAX,WAAW,CAACgB,YAAZ,GAA2B;AACzBjB,EAAAA,OAAO,EAAE,KADgB;AAEzBG,EAAAA,QAAQ,EAAE;AAFe,CAA3B;eAKeF,W","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {withStyles} from '@material-ui/core/styles';\n\nimport {color} from '@pie-lib/render-ui';\nimport Radio from '@material-ui/core/Radio';\n\nconst radioStyles = {\n root: {\n color: `var(--choice-input-color, ${color.text()})`\n },\n checked: {\n color: `var(--choice-input-selected-color, ${color.text()})`\n }\n};\n\nconst ChoiceInput = withStyles(radioStyles)((props) => {\n const {disabled, checked, matrixKey, matrixValue, classes, onChange} = props;\n\n const onChangeWrapper = () => {\n if (disabled) {\n return;\n }\n onChange({\n matrixValue,\n matrixKey\n });\n };\n\n return (\n <Radio\n checked={checked}\n onChange={onChangeWrapper}\n disabled={disabled}\n classes={{\n root: classes.root,\n checked: classes.checked,\n }}\n />\n );\n});\n\nChoiceInput.propTypes = {\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n matrixValue: PropTypes.number.isRequired,\n matrixKey: PropTypes.string.isRequired,\n classes: PropTypes.object,\n onChange: PropTypes.func.isRequired\n};\n\nChoiceInput.defaultProps = {\n checked: false,\n disabled: false\n};\n\nexport default ChoiceInput;\n"],"file":"ChoiceInput.js"}
|
package/lib/Main.js
CHANGED
|
@@ -31,7 +31,7 @@ var _Matrix = _interopRequireDefault(require("./Matrix"));
|
|
|
31
31
|
|
|
32
32
|
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); }; }
|
|
33
33
|
|
|
34
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
34
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
35
|
|
|
36
36
|
var Main = /*#__PURE__*/function (_React$Component) {
|
|
37
37
|
(0, _inherits2["default"])(Main, _React$Component);
|
package/lib/Main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Main.jsx"],"names":["Main","props","model","onSessionChange","session","React","Component","PropTypes","object","func"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEMA,I;;;;;;;;;;;;WAYJ,kBAAS;
|
|
1
|
+
{"version":3,"sources":["../src/Main.jsx"],"names":["Main","props","model","onSessionChange","session","React","Component","PropTypes","object","func"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;IAEMA,I;;;;;;;;;;;;WAYJ,kBAAS;AACP,wBAA0C,KAAKC,KAA/C;AAAA,UAAOC,KAAP,eAAOA,KAAP;AAAA,UAAcC,eAAd,eAAcA,eAAd;AAAA,UAA+BC,OAA/B,eAA+BA,OAA/B;AACA,0BACE,gCAAC,uBAAD,qBACE,gCAAC,kBAAD,gCACMF,KADN;AAEE,QAAA,OAAO,EAAEE,OAFX;AAGE,QAAA,eAAe,EAAED;AAHnB,SADF,CADF;AASD;;;EAvBgBE,kBAAMC,S;;iCAAnBN,I,eACe;AACjBE,EAAAA,KAAK,EAAEK,sBAAUC,MADA;AAEjBJ,EAAAA,OAAO,EAAEG,sBAAUC,MAFF;AAGjBL,EAAAA,eAAe,EAAEI,sBAAUE;AAHV,C;iCADfT,I,kBAOkB;AACpBE,EAAAA,KAAK,EAAE,EADa;AAEpBE,EAAAA,OAAO,EAAE;AAFW,C;eAmBTJ,I","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {PreviewLayout} from '@pie-lib/render-ui';\nimport Matrix from './Matrix';\n\nclass Main extends React.Component {\n static propTypes = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSessionChange: PropTypes.func\n };\n\n static defaultProps = {\n model: {},\n session: {},\n };\n\n render() {\n const {model, onSessionChange, session} = this.props;\n return (\n <PreviewLayout>\n <Matrix\n {...model}\n session={session}\n onSessionChange={onSessionChange}\n />\n </PreviewLayout>\n );\n }\n}\n\nexport default Main;\n"],"file":"Main.js"}
|
package/lib/Matrix.js
CHANGED
|
@@ -21,17 +21,15 @@ var _ChoiceInput = _interopRequireDefault(require("./ChoiceInput"));
|
|
|
21
21
|
|
|
22
22
|
var _renderUi = require("@pie-lib/render-ui");
|
|
23
23
|
|
|
24
|
-
var _templateObject, _templateObject2, _templateObject3
|
|
24
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var MatrixWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-family: Roboto, Arial, Helvetica, sans-serif;\n"])));
|
|
27
27
|
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
var MatrixGridWrapper = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: ", ";\n grid-column-gap: 30px;\n grid-row-gap: 20px;\n margin-top: 40px;\n"])), function (props) {
|
|
28
|
+
var MatrixGridWrapper = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: ", ";\n grid-column-gap: 30px;\n grid-row-gap: 20px;\n margin-top: 40px;\n"])), function (props) {
|
|
31
29
|
return props.gridTemplateColumns;
|
|
32
30
|
});
|
|
33
31
|
|
|
34
|
-
var MatrixGridItem = _styledComponents["default"].div(
|
|
32
|
+
var MatrixGridItem = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n align-self: center;\n justify-self: center;\n white-space: nowrap;\n"])));
|
|
35
33
|
|
|
36
34
|
var Matrix = function Matrix(props) {
|
|
37
35
|
var disabled = props.disabled,
|
|
@@ -78,14 +76,11 @@ var Matrix = function Matrix(props) {
|
|
|
78
76
|
hidden: 'Show Teacher Instructions',
|
|
79
77
|
visible: 'Hide Teacher Instructions'
|
|
80
78
|
}
|
|
81
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
dangerouslySetInnerHTML: {
|
|
87
|
-
__html: prompt
|
|
88
|
-
}
|
|
79
|
+
}, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
|
|
80
|
+
prompt: teacherInstructions
|
|
81
|
+
})), /*#__PURE__*/_react["default"].createElement("br", null)), /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
|
|
82
|
+
className: "prompt",
|
|
83
|
+
prompt: prompt
|
|
89
84
|
}), /*#__PURE__*/_react["default"].createElement(MatrixGridWrapper, {
|
|
90
85
|
gridTemplateColumns: gridTemplateColumns
|
|
91
86
|
}, gridMatrixItems.map(function (gridMatrixItem, gridMatrixIndex) {
|
package/lib/Matrix.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Matrix.jsx"],"names":["
|
|
1
|
+
{"version":3,"sources":["../src/Matrix.jsx"],"names":["MatrixWrapper","styled","div","MatrixGridWrapper","props","gridTemplateColumns","MatrixGridItem","Matrix","disabled","prompt","onSessionChange","columnLabels","matrixValues","rowLabels","session","teacherInstructions","gridMatrixItems","rowIndex","length","columnIndex","gridMatrixItem","matrixKey","matrixValue","value","hasOwnProperty","push","map","join","hidden","visible","gridMatrixIndex","propTypes","PropTypes","string","object","arrayOf","bool","isRequired","func","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nimport ChoiceInput from './ChoiceInput';\nimport {Collapsible, PreviewPrompt} from '@pie-lib/render-ui';\n\nconst MatrixWrapper = styled.div`\n font-family: Roboto, Arial, Helvetica, sans-serif;\n`;\n\nconst MatrixGridWrapper = styled.div`\n display: grid;\n grid-template-columns: ${props => props.gridTemplateColumns};\n grid-column-gap: 30px;\n grid-row-gap: 20px;\n margin-top: 40px;\n`;\n\n\nconst MatrixGridItem = styled.div`\n align-self: center;\n justify-self: center;\n white-space: nowrap;\n`;\n\nconst Matrix = (props) => {\n const {\n disabled,\n prompt,\n onSessionChange,\n columnLabels,\n matrixValues,\n rowLabels,\n session,\n teacherInstructions\n } = props;\n\n const gridMatrixItems = [];\n\n for (let rowIndex = 0; rowIndex < rowLabels.length + 1; rowIndex++) {\n for (let columnIndex = 0; columnIndex < columnLabels.length + 1; columnIndex++) {\n let gridMatrixItem;\n if (rowIndex === 0 && columnIndex === 0) {\n gridMatrixItem = null;\n } else if (rowIndex === 0) {\n gridMatrixItem = columnLabels[columnIndex - 1];\n } else if (columnIndex === 0) {\n gridMatrixItem = rowLabels[rowIndex - 1];\n } else {\n const matrixKey = `${rowIndex - 1}-${columnIndex - 1}`;\n const matrixValue = matrixValues[matrixKey];\n gridMatrixItem = (<ChoiceInput\n matrixKey={matrixKey}\n matrixValue={matrixValue || 0}\n disabled={disabled}\n onChange={onSessionChange}\n checked={session.value && session.value.hasOwnProperty(matrixKey)}\n />);\n }\n gridMatrixItems.push(gridMatrixItem);\n }\n }\n const gridTemplateColumns = [...columnLabels, {}].map(() => 'min-content').join(' ');\n\n return (\n <MatrixWrapper>\n {teacherInstructions && (\n <React.Fragment>\n <Collapsible\n labels={{\n hidden: 'Show Teacher Instructions',\n visible: 'Hide Teacher Instructions',\n }}\n >\n <PreviewPrompt prompt={teacherInstructions} />\n </Collapsible>\n <br />\n </React.Fragment>\n )}\n <PreviewPrompt className=\"prompt\" prompt={prompt} />\n <MatrixGridWrapper gridTemplateColumns={gridTemplateColumns}>\n {gridMatrixItems.map((gridMatrixItem, gridMatrixIndex) => {\n return (\n <MatrixGridItem key={`${gridMatrixIndex}`}>\n {gridMatrixItem}\n </MatrixGridItem>\n );\n })}\n </MatrixGridWrapper>\n </MatrixWrapper>\n );\n};\n\nMatrix.propTypes = {\n prompt: PropTypes.string,\n teacherInstructions: PropTypes.string,\n session: PropTypes.object,\n matrixValues: PropTypes.object,\n rowLabels: PropTypes.arrayOf(PropTypes.string),\n columnLabels: PropTypes.arrayOf(PropTypes.string),\n disabled: PropTypes.bool.isRequired,\n onSessionChange: PropTypes.func.isRequired\n};\n\nMatrix.defaultProps = {\n session: {\n value: {}\n },\n};\n\nexport default Matrix;\n"],"file":"Matrix.js"}
|
package/lib/index.js
CHANGED
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports["default"] =
|
|
8
|
+
exports.isComplete = exports["default"] = void 0;
|
|
9
9
|
|
|
10
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
|
|
@@ -31,7 +31,7 @@ var _Main = _interopRequireDefault(require("./Main"));
|
|
|
31
31
|
|
|
32
32
|
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); }; }
|
|
33
33
|
|
|
34
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
34
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
35
35
|
|
|
36
36
|
var isComplete = function isComplete(session) {
|
|
37
37
|
if (!session || !session.value) {
|
|
@@ -62,6 +62,9 @@ var Matrix = /*#__PURE__*/function (_HTMLElement) {
|
|
|
62
62
|
}
|
|
63
63
|
}, {
|
|
64
64
|
key: "session",
|
|
65
|
+
get: function get() {
|
|
66
|
+
return this._session;
|
|
67
|
+
},
|
|
65
68
|
set: function set(s) {
|
|
66
69
|
this._session = s;
|
|
67
70
|
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.js"],"names":["isComplete","session","value","Object","keys","length","Matrix","m","_model","_render","
|
|
1
|
+
{"version":3,"sources":["../src/index.js"],"names":["isComplete","session","value","Object","keys","length","Matrix","m","_model","_render","_session","s","matrixKey","matrixValue","matrixRowKey","split","sessionValueClone","reduce","acc","key","startsWith","complete","dispatchEvent","SessionChangedEvent","tagName","toLowerCase","el","React","createElement","Main","model","onSessionChange","sessionChanged","bind","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEO,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAAAC,OAAO,EAAI;AACnC,MAAI,CAACA,OAAD,IAAY,CAACA,OAAO,CAACC,KAAzB,EAAgC;AAC9B,WAAO,KAAP;AACD;;AACD,SAAO,CAAC,CAAEC,MAAM,CAACC,IAAP,CAAYH,OAAO,CAACC,KAApB,EAA2BG,MAArC;AACD,CALM;;;;IAOcC,M;;;;;AACnB,oBAAc;AAAA;AAAA;AAEb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKC,MAAL,GAAcD,CAAd;;AACA,WAAKE,OAAL;AACD;;;SAOD,eAAc;AACZ,aAAO,KAAKC,QAAZ;AACD,K;SAPD,aAAYC,CAAZ,EAAe;AACb,WAAKD,QAAL,GAAgBC,CAAhB;;AACA,WAAKF,OAAL;AACD;;;WAMD,8BAAyC;AAAA;;AAAA,UAAzBG,SAAyB,QAAzBA,SAAyB;AAAA,UAAdC,WAAc,QAAdA,WAAc;AACvC,UAAMC,YAAY,GAAGF,SAAS,CAACG,KAAV,CAAgB,GAAhB,EAAqB,CAArB,CAArB;AACA,UAAMC,iBAAiB,GAAGb,MAAM,CAC7BC,IADuB,CAClB,KAAKM,QAAL,CAAcR,KAAd,IAAuB,EADL,EAEvBe,MAFuB,CAEhB,UAACC,GAAD,EAAMC,GAAN,EAAc;AACpB,YAAI,CAACA,GAAG,CAACC,UAAJ,CAAeN,YAAf,CAAL,EAAmC;AACjCI,UAAAA,GAAG,CAACC,GAAD,CAAH,GAAW,KAAI,CAACT,QAAL,CAAcR,KAAd,CAAoBiB,GAApB,CAAX;AACD;;AACD,eAAOD,GAAP;AACD,OAPuB,EAOrB,EAPqB,CAA1B;AAQAF,MAAAA,iBAAiB,CAACJ,SAAD,CAAjB,GAA+BC,WAA/B;AACA,WAAKH,QAAL,CAAcR,KAAd,GAAsBc,iBAAtB;AACA,UAAMK,QAAQ,GAAGrB,UAAU,CAAC,KAAKU,QAAN,EAAgB,KAAKF,MAArB,CAA3B;AAEA,WAAKc,aAAL,CACE,IAAIC,oCAAJ,CAAwB,KAAKC,OAAL,CAAaC,WAAb,EAAxB,EAAoDJ,QAApD,CADF;;AAGA,WAAKZ,OAAL;AACD;;;WAED,6BAAoB;AAClB,WAAKA,OAAL;AACD;;;WAED,mBAAU;AAAA;;AACR,UAAI,CAAC,KAAKD,MAAN,IAAgB,CAAC,KAAKE,QAA1B,EAAoC;AAClC;AACD;;AAED,UAAMgB,EAAE,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACnCC,QAAAA,KAAK,EAAE,KAAKtB,MADuB;AAEnCP,QAAAA,OAAO,EAAE,KAAKS,QAFqB;AAGnCqB,QAAAA,eAAe,EAAE,KAAKC,cAAL,CAAoBC,IAApB,CAAyB,IAAzB;AAHkB,OAA1B,CAAX;;AAMAC,2BAASC,MAAT,CAAgBT,EAAhB,EAAoB,IAApB,EAA0B,YAAM;AAC9B,uCAAW,MAAX;AACD,OAFD;AAGD;;;kDAzDiCU,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport {SessionChangedEvent} from '@pie-framework/pie-player-events';\nimport {renderMath} from '@pie-lib/math-rendering';\nimport Main from './Main';\n\nexport const isComplete = session => {\n if (!session || !session.value) {\n return false;\n }\n return !!(Object.keys(session.value).length);\n};\n\nexport default class Matrix extends HTMLElement {\n constructor() {\n super();\n }\n\n set model(m) {\n this._model = m;\n this._render();\n }\n\n set session(s) {\n this._session = s;\n this._render();\n }\n\n get session() {\n return this._session;\n }\n\n sessionChanged({matrixKey, matrixValue}) {\n const matrixRowKey = matrixKey.split('-')[0];\n const sessionValueClone = Object\n .keys(this._session.value || {})\n .reduce((acc, key) => {\n if (!key.startsWith(matrixRowKey)) {\n acc[key] = this._session.value[key];\n }\n return acc;\n }, {});\n sessionValueClone[matrixKey] = matrixValue;\n this._session.value = sessionValueClone;\n const complete = isComplete(this._session, this._model);\n\n this.dispatchEvent(\n new SessionChangedEvent(this.tagName.toLowerCase(), complete)\n );\n this._render();\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n if (!this._model || !this._session) {\n return;\n }\n\n const el = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onSessionChange: this.sessionChanged.bind(this),\n });\n\n ReactDOM.render(el, this, () => {\n renderMath(this);\n });\n }\n}\n"],"file":"index.js"}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
6
|
"repository": "pie-framework/pie-elements",
|
|
7
|
-
"version": "0.1.
|
|
7
|
+
"version": "0.1.4-next.1014+b002895e2",
|
|
8
8
|
"description": "",
|
|
9
9
|
"scripts": {
|
|
10
10
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@material-ui/core": "^3.9.2",
|
|
14
14
|
"@pie-framework/pie-player-events": "^0.1.0",
|
|
15
|
-
"@pie-lib/math-rendering": "^2.3
|
|
16
|
-
"@pie-lib/render-ui": "^4.
|
|
15
|
+
"@pie-lib/math-rendering": "^2.4.3",
|
|
16
|
+
"@pie-lib/render-ui": "^4.12.9",
|
|
17
17
|
"debug": "^4.1.1",
|
|
18
18
|
"prop-types": "^15.6.1",
|
|
19
19
|
"react": "^16.8.1",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"author": "",
|
|
24
24
|
"license": "ISC",
|
|
25
|
-
"gitHead": "
|
|
25
|
+
"gitHead": "b002895e29dec43623f303053f9a2bbefe276040",
|
|
26
26
|
"main": "lib/index.js",
|
|
27
27
|
"module": "src/index.js"
|
|
28
28
|
}
|