@pie-element/multi-trait-rubric 1.3.0 → 1.3.1-beta.587

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 (42) hide show
  1. package/CHANGELOG.md +466 -0
  2. package/configure/CHANGELOG.md +415 -0
  3. package/configure/lib/common.js +81 -16
  4. package/configure/lib/common.js.map +1 -1
  5. package/configure/lib/defaults.js +40 -4
  6. package/configure/lib/defaults.js.map +1 -1
  7. package/configure/lib/index.js +18 -4
  8. package/configure/lib/index.js.map +1 -1
  9. package/configure/lib/main.js +166 -97
  10. package/configure/lib/main.js.map +1 -1
  11. package/configure/lib/modals.js +71 -12
  12. package/configure/lib/modals.js.map +1 -1
  13. package/configure/lib/scale.js +69 -15
  14. package/configure/lib/scale.js.map +1 -1
  15. package/configure/lib/trait.js +50 -21
  16. package/configure/lib/trait.js.map +1 -1
  17. package/configure/lib/traitsHeader.js +28 -17
  18. package/configure/lib/traitsHeader.js.map +1 -1
  19. package/configure/lib/utils.js +29 -0
  20. package/configure/lib/utils.js.map +1 -0
  21. package/configure/package.json +7 -7
  22. package/controller/CHANGELOG.md +57 -0
  23. package/controller/lib/defaults.js +85 -1
  24. package/controller/lib/defaults.js.map +1 -1
  25. package/controller/lib/index.js +5 -3
  26. package/controller/lib/index.js.map +1 -1
  27. package/controller/package.json +2 -2
  28. package/docs/config-schema.json +129 -0
  29. package/docs/config-schema.json.md +96 -0
  30. package/docs/demo/config.js +2 -2
  31. package/docs/demo/generate.js +92 -20
  32. package/docs/demo/session.js +1 -1
  33. package/docs/pie-schema.json +23 -1
  34. package/docs/pie-schema.json.md +16 -0
  35. package/lib/index.js +4 -1
  36. package/lib/index.js.map +1 -1
  37. package/lib/main.js +42 -7
  38. package/lib/main.js.map +1 -1
  39. package/lib/scale.js +5 -1
  40. package/lib/scale.js.map +1 -1
  41. package/lib/trait.js.map +1 -1
  42. package/package.json +4 -3
@@ -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.DeleteTrait = exports.DeleteScale = exports.DecreaseMaxPoints = exports.IncludeZeroDialog = exports.ExcludeZeroDialog = exports.excludeZeroTypes = void 0;
8
+ exports.excludeZeroTypes = exports.InfoDialog = exports.IncludeZeroDialog = exports.ExcludeZeroDialog = exports.DeleteTrait = exports.DeleteScale = exports.DecreaseMaxPoints = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
@@ -27,6 +27,13 @@ var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
27
27
 
28
28
  var _renderUi = require("@pie-lib/render-ui");
29
29
 
30
+ var _defaults = _interopRequireDefault(require("./defaults"));
31
+
32
+ var _defaults$configurati = _defaults["default"].configuration,
33
+ excludeZeroDialogBoxContent = _defaults$configurati.excludeZeroDialogBoxContent,
34
+ includeZeroDialogBoxContent = _defaults$configurati.includeZeroDialogBoxContent,
35
+ deleteScaleDialogBoxContent = _defaults$configurati.deleteScaleDialogBoxContent,
36
+ maxPointsDialogBoxContent = _defaults$configurati.maxPointsDialogBoxContent;
30
37
  var excludeZeroTypes = {
31
38
  remove0: 'remove0',
32
39
  add0: 'add0',
@@ -88,11 +95,15 @@ var RawExcludeZeroDialog = function RawExcludeZeroDialog(_ref) {
88
95
  classes: {
89
96
  root: classes.title
90
97
  }
91
- }, "Exclude 0 (Zero) from Score Point Values."), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
98
+ }, excludeZeroDialogBoxContent.title), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
92
99
  classes: {
93
100
  root: classes.text
94
101
  }
95
- }, /*#__PURE__*/_react["default"].createElement("div", null, "You are about to exclude 0 from score point values.", /*#__PURE__*/_react["default"].createElement("br", null), "Some of the existing data has to be changed.", /*#__PURE__*/_react["default"].createElement("br", null), "Please choose if you want to:", /*#__PURE__*/_react["default"].createElement("ul", null, /*#__PURE__*/_react["default"].createElement("li", null, "shift Labels and Descriptions to the left"), /*#__PURE__*/_react["default"].createElement("li", null, "remove 0 column with its Label and Description")))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
102
+ }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
103
+ dangerouslySetInnerHTML: {
104
+ __html: excludeZeroDialogBoxContent.text
105
+ }
106
+ }))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
96
107
  classes: {
97
108
  root: "".concat(classes.button, " ").concat(classes.cancelButton)
98
109
  },
@@ -137,11 +148,15 @@ var RawIncludeZeroDialog = function RawIncludeZeroDialog(_ref2) {
137
148
  classes: {
138
149
  root: classes.title
139
150
  }
140
- }, "Include 0 (Zero) in Score Point Values."), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
151
+ }, includeZeroDialogBoxContent.title), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
141
152
  classes: {
142
153
  root: classes.text
143
154
  }
144
- }, /*#__PURE__*/_react["default"].createElement("div", null, "You are about to include 0 in score point values.", /*#__PURE__*/_react["default"].createElement("br", null), "Some of the existing data has to be changed.", /*#__PURE__*/_react["default"].createElement("br", null), "Please choose if you want to:", /*#__PURE__*/_react["default"].createElement("ul", null, /*#__PURE__*/_react["default"].createElement("li", null, "shift Labels and Descriptions to the right"), /*#__PURE__*/_react["default"].createElement("li", null, "add 0 column with empty Label and Descriptions")))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
155
+ }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
156
+ dangerouslySetInnerHTML: {
157
+ __html: includeZeroDialogBoxContent.text
158
+ }
159
+ }))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
145
160
  classes: {
146
161
  root: "".concat(classes.button, " ").concat(classes.cancelButton)
147
162
  },
@@ -186,11 +201,15 @@ var RawDecreaseMaxPoints = function RawDecreaseMaxPoints(_ref3) {
186
201
  classes: {
187
202
  root: classes.title
188
203
  }
189
- }, "Decreasing Max Points."), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
204
+ }, maxPointsDialogBoxContent.title), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
190
205
  classes: {
191
206
  root: classes.text
192
207
  }
193
- }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, "You are about to decrease max score point value.", /*#__PURE__*/_react["default"].createElement("br", null), "All the Labels and Descriptions for scores above Max Point will be deleted.")), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
208
+ }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
209
+ dangerouslySetInnerHTML: {
210
+ __html: maxPointsDialogBoxContent.text
211
+ }
212
+ }))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
194
213
  classes: {
195
214
  root: "".concat(classes.button, " ").concat(classes.cancelButton)
196
215
  },
