@pie-element/complex-rubric 2.10.1-next.1 → 2.10.1-next.11

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 (121) hide show
  1. package/configure/lib/defaults.js +216 -0
  2. package/configure/lib/defaults.js.map +1 -0
  3. package/configure/lib/index.js +241 -0
  4. package/configure/lib/index.js.map +1 -0
  5. package/configure/lib/main.js +221 -0
  6. package/configure/lib/main.js.map +1 -0
  7. package/configure/node_modules/@pie-element/multi-trait-rubric/CHANGELOG.json +1 -0
  8. package/configure/node_modules/@pie-element/multi-trait-rubric/CHANGELOG.md +1383 -0
  9. package/configure/node_modules/@pie-element/multi-trait-rubric/LICENSE.md +5 -0
  10. package/configure/node_modules/@pie-element/multi-trait-rubric/README.md +55 -0
  11. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/CHANGELOG.json +1 -0
  12. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/CHANGELOG.md +1270 -0
  13. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/common.js +584 -0
  14. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/common.js.map +1 -0
  15. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/defaults.js +143 -0
  16. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/defaults.js.map +1 -0
  17. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/index.js +204 -0
  18. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/index.js.map +1 -0
  19. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/main.js +602 -0
  20. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/main.js.map +1 -0
  21. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/modals.js +361 -0
  22. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/modals.js.map +1 -0
  23. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/scale.js +556 -0
  24. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/scale.js.map +1 -0
  25. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/trait.js +380 -0
  26. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/trait.js.map +1 -0
  27. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/traitsHeader.js +296 -0
  28. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/traitsHeader.js.map +1 -0
  29. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/utils.js +14 -0
  30. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/lib/utils.js.map +1 -0
  31. package/configure/node_modules/@pie-element/multi-trait-rubric/configure/package.json +18 -0
  32. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/CHANGELOG.json +1 -0
  33. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/CHANGELOG.md +544 -0
  34. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/defaults.js +94 -0
  35. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/defaults.js.map +1 -0
  36. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/index.js +215 -0
  37. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/index.js.map +1 -0
  38. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/utils.js +13 -0
  39. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/lib/utils.js.map +1 -0
  40. package/configure/node_modules/@pie-element/multi-trait-rubric/controller/package.json +15 -0
  41. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/config-schema.json +803 -0
  42. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/config-schema.json.md +602 -0
  43. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/config.js +8 -0
  44. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/generate.js +180 -0
  45. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/index.html +1 -0
  46. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/demo/session.js +6 -0
  47. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/pie-schema.json +531 -0
  48. package/configure/node_modules/@pie-element/multi-trait-rubric/docs/pie-schema.json.md +374 -0
  49. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/index.js +85 -0
  50. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/index.js.map +1 -0
  51. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/main.js +161 -0
  52. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/main.js.map +1 -0
  53. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/scale.js +330 -0
  54. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/scale.js.map +1 -0
  55. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/trait.js +103 -0
  56. package/configure/node_modules/@pie-element/multi-trait-rubric/lib/trait.js.map +1 -0
  57. package/configure/node_modules/@pie-element/multi-trait-rubric/package.json +24 -0
  58. package/configure/node_modules/@pie-element/rubric/CHANGELOG.json +257 -0
  59. package/configure/node_modules/@pie-element/rubric/CHANGELOG.md +1640 -0
  60. package/configure/node_modules/@pie-element/rubric/LICENSE.md +5 -0
  61. package/configure/node_modules/@pie-element/rubric/README.md +3 -0
  62. package/configure/node_modules/@pie-element/rubric/configure/CHANGELOG.json +197 -0
  63. package/configure/node_modules/@pie-element/rubric/configure/CHANGELOG.md +1471 -0
  64. package/configure/node_modules/@pie-element/rubric/configure/lib/defaults.js +59 -0
  65. package/configure/node_modules/@pie-element/rubric/configure/lib/defaults.js.map +1 -0
  66. package/configure/node_modules/@pie-element/rubric/configure/lib/index.js +194 -0
  67. package/configure/node_modules/@pie-element/rubric/configure/lib/index.js.map +1 -0
  68. package/configure/node_modules/@pie-element/rubric/configure/lib/main.js +160 -0
  69. package/configure/node_modules/@pie-element/rubric/configure/lib/main.js.map +1 -0
  70. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/authoring.js +555 -0
  71. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/authoring.js.map +1 -0
  72. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/index.js +24 -0
  73. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/index.js.map +1 -0
  74. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/point-menu.js +172 -0
  75. package/configure/node_modules/@pie-element/rubric/configure/lib/pie-toolbox-rubric/point-menu.js.map +1 -0
  76. package/configure/node_modules/@pie-element/rubric/configure/package.json +17 -0
  77. package/configure/node_modules/@pie-element/rubric/configure/src/__tests__/index.test.jsx +173 -0
  78. package/configure/node_modules/@pie-element/rubric/configure/src/defaults.js +39 -0
  79. package/configure/node_modules/@pie-element/rubric/configure/src/index.js +127 -0
  80. package/configure/node_modules/@pie-element/rubric/configure/src/main.jsx +87 -0
  81. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/authoring.jsx +427 -0
  82. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/index.js +9 -0
  83. package/configure/node_modules/@pie-element/rubric/configure/src/pie-toolbox-rubric/point-menu.jsx +94 -0
  84. package/configure/node_modules/@pie-element/rubric/controller/CHANGELOG.json +17 -0
  85. package/configure/node_modules/@pie-element/rubric/controller/CHANGELOG.md +536 -0
  86. package/configure/node_modules/@pie-element/rubric/controller/lib/index.js +51 -0
  87. package/configure/node_modules/@pie-element/rubric/controller/lib/index.js.map +1 -0
  88. package/configure/node_modules/@pie-element/rubric/controller/package.json +13 -0
  89. package/configure/node_modules/@pie-element/rubric/controller/src/__tests__/index.test.js +31 -0
  90. package/configure/node_modules/@pie-element/rubric/controller/src/index.js +42 -0
  91. package/configure/node_modules/@pie-element/rubric/docs/config-schema.json +382 -0
  92. package/configure/node_modules/@pie-element/rubric/docs/config-schema.json.md +292 -0
  93. package/configure/node_modules/@pie-element/rubric/docs/demo/config.js +8 -0
  94. package/configure/node_modules/@pie-element/rubric/docs/demo/generate.js +8 -0
  95. package/configure/node_modules/@pie-element/rubric/docs/demo/index.html +2 -0
  96. package/configure/node_modules/@pie-element/rubric/docs/pie-schema.json +226 -0
  97. package/configure/node_modules/@pie-element/rubric/docs/pie-schema.json.md +161 -0
  98. package/configure/node_modules/@pie-element/rubric/lib/index.js +88 -0
  99. package/configure/node_modules/@pie-element/rubric/lib/index.js.map +1 -0
  100. package/configure/node_modules/@pie-element/rubric/lib/main.js +187 -0
  101. package/configure/node_modules/@pie-element/rubric/lib/main.js.map +1 -0
  102. package/configure/node_modules/@pie-element/rubric/lib/print.js +114 -0
  103. package/configure/node_modules/@pie-element/rubric/lib/print.js.map +1 -0
  104. package/configure/node_modules/@pie-element/rubric/package.json +26 -0
  105. package/configure/node_modules/@pie-element/rubric/src/__tests__/__snapshots__/rubric-view.test.jsx.snap +23003 -0
  106. package/configure/node_modules/@pie-element/rubric/src/__tests__/rubric-view.test.jsx +50 -0
  107. package/configure/node_modules/@pie-element/rubric/src/index.js +34 -0
  108. package/configure/node_modules/@pie-element/rubric/src/main.jsx +136 -0
  109. package/configure/node_modules/@pie-element/rubric/src/print.js +63 -0
  110. package/configure/package.json +2 -2
  111. package/controller/lib/defaults.js +134 -0
  112. package/controller/lib/defaults.js.map +1 -0
  113. package/controller/lib/index.js +307 -0
  114. package/controller/lib/index.js.map +1 -0
  115. package/controller/lib/utils.js +13 -0
  116. package/controller/lib/utils.js.map +1 -0
  117. package/lib/index.js +232 -0
  118. package/lib/index.js.map +1 -0
  119. package/lib/print.js +201 -0
  120. package/lib/print.js.map +1 -0
  121. package/package.json +4 -4
