@pie-element/complex-rubric 3.8.4-next.12 → 3.8.4-next.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/module/configure.js +1 -1
  2. package/module/element.js +1 -1
  3. package/module/index.html +1 -1
  4. package/module/manifest.json +1 -1
  5. package/module/print.html +1 -1
  6. package/module/print.js +1 -1
  7. package/package.json +4 -4
  8. package/configure/node_modules/@pie-element/multi-trait-rubric/CHANGELOG.json +0 -1
  9. package/configure/node_modules/@pie-element/multi-trait-rubric/CHANGELOG.md +0 -2430
  10. package/configure/node_modules/@pie-element/multi-trait-rubric/LICENSE.md +0 -5
  11. package/configure/node_modules/@pie-element/multi-trait-rubric/README.md +0 -55
  12. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/CHANGELOG.json +0 -1
  13. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/CHANGELOG.md +0 -2298
  14. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/common.js +0 -584
  15. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/common.js.map +0 -1
  16. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/defaults.js +0 -152
  17. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/defaults.js.map +0 -1
  18. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/index.js +0 -223
  19. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/index.js.map +0 -1
  20. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/main.js +0 -546
  21. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/main.js.map +0 -1
  22. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/modals.js +0 -361
  23. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/modals.js.map +0 -1
  24. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/scale.js +0 -556
  25. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/scale.js.map +0 -1
  26. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/trait.js +0 -380
  27. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/trait.js.map +0 -1
  28. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/traitsHeader.js +0 -296
  29. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/traitsHeader.js.map +0 -1
  30. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/utils.js +0 -118
  31. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/utils.js.map +0 -1
  32. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/package.json +0 -18
  33. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/CHANGELOG.json +0 -1
  34. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/CHANGELOG.md +0 -1539
  35. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/defaults.js +0 -19
  36. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/defaults.js.map +0 -1
  37. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/index.js +0 -215
  38. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/index.js.map +0 -1
  39. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/utils.js +0 -13
  40. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/utils.js.map +0 -1
  41. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/package.json +0 -15
  42. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/config-schema.json +0 -1628
  43. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/config-schema.json.md +0 -1202
  44. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/config.js +0 -8
  45. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/generate.js +0 -117
  46. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/index.html +0 -1
  47. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/session.js +0 -6
  48. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/pie-schema.json +0 -861
  49. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/pie-schema.json.md +0 -614
  50. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/index.js +0 -91
  51. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/index.js.map +0 -1
  52. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/main.js +0 -164
  53. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/main.js.map +0 -1
  54. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/scale.js +0 -330
  55. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/scale.js.map +0 -1
  56. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/trait.js +0 -103
  57. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/trait.js.map +0 -1
  58. package/configure/node_modules/@pie-element/multi-trait-rubric/package.json +0 -24
  59. package/configure/node_modules/@pie-element/rubric/CHANGELOG.json +0 -257
  60. package/configure/node_modules/@pie-element/rubric/CHANGELOG.md +0 -2713
  61. package/configure/node_modules/@pie-element/rubric/LICENSE.md +0 -5
  62. package/configure/node_modules/@pie-element/rubric/README.md +0 -3
  63. package/configure/node_modules/@pie-element/rubric/configure/CHANGELOG.json +0 -197
  64. package/configure/node_modules/@pie-element/rubric/configure/CHANGELOG.md +0 -2506
  65. package/configure/node_modules/@pie-element/rubric/configure/lib/defaults.js +0 -68
  66. package/configure/node_modules/@pie-element/rubric/configure/lib/defaults.js.map +0 -1
  67. package/configure/node_modules/@pie-element/rubric/configure/lib/index.js +0 -197
  68. package/configure/node_modules/@pie-element/rubric/configure/lib/index.js.map +0 -1
  69. package/configure/node_modules/@pie-element/rubric/configure/lib/main.js +0 -162
  70. package/configure/node_modules/@pie-element/rubric/configure/lib/main.js.map +0 -1
  71. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/authoring.js +0 -573
  72. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/authoring.js.map +0 -1
  73. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/index.js +0 -24
  74. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/index.js.map +0 -1
  75. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/point-menu.js +0 -172
  76. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/point-menu.js.map +0 -1
  77. package/configure/node_modules/@pie-element/rubric/configure/package.json +0 -18
  78. package/configure/node_modules/@pie-element/rubric/configure/src/__tests__/index.test.jsx +0 -167
  79. package/configure/node_modules/@pie-element/rubric/configure/src/defaults.js +0 -42
  80. package/configure/node_modules/@pie-element/rubric/configure/src/index.js +0 -129
  81. package/configure/node_modules/@pie-element/rubric/configure/src/main.jsx +0 -89
  82. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/authoring.jsx +0 -449
  83. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/index.js +0 -9
  84. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/point-menu.jsx +0 -94
  85. package/configure/node_modules/@pie-element/rubric/controller/CHANGELOG.json +0 -17
  86. package/configure/node_modules/@pie-element/rubric/controller/CHANGELOG.md +0 -1532
  87. package/configure/node_modules/@pie-element/rubric/controller/lib/defaults.js +0 -16
  88. package/configure/node_modules/@pie-element/rubric/controller/lib/defaults.js.map +0 -1
  89. package/configure/node_modules/@pie-element/rubric/controller/lib/index.js +0 -59
  90. package/configure/node_modules/@pie-element/rubric/controller/lib/index.js.map +0 -1
  91. package/configure/node_modules/@pie-element/rubric/controller/package.json +0 -13
  92. package/configure/node_modules/@pie-element/rubric/controller/src/__tests__/index.test.js +0 -33
  93. package/configure/node_modules/@pie-element/rubric/controller/src/defaults.js +0 -8
  94. package/configure/node_modules/@pie-element/rubric/controller/src/index.js +0 -41
  95. package/configure/node_modules/@pie-element/rubric/docs/config-schema.json +0 -712
  96. package/configure/node_modules/@pie-element/rubric/docs/config-schema.json.md +0 -532
  97. package/configure/node_modules/@pie-element/rubric/docs/demo/config.js +0 -8
  98. package/configure/node_modules/@pie-element/rubric/docs/demo/generate.js +0 -8
  99. package/configure/node_modules/@pie-element/rubric/docs/demo/index.html +0 -2
  100. package/configure/node_modules/@pie-element/rubric/docs/pie-schema.json +0 -391
  101. package/configure/node_modules/@pie-element/rubric/docs/pie-schema.json.md +0 -281
  102. package/configure/node_modules/@pie-element/rubric/lib/index.js +0 -94
  103. package/configure/node_modules/@pie-element/rubric/lib/index.js.map +0 -1
  104. package/configure/node_modules/@pie-element/rubric/lib/main.js +0 -270
  105. package/configure/node_modules/@pie-element/rubric/lib/main.js.map +0 -1
  106. package/configure/node_modules/@pie-element/rubric/lib/print.js +0 -114
  107. package/configure/node_modules/@pie-element/rubric/lib/print.js.map +0 -1
  108. package/configure/node_modules/@pie-element/rubric/module/configure.js +0 -1
  109. package/configure/node_modules/@pie-element/rubric/module/controller.js +0 -113
  110. package/configure/node_modules/@pie-element/rubric/module/demo.js +0 -33
  111. package/configure/node_modules/@pie-element/rubric/module/element.js +0 -1
  112. package/configure/node_modules/@pie-element/rubric/module/index.html +0 -21
  113. package/configure/node_modules/@pie-element/rubric/module/manifest.json +0 -10
  114. package/configure/node_modules/@pie-element/rubric/module/print-demo.js +0 -71
  115. package/configure/node_modules/@pie-element/rubric/module/print.html +0 -18
  116. package/configure/node_modules/@pie-element/rubric/module/print.js +0 -1
  117. package/configure/node_modules/@pie-element/rubric/package.json +0 -26
  118. package/configure/node_modules/@pie-element/rubric/src/__tests__/__snapshots__/rubric-view.test.jsx.snap +0 -1815
  119. package/configure/node_modules/@pie-element/rubric/src/__tests__/rubric-view.test.jsx +0 -49
  120. package/configure/node_modules/@pie-element/rubric/src/index.js +0 -37
  121. package/configure/node_modules/@pie-element/rubric/src/main.jsx +0 -219
  122. package/configure/node_modules/@pie-element/rubric/src/print.js +0 -63