@@ -227,11 +246,15 @@ var RawDeleteScale = function RawDeleteScale(_ref4) {
227
246
  classes: {
228
247
  root: classes.title
229
248
  }
230
- }, "Delete Scale #", scaleIndex), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
249
+ }, "".concat(deleteScaleDialogBoxContent.title, " #").concat(scaleIndex + 1)), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
231
250
  classes: {
232
251
  root: classes.text
233
252
  }
234
- }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, "Are you sure you want to delete this scale?")), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
253
+ }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
254
+ dangerouslySetInnerHTML: {
255
+ __html: deleteScaleDialogBoxContent.text
256
+ }
257
+ }))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
235
258
  classes: {
236
259
  root: "".concat(classes.button, " ").concat(classes.cancelButton)
237
260
  },
@@ -258,7 +281,8 @@ var RawDeleteTrait = function RawDeleteTrait(_ref5) {
258
281
  var open = _ref5.open,
259
282
  deleteTrait = _ref5.deleteTrait,
260
283
  cancel = _ref5.cancel,
261
- classes = _ref5.classes;
284
+ classes = _ref5.classes,
285
+ traitLabel = _ref5.traitLabel;
262
286
  return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
263
287
  open: open,
264
288
  classes: {
@@ -268,11 +292,15 @@ var RawDeleteTrait = function RawDeleteTrait(_ref5) {
268
292
  classes: {
269
293
  root: classes.title
270
294
  }
271
- }, "Delete Trait"), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
295
+ }, "Delete ", traitLabel), /*#__PURE__*/_react["default"].createElement(_DialogContent["default"], {
272
296
  classes: {
273
297
  root: classes.text
274
298
  }
275
- }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, "Are you sure you want to delete this trait?")), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
299
+ }, /*#__PURE__*/_react["default"].createElement(_DialogContentText["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
300
+ dangerouslySetInnerHTML: {
301
+ __html: "Are you sure you want to delete this ".concat(traitLabel, "?")
302
+ }
303
+ }))), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
276
304
  classes: {
277
305
  root: "".concat(classes.button, " ").concat(classes.cancelButton)
278
306
  },
@@ -293,4 +321,35 @@ RawDeleteTrait.propTypes = {
293
321
  };
294
322
  var DeleteTrait = (0, _styles.withStyles)(styles)(RawDeleteTrait);
295
323
  exports.DeleteTrait = DeleteTrait;