@@ -0,0 +1,221 @@
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.Main = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _rubric = require("@pie-lib/pie-toolbox/rubric");
29
+
30
+ var _configUi = require("@pie-lib/pie-toolbox/config-ui");
31
+
32
+ var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
33
+
34
+ var _RadioGroup = _interopRequireDefault(require("@material-ui/core/RadioGroup"));
35
+
36
+ var _FormControlLabel = _interopRequireDefault(require("@material-ui/core/FormControlLabel"));
37
+
38
+ var _styles = require("@material-ui/core/styles");
39
+
40
+ var _rubricLabels;
41
+
42
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
43
+
44
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
45
+
46
+ 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); }; }
47
+
48
+ 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; } }
49
+
50
+ var styles = {
51
+ root: {
52
+ width: 'fit-content',
53
+ paddingRight: '24px',
54
+ boxSizing: 'border-box',
55
+ '&:hover': {
56
+ background: 'var(--pie-secondary-background, rgba(241,241,241,1))'
57
+ }
58
+ }
59
+ };
60
+ var rubricLabels = (_rubricLabels = {}, (0, _defineProperty2["default"])(_rubricLabels, _rubric.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC, 'Multi Trait Rubric'), (0, _defineProperty2["default"])(_rubricLabels, _rubric.RUBRIC_TYPES.SIMPLE_RUBRIC, 'Simple Rubric'), (0, _defineProperty2["default"])(_rubricLabels, _rubric.RUBRIC_TYPES.RUBRICLESS, 'Rubricless'), _rubricLabels);
61
+
62
+ var Main = /*#__PURE__*/function (_React$Component) {
63
+ (0, _inherits2["default"])(Main, _React$Component);
64
+
65
+ var _super = _createSuper(Main);
66
+
67
+ function Main() {
68
+ var _this;
69
+
70
+ (0, _classCallCheck2["default"])(this, Main);
71
+
72
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
73
+ args[_key] = arguments[_key];
74
+ }
75
+
76
+ _this = _super.call.apply(_super, [this].concat(args));
77
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onModelChanged", function (model) {
78
+ var onModelChanged = _this.props.onModelChanged;
79
+ return onModelChanged(model);
80
+ });
81
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChangeRubricType", function (e) {
82
+ var model = _this.props.model;
83
+ var rubricType = e.target.value;
84
+
85
+ _this.onModelChanged(_objectSpread(_objectSpread({}, model), {}, {
86
+ rubricType: rubricType
87
+ }));
88
+ });
89
+ return _this;
90
+ }
91
+
92
+ (0, _createClass2["default"])(Main, [{
93
+ key: "render",
94
+ value: function render() {
95
+ var _this2 = this;
96
+
97
+ var _this$props = this.props,
98
+ model = _this$props.model,
99
+ configuration = _this$props.configuration,
100
+ canUpdateModel = _this$props.canUpdateModel,
101
+ classes = _this$props.classes;
102
+
103
+ var _ref = model || {},
104
+ _ref$rubrics = _ref.rubrics,
105
+ rubrics = _ref$rubrics === void 0 ? {} : _ref$rubrics;
106
+
107
+ var rubricType = model.rubricType;
108
+ var _configuration$conten = configuration.contentDimensions,
109
+ contentDimensions = _configuration$conten === void 0 ? {} : _configuration$conten,
110
+ _configuration$rubric = configuration.rubricOptions,
111
+ rubricOptions = _configuration$rubric === void 0 ? [] : _configuration$rubric,
112
+ multiTraitRubric = configuration.multiTraitRubric,
113
+ simpleRubric = configuration.simpleRubric,
114
+ rubricless = configuration.rubricless,
115
+ width = configuration.width;
116
+ var rubricTag = '';
117
+
118
+ if (!rubricType) {
119
+ rubricType = _rubric.RUBRIC_TYPES.SIMPLE_RUBRIC;
120
+ }
121
+
122
+ var isRubricTypeAvailable = rubricOptions.indexOf(rubricType) > -1;
123
+
124
+ if (canUpdateModel) {
125
+ switch (rubricType) {
126
+ case _rubric.RUBRIC_TYPES.SIMPLE_RUBRIC:
127
+ default:
128
+ rubricTag = /*#__PURE__*/_react["default"].createElement("rubric-configure", {
129
+ id: "simpleRubric",
130
+ key: "simple-rubric",
131
+ ref: function ref(_ref2) {
132
+ if (_ref2) {
133
+ _this2.simpleRubric = _ref2;
134
+ _this2.simpleRubric.model = _objectSpread(_objectSpread({}, rubrics.simpleRubric), {}, {
135
+ errors: model.errors || {}
136
+ });
137
+ _this2.simpleRubric.configuration = _objectSpread(_objectSpread({}, simpleRubric), {}, {
138
+ width: width
139
+ });
140
+ }
141
+ }
142
+ });
143
+ break;
144
+
145
+ case _rubric.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:
146
+ rubricTag = /*#__PURE__*/_react["default"].createElement("multi-trait-rubric-configure", {
147
+ id: "multiTraitRubric",
148
+ key: "multi-trait-rubric",
149
+ ref: function ref(_ref3) {
150
+ if (_ref3) {
151
+ _this2.multiTraitRubric = _ref3;
152
+ _this2.multiTraitRubric.model = _objectSpread(_objectSpread({}, rubrics.multiTraitRubric), {}, {
153
+ errors: model.errors || {}
154
+ });
155
+ _this2.multiTraitRubric.configuration = _objectSpread(_objectSpread({}, multiTraitRubric), {}, {
156
+ width: width || multiTraitRubric.width
157
+ });
158
+ }
159
+ }
160
+ });
161
+ break;
162
+
163
+ case _rubric.RUBRIC_TYPES.RUBRICLESS:
164
+ rubricTag = /*#__PURE__*/_react["default"].createElement("rubric-configure", {
165
+ id: "rubricless",
166
+ key: "rubricless",
167
+ ref: function ref(_ref4) {
168
+ if (_ref4) {
169
+ _this2.rubricless = _ref4;
170
+ _this2.rubricless.model = rubrics.rubricless;
171
+ _this2.rubricless.configuration = _objectSpread(_objectSpread({}, rubricless), {}, {
172
+ width: width
173
+ });
174
+ }
175
+ }
176
+ });
177
+ break;
178
+ }
179
+ }
180
+
181
+ return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
182
+ dimensions: contentDimensions,
183
+ hideSettings: true,
184
+ settings: null
185
+ }, /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
186
+ "aria-label": "rubric-type",
187
+ name: "rubricType",
188
+ value: model.rubricType,
189
+ onChange: this.onChangeRubricType
190
+ }, rubricOptions.length > 1 && rubricOptions.map(function (availableRubric, i) {
191
+ return /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], {
192
+ key: i,
193
+ value: availableRubric,
194
+ control: /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
195
+ checked: rubricType === availableRubric
196
+ }),
197
+ label: rubricLabels[availableRubric],
198
+ classes: {
199
+ root: classes.root
200
+ }
201
+ });
202
+ })), isRubricTypeAvailable && rubricTag);
203
+ }
204
+ }]);
205
+ return Main;
206
+ }(_react["default"].Component);
207
+
208
+ exports.Main = Main;
209
+ (0, _defineProperty2["default"])(Main, "propTypes", {
210
+ classes: _propTypes["default"].object,
211
+ canUpdateModel: _propTypes["default"].bool,
212
+ configuration: _propTypes["default"].object,
213
+ model: _propTypes["default"].object,
214
+ onModelChanged: _propTypes["default"].func,
215
+ onConfigurationChanged: _propTypes["default"].func
216
+ });
217
+
218
+ var _default = (0, _styles.withStyles)(styles)(Main);
219
+
220
+ exports["default"] = _default;
221
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["styles","root","width","paddingRight","boxSizing","background","rubricLabels","RUBRIC_TYPES","MULTI_TRAIT_RUBRIC","SIMPLE_RUBRIC","RUBRICLESS","Main","model","onModelChanged","props","e","rubricType","target","value","configuration","canUpdateModel","classes","rubrics","contentDimensions","rubricOptions","multiTraitRubric","simpleRubric","rubricless","rubricTag","isRubricTypeAvailable","indexOf","ref","errors","onChangeRubricType","length","map","availableRubric","i","React","Component","PropTypes","object","bool","func","onConfigurationChanged"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { RUBRIC_TYPES } from '@pie-lib/pie-toolbox/rubric';\nimport { layout } from '@pie-lib/pie-toolbox/config-ui';\nimport Radio from '@material-ui/core/Radio';\nimport RadioGroup from '@material-ui/core/RadioGroup';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport { withStyles } from '@material-ui/core/styles';\n\nconst styles = {\n root: {\n width: 'fit-content',\n paddingRight: '24px',\n boxSizing: 'border-box',\n '&:hover': {\n background: 'var(--pie-secondary-background, rgba(241,241,241,1))'\n }\n }\n};\nconst rubricLabels = {\n [RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: 'Multi Trait Rubric',\n [RUBRIC_TYPES.SIMPLE_RUBRIC]: 'Simple Rubric',\n [RUBRIC_TYPES.RUBRICLESS]: 'Rubricless',\n};\n\nexport class Main extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n canUpdateModel: PropTypes.bool,\n configuration: PropTypes.object,\n model: PropTypes.object,\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n };\n\n onModelChanged = (model) => {\n const { onModelChanged } = this.props;\n\n return onModelChanged(model);\n };\n\n onChangeRubricType = (e) => {\n const { model } = this.props;\n\n const rubricType = e.target.value;\n this.onModelChanged({ ...model, rubricType });\n };\n\n render() {\n const { model, configuration, canUpdateModel, classes } = this.props;\n\n const { rubrics = {} } = model || {};\n let { rubricType } = model;\n const { contentDimensions = {}, rubricOptions = [], multiTraitRubric, simpleRubric, rubricless, width } = configuration;\n let rubricTag = '';\n\n if (!rubricType) {\n rubricType = RUBRIC_TYPES.SIMPLE_RUBRIC;\n }\n\n const isRubricTypeAvailable = rubricOptions.indexOf(rubricType) > -1;\n\n if (canUpdateModel) {\n switch (rubricType) {\n case RUBRIC_TYPES.SIMPLE_RUBRIC:\n default:\n rubricTag = (\n <rubric-configure\n id=\"simpleRubric\"\n key=\"simple-rubric\"\n ref={(ref) => {\n if (ref) {\n this.simpleRubric = ref;\n this.simpleRubric.model = {...rubrics.simpleRubric, errors: model.errors || {}};\n this.simpleRubric.configuration = { ...simpleRubric, width };\n }\n }}\n />\n );\n break;\n\n case RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:\n rubricTag = (\n <multi-trait-rubric-configure\n id=\"multiTraitRubric\"\n key=\"multi-trait-rubric\"\n ref={(ref) => {\n if (ref) {\n this.multiTraitRubric = ref;\n\n this.multiTraitRubric.model = {...rubrics.multiTraitRubric, errors: model.errors || {} };\n this.multiTraitRubric.configuration = { ...multiTraitRubric, width: width || multiTraitRubric.width };\n }\n }}\n />\n );\n break;\n\n case RUBRIC_TYPES.RUBRICLESS:\n rubricTag = (\n <rubric-configure\n id=\"rubricless\"\n key=\"rubricless\"\n ref={(ref) => {\n if (ref) {\n this.rubricless = ref;\n\n this.rubricless.model = rubrics.rubricless;\n this.rubricless.configuration = { ...rubricless, width };\n }\n }}\n />\n );\n break;\n }\n }\n\n return (\n <layout.ConfigLayout dimensions={contentDimensions} hideSettings={true} settings={null}>\n <RadioGroup\n aria-label=\"rubric-type\"\n name=\"rubricType\"\n value={model.rubricType}\n onChange={this.onChangeRubricType}\n >\n {\n rubricOptions.length > 1 && rubricOptions.map((availableRubric, i)=>\n <FormControlLabel\n key={i}\n value={availableRubric}\n control={<Radio checked={rubricType === availableRubric} />}\n label={rubricLabels[availableRubric]}\n classes={{ root: classes.root }}\n />\n )\n }\n </RadioGroup>\n\n {isRubricTypeAvailable && rubricTag}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles(styles)(Main);\n"],"file":"main.js"}