@@ -1,556 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.Scale = void 0;
9
-
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _styles = require("@material-ui/core/styles");
31
-
32
- var _ArrowBackIos = _interopRequireDefault(require("@material-ui/icons/ArrowBackIos"));
33
-
34
- var _ArrowForwardIos = _interopRequireDefault(require("@material-ui/icons/ArrowForwardIos"));
35
-
36
- var _drag = require("@pie-lib/pie-toolbox/drag");
37
-
38
- var _renderUi = require("@pie-lib/pie-toolbox/render-ui");
39
-
40
- var _traitsHeader = _interopRequireDefault(require("./traitsHeader"));
41
-
42
- var _trait = _interopRequireDefault(require("./trait"));
43
-
44
- var _common = require("./common");
45
-
46
- var _modals = require("./modals");
47
-
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
-
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
-
52
- var AdjustedBlockWidth = _common.BlockWidth + 2 * 8; // 8 is padding
53
-
54
- var styles = function styles(theme) {
55
- return {
56
- scaleWrapper: {
57
- display: 'flex',
58
- flexDirection: 'column',
59
- wordBreak: 'break-word',
60
- position: 'relative',
61
- marginBottom: theme.spacing.unit * 2.5
62
- },
63
- maxPoints: {
64
- width: '300px',
65
- marginTop: theme.spacing.unit * 2,
66
- marginBottom: theme.spacing.unit * 4
67
- },
68
- trait: {
69
- background: _renderUi.color.secondaryBackground(),
70
- marginTop: theme.spacing.unit * 2,
71
- marginBottom: theme.spacing.unit * 2,
72
- padding: theme.spacing.unit * 2
73
- }
74
- };
75
- };
76
-
77
- var Scale = /*#__PURE__*/function (_React$Component) {
78
- (0, _inherits2["default"])(Scale, _React$Component);
79
-
80
- var _super = _createSuper(Scale);
81
-
82
- function Scale() {
83
- var _this;
84
-
85
- (0, _classCallCheck2["default"])(this, Scale);
86
-
87
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
88
- args[_key] = arguments[_key];
89
- }
90
-
91
- _this = _super.call.apply(_super, [this].concat(args));
92
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
93
- showDecreaseMaxPointsDialog: false,
94
- showDeleteScaleDialog: false,
95
- showDeleteTraitDialog: false,
96
- currentPosition: 0,
97
- showRight: null,
98
- showLeft: null,
99
- showInfoDialog: false,
100
- infoDialogText: ''
101
- });
102
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "set", function (newState) {
103
- return _this.setState(newState);
104
- });
105
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "updateMaxPointsFieldValue", function (_ref) {
106
- var target = _ref.target;
107
-
108
- var _ref2 = _this.props || {},
109
- scale = _ref2.scale,
110
- scaleIndex = _ref2.scaleIndex,
111
- onScaleChanged = _ref2.onScaleChanged;
112
-
113
- var maxPoints = scale.maxPoints;
114
- var numberValue = parseInt(target.value, 10);
115
-
116
- _this.setState({
117
- currentPosition: 0,
118
- showLeft: false,
119
- showRight: _this.secondaryBlockRef && _this.secondaryBlockRef.scrollWidth - _this.secondaryBlockRef.offsetWidth
120
- });
121
-
122
- if (numberValue < maxPoints) {
123
- _this.showDecreaseMaxPointsModal({
124
- newMaxPoints: numberValue
125
- });
126
- } else {
127
- onScaleChanged(scaleIndex, {
128
- maxPoints: numberValue
129
- });
130
- }
131
- });
132
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "showDecreaseMaxPointsModal", function (_ref3) {
133
- var newMaxPoints = _ref3.newMaxPoints;
134
- return _this.set({
135
- showDecreaseMaxPointsDialog: true,
136
- newMaxPoints: newMaxPoints
137
- });
138
- });
139
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hideDecreaseMaxPointsModal", function () {
140
- return _this.set({
141
- showDecreaseMaxPointsDialog: false,
142
- newMaxPoints: undefined
143
- });
144
- });
145
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeMaxPoints", function () {
146
- var _ref4 = _this.state || {},
147
- newMaxPoints = _ref4.newMaxPoints;
148
-
149
- var _ref5 = _this.props || {},
150
- scaleIndex = _ref5.scaleIndex,
151
- onScaleChanged = _ref5.onScaleChanged;
152
-
153
- if (newMaxPoints) {
154
- onScaleChanged(scaleIndex, {
155
- maxPoints: newMaxPoints
156
- });
157
- }
158
-
159
- _this.hideDecreaseMaxPointsModal();
160
- });
161
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "showDeleteScaleModal", function () {
162
- return _this.set({
163
- showDeleteScaleDialog: true
164
- });
165
- });
166
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hideDeleteScaleModal", function () {
167
- return _this.set({
168
- showDeleteScaleDialog: false
169
- });
170
- });
171
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "deleteScale", function () {
172
- var _ref6 = _this.props || {},
173
- scaleIndex = _ref6.scaleIndex,
174
- onScaleRemoved = _ref6.onScaleRemoved;
175
-
176
- _this.hideDeleteScaleModal();
177
-
178
- onScaleRemoved(scaleIndex);
179
- });
180
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "showDeleteTraitModal", function (traitToDeleteIndex) {
181
- return _this.set({
182
- showDeleteTraitDialog: true,
183
- traitToDeleteIndex: traitToDeleteIndex
184
- });
185
- });
186
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hideDeleteTraitModal", function () {
187
- return _this.set({
188
- showDeleteTraitDialog: false,
189
- traitToDeleteIndex: undefined
190
- });
191
- });
192
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onTraitRemoved", function () {
193
- var traitToDeleteIndex = _this.state.traitToDeleteIndex;
194
-
195
- var _ref7 = _this.props || {},
196
- scale = _ref7.scale,
197
- scaleIndex = _ref7.scaleIndex,
198
- onScaleChanged = _ref7.onScaleChanged,
199
- minNoOfTraits = _ref7.minNoOfTraits;
200
-
201
- var _ref8 = scale || {},
202
- traits = _ref8.traits,
203
- traitLabel = _ref8.traitLabel;
204
-
205
- if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;
206
-
207
- if (traits.length === minNoOfTraits) {
208
- _this.set({
209
- infoDialogText: "There can't be less than ".concat(minNoOfTraits, " ").concat((traitLabel || 'trait').toLowerCase(), "s."),
210
- showInfoDialog: true
211
- });
212
-
213
- return false;
214
- }
215
-
216
- traits = [].concat((0, _toConsumableArray2["default"])(traits.slice(0, traitToDeleteIndex)), (0, _toConsumableArray2["default"])(traits.slice(traitToDeleteIndex + 1)));
217
- onScaleChanged(scaleIndex, {
218
- traits: traits
219
- });
220
-
221
- _this.hideDeleteTraitModal();
222
- });
223
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onTraitAdded", function () {
224
- var _ref9 = _this.props || {},
225
- scale = _ref9.scale,
226
- scaleIndex = _ref9.scaleIndex,
227
- onScaleChanged = _ref9.onScaleChanged,
228
- maxNoOfTraits = _ref9.maxNoOfTraits;
229
-
230
- var _ref10 = scale || {},
231
- traits = _ref10.traits,
232
- scorePointsLabels = _ref10.scorePointsLabels;
233
-
234
- if (traits.length === maxNoOfTraits) {
235
- _this.set({
236
- infoDialogText: "There can't be more than ".concat(maxNoOfTraits, " scales."),
237
- showInfoDialog: true
238
- });
239
-
240
- return false;
241
- }
242
-
243
- traits.push({
244
- name: '',
245
- description: '',
246
- standards: [],
247
- scorePointsDescriptors: Array.from({
248
- length: scorePointsLabels.length
249
- }, function () {
250
- return '';
251
- })
252
- });
253
- onScaleChanged(scaleIndex, {
254
- traits: traits
255
- });
256
- });
257
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onTraitChanged", function (traitIndex, trait) {
258
- var _ref11 = _this.props || {},
259
- scale = _ref11.scale,
260
- scaleIndex = _ref11.scaleIndex,
261
- onScaleChanged = _ref11.onScaleChanged;
262
-
263
- var _ref12 = scale || {},
264
- traits = _ref12.traits;
265
-
266
- if (traitIndex >= 0 && traitIndex < traits.length) {
267
- traits[traitIndex] = trait;
268
- onScaleChanged(scaleIndex, {
269
- traits: traits
270
- });
271
- }
272
- });
273
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onTraitDropped", function (source, newIndex) {
274
- var _ref13 = _this.props || {},
275
- scale = _ref13.scale,
276
- scaleIndex = _ref13.scaleIndex,
277
- onScaleChanged = _ref13.onScaleChanged;
278
-
279
- var _ref14 = scale || {},
280
- traits = _ref14.traits;
281
-
282
- var oldIndex = source.index;
283
- var cup = traits[oldIndex];
284
- var remainingTraits = traits.filter(function (item, index) {
285
- return index !== oldIndex;
286
- });
287
- var newTraits = [].concat((0, _toConsumableArray2["default"])(remainingTraits.slice(0, newIndex)), [cup], (0, _toConsumableArray2["default"])(remainingTraits.slice(newIndex)));
288
- onScaleChanged(scaleIndex, {
289
- traits: newTraits
290
- });
291
- });
292
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "decreasePosition", function () {
293
- var currentPosition = _this.state.currentPosition;
294
- var decreasedPosition = currentPosition - (currentPosition === AdjustedBlockWidth / 2 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);
295
-
296
- _this.setState({
297
- currentPosition: decreasedPosition,
298
- showRight: decreasedPosition < _this.secondaryBlockRef.scrollWidth - _this.secondaryBlockRef.offsetWidth,
299
- showLeft: decreasedPosition > 0
300
- });
301
- });
302
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "increasePosition", function () {
303
- var currentPosition = _this.state.currentPosition;
304
- var increasedPosition = currentPosition + (currentPosition === 0 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);
305
-
306
- _this.setState({
307
- currentPosition: increasedPosition,
308
- showRight: increasedPosition < _this.secondaryBlockRef.scrollWidth - _this.secondaryBlockRef.offsetWidth,
309
- showLeft: increasedPosition > 0
310
- });
311
- });
312
- return _this;
313
- }
314
-
315
- (0, _createClass2["default"])(Scale, [{
316
- key: "componentDidMount",
317
- value: function componentDidMount() {
318
- if (this.state.showRight === null && this.secondaryBlockRef) {
319
- this.setState({
320
- showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth
321
- });
322
- }
323
- }
324
- }, {
325
- key: "componentDidUpdate",
326
- value: function componentDidUpdate(prevProps) {
327
- if (prevProps.scale.maxPoints !== this.props.scale.maxPoints || prevProps.showDescription !== this.props.showDescription || prevProps.excludeZero !== this.props.excludeZero) {
328
- this.setState({
329
- showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth
330
- });
331
- }
332
- }
333
- }, {
334
- key: "UNSAFE_componentWillReceiveProps",
335
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
336
- if (nextProps.excludeZero !== this.props.excludeZero || nextProps.showStandards !== this.props.showStandards || nextProps.showDescription !== this.props.showDescription) {
337
- this.setState({
338
- currentPosition: 0,
339
- showLeft: false,
340
- showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth
341
- });
342
- }
343
- } // Max Points
344
-
345
- }, {
346
- key: "render",
347
- value: function render() {
348
- var _this2 = this;
349
-
350
- var _ref15 = this.props || {},
351
- classes = _ref15.classes,
352
- errors = _ref15.errors,
353
- scale = _ref15.scale,
354
- scaleIndex = _ref15.scaleIndex,
355
- showStandards = _ref15.showStandards,
356
- onScaleChanged = _ref15.onScaleChanged,
357
- excludeZero = _ref15.excludeZero,
358
- showDescription = _ref15.showDescription,
359
- showLevelTagInput = _ref15.showLevelTagInput,
360
- showScorePointLabels = _ref15.showScorePointLabels,
361
- enableDragAndDrop = _ref15.enableDragAndDrop,
362
- spellCheck = _ref15.spellCheck,
363
- width = _ref15.width,
364
- uploadSoundSupport = _ref15.uploadSoundSupport,
365
- maxPointsEnabled = _ref15.maxPointsEnabled,
366
- _ref15$mathMlOptions = _ref15.mathMlOptions,
367
- mathMlOptions = _ref15$mathMlOptions === void 0 ? {} : _ref15$mathMlOptions,
368
- maxMaxPoints = _ref15.maxMaxPoints,
369
- _ref15$expandedPlugin = _ref15.expandedPluginProps,
370
- expandedPluginProps = _ref15$expandedPlugin === void 0 ? {} : _ref15$expandedPlugin,
371
- _ref15$labelPluginPro = _ref15.labelPluginProps,
372
- labelPluginProps = _ref15$labelPluginPro === void 0 ? {} : _ref15$labelPluginPro,
373
- _ref15$imageSupport = _ref15.imageSupport,
374
- imageSupport = _ref15$imageSupport === void 0 ? {} : _ref15$imageSupport;
375
-
376
- var _ref16 = scale || {},
377
- maxPoints = _ref16.maxPoints,
378
- scorePointsLabels = _ref16.scorePointsLabels,
379
- traitLabel = _ref16.traitLabel,
380
- traits = _ref16.traits;
381
-
382
- var _this$state = this.state,
383
- showDecreaseMaxPointsDialog = _this$state.showDecreaseMaxPointsDialog,
384
- showDeleteScaleDialog = _this$state.showDeleteScaleDialog,
385
- showDeleteTraitDialog = _this$state.showDeleteTraitDialog,
386
- currentPosition = _this$state.currentPosition,
387
- showRight = _this$state.showRight,
388
- showLeft = _this$state.showLeft,
389
- showInfoDialog = _this$state.showInfoDialog,
390
- infoDialogText = _this$state.infoDialogText;
391
-
392
- var _ref17 = errors || {},
393
- traitsErrors = _ref17.traitsErrors,
394
- scorePointsErrors = _ref17.scorePointsErrors;
395
-
396
- var currentScaleTraitsErrors = traitsErrors && traitsErrors[scaleIndex] || {};
397
- var currentScalePointsLabelsErrors = scorePointsErrors && scorePointsErrors[scaleIndex] || {};
398
- var scorePointsValues = [];
399
- var secondaryBlockWidth = parseInt(width) - _common.DragHandleSpace - _common.PrimaryBlockWidth || 320; // 320 is minWidth
400
- // determining the score points values
401
-
402
- for (var pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {
403
- scorePointsValues.push(pointValue);
404
- }
405
-
406
- return /*#__PURE__*/_react["default"].createElement("div", {
407
- key: "scale-".concat(scaleIndex),
408
- className: classes.scaleWrapper,
409
- ref: function ref(_ref18) {
410
- _this2.scaleWrapper = _ref18;
411
- }
412
- }, /*#__PURE__*/_react["default"].createElement(_traitsHeader["default"], {
413
- setSecondaryBlockRef: function setSecondaryBlockRef(ref) {
414
- if (ref) {
415
- _this2.secondaryBlockRef = ref;
416
- }
417
- },
418
- key: 'header-key',
419
- errors: currentScalePointsLabelsErrors,
420
- traitLabel: traitLabel,
421
- scorePointsValues: scorePointsValues,
422
- scorePointsLabels: scorePointsLabels,
423
- onScaleChange: function onScaleChange(params) {
424
- return onScaleChanged(scaleIndex, params);
425
- },
426
- onTraitLabelChange: function onTraitLabelChange(label) {
427
- return onScaleChanged(scaleIndex, {
428
- traitLabel: label
429
- });
430
- },
431
- showStandards: showStandards,
432
- showDescription: showDescription,
433
- showLevelTagInput: showLevelTagInput,
434
- showScorePointLabels: showScorePointLabels,
435
- maxPoints: maxPoints,
436
- updateMaxPointsFieldValue: this.updateMaxPointsFieldValue,
437
- scaleIndex: scaleIndex,
438
- showDeleteScaleModal: this.showDeleteScaleModal,
439
- currentPosition: currentPosition,
440
- secondaryBlockWidth: secondaryBlockWidth,
441
- spellCheck: spellCheck,
442
- uploadSoundSupport: uploadSoundSupport,
443
- maxPointsEnabled: maxPointsEnabled,
444
- mathMlOptions: mathMlOptions,
445
- maxMaxPoints: maxMaxPoints,
446
- expandedPluginProps: expandedPluginProps,
447
- labelPluginProps: labelPluginProps,
448
- imageSupport: imageSupport
449
- }), traits.map(function (trait, index) {
450
- return /*#__PURE__*/_react["default"].createElement(_trait["default"], {
451
- key: index,
452
- index: index,
453
- error: currentScaleTraitsErrors && currentScaleTraitsErrors[index],
454
- trait: trait,
455
- traitLabel: traitLabel || 'Trait',
456
- scorePointsValues: scorePointsValues,
457
- scorePointsLabels: scorePointsLabels,
458
- onTraitRemoved: function onTraitRemoved() {
459
- return _this2.showDeleteTraitModal(index);
460
- },
461
- onTraitChanged: function onTraitChanged(trait) {
462
- return _this2.onTraitChanged(index, trait);
463
- },
464
- onTraitDropped: _this2.onTraitDropped,
465
- showStandards: showStandards,
466
- showDescription: showDescription,
467
- maxPoints: maxPoints,
468
- currentPosition: currentPosition,
469
- enableDragAndDrop: enableDragAndDrop,
470
- secondaryBlockWidth: secondaryBlockWidth,
471
- spellCheck: spellCheck,
472
- uploadSoundSupport: uploadSoundSupport,
473
- mathMlOptions: mathMlOptions,
474
- expandedPluginProps: expandedPluginProps,
475
- labelPluginProps: labelPluginProps,
476
- imageSupport: imageSupport
477
- });
478
- }), /*#__PURE__*/_react["default"].createElement(_common.Arrow, {
479
- width: "".concat(AdjustedBlockWidth / 2, "px"),
480
- show: showLeft,
481
- onClick: this.decreasePosition,
482
- left: "".concat(_common.PrimaryBlockWidth, "px"),
483
- showLevelTagInput: showLevelTagInput
484
- }, /*#__PURE__*/_react["default"].createElement(_ArrowBackIos["default"], null)), /*#__PURE__*/_react["default"].createElement(_common.Arrow, {
485
- width: "".concat(AdjustedBlockWidth / 2, "px"),
486
- show: showRight,
487
- onClick: this.increasePosition,
488
- showLevelTagInput: showLevelTagInput
489
- }, /*#__PURE__*/_react["default"].createElement(_ArrowForwardIos["default"], null)), /*#__PURE__*/_react["default"].createElement(_common.MultiTraitButton, {
490
- onClick: this.onTraitAdded
491
- }, /*#__PURE__*/_react["default"].createElement("div", {
492
- dangerouslySetInnerHTML: {
493
- __html: "Add ".concat(traitLabel || ' Trait')
494
- }
495
- })), /*#__PURE__*/_react["default"].createElement(_modals.DecreaseMaxPoints, {
496
- open: !!showDecreaseMaxPointsDialog,
497
- deleteScorePoints: this.changeMaxPoints,
498
- cancel: this.hideDecreaseMaxPointsModal
499
- }), /*#__PURE__*/_react["default"].createElement(_modals.DeleteScale, {
500
- open: !!showDeleteScaleDialog,
501
- scaleIndex: scaleIndex,
502
- deleteScale: this.deleteScale,
503
- cancel: this.hideDeleteScaleModal
504
- }), /*#__PURE__*/_react["default"].createElement(_modals.DeleteTrait, {
505
- open: !!showDeleteTraitDialog,
506
- deleteTrait: this.onTraitRemoved,
507
- cancel: this.hideDeleteTraitModal,
508
- traitLabel: traitLabel.toLowerCase()
509
- }), /*#__PURE__*/_react["default"].createElement(_modals.InfoDialog, {
510
- open: showInfoDialog,
511
- text: infoDialogText,
512
- onClose: function onClose() {
513
- return _this2.set({
514
- showInfoDialog: false
515
- });
516
- }
517
- }));
518
- }
519
- }]);
520
- return Scale;
521
- }(_react["default"].Component);
522
-
523
- exports.Scale = Scale;
524
- Scale.propTypes = {
525
- classes: _propTypes["default"].object,
526
- errors: _propTypes["default"].object,
527
- scale: _propTypes["default"].shape({
528
- maxPoints: _propTypes["default"].number,
529
- scorePointsLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
530
- traitLabel: _propTypes["default"].string,
531
- traits: _propTypes["default"].arrayOf(_propTypes["default"].shape({
532
- name: _propTypes["default"].string,
533
- standards: _propTypes["default"].arrayOf(_propTypes["default"].string),
534
- scorePointsDescriptors: _propTypes["default"].arrayOf(_propTypes["default"].string),
535
- description: _propTypes["default"].string
536
- }))
537
- }),
538
- width: _propTypes["default"].string,
539
- excludeZero: _propTypes["default"].bool,
540
- scaleIndex: _propTypes["default"].number,
541
- onScaleChanged: _propTypes["default"].func,
542
- onScaleRemoved: _propTypes["default"].func,
543
- showStandards: _propTypes["default"].bool,
544
- showLevelTagInput: _propTypes["default"].bool,
545
- showDescription: _propTypes["default"].bool,
546
- uploadSoundSupport: _propTypes["default"].object,
547
- showScorePointLabels: _propTypes["default"].bool,
548
- enableDragAndDrop: _propTypes["default"].bool,
549
- expandedPluginProps: _propTypes["default"].object,
550
- labelPluginProps: _propTypes["default"].object
551
- };
552
-
553
- var _default = (0, _drag.withDragContext)((0, _styles.withStyles)(styles)(Scale));
554
-
555
- exports["default"] = _default;
556
- //# sourceMappingURL=scale.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/scale.jsx"],"names":["AdjustedBlockWidth","BlockWidth","styles","theme","scaleWrapper","display","flexDirection","wordBreak","position","marginBottom","spacing","unit","maxPoints","width","marginTop","trait","background","color","secondaryBackground","padding","Scale","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","currentPosition","showRight","showLeft","showInfoDialog","infoDialogText","newState","setState","target","props","scale","scaleIndex","onScaleChanged","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","scorePointsLabels","push","name","description","standards","scorePointsDescriptors","Array","from","traitIndex","source","newIndex","oldIndex","index","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","prevProps","showDescription","excludeZero","nextProps","showStandards","classes","errors","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","mathMlOptions","maxMaxPoints","expandedPluginProps","labelPluginProps","imageSupport","traitsErrors","scorePointsErrors","currentScaleTraitsErrors","currentScalePointsLabelsErrors","scorePointsValues","secondaryBlockWidth","DragHandleSpace","PrimaryBlockWidth","pointValue","ref","params","label","updateMaxPointsFieldValue","showDeleteScaleModal","map","showDeleteTraitModal","onTraitChanged","onTraitDropped","decreasePosition","increasePosition","onTraitAdded","__html","changeMaxPoints","deleteScale","onTraitRemoved","React","Component","propTypes","PropTypes","object","shape","number","arrayOf","string","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\n\nimport { withDragContext } from '@pie-lib/pie-toolbox/drag';\nimport { color } from '@pie-lib/pie-toolbox/render-ui';\n\nimport TraitsHeader from './traitsHeader';\nimport TraitTile from './trait';\nimport { Arrow, BlockWidth, DragHandleSpace, MultiTraitButton, PrimaryBlockWidth } from './common';\nimport { DecreaseMaxPoints, DeleteScale, DeleteTrait, InfoDialog } from './modals';\n\nconst AdjustedBlockWidth = BlockWidth + 2 * 8; // 8 is padding\n\nconst styles = (theme) => ({\n scaleWrapper: {\n display: 'flex',\n flexDirection: 'column',\n wordBreak: 'break-word',\n position: 'relative',\n marginBottom: theme.spacing.unit * 2.5,\n },\n maxPoints: {\n width: '300px',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 4,\n },\n trait: {\n background: color.secondaryBackground(),\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n padding: theme.spacing.unit * 2,\n },\n});\n\nexport class Scale extends React.Component {\n state = {\n showDecreaseMaxPointsDialog: false,\n showDeleteScaleDialog: false,\n showDeleteTraitDialog: false,\n currentPosition: 0,\n showRight: null,\n showLeft: null,\n showInfoDialog: false,\n infoDialogText: '',\n };\n\n set = (newState) => this.setState(newState);\n\n componentDidMount() {\n if (this.state.showRight === null && this.secondaryBlockRef) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n componentDidUpdate(prevProps) {\n if (\n prevProps.scale.maxPoints !== this.props.scale.maxPoints ||\n prevProps.showDescription !== this.props.showDescription ||\n prevProps.excludeZero !== this.props.excludeZero\n ) {\n this.setState({ showRight: this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth });\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (\n nextProps.excludeZero !== this.props.excludeZero ||\n nextProps.showStandards !== this.props.showStandards ||\n nextProps.showDescription !== this.props.showDescription\n ) {\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n }\n }\n\n // Max Points\n updateMaxPointsFieldValue = ({ target }) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { maxPoints } = scale;\n\n const numberValue = parseInt(target.value, 10);\n\n this.setState({\n currentPosition: 0,\n showLeft: false,\n showRight: this.secondaryBlockRef && this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n });\n\n if (numberValue < maxPoints) {\n this.showDecreaseMaxPointsModal({ newMaxPoints: numberValue });\n } else {\n onScaleChanged(scaleIndex, { maxPoints: numberValue });\n }\n };\n\n showDecreaseMaxPointsModal = ({ newMaxPoints }) => this.set({ showDecreaseMaxPointsDialog: true, newMaxPoints });\n\n hideDecreaseMaxPointsModal = () => this.set({ showDecreaseMaxPointsDialog: false, newMaxPoints: undefined });\n\n changeMaxPoints = () => {\n const { newMaxPoints } = this.state || {};\n const { scaleIndex, onScaleChanged } = this.props || {};\n\n if (newMaxPoints) {\n onScaleChanged(scaleIndex, { maxPoints: newMaxPoints });\n }\n\n this.hideDecreaseMaxPointsModal();\n };\n\n // Delete Scale\n showDeleteScaleModal = () => this.set({ showDeleteScaleDialog: true });\n\n hideDeleteScaleModal = () => this.set({ showDeleteScaleDialog: false });\n\n deleteScale = () => {\n const { scaleIndex, onScaleRemoved } = this.props || {};\n\n this.hideDeleteScaleModal();\n\n onScaleRemoved(scaleIndex);\n };\n\n // Delete Trait\n showDeleteTraitModal = (traitToDeleteIndex) => this.set({ showDeleteTraitDialog: true, traitToDeleteIndex });\n\n hideDeleteTraitModal = () => this.set({ showDeleteTraitDialog: false, traitToDeleteIndex: undefined });\n\n onTraitRemoved = () => {\n const { traitToDeleteIndex } = this.state;\n const { scale, scaleIndex, onScaleChanged, minNoOfTraits } = this.props || {};\n let { traits, traitLabel } = scale || {};\n\n if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;\n\n if (traits.length === minNoOfTraits) {\n this.set({\n infoDialogText: `There can't be less than ${minNoOfTraits} ${(traitLabel || 'trait').toLowerCase()}s.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits = [...traits.slice(0, traitToDeleteIndex), ...traits.slice(traitToDeleteIndex + 1)];\n\n onScaleChanged(scaleIndex, { traits });\n\n this.hideDeleteTraitModal();\n };\n\n onTraitAdded = () => {\n const { scale, scaleIndex, onScaleChanged, maxNoOfTraits } = this.props || {};\n const { traits, scorePointsLabels } = scale || {};\n\n if (traits.length === maxNoOfTraits) {\n this.set({\n infoDialogText: `There can't be more than ${maxNoOfTraits} scales.`,\n showInfoDialog: true,\n });\n\n return false;\n }\n\n traits.push({\n name: '',\n description: '',\n standards: [],\n scorePointsDescriptors: Array.from({ length: scorePointsLabels.length }, () => ''),\n });\n\n onScaleChanged(scaleIndex, { traits });\n };\n\n onTraitChanged = (traitIndex, trait) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n\n if (traitIndex >= 0 && traitIndex < traits.length) {\n traits[traitIndex] = trait;\n\n onScaleChanged(scaleIndex, { traits });\n }\n };\n\n onTraitDropped = (source, newIndex) => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits } = scale || {};\n const { index: oldIndex } = source;\n const cup = traits[oldIndex];\n\n const remainingTraits = traits.filter((item, index) => index !== oldIndex);\n\n const newTraits = [...remainingTraits.slice(0, newIndex), cup, ...remainingTraits.slice(newIndex)];\n\n onScaleChanged(scaleIndex, { traits: newTraits });\n };\n\n decreasePosition = () => {\n const { currentPosition } = this.state;\n const decreasedPosition =\n currentPosition - (currentPosition === AdjustedBlockWidth / 2 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: decreasedPosition,\n showRight: decreasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: decreasedPosition > 0,\n });\n };\n\n increasePosition = () => {\n const { currentPosition } = this.state;\n const increasedPosition = currentPosition + (currentPosition === 0 ? AdjustedBlockWidth / 2 : AdjustedBlockWidth);\n\n this.setState({\n currentPosition: increasedPosition,\n showRight: increasedPosition < this.secondaryBlockRef.scrollWidth - this.secondaryBlockRef.offsetWidth,\n showLeft: increasedPosition > 0,\n });\n };\n\n render() {\n const {\n classes,\n errors,\n scale,\n scaleIndex,\n showStandards,\n onScaleChanged,\n excludeZero,\n showDescription,\n showLevelTagInput,\n showScorePointLabels,\n enableDragAndDrop,\n spellCheck,\n width,\n uploadSoundSupport,\n maxPointsEnabled,\n mathMlOptions = {},\n maxMaxPoints,\n expandedPluginProps = {},\n labelPluginProps = {},\n imageSupport = {},\n } = this.props || {};\n\n const { maxPoints, scorePointsLabels, traitLabel, traits } = scale || {};\n\n const {\n showDecreaseMaxPointsDialog,\n showDeleteScaleDialog,\n showDeleteTraitDialog,\n currentPosition,\n showRight,\n showLeft,\n showInfoDialog,\n infoDialogText,\n } = this.state;\n\n const { traitsErrors, scorePointsErrors } = errors || {};\n const currentScaleTraitsErrors = (traitsErrors && traitsErrors[scaleIndex]) || {};\n const currentScalePointsLabelsErrors = (scorePointsErrors && scorePointsErrors[scaleIndex]) || {};\n\n const scorePointsValues = [];\n const secondaryBlockWidth = parseInt(width) - DragHandleSpace - PrimaryBlockWidth || 320; // 320 is minWidth\n\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n return (\n <div\n key={`scale-${scaleIndex}`}\n className={classes.scaleWrapper}\n ref={(ref) => {\n this.scaleWrapper = ref;\n }}\n >\n <TraitsHeader\n setSecondaryBlockRef={(ref) => {\n if (ref) {\n this.secondaryBlockRef = ref;\n }\n }}\n key={'header-key'}\n errors={currentScalePointsLabelsErrors}\n traitLabel={traitLabel}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onScaleChange={(params) => onScaleChanged(scaleIndex, params)}\n onTraitLabelChange={(label) => onScaleChanged(scaleIndex, { traitLabel: label })}\n showStandards={showStandards}\n showDescription={showDescription}\n showLevelTagInput={showLevelTagInput}\n showScorePointLabels={showScorePointLabels}\n maxPoints={maxPoints}\n updateMaxPointsFieldValue={this.updateMaxPointsFieldValue}\n scaleIndex={scaleIndex}\n showDeleteScaleModal={this.showDeleteScaleModal}\n currentPosition={currentPosition}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n maxPointsEnabled={maxPointsEnabled}\n mathMlOptions={mathMlOptions}\n maxMaxPoints={maxMaxPoints}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\n imageSupport={imageSupport}\n />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n error={currentScaleTraitsErrors && currentScaleTraitsErrors[index]}\n trait={trait}\n traitLabel={traitLabel || 'Trait'}\n scorePointsValues={scorePointsValues}\n scorePointsLabels={scorePointsLabels}\n onTraitRemoved={() => this.showDeleteTraitModal(index)}\n onTraitChanged={(trait) => this.onTraitChanged(index, trait)}\n onTraitDropped={this.onTraitDropped}\n showStandards={showStandards}\n showDescription={showDescription}\n maxPoints={maxPoints}\n currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n expandedPluginProps={expandedPluginProps}\n labelPluginProps={labelPluginProps}\n imageSupport={imageSupport}\n />\n ))}\n\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showLeft}\n onClick={this.decreasePosition}\n left={`${PrimaryBlockWidth}px`}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowBackIosIcon />\n </Arrow>\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showRight}\n onClick={this.increasePosition}\n showLevelTagInput={showLevelTagInput}\n >\n <ArrowForwardIosIcon />\n </Arrow>\n\n <MultiTraitButton onClick={this.onTraitAdded}>\n <div dangerouslySetInnerHTML={{ __html: `Add ${traitLabel || ' Trait'}` }} />\n </MultiTraitButton>\n\n <DecreaseMaxPoints\n open={!!showDecreaseMaxPointsDialog}\n deleteScorePoints={this.changeMaxPoints}\n cancel={this.hideDecreaseMaxPointsModal}\n />\n\n <DeleteScale\n open={!!showDeleteScaleDialog}\n scaleIndex={scaleIndex}\n deleteScale={this.deleteScale}\n cancel={this.hideDeleteScaleModal}\n />\n\n <DeleteTrait\n open={!!showDeleteTraitDialog}\n deleteTrait={this.onTraitRemoved}\n cancel={this.hideDeleteTraitModal}\n traitLabel={traitLabel.toLowerCase()}\n />\n <InfoDialog open={showInfoDialog} text={infoDialogText} onClose={() => this.set({ showInfoDialog: false })} />\n </div>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n errors: PropTypes.object,\n scale: PropTypes.shape({\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n standards: PropTypes.arrayOf(PropTypes.string),\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n description: PropTypes.string,\n }),\n ),\n }),\n width: PropTypes.string,\n excludeZero: PropTypes.bool,\n scaleIndex: PropTypes.number,\n onScaleChanged: PropTypes.func,\n onScaleRemoved: PropTypes.func,\n showStandards: PropTypes.bool,\n showLevelTagInput: PropTypes.bool,\n showDescription: PropTypes.bool,\n uploadSoundSupport: PropTypes.object,\n showScorePointLabels: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n expandedPluginProps: PropTypes.object,\n labelPluginProps: PropTypes.object,\n};\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}