324
+
325
+ var RawInfoDialog = function RawInfoDialog(_ref6) {
326
+ var classes = _ref6.classes,
327
+ open = _ref6.open,
328
+ text = _ref6.text,
329
+ onClose = _ref6.onClose;
330
+ return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
331
+ open: open,
332
+ classes: {
333
+ paper: classes.root
334
+ }
335
+ }, /*#__PURE__*/_react["default"].createElement(_DialogTitle["default"], {
336
+ classes: {
337
+ root: classes.title
338
+ }
339
+ }, text), /*#__PURE__*/_react["default"].createElement(_DialogActions["default"], null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
340
+ classes: {
341
+ root: classes.button
342
+ },
343
+ onClick: onClose
344
+ }, "OK")));
345
+ };
346
+
347
+ RawInfoDialog.propTypes = {
348
+ classes: _propTypes["default"].object,
349
+ open: _propTypes["default"].bool,
350
+ text: _propTypes["default"].string,
351
+ cancel: _propTypes["default"].func
352
+ };
353
+ var InfoDialog = (0, _styles.withStyles)(styles)(RawInfoDialog);
354
+ exports.InfoDialog = InfoDialog;
296
355
  //# sourceMappingURL=modals.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/modals.jsx"],"names":["excludeZeroTypes","remove0","add0","shiftLeft","shiftRight","styles","root","padding","title","fontSize","lineHeight","fontFamily","color","text","paddingLeft","button","borderRadius","textTransform","background","primary","cancelButton","secondaryBackground","RawExcludeZeroDialog","open","changeExcludeZero","cancel","classes","paper","propTypes","PropTypes","object","bool","func","ExcludeZeroDialog","RawIncludeZeroDialog","IncludeZeroDialog","RawDecreaseMaxPoints","deleteScorePoints","DecreaseMaxPoints","RawDeleteScale","scaleIndex","deleteScale","number","DeleteScale","RawDeleteTrait","deleteTrait","DeleteTrait"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEO,IAAMA,gBAAgB,GAAG;AAC9BC,EAAAA,OAAO,EAAE,SADqB;AAE9BC,EAAAA,IAAI,EAAE,MAFwB;AAG9BC,EAAAA,SAAS,EAAE,WAHmB;AAI9BC,EAAAA,UAAU,EAAE;AAJkB,CAAzB;;;AAOP,IAAMC,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBC,IAAAA,IAAI,EAAE;AACJC,MAAAA,OAAO,EAAE;AADL,KADc;AAIpBC,IAAAA,KAAK,EAAE;AACLD,MAAAA,OAAO,EAAE,YADJ;AAGL,cAAQ;AACNE,QAAAA,QAAQ,EAAE,MADJ;AAENC,QAAAA,UAAU,EAAE,MAFN;AAGNC,QAAAA,UAAU,EAAE,cAHN;AAINC,QAAAA,KAAK,EAAEA,gBAAMC,IAAN;AAJD;AAHH,KAJa;AAcpBA,IAAAA,IAAI,EAAE;AACJC,MAAAA,WAAW,EAAE,GADT;AAGJ,aAAO;AACLL,QAAAA,QAAQ,EAAE,MADL;AAELE,QAAAA,UAAU,EAAE,cAFP;AAGLC,QAAAA,KAAK,EAAEA,gBAAMC,IAAN;AAHF;AAHH,KAdc;AAuBpBE,IAAAA,MAAM,EAAE;AACNR,MAAAA,OAAO,EAAE,WADH;AAENS,MAAAA,YAAY,EAAE,KAFR;AAGNP,MAAAA,QAAQ,EAAE,MAHJ;AAINE,MAAAA,UAAU,EAAE,cAJN;AAKND,MAAAA,UAAU,EAAE,MALN;AAMNO,MAAAA,aAAa,EAAE,MANT;AAONC,MAAAA,UAAU,EAAEN,gBAAMO,OAAN,EAPN;AAQNP,MAAAA,KAAK,EAAE;AARD,KAvBY;AAiCpBQ,IAAAA,YAAY,EAAE;AACZF,MAAAA,UAAU,EAAEN,gBAAMS,mBAAN,EADA;AAEZT,MAAAA,KAAK,EAAEA,gBAAMC,IAAN;AAFK;AAjCM,GAAP;AAAA,CAAf;;AAuCA,IAAMS,oBAAoB,GAAG,SAAvBA,oBAAuB;AAAA,MAAEC,IAAF,QAAEA,IAAF;AAAA,MAAQC,iBAAR,QAAQA,iBAAR;AAAA,MAA2BC,MAA3B,QAA2BA,MAA3B;AAAA,MAAmCC,OAAnC,QAAmCA,OAAnC;AAAA,sBAC3B,gCAAC,kBAAD;AAAQ,IAAA,IAAI,EAAEH,IAAd;AAAoB,IAAA,OAAO,EAAE;AAACI,MAAAA,KAAK,EAAED,OAAO,CAACpB;AAAhB;AAA7B,kBACE,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAACA,MAAAA,IAAI,EAAEoB,OAAO,CAAClB;AAAf;AAAtB,iDADF,eAKE,gCAAC,yBAAD;AAAe,IAAA,OAAO,EAAE;AAACF,MAAAA,IAAI,EAAEoB,OAAO,CAACb;AAAf;AAAxB,kBACE,iHAEE,2CAFF,+DAIE,2CAJF,gDAME,yDACE,wFADF,eAIE,6FAJF,CANF,CADF,CALF,eAuBE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACP,MAAAA,IAAI,YAAKoB,OAAO,CAACX,MAAb,cAAuBW,OAAO,CAACN,YAA/B;AAAL,KAAjB;AAAsE,IAAA,OAAO,EAAEK;AAA/E,cADF,eAKE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACnB,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE;AAAA,aAAMS,iBAAiB,CAACxB,gBAAgB,CAACG,SAAlB,CAAvB;AAAA;AAAlD,qBALF,eASE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACG,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE;AAAA,aAAMS,iBAAiB,CAACxB,gBAAgB,CAACC,OAAlB,CAAvB;AAAA;AAAlD,uBATF,CAvBF,CAD2B;AAAA,CAA7B;;AAyCAqB,oBAAoB,CAACM,SAArB,GAAiC;AAC/BF,EAAAA,OAAO,EAAEG,sBAAUC,MADY;AAE/BP,EAAAA,IAAI,EAAEM,sBAAUE,IAFe;AAG/BP,EAAAA,iBAAiB,EAAEK,sBAAUG,IAHE;AAI/BP,EAAAA,MAAM,EAAEI,sBAAUG;AAJa,CAAjC;AAOA,IAAMC,iBAAiB,GAAG,wBAAW5B,MAAX,EAAmBiB,oBAAnB,CAA1B;;;AAEA,IAAMY,oBAAoB,GAAG,SAAvBA,oBAAuB;AAAA,MAAEX,IAAF,SAAEA,IAAF;AAAA,MAAQC,iBAAR,SAAQA,iBAAR;AAAA,MAA2BC,MAA3B,SAA2BA,MAA3B;AAAA,MAAmCC,OAAnC,SAAmCA,OAAnC;AAAA,sBAC3B,gCAAC,kBAAD;AAAQ,IAAA,IAAI,EAAEH,IAAd;AAAoB,IAAA,OAAO,EAAE;AAACI,MAAAA,KAAK,EAAED,OAAO,CAACpB;AAAhB;AAA7B,kBACE,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAACA,MAAAA,IAAI,EAAEoB,OAAO,CAAClB;AAAf;AAAtB,+CADF,eAKE,gCAAC,yBAAD;AAAe,IAAA,OAAO,EAAE;AAACF,MAAAA,IAAI,EAAEoB,OAAO,CAACb;AAAf;AAAxB,kBACE,+GAEE,2CAFF,+DAIE,2CAJF,gDAME,yDACE,yFADF,eAIE,6FAJF,CANF,CADF,CALF,eAuBE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACP,MAAAA,IAAI,YAAKoB,OAAO,CAACX,MAAb,cAAuBW,OAAO,CAACN,YAA/B;AAAL,KAAjB;AAAsE,IAAA,OAAO,EAAEK;AAA/E,cADF,eAKE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACnB,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE;AAAA,aAAMS,iBAAiB,CAACxB,gBAAgB,CAACI,UAAlB,CAAvB;AAAA;AAAlD,sBALF,eASE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACE,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE;AAAA,aAAMS,iBAAiB,CAACxB,gBAAgB,CAACE,IAAlB,CAAvB;AAAA;AAAlD,oBATF,CAvBF,CAD2B;AAAA,CAA7B;;AAyCAgC,oBAAoB,CAACN,SAArB,GAAiC;AAC/BF,EAAAA,OAAO,EAAEG,sBAAUC,MADY;AAE/BP,EAAAA,IAAI,EAAEM,sBAAUE,IAFe;AAG/BP,EAAAA,iBAAiB,EAAEK,sBAAUG,IAHE;AAI/BP,EAAAA,MAAM,EAAEI,sBAAUG;AAJa,CAAjC;AAOA,IAAMG,iBAAiB,GAAG,wBAAW9B,MAAX,EAAmB6B,oBAAnB,CAA1B;;;AAEA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAuB;AAAA,MAAEb,IAAF,SAAEA,IAAF;AAAA,MAAQc,iBAAR,SAAQA,iBAAR;AAAA,MAA2BZ,MAA3B,SAA2BA,MAA3B;AAAA,MAAmCC,OAAnC,SAAmCA,OAAnC;AAAA,sBAC3B,gCAAC,kBAAD;AAAQ,IAAA,IAAI,EAAEH,IAAd;AAAoB,IAAA,OAAO,EAAE;AAACI,MAAAA,KAAK,EAAED,OAAO,CAACpB;AAAhB;AAA7B,kBACE,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAACA,MAAAA,IAAI,EAAEoB,OAAO,CAAClB;AAAf;AAAtB,8BADF,eAKE,gCAAC,yBAAD;AAAe,IAAA,OAAO,EAAE;AAACF,MAAAA,IAAI,EAAEoB,OAAO,CAACb;AAAf;AAAxB,kBACE,gCAAC,6BAAD,yEAEE,2CAFF,gFADF,CALF,eAaE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACP,MAAAA,IAAI,YAAKoB,OAAO,CAACX,MAAb,cAAuBW,OAAO,CAACN,YAA/B;AAAL,KAAjB;AAAsE,IAAA,OAAO,EAAEK;AAA/E,cADF,eAKE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACnB,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAEsB;AAAlD,eALF,CAbF,CAD2B;AAAA,CAA7B;;AA0BAD,oBAAoB,CAACR,SAArB,GAAiC;AAC/BF,EAAAA,OAAO,EAAEG,sBAAUC,MADY;AAE/BP,EAAAA,IAAI,EAAEM,sBAAUE,IAFe;AAG/BM,EAAAA,iBAAiB,EAAER,sBAAUG,IAHE;AAI/BP,EAAAA,MAAM,EAAEI,sBAAUG;AAJa,CAAjC;AAOA,IAAMM,iBAAiB,GAAG,wBAAWjC,MAAX,EAAmB+B,oBAAnB,CAA1B;;;AAEA,IAAMG,cAAc,GAAG,SAAjBA,cAAiB;AAAA,MAAEhB,IAAF,SAAEA,IAAF;AAAA,MAAQiB,UAAR,SAAQA,UAAR;AAAA,MAAoBC,WAApB,SAAoBA,WAApB;AAAA,MAAiChB,MAAjC,SAAiCA,MAAjC;AAAA,MAAyCC,OAAzC,SAAyCA,OAAzC;AAAA,sBACrB,gCAAC,kBAAD;AAAQ,IAAA,IAAI,EAAEH,IAAd;AAAoB,IAAA,OAAO,EAAE;AAACI,MAAAA,KAAK,EAAED,OAAO,CAACpB;AAAhB;AAA7B,kBACE,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAACA,MAAAA,IAAI,EAAEoB,OAAO,CAAClB;AAAf;AAAtB,uBACiBgC,UADjB,CADF,eAKE,gCAAC,yBAAD;AAAe,IAAA,OAAO,EAAE;AAAClC,MAAAA,IAAI,EAAEoB,OAAO,CAACb;AAAf;AAAxB,kBACE,gCAAC,6BAAD,sDADF,CALF,eAWE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACP,MAAAA,IAAI,YAAKoB,OAAO,CAACX,MAAb,cAAuBW,OAAO,CAACN,YAA/B;AAAL,KAAjB;AAAsE,IAAA,OAAO,EAAEK;AAA/E,cADF,eAKE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACnB,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE0B;AAAlD,cALF,CAXF,CADqB;AAAA,CAAvB;;AAyBAF,cAAc,CAACX,SAAf,GAA2B;AACzBF,EAAAA,OAAO,EAAEG,sBAAUC,MADM;AAEzBP,EAAAA,IAAI,EAAEM,sBAAUE,IAFS;AAGzBS,EAAAA,UAAU,EAAEX,sBAAUa,MAHG;AAIzBD,EAAAA,WAAW,EAAEZ,sBAAUG,IAJE;AAKzBP,EAAAA,MAAM,EAAEI,sBAAUG;AALO,CAA3B;AAQA,IAAMW,WAAW,GAAG,wBAAWtC,MAAX,EAAmBkC,cAAnB,CAApB;;;AAEA,IAAMK,cAAc,GAAG,SAAjBA,cAAiB;AAAA,MAAErB,IAAF,SAAEA,IAAF;AAAA,MAAQsB,WAAR,SAAQA,WAAR;AAAA,MAAqBpB,MAArB,SAAqBA,MAArB;AAAA,MAA6BC,OAA7B,SAA6BA,OAA7B;AAAA,sBACrB,gCAAC,kBAAD;AAAQ,IAAA,IAAI,EAAEH,IAAd;AAAoB,IAAA,OAAO,EAAE;AAACI,MAAAA,KAAK,EAAED,OAAO,CAACpB;AAAhB;AAA7B,kBACE,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAACA,MAAAA,IAAI,EAAEoB,OAAO,CAAClB;AAAf;AAAtB,oBADF,eAKE,gCAAC,yBAAD;AAAe,IAAA,OAAO,EAAE;AAACF,MAAAA,IAAI,EAAEoB,OAAO,CAACb;AAAf;AAAxB,kBACE,gCAAC,6BAAD,sDADF,CALF,eAWE,gCAAC,yBAAD,qBACE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACP,MAAAA,IAAI,YAAKoB,OAAO,CAACX,MAAb,cAAuBW,OAAO,CAACN,YAA/B;AAAL,KAAjB;AAAsE,IAAA,OAAO,EAAEK;AAA/E,cADF,eAKE,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAE;AAACnB,MAAAA,IAAI,EAAEoB,OAAO,CAACX;AAAf,KAAjB;AAAyC,IAAA,OAAO,EAAE8B;AAAlD,cALF,CAXF,CADqB;AAAA,CAAvB;;AAyBAD,cAAc,CAAChB,SAAf,GAA2B;AACzBF,EAAAA,OAAO,EAAEG,sBAAUC,MADM;AAEzBP,EAAAA,IAAI,EAAEM,sBAAUE,IAFS;AAGzBc,EAAAA,WAAW,EAAEhB,sBAAUG,IAHE;AAIzBP,EAAAA,MAAM,EAAEI,sBAAUG;AAJO,CAA3B;AAOA,IAAMc,WAAW,GAAG,wBAAWzC,MAAX,EAAmBuC,cAAnB,CAApB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {withStyles} from '@material-ui/core/styles';\n\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport Button from '@material-ui/core/Button';\nimport { color } from '@pie-lib/render-ui';\n\nexport const excludeZeroTypes = {\n remove0: 'remove0',\n add0: 'add0',\n shiftLeft: 'shiftLeft',\n shiftRight: 'shiftRight'\n};\n\nconst styles = () => ({\n root: {\n padding: '20px',\n },\n title: {\n padding: '0 0 18px 0',\n\n '& h2': {\n fontSize: '20px',\n lineHeight: '23px',\n fontFamily: 'Cerebri Sans',\n color: color.text()\n }\n },\n text: {\n paddingLeft: '0',\n\n '& p': {\n fontSize: '16px',\n fontFamily: 'Cerebri Sans',\n color: color.text()\n }\n },\n button: {\n padding: '11px 16px',\n borderRadius: '4px',\n fontSize: '14px',\n fontFamily: 'Cerebri Sans',\n lineHeight: '14px',\n textTransform: 'none',\n background: color.primary(),\n color: 'white'\n },\n cancelButton: {\n background: color.secondaryBackground(),\n color: color.text()\n },\n});\n\nconst RawExcludeZeroDialog = ({open, changeExcludeZero, cancel, classes}) => (\n <Dialog open={open} classes={{paper: classes.root}}>\n <DialogTitle classes={{root: classes.title}}>\n Exclude 0 (Zero) from Score Point Values.\n </DialogTitle>\n\n <DialogContent classes={{root: classes.text}}>\n <div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{root: `${classes.button} ${classes.cancelButton}`}} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{root: classes.button}} onClick={() => changeExcludeZero(excludeZeroTypes.shiftLeft)}>\n Shift to Left\n </Button>\n\n <Button classes={{root: classes.button}} onClick={() => changeExcludeZero(excludeZeroTypes.remove0)}>\n Remove 0 column\n </Button>\n\n </DialogActions>\n </Dialog>\n);\n\nRawExcludeZeroDialog.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst ExcludeZeroDialog = withStyles(styles)(RawExcludeZeroDialog);\n\nconst RawIncludeZeroDialog = ({open, changeExcludeZero, cancel, classes}) => (\n <Dialog open={open} classes={{paper: classes.root}}>\n <DialogTitle classes={{root: classes.title}}>\n Include 0 (Zero) in Score Point Values.\n </DialogTitle>\n\n <DialogContent classes={{root: classes.text}}>\n <div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{root: `${classes.button} ${classes.cancelButton}`}} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{root: classes.button}} onClick={() => changeExcludeZero(excludeZeroTypes.shiftRight)}>\n Shift to Right\n </Button>\n\n <Button classes={{root: classes.button}} onClick={() => changeExcludeZero(excludeZeroTypes.add0)}>\n Add 0 column\n </Button>\n\n </DialogActions>\n </Dialog>\n);\n\nRawIncludeZeroDialog.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst IncludeZeroDialog = withStyles(styles)(RawIncludeZeroDialog);\n\nconst RawDecreaseMaxPoints = ({open, deleteScorePoints, cancel, classes}) => (\n <Dialog open={open} classes={{paper: classes.root}}>\n <DialogTitle classes={{root: classes.title}}>\n Decreasing Max Points.\n </DialogTitle>\n\n <DialogContent classes={{root: classes.text}}>\n <DialogContentText>\n You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted.\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{root: `${classes.button} ${classes.cancelButton}`}} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{root: classes.button}} onClick={deleteScorePoints}>\n Confirm\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawDecreaseMaxPoints.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n deleteScorePoints: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DecreaseMaxPoints = withStyles(styles)(RawDecreaseMaxPoints);\n\nconst RawDeleteScale = ({open, scaleIndex, deleteScale, cancel, classes}) => (\n <Dialog open={open} classes={{paper: classes.root}}>\n <DialogTitle classes={{root: classes.title}}>\n Delete Scale #{scaleIndex}\n </DialogTitle>\n\n <DialogContent classes={{root: classes.text}}>\n <DialogContentText>\n Are you sure you want to delete this scale?\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{root: `${classes.button} ${classes.cancelButton}`}} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{root: classes.button}} onClick={deleteScale}>\n Delete\n </Button>\n\n </DialogActions>\n </Dialog>\n);\n\nRawDeleteScale.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n scaleIndex: PropTypes.number,\n deleteScale: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DeleteScale = withStyles(styles)(RawDeleteScale);\n\nconst RawDeleteTrait = ({open, deleteTrait, cancel, classes}) => (\n <Dialog open={open} classes={{paper: classes.root}}>\n <DialogTitle classes={{root: classes.title}}>\n Delete Trait\n </DialogTitle>\n\n <DialogContent classes={{root: classes.text}}>\n <DialogContentText>\n Are you sure you want to delete this trait?\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{root: `${classes.button} ${classes.cancelButton}`}} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{root: classes.button}} onClick={deleteTrait}>\n Delete\n </Button>\n\n </DialogActions>\n </Dialog>\n);\n\nRawDeleteTrait.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n deleteTrait: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DeleteTrait = withStyles(styles)(RawDeleteTrait);\n\n\nexport {ExcludeZeroDialog, IncludeZeroDialog, DecreaseMaxPoints, DeleteScale, DeleteTrait}\n"],"file":"modals.js"}
1
+ {"version":3,"sources":["../src/modals.jsx"],"names":["defaults","configuration","excludeZeroDialogBoxContent","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","excludeZeroTypes","remove0","add0","shiftLeft","shiftRight","styles","root","padding","title","fontSize","lineHeight","fontFamily","color","text","paddingLeft","button","borderRadius","textTransform","background","primary","cancelButton","secondaryBackground","RawExcludeZeroDialog","open","changeExcludeZero","cancel","classes","paper","__html","propTypes","PropTypes","object","bool","func","ExcludeZeroDialog","RawIncludeZeroDialog","IncludeZeroDialog","RawDecreaseMaxPoints","deleteScorePoints","DecreaseMaxPoints","RawDeleteScale","scaleIndex","deleteScale","number","DeleteScale","RawDeleteTrait","deleteTrait","traitLabel","DeleteTrait","RawInfoDialog","onClose","string","InfoDialog"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { withStyles } from '@material-ui/core/styles';\n\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogContentText from '@material-ui/core/DialogContentText';\nimport Button from '@material-ui/core/Button';\nimport { color } from '@pie-lib/render-ui';\n\nimport defaults from './defaults';\n\nconst {\n configuration: {\n excludeZeroDialogBoxContent,\n includeZeroDialogBoxContent,\n deleteScaleDialogBoxContent,\n maxPointsDialogBoxContent,\n },\n} = defaults;\n\nexport const excludeZeroTypes = {\n remove0: 'remove0',\n add0: 'add0',\n shiftLeft: 'shiftLeft',\n shiftRight: 'shiftRight',\n};\n\nconst styles = () => ({\n root: {\n padding: '20px',\n },\n title: {\n padding: '0 0 18px 0',\n\n '& h2': {\n fontSize: '20px',\n lineHeight: '23px',\n fontFamily: 'Cerebri Sans',\n color: color.text(),\n },\n },\n text: {\n paddingLeft: '0',\n\n '& p': {\n fontSize: '16px',\n fontFamily: 'Cerebri Sans',\n color: color.text(),\n },\n },\n button: {\n padding: '11px 16px',\n borderRadius: '4px',\n fontSize: '14px',\n fontFamily: 'Cerebri Sans',\n lineHeight: '14px',\n textTransform: 'none',\n background: color.primary(),\n color: 'white',\n },\n cancelButton: {\n background: color.secondaryBackground(),\n color: color.text(),\n },\n});\n\nconst RawExcludeZeroDialog = ({ open, changeExcludeZero, cancel, classes }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>{excludeZeroDialogBoxContent.title}</DialogTitle>\n\n <DialogContent classes={{ root: classes.text }}>\n <DialogContentText>\n <div dangerouslySetInnerHTML={{ __html: excludeZeroDialogBoxContent.text }} />\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{ root: `${classes.button} ${classes.cancelButton}` }} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={() => changeExcludeZero(excludeZeroTypes.shiftLeft)}>\n Shift to Left\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={() => changeExcludeZero(excludeZeroTypes.remove0)}>\n Remove 0 column\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawExcludeZeroDialog.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst ExcludeZeroDialog = withStyles(styles)(RawExcludeZeroDialog);\n\nconst RawIncludeZeroDialog = ({ open, changeExcludeZero, cancel, classes }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>{includeZeroDialogBoxContent.title}</DialogTitle>\n\n <DialogContent classes={{ root: classes.text }}>\n <DialogContentText>\n <div dangerouslySetInnerHTML={{ __html: includeZeroDialogBoxContent.text }} />\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{ root: `${classes.button} ${classes.cancelButton}` }} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={() => changeExcludeZero(excludeZeroTypes.shiftRight)}>\n Shift to Right\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={() => changeExcludeZero(excludeZeroTypes.add0)}>\n Add 0 column\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawIncludeZeroDialog.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n changeExcludeZero: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst IncludeZeroDialog = withStyles(styles)(RawIncludeZeroDialog);\n\nconst RawDecreaseMaxPoints = ({ open, deleteScorePoints, cancel, classes }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>{maxPointsDialogBoxContent.title}</DialogTitle>\n\n <DialogContent classes={{ root: classes.text }}>\n <DialogContentText>\n <div dangerouslySetInnerHTML={{ __html: maxPointsDialogBoxContent.text }} />\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{ root: `${classes.button} ${classes.cancelButton}` }} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={deleteScorePoints}>\n Confirm\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawDecreaseMaxPoints.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n deleteScorePoints: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DecreaseMaxPoints = withStyles(styles)(RawDecreaseMaxPoints);\n\nconst RawDeleteScale = ({ open, scaleIndex, deleteScale, cancel, classes }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>\n {`${deleteScaleDialogBoxContent.title} #${scaleIndex + 1}`}\n </DialogTitle>\n\n <DialogContent classes={{ root: classes.text }}>\n <DialogContentText>\n <div dangerouslySetInnerHTML={{ __html: deleteScaleDialogBoxContent.text }} />\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{ root: `${classes.button} ${classes.cancelButton}` }} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={deleteScale}>\n Delete\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawDeleteScale.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n scaleIndex: PropTypes.number,\n deleteScale: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DeleteScale = withStyles(styles)(RawDeleteScale);\n\nconst RawDeleteTrait = ({ open, deleteTrait, cancel, classes, traitLabel }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>Delete {traitLabel}</DialogTitle>\n\n <DialogContent classes={{ root: classes.text }}>\n <DialogContentText>\n <div dangerouslySetInnerHTML={{ __html: `Are you sure you want to delete this ${traitLabel}?` }} />\n </DialogContentText>\n </DialogContent>\n\n <DialogActions>\n <Button classes={{ root: `${classes.button} ${classes.cancelButton}` }} onClick={cancel}>\n Cancel\n </Button>\n\n <Button classes={{ root: classes.button }} onClick={deleteTrait}>\n Delete\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawDeleteTrait.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n deleteTrait: PropTypes.func,\n cancel: PropTypes.func,\n};\n\nconst DeleteTrait = withStyles(styles)(RawDeleteTrait);\n\nconst RawInfoDialog = ({ classes, open, text, onClose }) => (\n <Dialog open={open} classes={{ paper: classes.root }}>\n <DialogTitle classes={{ root: classes.title }}>{text}</DialogTitle>\n\n <DialogActions>\n <Button classes={{ root: classes.button }} onClick={onClose}>\n OK\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nRawInfoDialog.propTypes = {\n classes: PropTypes.object,\n open: PropTypes.bool,\n text: PropTypes.string,\n cancel: PropTypes.func,\n};\n\nconst InfoDialog = withStyles(styles)(RawInfoDialog);\n\nexport { ExcludeZeroDialog, IncludeZeroDialog, DecreaseMaxPoints, DeleteScale, DeleteTrait, InfoDialog };\n"],"file":"modals.js"}
@@ -47,7 +47,7 @@ var _modals = require("./modals");
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 { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
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 AdjustedBlockWidth = _common.BlockWidth + 2 * 8; // 8 is padding
53
53
 
@@ -92,7 +92,9 @@ var Scale = /*#__PURE__*/function (_React$Component) {
92
92
  showDeleteTraitDialog: false,
93
93
  currentPosition: 0,
94
94
  showRight: null,
95
- showLeft: null
95
+ showLeft: null,
96
+ showInfoDialog: false,
97
+ infoDialogText: ''
96
98
  });
97
99
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "set", function (newState) {
98
100
  return _this.setState(newState);
@@ -210,12 +212,24 @@ var Scale = /*#__PURE__*/function (_React$Component) {
210
212
  var _ref7 = _this.props || {},
211
213
  scale = _ref7.scale,
212
214
  scaleIndex = _ref7.scaleIndex,
213
- onScaleChanged = _ref7.onScaleChanged;
215
+ onScaleChanged = _ref7.onScaleChanged,
216
+ minNoOfTraits = _ref7.minNoOfTraits;
214
217
 
215
218
  var _ref8 = scale || {},
216
- traits = _ref8.traits;
219
+ traits = _ref8.traits,
220
+ traitLabel = _ref8.traitLabel;
217
221
 
218
222
  if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;
223
+
224
+ if (traits.length === minNoOfTraits) {
225
+ _this.set({
226
+ infoDialogText: "There can't be less than ".concat(minNoOfTraits, " ").concat((traitLabel || 'trait').toLowerCase(), "s."),
227
+ showInfoDialog: true
228
+ });
229
+
230
+ return false;
231
+ }
232
+
219
233
  traits = [].concat((0, _toConsumableArray2["default"])(traits.slice(0, traitToDeleteIndex)), (0, _toConsumableArray2["default"])(traits.slice(traitToDeleteIndex + 1)));
220
234
  onScaleChanged(scaleIndex, {
221
235
  traits: traits
@@ -227,12 +241,22 @@ var Scale = /*#__PURE__*/function (_React$Component) {
227
241
  var _ref9 = _this.props || {},
228
242
  scale = _ref9.scale,
229
243
  scaleIndex = _ref9.scaleIndex,
230
- onScaleChanged = _ref9.onScaleChanged;
244
+ onScaleChanged = _ref9.onScaleChanged,
245
+ maxNoOfTraits = _ref9.maxNoOfTraits;
231
246
 
232
247
  var _ref10 = scale || {},
233
248
  traits = _ref10.traits,
234
249
  scorePointsLabels = _ref10.scorePointsLabels;
235
250
 
251
+ if (traits.length === maxNoOfTraits) {
252
+ _this.set({
253
+ infoDialogText: "There can't be more than ".concat(maxNoOfTraits, " scales."),
254
+ showInfoDialog: true
255
+ });
256
+
257
+ return false;
258
+ }
259
+
236
260
  traits.push({
237
261
  name: '',
238
262
  description: '',
@@ -267,17 +291,21 @@ var Scale = /*#__PURE__*/function (_React$Component) {
267
291
  var _ref13 = _this.props || {},
268
292
  scale = _ref13.scale,
269
293
  scaleIndex = _ref13.scaleIndex,
270
- onScaleChanged = _ref13.onScaleChanged;
294
+ onScaleChanged = _ref13.onScaleChanged,
295
+ maxNoOfTraits = _ref13.maxNoOfTraits,
296
+ minNoOfTraits = _ref13.minNoOfTraits;
271
297
 
272
298
  var _ref14 = scale || {},
273
299
  traits = _ref14.traits;
274
300
 
275
301
  var oldIndex = source.index;
276
302
  var cup = traits[oldIndex];
277
- traits[oldIndex] = traits[newIndex];
278
- traits[newIndex] = cup;
303
+ var remainingTraits = traits.filter(function (item, index) {
304
+ return index !== oldIndex;
305
+ });
306
+ var newTraits = [].concat((0, _toConsumableArray2["default"])(remainingTraits.slice(0, newIndex)), [cup], (0, _toConsumableArray2["default"])(remainingTraits.slice(newIndex)));
279
307
  onScaleChanged(scaleIndex, {
280
- traits: traits
308
+ traits: newTraits
281
309
  });
282
310
  });
283
311
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "decreasePosition", function () {
@@ -339,7 +367,11 @@ var Scale = /*#__PURE__*/function (_React$Component) {
339
367
  showDescription = _ref15.showDescription,
340
368
  showLevelTagInput = _ref15.showLevelTagInput,
341
369
  showScorePointLabels = _ref15.showScorePointLabels,
342
- enableDragAndDrop = _ref15.enableDragAndDrop;
370
+ enableDragAndDrop = _ref15.enableDragAndDrop,
371
+ spellCheck = _ref15.spellCheck,
372
+ width = _ref15.width,
373
+ uploadSoundSupport = _ref15.uploadSoundSupport,
374
+ maxPointsEnabled = _ref15.maxPointsEnabled;
343
375
 
344
376
  var _ref16 = scale || {},
345
377
  maxPoints = _ref16.maxPoints,
@@ -353,8 +385,12 @@ var Scale = /*#__PURE__*/function (_React$Component) {
353
385
  showDeleteTraitDialog = _this$state.showDeleteTraitDialog,
354
386
  currentPosition = _this$state.currentPosition,
355
387
  showRight = _this$state.showRight,
356
- showLeft = _this$state.showLeft;
357
- var scorePointsValues = []; // determining the score points values
388
+ showLeft = _this$state.showLeft,
389
+ showInfoDialog = _this$state.showInfoDialog,
390
+ infoDialogText = _this$state.infoDialogText;
391
+ var scorePointsValues = [];
392
+ var secondaryBlockWidth = parseInt(width) - _common.DragHandleSpace - _common.PrimaryBlockWidth || 320; // 320 is minWidth
393
+ // determining the score points values
358
394
 
359
395
  for (var pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {
360
396
  scorePointsValues.push(pointValue);
@@ -392,7 +428,11 @@ var Scale = /*#__PURE__*/function (_React$Component) {
392
428
  updateMaxPointsFieldValue: this.updateMaxPointsFieldValue,
393
429
  scaleIndex: scaleIndex,
394
430
  showDeleteScaleModal: this.showDeleteScaleModal,
395
- currentPosition: currentPosition
431
+ currentPosition: currentPosition,
432
+ secondaryBlockWidth: secondaryBlockWidth,
433
+ spellCheck: spellCheck,
434
+ uploadSoundSupport: uploadSoundSupport,
435
+ maxPointsEnabled: maxPointsEnabled
396
436
  }), traits.map(function (trait, index) {
397
437
  return /*#__PURE__*/_react["default"].createElement(_trait["default"], {
398
438
  key: index,
@@ -410,7 +450,10 @@ var Scale = /*#__PURE__*/function (_React$Component) {
410
450
  showStandards: showStandards,
411
451
  showDescription: showDescription,
412
452
  currentPosition: currentPosition,
413
- enableDragAndDrop: enableDragAndDrop
453
+ enableDragAndDrop: enableDragAndDrop,
454
+ secondaryBlockWidth: secondaryBlockWidth,
455
+ spellCheck: spellCheck,
456
+ uploadSoundSupport: uploadSoundSupport
414
457
  });
415
458
  }), /*#__PURE__*/_react["default"].createElement(_common.Arrow, {
416
459
  width: "".concat(AdjustedBlockWidth / 2, "px"),
@@ -441,7 +484,16 @@ var Scale = /*#__PURE__*/function (_React$Component) {
441
484
  }), /*#__PURE__*/_react["default"].createElement(_modals.DeleteTrait, {
442
485
  open: !!showDeleteTraitDialog,
443
486
  deleteTrait: this.onTraitRemoved,
444
- cancel: this.hideDeleteTraitModal
487
+ cancel: this.hideDeleteTraitModal,
488
+ traitLabel: traitLabel.toLowerCase()
489
+ }), /*#__PURE__*/_react["default"].createElement(_modals.InfoDialog, {
490
+ open: showInfoDialog,
491
+ text: infoDialogText,
492
+ onClose: function onClose() {
493
+ return _this2.set({
494
+ showInfoDialog: false
495
+ });
496
+ }
445
497
  }));
446
498
  }
447
499
  }]);
@@ -462,6 +514,7 @@ Scale.propTypes = {
462
514
  description: _propTypes["default"].string
463
515
  }))
464
516
  }),
517
+ width: _propTypes["default"].string,
465
518
  excludeZero: _propTypes["default"].bool,
466
519
  scaleIndex: _propTypes["default"].number,
467
520
  onScaleChanged: _propTypes["default"].func,
@@ -469,6 +522,7 @@ Scale.propTypes = {
469
522
  showStandards: _propTypes["default"].bool,
470
523
  showLevelTagInput: _propTypes["default"].bool,
471
524
  showDescription: _propTypes["default"].bool,
525
+ uploadSoundSupport: _propTypes["default"].object,
472
526
  showScorePointLabels: _propTypes["default"].bool,
473
527
  enableDragAndDrop: _propTypes["default"].bool
474
528
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scale.jsx"],"names":["AdjustedBlockWidth","BlockWidth","styles","scaleWrapper","display","flexDirection","margin","wordBreak","padding","DragHandleSpace","position","maxPoints","width","trait","background","color","secondaryBackground","Scale","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","currentPosition","showRight","showLeft","newState","setState","target","props","scale","scaleIndex","onScaleChanged","scorePointsLabels","traits","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","i","push","forEach","index","scorePointsDescriptors","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","length","slice","hideDeleteTraitModal","name","description","standards","Array","from","traitIndex","source","newIndex","oldIndex","cup","decreasedPosition","increasedPosition","nextProps","excludeZero","showStandards","showDescription","classes","showLevelTagInput","showScorePointLabels","enableDragAndDrop","traitLabel","scorePointsValues","pointValue","ref","params","label","updateMaxPointsFieldValue","showDeleteScaleModal","map","showDeleteTraitModal","onTraitChanged","onTraitDropped","decreasePosition","PrimaryBlockWidth","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/drag';\nimport { color } from '@pie-lib/render-ui';\n\nimport TraitsHeader from './traitsHeader';\nimport TraitTile from './trait';\nimport {\n Arrow,\n BlockWidth,\n DragHandleSpace,\n MultiTraitButton,\n PrimaryBlockWidth\n} from './common';\nimport {\n DecreaseMaxPoints,\n DeleteScale,\n DeleteTrait,\n} from './modals';\n\nconst AdjustedBlockWidth = BlockWidth + (2 * 8); // 8 is padding\n\nconst styles = {\n scaleWrapper: {\n display: 'flex',\n flexDirection: 'column',\n margin: '12px 0',\n wordBreak: 'break-word',\n padding: `16px 0 16px ${DragHandleSpace}px`,\n position: 'relative'\n },\n maxPoints: {\n width: '300px',\n margin: '16px 0 32px'\n },\n trait: {\n background: color.secondaryBackground(),\n margin: '16px 0',\n padding: '16px'\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 };\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 UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.excludeZero !== this.props.excludeZero ||\n nextProps.showStandards !== this.props.showStandards ||\n nextProps.showDescription !== this.props.showDescription) {\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, scorePointsLabels, traits } = 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 for (let i = 0; i <= numberValue; i++) {\n if (!scorePointsLabels[i]) {\n scorePointsLabels.push('');\n }\n\n traits.forEach((trait, index) => {\n if (!traits[index].scorePointsDescriptors[i]) {\n traits[index].scorePointsDescriptors.push('');\n }\n });\n\n }\n\n onScaleChanged(scaleIndex, { maxPoints: numberValue, scorePointsLabels, traits })\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 } = this.props || {};\n let { traits } = scale || {};\n\n if (traitToDeleteIndex < 0 || traitToDeleteIndex >= traits.length) return;\n\n traits = [\n ...traits.slice(0, traitToDeleteIndex),\n ...traits.slice(traitToDeleteIndex + 1)\n ];\n\n onScaleChanged(scaleIndex, { traits });\n\n this.hideDeleteTraitModal();\n }\n\n onTraitAdded = () => {\n const { scale, scaleIndex, onScaleChanged } = this.props || {};\n const { traits, scorePointsLabels } = scale || {};\n\n traits.push({\n name: '',\n description: '',\n standards: [],\n scorePointsDescriptors: Array.from(\n { length: scorePointsLabels.length },\n () => ''\n ),\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 traits[oldIndex] = traits[newIndex];\n traits[newIndex] = cup;\n\n onScaleChanged(scaleIndex, { traits });\n }\n\n decreasePosition = () => {\n const { currentPosition } = this.state;\n const decreasedPosition = 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 scale,\n scaleIndex,\n showStandards,\n onScaleChanged,\n excludeZero,\n showDescription,\n showLevelTagInput,\n showScorePointLabels,\n enableDragAndDrop\n } = this.props || {};\n const {\n maxPoints,\n scorePointsLabels,\n traitLabel,\n traits\n } = scale || {};\n\n const {\n showDecreaseMaxPointsDialog,\n showDeleteScaleDialog,\n showDeleteTraitDialog,\n currentPosition,\n showRight,\n showLeft\n } = this.state;\n\n const scorePointsValues = [];\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\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 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 />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n trait={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 currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n />\n ))}\n\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showLeft}\n onClick={this.decreasePosition}\n left={`${PrimaryBlockWidth + DragHandleSpace}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 />\n </div>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scale: PropTypes.shape({\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(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 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 showScorePointLabels: PropTypes.bool,\n enableDragAndDrop: PropTypes.bool,\n}\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}
1
+ {"version":3,"sources":["../src/scale.jsx"],"names":["AdjustedBlockWidth","BlockWidth","styles","scaleWrapper","display","flexDirection","margin","wordBreak","padding","DragHandleSpace","position","maxPoints","width","trait","background","color","secondaryBackground","Scale","showDecreaseMaxPointsDialog","showDeleteScaleDialog","showDeleteTraitDialog","currentPosition","showRight","showLeft","showInfoDialog","infoDialogText","newState","setState","target","props","scale","scaleIndex","onScaleChanged","scorePointsLabels","traits","numberValue","parseInt","value","secondaryBlockRef","scrollWidth","offsetWidth","showDecreaseMaxPointsModal","newMaxPoints","i","push","forEach","index","scorePointsDescriptors","set","undefined","state","hideDecreaseMaxPointsModal","onScaleRemoved","hideDeleteScaleModal","traitToDeleteIndex","minNoOfTraits","traitLabel","length","toLowerCase","slice","hideDeleteTraitModal","maxNoOfTraits","name","description","standards","Array","from","traitIndex","source","newIndex","oldIndex","cup","remainingTraits","filter","item","newTraits","decreasedPosition","increasedPosition","nextProps","excludeZero","showStandards","showDescription","classes","showLevelTagInput","showScorePointLabels","enableDragAndDrop","spellCheck","uploadSoundSupport","maxPointsEnabled","scorePointsValues","secondaryBlockWidth","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/drag';\nimport { color } from '@pie-lib/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 = {\n scaleWrapper: {\n display: 'flex',\n flexDirection: 'column',\n margin: '12px 0',\n wordBreak: 'break-word',\n padding: `16px 0 16px ${DragHandleSpace}px`,\n position: 'relative',\n },\n maxPoints: {\n width: '300px',\n margin: '16px 0 32px',\n },\n trait: {\n background: color.secondaryBackground(),\n margin: '16px 0',\n padding: '16px',\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 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, scorePointsLabels, traits } = 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 for (let i = 0; i <= numberValue; i++) {\n if (!scorePointsLabels[i]) {\n scorePointsLabels.push('');\n }\n\n traits.forEach((trait, index) => {\n if (!traits[index].scorePointsDescriptors[i]) {\n traits[index].scorePointsDescriptors.push('');\n }\n });\n }\n\n onScaleChanged(scaleIndex, { maxPoints: numberValue, scorePointsLabels, traits });\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, maxNoOfTraits, minNoOfTraits } = 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 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 } = 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 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 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 />\n\n {traits.map((trait, index) => (\n <TraitTile\n key={index}\n index={index}\n trait={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 currentPosition={currentPosition}\n enableDragAndDrop={enableDragAndDrop}\n secondaryBlockWidth={secondaryBlockWidth}\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n />\n ))}\n\n <Arrow\n width={`${AdjustedBlockWidth / 2}px`}\n show={showLeft}\n onClick={this.decreasePosition}\n left={`${PrimaryBlockWidth + DragHandleSpace}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 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};\n\nexport default withDragContext(withStyles(styles)(Scale));\n"],"file":"scale.js"}