@pie-element/charting 10.1.0 → 10.2.0-mui-update.0

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.
@@ -1,88 +1,50 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
4
  Object.defineProperty(exports, "__esModule", {
8
5
  value: true
9
6
  });
10
- exports["default"] = exports.ChartingConfig = void 0;
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
7
+ exports.default = exports.ChartingConfig = void 0;
24
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
9
  var React = _interopRequireWildcard(require("react"));
27
-
28
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _styles = require("@material-ui/core/styles");
31
-
11
+ var _styles = require("@mui/material/styles");
32
12
  var _charting = require("@pie-lib/charting");
33
-
34
13
  var _configUi = require("@pie-lib/config-ui");
35
-
36
- var _Checkbox = _interopRequireDefault(require("@material-ui/core/Checkbox"));
37
-
14
+ var _Checkbox = _interopRequireDefault(require("@mui/material/Checkbox"));
38
15
  var _renderUi = require("@pie-lib/render-ui");
39
-
40
- var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
41
-
42
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
46
- 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; }
47
-
48
- 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; }
49
-
50
- 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); }; }
51
-
52
- 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; } }
53
-
54
- var styles = function styles(theme) {
55
- return {
56
- container: {
57
- marginBottom: theme.spacing.unit * 2.5,
58
- display: 'flex',
59
- flex: 1
60
- },
61
- title: {
62
- marginBottom: theme.spacing.unit
63
- },
64
- column: {
65
- flex: 1
66
- },
67
- customColor: {
68
- color: "".concat(_renderUi.color.tertiary(), " !important")
69
- }
70
- };
71
- };
72
-
73
- var restoreCorrectAnswer = function restoreCorrectAnswer(correctAnswer, data) {
16
+ var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
17
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
+ const Container = (0, _styles.styled)('div')(({
19
+ theme
20
+ }) => ({
21
+ marginBottom: theme.spacing(2.5),
22
+ display: 'flex',
23
+ flex: 1
24
+ }));
25
+ const Title = (0, _styles.styled)('div')(({
26
+ theme
27
+ }) => ({
28
+ marginBottom: theme.spacing(1)
29
+ }));
30
+ const Column = (0, _styles.styled)('div')({
31
+ flex: 1
32
+ });
33
+ const CustomColorCheckbox = (0, _styles.styled)(_Checkbox.default)({
34
+ color: `${_renderUi.color.tertiary()} !important`
35
+ });
36
+ const restoreCorrectAnswer = (correctAnswer, data) => {
74
37
  if (!correctAnswer) {
75
38
  return data;
76
39
  }
77
-
78
- var correctResponseDefinition = [];
79
- (data || []).forEach(function (category, currentIndex) {
80
- var _correctAnswer$curren, _correctAnswer$curren2;
81
-
82
- var editable = category.editable,
83
- interactive = category.interactive;
84
- var label = editable && (_correctAnswer$curren = correctAnswer[currentIndex]) !== null && _correctAnswer$curren !== void 0 && _correctAnswer$curren.label ? correctAnswer[currentIndex].label : category.label;
85
- var value = interactive && (_correctAnswer$curren2 = correctAnswer[currentIndex]) !== null && _correctAnswer$curren2 !== void 0 && _correctAnswer$curren2.value ? correctAnswer[currentIndex].value : category.value;
40
+ let correctResponseDefinition = [];
41
+ (data || []).forEach((category, currentIndex) => {
42
+ const {
43
+ editable,
44
+ interactive
45
+ } = category;
46
+ const label = editable && correctAnswer[currentIndex]?.label ? correctAnswer[currentIndex].label : category.label;
47
+ const value = interactive && correctAnswer[currentIndex]?.value ? correctAnswer[currentIndex].value : category.value;
86
48
  correctResponseDefinition[currentIndex] = {
87
49
  label: label,
88
50
  value: value,
@@ -92,172 +54,139 @@ var restoreCorrectAnswer = function restoreCorrectAnswer(correctAnswer, data) {
92
54
  });
93
55
  return correctResponseDefinition;
94
56
  };
95
-
96
- var ChartingConfig = /*#__PURE__*/function (_React$Component) {
97
- (0, _inherits2["default"])(ChartingConfig, _React$Component);
98
-
99
- var _super = _createSuper(ChartingConfig);
100
-
101
- function ChartingConfig(props) {
102
- var _this;
103
-
104
- (0, _classCallCheck2["default"])(this, ChartingConfig);
105
- _this = _super.call(this, props);
106
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleAlertDialog", function (open, callback) {
107
- return _this.setState({
108
- dialog: {
109
- open: open
110
- }
111
- }, callback);
112
- });
113
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeData", function (data) {
114
- return _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.model), {}, {
115
- data: data
116
- }));
117
- });
118
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeAddRemoveEnabled", function (value) {
119
- var model = _this.props.model;
120
- var correctAnswer = restoreCorrectAnswer(model.correctAnswer.data, model.data);
121
-
57
+ class ChartingConfig extends React.Component {
58
+ constructor(props) {
59
+ super(props);
60
+ (0, _defineProperty2.default)(this, "handleAlertDialog", (open, callback) => this.setState({
61
+ dialog: {
62
+ open
63
+ }
64
+ }, callback));
65
+ (0, _defineProperty2.default)(this, "changeData", data => this.props.onChange({
66
+ ...this.props.model,
67
+ data
68
+ }));
69
+ (0, _defineProperty2.default)(this, "changeAddRemoveEnabled", value => {
70
+ const {
71
+ model
72
+ } = this.props;
73
+ const correctAnswer = restoreCorrectAnswer(model.correctAnswer.data, model.data);
122
74
  if (!value) {
123
- _this.setState({
75
+ this.setState({
124
76
  dialog: {
125
77
  open: true,
126
78
  title: 'Warning',
127
79
  text: 'This change will remove any correct answer categories that are not part of the initial item configuration.',
128
- onConfirm: function onConfirm() {
129
- return _this.handleAlertDialog(false, _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.model), {}, {
130
- addCategoryEnabled: value,
131
- correctAnswer: {
132
- data: correctAnswer
133
- }
134
- })));
135
- },
136
- onClose: function onClose() {
137
- return _this.handleAlertDialog(false);
138
- }
80
+ onConfirm: () => this.handleAlertDialog(false, this.props.onChange({
81
+ ...this.props.model,
82
+ addCategoryEnabled: value,
83
+ correctAnswer: {
84
+ data: correctAnswer
85
+ }
86
+ })),
87
+ onClose: () => this.handleAlertDialog(false)
139
88
  }
140
89
  });
141
90
  } else {
142
- _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.model), {}, {
91
+ this.props.onChange({
92
+ ...this.props.model,
143
93
  addCategoryEnabled: value
144
- }));
94
+ });
145
95
  }
146
96
  });
147
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeTitle", function (title) {
148
- return _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.model), {}, {
149
- title: title
150
- }));
151
- });
152
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "changeLabel", function (type, label) {
153
- return _this.props.onChange(_objectSpread(_objectSpread({}, _this.props.model), {}, (0, _defineProperty2["default"])({}, type, _objectSpread(_objectSpread({}, _this.props.model[type]), {}, {
154
- label: label
155
- }))));
156
- });
157
- _this.state = {
97
+ (0, _defineProperty2.default)(this, "changeTitle", title => this.props.onChange({
98
+ ...this.props.model,
99
+ title
100
+ }));
101
+ (0, _defineProperty2.default)(this, "changeLabel", (type, label) => this.props.onChange({
102
+ ...this.props.model,
103
+ [type]: {
104
+ ...this.props.model[type],
105
+ label
106
+ }
107
+ }));
108
+ this.state = {
158
109
  dialog: {
159
110
  open: false
160
111
  }
161
112
  };
162
- return _this;
163
113
  }
164
-
165
- (0, _createClass2["default"])(ChartingConfig, [{
166
- key: "render",
167
- value: function render() {
168
- var _this2 = this,
169
- _chartingOptions$addC;
170
-
171
- var _this$props = this.props,
172
- classes = _this$props.classes,
173
- model = _this$props.model,
174
- charts = _this$props.charts,
175
- labelsPlaceholders = _this$props.labelsPlaceholders,
176
- titlePlaceholder = _this$props.titlePlaceholder,
177
- showPixelGuides = _this$props.showPixelGuides,
178
- authorNewCategoryDefaults = _this$props.authorNewCategoryDefaults,
179
- chartingOptions = _this$props.chartingOptions,
180
- _this$props$mathMlOpt = _this$props.mathMlOptions,
181
- mathMlOptions = _this$props$mathMlOpt === void 0 ? {} : _this$props$mathMlOpt,
182
- labelsCharactersLimit = _this$props.labelsCharactersLimit;
183
- var dialog = this.state.dialog;
184
-
185
- var _ref = model || {},
186
- _ref$domain = _ref.domain,
187
- domain = _ref$domain === void 0 ? {} : _ref$domain,
188
- _ref$range = _ref.range,
189
- range = _ref$range === void 0 ? {} : _ref$range;
190
-
191
- return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
192
- className: classes.title
193
- }, "Define Initial Chart Attributes"), /*#__PURE__*/React.createElement("div", {
194
- className: classes.container
195
- }, /*#__PURE__*/React.createElement("div", {
196
- className: classes.column,
197
- key: "graph"
198
- }, /*#__PURE__*/React.createElement(_Typography["default"], {
199
- component: "div",
200
- type: "body1"
201
- }, /*#__PURE__*/React.createElement("span", null, "Use the tools below to set up the chart as it will initially appear to students.")), /*#__PURE__*/React.createElement(_charting.Chart, {
202
- defineChart: true,
203
- chartingOptions: chartingOptions,
204
- showPixelGuides: showPixelGuides,
205
- chartType: model.chartType,
206
- size: model.graph,
207
- domain: domain,
208
- range: range,
209
- charts: charts // index is a property used for setting the correct answer data; it's needed in order to remove categories from other data sets from the same index it was removed from the initial data
210
- ,
211
- data: model.data.map(function (category, index) {
212
- return _objectSpread(_objectSpread({}, category), {}, {
213
- index: index
214
- });
215
- }),
216
- title: model.title,
217
- onDataChange: this.changeData,
218
- onChangeTitle: this.changeTitle,
219
- onChangeLabels: this.changeLabel,
220
- addCategoryEnabled: true,
221
- changeInteractiveEnabled: model.changeInteractiveEnabled,
222
- changeEditableEnabled: model.changeEditableEnabled,
223
- categoryDefaultLabel: authorNewCategoryDefaults === null || authorNewCategoryDefaults === void 0 ? void 0 : authorNewCategoryDefaults.label,
224
- categoryDefaults: authorNewCategoryDefaults,
225
- labelsPlaceholders: labelsPlaceholders,
226
- titlePlaceholder: titlePlaceholder === null || titlePlaceholder === void 0 ? void 0 : titlePlaceholder.label,
227
- mathMlOptions: mathMlOptions,
228
- labelsCharactersLimit: labelsCharactersLimit
229
- }), model.changeAddCategoryEnabled && /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(_Checkbox["default"], {
230
- className: classes.customColor,
231
- checked: model.addCategoryEnabled,
232
- onChange: function onChange(e) {
233
- _this2.changeAddRemoveEnabled(e.target.checked);
234
- }
235
- }), chartingOptions === null || chartingOptions === void 0 ? void 0 : (_chartingOptions$addC = chartingOptions.addCategory) === null || _chartingOptions$addC === void 0 ? void 0 : _chartingOptions$addC.authoringLabel), /*#__PURE__*/React.createElement(_configUi.AlertDialog, {
236
- open: dialog.open,
237
- title: dialog.title,
238
- text: dialog.text,
239
- onClose: dialog.onClose,
240
- onConfirm: dialog.onConfirm
241
- }))));
242
- }
243
- }]);
244
- return ChartingConfig;
245
- }(React.Component);
246
-
114
+ render() {
115
+ const {
116
+ model,
117
+ charts,
118
+ labelsPlaceholders,
119
+ titlePlaceholder,
120
+ showPixelGuides,
121
+ authorNewCategoryDefaults,
122
+ chartingOptions,
123
+ mathMlOptions = {},
124
+ labelsCharactersLimit
125
+ } = this.props;
126
+ const {
127
+ dialog
128
+ } = this.state;
129
+ const {
130
+ domain = {},
131
+ range = {}
132
+ } = model || {};
133
+ return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Title, null, "Define Initial Chart Attributes"), /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement(Column, {
134
+ key: "graph"
135
+ }, /*#__PURE__*/React.createElement(_Typography.default, {
136
+ component: "div",
137
+ type: "body1"
138
+ }, /*#__PURE__*/React.createElement("span", null, "Use the tools below to set up the chart as it will initially appear to students.")), /*#__PURE__*/React.createElement(_charting.Chart, {
139
+ defineChart: true,
140
+ chartingOptions: chartingOptions,
141
+ showPixelGuides: showPixelGuides,
142
+ chartType: model.chartType,
143
+ size: model.graph,
144
+ domain: domain,
145
+ range: range,
146
+ charts: charts
147
+ // index is a property used for setting the correct answer data; it's needed in order to remove categories from other data sets from the same index it was removed from the initial data
148
+ ,
149
+ data: model.data.map((category, index) => ({
150
+ ...category,
151
+ index: index
152
+ })),
153
+ title: model.title,
154
+ onDataChange: this.changeData,
155
+ onChangeTitle: this.changeTitle,
156
+ onChangeLabels: this.changeLabel,
157
+ addCategoryEnabled: true,
158
+ changeInteractiveEnabled: model.changeInteractiveEnabled,
159
+ changeEditableEnabled: model.changeEditableEnabled,
160
+ categoryDefaultLabel: authorNewCategoryDefaults?.label,
161
+ categoryDefaults: authorNewCategoryDefaults,
162
+ labelsPlaceholders: labelsPlaceholders,
163
+ titlePlaceholder: titlePlaceholder?.label,
164
+ mathMlOptions: mathMlOptions,
165
+ labelsCharactersLimit: labelsCharactersLimit
166
+ }), model.changeAddCategoryEnabled && /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(CustomColorCheckbox, {
167
+ checked: model.addCategoryEnabled,
168
+ onChange: e => {
169
+ this.changeAddRemoveEnabled(e.target.checked);
170
+ }
171
+ }), chartingOptions?.addCategory?.authoringLabel), /*#__PURE__*/React.createElement(_configUi.AlertDialog, {
172
+ open: dialog.open,
173
+ title: dialog.title,
174
+ text: dialog.text,
175
+ onClose: dialog.onClose,
176
+ onConfirm: dialog.onConfirm
177
+ }))));
178
+ }
179
+ }
247
180
  exports.ChartingConfig = ChartingConfig;
248
- (0, _defineProperty2["default"])(ChartingConfig, "propTypes", {
249
- classes: _propTypes["default"].object.isRequired,
250
- model: _propTypes["default"].object.isRequired,
251
- onChange: _propTypes["default"].func.isRequired,
252
- charts: _propTypes["default"].array,
253
- labelsPlaceholders: _propTypes["default"].object,
254
- titlePlaceholder: _propTypes["default"].object,
255
- showPixelGuides: _propTypes["default"].bool,
256
- authorNewCategoryDefaults: _propTypes["default"].object,
257
- chartingOptions: _propTypes["default"].object
181
+ (0, _defineProperty2.default)(ChartingConfig, "propTypes", {
182
+ model: _propTypes.default.object.isRequired,
183
+ onChange: _propTypes.default.func.isRequired,
184
+ charts: _propTypes.default.array,
185
+ labelsPlaceholders: _propTypes.default.object,
186
+ titlePlaceholder: _propTypes.default.object,
187
+ showPixelGuides: _propTypes.default.bool,
188
+ authorNewCategoryDefaults: _propTypes.default.object,
189
+ chartingOptions: _propTypes.default.object
258
190
  });
259
-
260
- var _default = (0, _styles.withStyles)(styles)(ChartingConfig);
261
-
262
- exports["default"] = _default;
263
- //# sourceMappingURL=charting-config.js.map
191
+ var _default = exports.default = ChartingConfig;
192
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3N0eWxlcyIsIl9jaGFydGluZyIsIl9jb25maWdVaSIsIl9DaGVja2JveCIsIl9yZW5kZXJVaSIsIl9UeXBvZ3JhcGh5IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiZGVmYXVsdCIsImhhcyIsImdldCIsInNldCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiQ29udGFpbmVyIiwic3R5bGVkIiwidGhlbWUiLCJtYXJnaW5Cb3R0b20iLCJzcGFjaW5nIiwiZGlzcGxheSIsImZsZXgiLCJUaXRsZSIsIkNvbHVtbiIsIkN1c3RvbUNvbG9yQ2hlY2tib3giLCJDaGVja2JveCIsImNvbG9yIiwidGVydGlhcnkiLCJyZXN0b3JlQ29ycmVjdEFuc3dlciIsImNvcnJlY3RBbnN3ZXIiLCJkYXRhIiwiY29ycmVjdFJlc3BvbnNlRGVmaW5pdGlvbiIsImZvckVhY2giLCJjYXRlZ29yeSIsImN1cnJlbnRJbmRleCIsImVkaXRhYmxlIiwiaW50ZXJhY3RpdmUiLCJsYWJlbCIsInZhbHVlIiwiQ2hhcnRpbmdDb25maWciLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsInByb3BzIiwiX2RlZmluZVByb3BlcnR5MiIsIm9wZW4iLCJjYWxsYmFjayIsInNldFN0YXRlIiwiZGlhbG9nIiwib25DaGFuZ2UiLCJtb2RlbCIsInRpdGxlIiwidGV4dCIsIm9uQ29uZmlybSIsImhhbmRsZUFsZXJ0RGlhbG9nIiwiYWRkQ2F0ZWdvcnlFbmFibGVkIiwib25DbG9zZSIsInR5cGUiLCJzdGF0ZSIsInJlbmRlciIsImNoYXJ0cyIsImxhYmVsc1BsYWNlaG9sZGVycyIsInRpdGxlUGxhY2Vob2xkZXIiLCJzaG93UGl4ZWxHdWlkZXMiLCJhdXRob3JOZXdDYXRlZ29yeURlZmF1bHRzIiwiY2hhcnRpbmdPcHRpb25zIiwibWF0aE1sT3B0aW9ucyIsImxhYmVsc0NoYXJhY3RlcnNMaW1pdCIsImRvbWFpbiIsInJhbmdlIiwiY3JlYXRlRWxlbWVudCIsImtleSIsImNvbXBvbmVudCIsIkNoYXJ0IiwiZGVmaW5lQ2hhcnQiLCJjaGFydFR5cGUiLCJzaXplIiwiZ3JhcGgiLCJtYXAiLCJpbmRleCIsIm9uRGF0YUNoYW5nZSIsImNoYW5nZURhdGEiLCJvbkNoYW5nZVRpdGxlIiwiY2hhbmdlVGl0bGUiLCJvbkNoYW5nZUxhYmVscyIsImNoYW5nZUxhYmVsIiwiY2hhbmdlSW50ZXJhY3RpdmVFbmFibGVkIiwiY2hhbmdlRWRpdGFibGVFbmFibGVkIiwiY2F0ZWdvcnlEZWZhdWx0TGFiZWwiLCJjYXRlZ29yeURlZmF1bHRzIiwiY2hhbmdlQWRkQ2F0ZWdvcnlFbmFibGVkIiwiY2hlY2tlZCIsImNoYW5nZUFkZFJlbW92ZUVuYWJsZWQiLCJ0YXJnZXQiLCJhZGRDYXRlZ29yeSIsImF1dGhvcmluZ0xhYmVsIiwiQWxlcnREaWFsb2ciLCJleHBvcnRzIiwiUHJvcFR5cGVzIiwib2JqZWN0IiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJhcnJheSIsImJvb2wiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGFydGluZy1jb25maWcuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tICdAbXVpL21hdGVyaWFsL3N0eWxlcyc7XG5pbXBvcnQgeyBDaGFydCB9IGZyb20gJ0BwaWUtbGliL2NoYXJ0aW5nJztcbmltcG9ydCB7IEFsZXJ0RGlhbG9nIH0gZnJvbSAnQHBpZS1saWIvY29uZmlnLXVpJztcbmltcG9ydCBDaGVja2JveCBmcm9tICdAbXVpL21hdGVyaWFsL0NoZWNrYm94JztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcblxuaW1wb3J0IFR5cG9ncmFwaHkgZnJvbSAnQG11aS9tYXRlcmlhbC9UeXBvZ3JhcGh5JztcblxuY29uc3QgQ29udGFpbmVyID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xuICBtYXJnaW5Cb3R0b206IHRoZW1lLnNwYWNpbmcoMi41KSxcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBmbGV4OiAxLFxufSkpO1xuXG5jb25zdCBUaXRsZSA9IHN0eWxlZCgnZGl2JykoKHsgdGhlbWUgfSkgPT4gKHtcbiAgbWFyZ2luQm90dG9tOiB0aGVtZS5zcGFjaW5nKDEpLFxufSkpO1xuXG5jb25zdCBDb2x1bW4gPSBzdHlsZWQoJ2RpdicpKHtcbiAgZmxleDogMSxcbn0pO1xuXG5jb25zdCBDdXN0b21Db2xvckNoZWNrYm94ID0gc3R5bGVkKENoZWNrYm94KSh7XG4gIGNvbG9yOiBgJHtjb2xvci50ZXJ0aWFyeSgpfSAhaW1wb3J0YW50YCxcbn0pO1xuXG5jb25zdCByZXN0b3JlQ29ycmVjdEFuc3dlciA9IChjb3JyZWN0QW5zd2VyLCBkYXRhKSA9PiB7XG4gIGlmICghY29ycmVjdEFuc3dlcikge1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgbGV0IGNvcnJlY3RSZXNwb25zZURlZmluaXRpb24gPSBbXTtcblxuICAoZGF0YSB8fCBbXSkuZm9yRWFjaCgoY2F0ZWdvcnksIGN1cnJlbnRJbmRleCkgPT4ge1xuICAgIGNvbnN0IHsgZWRpdGFibGUsIGludGVyYWN0aXZlIH0gPSBjYXRlZ29yeTtcblxuICAgIGNvbnN0IGxhYmVsID0gZWRpdGFibGUgJiYgY29ycmVjdEFuc3dlcltjdXJyZW50SW5kZXhdPy5sYWJlbCA/IGNvcnJlY3RBbnN3ZXJbY3VycmVudEluZGV4XS5sYWJlbCA6IGNhdGVnb3J5LmxhYmVsO1xuXG4gICAgY29uc3QgdmFsdWUgPVxuICAgICAgaW50ZXJhY3RpdmUgJiYgY29ycmVjdEFuc3dlcltjdXJyZW50SW5kZXhdPy52YWx1ZSA/IGNvcnJlY3RBbnN3ZXJbY3VycmVudEluZGV4XS52YWx1ZSA6IGNhdGVnb3J5LnZhbHVlO1xuXG4gICAgY29ycmVjdFJlc3BvbnNlRGVmaW5pdGlvbltjdXJyZW50SW5kZXhdID0ge1xuICAgICAgbGFiZWw6IGxhYmVsLFxuICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgZWRpdGFibGU6IGNhdGVnb3J5LmVkaXRhYmxlLFxuICAgICAgaW50ZXJhY3RpdmU6IGNhdGVnb3J5LmludGVyYWN0aXZlLFxuICAgIH07XG4gIH0pO1xuXG4gIHJldHVybiBjb3JyZWN0UmVzcG9uc2VEZWZpbml0aW9uO1xufTtcblxuZXhwb3J0IGNsYXNzIENoYXJ0aW5nQ29uZmlnIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBtb2RlbDogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIGNoYXJ0czogUHJvcFR5cGVzLmFycmF5LFxuICAgIGxhYmVsc1BsYWNlaG9sZGVyczogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB0aXRsZVBsYWNlaG9sZGVyOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIHNob3dQaXhlbEd1aWRlczogUHJvcFR5cGVzLmJvb2wsXG4gICAgYXV0aG9yTmV3Q2F0ZWdvcnlEZWZhdWx0czogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBjaGFydGluZ09wdGlvbnM6IFByb3BUeXBlcy5vYmplY3QsXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgIGRpYWxvZzoge1xuICAgICAgICBvcGVuOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIGhhbmRsZUFsZXJ0RGlhbG9nID0gKG9wZW4sIGNhbGxiYWNrKSA9PlxuICAgIHRoaXMuc2V0U3RhdGUoXG4gICAgICB7XG4gICAgICAgIGRpYWxvZzogeyBvcGVuIH0sXG4gICAgICB9LFxuICAgICAgY2FsbGJhY2ssXG4gICAgKTtcblxuICBjaGFuZ2VEYXRhID0gKGRhdGEpID0+IHRoaXMucHJvcHMub25DaGFuZ2UoeyAuLi50aGlzLnByb3BzLm1vZGVsLCBkYXRhIH0pO1xuXG4gIGNoYW5nZUFkZFJlbW92ZUVuYWJsZWQgPSAodmFsdWUpID0+IHtcbiAgICBjb25zdCB7IG1vZGVsIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IGNvcnJlY3RBbnN3ZXIgPSByZXN0b3JlQ29ycmVjdEFuc3dlcihtb2RlbC5jb3JyZWN0QW5zd2VyLmRhdGEsIG1vZGVsLmRhdGEpO1xuXG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGRpYWxvZzoge1xuICAgICAgICAgIG9wZW46IHRydWUsXG4gICAgICAgICAgdGl0bGU6ICdXYXJuaW5nJyxcbiAgICAgICAgICB0ZXh0OiAnVGhpcyBjaGFuZ2Ugd2lsbCByZW1vdmUgYW55IGNvcnJlY3QgYW5zd2VyIGNhdGVnb3JpZXMgdGhhdCBhcmUgbm90IHBhcnQgb2YgdGhlIGluaXRpYWwgaXRlbSBjb25maWd1cmF0aW9uLicsXG4gICAgICAgICAgb25Db25maXJtOiAoKSA9PlxuICAgICAgICAgICAgdGhpcy5oYW5kbGVBbGVydERpYWxvZyhcbiAgICAgICAgICAgICAgZmFsc2UsXG4gICAgICAgICAgICAgIHRoaXMucHJvcHMub25DaGFuZ2Uoe1xuICAgICAgICAgICAgICAgIC4uLnRoaXMucHJvcHMubW9kZWwsXG4gICAgICAgICAgICAgICAgYWRkQ2F0ZWdvcnlFbmFibGVkOiB2YWx1ZSxcbiAgICAgICAgICAgICAgICBjb3JyZWN0QW5zd2VyOiB7IGRhdGE6IGNvcnJlY3RBbnN3ZXIgfSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIG9uQ2xvc2U6ICgpID0+IHRoaXMuaGFuZGxlQWxlcnREaWFsb2coZmFsc2UpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJvcHMub25DaGFuZ2UoeyAuLi50aGlzLnByb3BzLm1vZGVsLCBhZGRDYXRlZ29yeUVuYWJsZWQ6IHZhbHVlIH0pO1xuICAgIH1cbiAgfTtcblxuICBjaGFuZ2VUaXRsZSA9ICh0aXRsZSkgPT4gdGhpcy5wcm9wcy5vbkNoYW5nZSh7IC4uLnRoaXMucHJvcHMubW9kZWwsIHRpdGxlIH0pO1xuXG4gIGNoYW5nZUxhYmVsID0gKHR5cGUsIGxhYmVsKSA9PlxuICAgIHRoaXMucHJvcHMub25DaGFuZ2Uoe1xuICAgICAgLi4udGhpcy5wcm9wcy5tb2RlbCxcbiAgICAgIFt0eXBlXToge1xuICAgICAgICAuLi50aGlzLnByb3BzLm1vZGVsW3R5cGVdLFxuICAgICAgICBsYWJlbCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIG1vZGVsLFxuICAgICAgY2hhcnRzLFxuICAgICAgbGFiZWxzUGxhY2Vob2xkZXJzLFxuICAgICAgdGl0bGVQbGFjZWhvbGRlcixcbiAgICAgIHNob3dQaXhlbEd1aWRlcyxcbiAgICAgIGF1dGhvck5ld0NhdGVnb3J5RGVmYXVsdHMsXG4gICAgICBjaGFydGluZ09wdGlvbnMsXG4gICAgICBtYXRoTWxPcHRpb25zID0ge30sXG4gICAgICBsYWJlbHNDaGFyYWN0ZXJzTGltaXQsXG4gICAgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyBkaWFsb2cgfSA9IHRoaXMuc3RhdGU7XG4gICAgY29uc3QgeyBkb21haW4gPSB7fSwgcmFuZ2UgPSB7fSB9ID0gbW9kZWwgfHwge307XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdj5cbiAgICAgICAgPFRpdGxlPkRlZmluZSBJbml0aWFsIENoYXJ0IEF0dHJpYnV0ZXM8L1RpdGxlPlxuICAgICAgICA8Q29udGFpbmVyPlxuICAgICAgICAgIDxDb2x1bW4ga2V5PVwiZ3JhcGhcIj5cbiAgICAgICAgICAgIDxUeXBvZ3JhcGh5IGNvbXBvbmVudD1cImRpdlwiIHR5cGU9XCJib2R5MVwiPlxuICAgICAgICAgICAgICA8c3Bhbj5Vc2UgdGhlIHRvb2xzIGJlbG93IHRvIHNldCB1cCB0aGUgY2hhcnQgYXMgaXQgd2lsbCBpbml0aWFsbHkgYXBwZWFyIHRvIHN0dWRlbnRzLjwvc3Bhbj5cbiAgICAgICAgICAgIDwvVHlwb2dyYXBoeT5cblxuICAgICAgICAgICAgPENoYXJ0XG4gICAgICAgICAgICAgIGRlZmluZUNoYXJ0PXt0cnVlfVxuICAgICAgICAgICAgICBjaGFydGluZ09wdGlvbnM9e2NoYXJ0aW5nT3B0aW9uc31cbiAgICAgICAgICAgICAgc2hvd1BpeGVsR3VpZGVzPXtzaG93UGl4ZWxHdWlkZXN9XG4gICAgICAgICAgICAgIGNoYXJ0VHlwZT17bW9kZWwuY2hhcnRUeXBlfVxuICAgICAgICAgICAgICBzaXplPXttb2RlbC5ncmFwaH1cbiAgICAgICAgICAgICAgZG9tYWluPXtkb21haW59XG4gICAgICAgICAgICAgIHJhbmdlPXtyYW5nZX1cbiAgICAgICAgICAgICAgY2hhcnRzPXtjaGFydHN9XG4gICAgICAgICAgICAgIC8vIGluZGV4IGlzIGEgcHJvcGVydHkgdXNlZCBmb3Igc2V0dGluZyB0aGUgY29ycmVjdCBhbnN3ZXIgZGF0YTsgaXQncyBuZWVkZWQgaW4gb3JkZXIgdG8gcmVtb3ZlIGNhdGVnb3JpZXMgZnJvbSBvdGhlciBkYXRhIHNldHMgZnJvbSB0aGUgc2FtZSBpbmRleCBpdCB3YXMgcmVtb3ZlZCBmcm9tIHRoZSBpbml0aWFsIGRhdGFcbiAgICAgICAgICAgICAgZGF0YT17bW9kZWwuZGF0YS5tYXAoKGNhdGVnb3J5LCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgICAgICAuLi5jYXRlZ29yeSxcbiAgICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgICAgICAgIH0pKX1cbiAgICAgICAgICAgICAgdGl0bGU9e21vZGVsLnRpdGxlfVxuICAgICAgICAgICAgICBvbkRhdGFDaGFuZ2U9e3RoaXMuY2hhbmdlRGF0YX1cbiAgICAgICAgICAgICAgb25DaGFuZ2VUaXRsZT17dGhpcy5jaGFuZ2VUaXRsZX1cbiAgICAgICAgICAgICAgb25DaGFuZ2VMYWJlbHM9e3RoaXMuY2hhbmdlTGFiZWx9XG4gICAgICAgICAgICAgIGFkZENhdGVnb3J5RW5hYmxlZD17dHJ1ZX1cbiAgICAgICAgICAgICAgY2hhbmdlSW50ZXJhY3RpdmVFbmFibGVkPXttb2RlbC5jaGFuZ2VJbnRlcmFjdGl2ZUVuYWJsZWR9XG4gICAgICAgICAgICAgIGNoYW5nZUVkaXRhYmxlRW5hYmxlZD17bW9kZWwuY2hhbmdlRWRpdGFibGVFbmFibGVkfVxuICAgICAgICAgICAgICBjYXRlZ29yeURlZmF1bHRMYWJlbD17YXV0aG9yTmV3Q2F0ZWdvcnlEZWZhdWx0cz8ubGFiZWx9XG4gICAgICAgICAgICAgIGNhdGVnb3J5RGVmYXVsdHM9e2F1dGhvck5ld0NhdGVnb3J5RGVmYXVsdHN9XG4gICAgICAgICAgICAgIGxhYmVsc1BsYWNlaG9sZGVycz17bGFiZWxzUGxhY2Vob2xkZXJzfVxuICAgICAgICAgICAgICB0aXRsZVBsYWNlaG9sZGVyPXt0aXRsZVBsYWNlaG9sZGVyPy5sYWJlbH1cbiAgICAgICAgICAgICAgbWF0aE1sT3B0aW9ucz17bWF0aE1sT3B0aW9uc31cbiAgICAgICAgICAgICAgbGFiZWxzQ2hhcmFjdGVyc0xpbWl0PXtsYWJlbHNDaGFyYWN0ZXJzTGltaXR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge21vZGVsLmNoYW5nZUFkZENhdGVnb3J5RW5hYmxlZCAmJiAoXG4gICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPEN1c3RvbUNvbG9yQ2hlY2tib3hcbiAgICAgICAgICAgICAgICAgIGNoZWNrZWQ9e21vZGVsLmFkZENhdGVnb3J5RW5hYmxlZH1cbiAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZUFkZFJlbW92ZUVuYWJsZWQoZS50YXJnZXQuY2hlY2tlZCk7XG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAge2NoYXJ0aW5nT3B0aW9ucz8uYWRkQ2F0ZWdvcnk/LmF1dGhvcmluZ0xhYmVsfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8QWxlcnREaWFsb2dcbiAgICAgICAgICAgICAgb3Blbj17ZGlhbG9nLm9wZW59XG4gICAgICAgICAgICAgIHRpdGxlPXtkaWFsb2cudGl0bGV9XG4gICAgICAgICAgICAgIHRleHQ9e2RpYWxvZy50ZXh0fVxuICAgICAgICAgICAgICBvbkNsb3NlPXtkaWFsb2cub25DbG9zZX1cbiAgICAgICAgICAgICAgb25Db25maXJtPXtkaWFsb2cub25Db25maXJtfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0NvbHVtbj5cbiAgICAgICAgPC9Db250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENoYXJ0aW5nQ29uZmlnO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE9BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFNBQUEsR0FBQUosc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFPLFNBQUEsR0FBQVAsT0FBQTtBQUVBLElBQUFRLFdBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUFrRCxTQUFBRCx3QkFBQVUsQ0FBQSxFQUFBQyxDQUFBLDZCQUFB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
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/charting-config.jsx"],"names":["styles","theme","container","marginBottom","spacing","unit","display","flex","title","column","customColor","color","tertiary","restoreCorrectAnswer","correctAnswer","data","correctResponseDefinition","forEach","category","currentIndex","editable","interactive","label","value","ChartingConfig","props","open","callback","setState","dialog","onChange","model","text","onConfirm","handleAlertDialog","addCategoryEnabled","onClose","type","state","classes","charts","labelsPlaceholders","titlePlaceholder","showPixelGuides","authorNewCategoryDefaults","chartingOptions","mathMlOptions","labelsCharactersLimit","domain","range","chartType","graph","map","index","changeData","changeTitle","changeLabel","changeInteractiveEnabled","changeEditableEnabled","changeAddCategoryEnabled","e","changeAddRemoveEnabled","target","checked","addCategory","authoringLabel","React","Component","PropTypes","object","isRequired","func","array","bool"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Chart } from '@pie-lib/charting';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { color } from '@pie-lib/render-ui';\n\nimport Typography from '@material-ui/core/Typography';\n\nconst styles = (theme) => ({\n container: {\n marginBottom: theme.spacing.unit * 2.5,\n display: 'flex',\n flex: 1,\n },\n title: {\n marginBottom: theme.spacing.unit,\n },\n column: {\n flex: 1,\n },\n customColor: {\n color: `${color.tertiary()} !important`,\n },\n});\n\nconst restoreCorrectAnswer = (correctAnswer, data) => {\n if (!correctAnswer) {\n return data;\n }\n\n let correctResponseDefinition = [];\n\n (data || []).forEach((category, currentIndex) => {\n const { editable, interactive } = category;\n\n const label = editable && correctAnswer[currentIndex]?.label ? correctAnswer[currentIndex].label : category.label;\n\n const value =\n interactive && correctAnswer[currentIndex]?.value ? correctAnswer[currentIndex].value : category.value;\n\n correctResponseDefinition[currentIndex] = {\n label: label,\n value: value,\n editable: category.editable,\n interactive: category.interactive,\n };\n });\n\n return correctResponseDefinition;\n};\n\nexport class ChartingConfig extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n charts: PropTypes.array,\n labelsPlaceholders: PropTypes.object,\n titlePlaceholder: PropTypes.object,\n showPixelGuides: PropTypes.bool,\n authorNewCategoryDefaults: PropTypes.object,\n chartingOptions: PropTypes.object,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n };\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n changeData = (data) => this.props.onChange({ ...this.props.model, data });\n\n changeAddRemoveEnabled = (value) => {\n const { model } = this.props;\n const correctAnswer = restoreCorrectAnswer(model.correctAnswer.data, model.data);\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This change will remove any correct answer categories that are not part of the initial item configuration.',\n onConfirm: () =>\n this.handleAlertDialog(\n false,\n this.props.onChange({\n ...this.props.model,\n addCategoryEnabled: value,\n correctAnswer: { data: correctAnswer },\n }),\n ),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n this.props.onChange({ ...this.props.model, addCategoryEnabled: value });\n }\n };\n\n changeTitle = (title) => this.props.onChange({ ...this.props.model, title });\n\n changeLabel = (type, label) =>\n this.props.onChange({\n ...this.props.model,\n [type]: {\n ...this.props.model[type],\n label,\n },\n });\n\n render() {\n const {\n classes,\n model,\n charts,\n labelsPlaceholders,\n titlePlaceholder,\n showPixelGuides,\n authorNewCategoryDefaults,\n chartingOptions,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const { dialog } = this.state;\n const { domain = {}, range = {} } = model || {};\n\n return (\n <div>\n <div className={classes.title}>Define Initial Chart Attributes</div>\n <div className={classes.container}>\n <div className={classes.column} key=\"graph\">\n <Typography component=\"div\" type=\"body1\">\n <span>Use the tools below to set up the chart as it will initially appear to students.</span>\n </Typography>\n\n <Chart\n defineChart={true}\n chartingOptions={chartingOptions}\n showPixelGuides={showPixelGuides}\n chartType={model.chartType}\n size={model.graph}\n domain={domain}\n range={range}\n charts={charts}\n // index is a property used for setting the correct answer data; it's needed in order to remove categories from other data sets from the same index it was removed from the initial data\n data={model.data.map((category, index) => ({\n ...category,\n index: index,\n }))}\n title={model.title}\n onDataChange={this.changeData}\n onChangeTitle={this.changeTitle}\n onChangeLabels={this.changeLabel}\n addCategoryEnabled={true}\n changeInteractiveEnabled={model.changeInteractiveEnabled}\n changeEditableEnabled={model.changeEditableEnabled}\n categoryDefaultLabel={authorNewCategoryDefaults?.label}\n categoryDefaults={authorNewCategoryDefaults}\n labelsPlaceholders={labelsPlaceholders}\n titlePlaceholder={titlePlaceholder?.label}\n mathMlOptions={mathMlOptions}\n labelsCharactersLimit={labelsCharactersLimit}\n />\n {model.changeAddCategoryEnabled && (\n <div>\n <Checkbox\n className={classes.customColor}\n checked={model.addCategoryEnabled}\n onChange={(e) => {\n this.changeAddRemoveEnabled(e.target.checked);\n }}\n />\n {chartingOptions?.addCategory?.authoringLabel}\n </div>\n )}\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </div>\n </div>\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(ChartingConfig);\n"],"file":"charting-config.js"}
1
+ {"version":3,"file":"charting-config.js","names":["React","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_styles","_charting","_configUi","_Checkbox","_renderUi","_Typography","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Container","styled","theme","marginBottom","spacing","display","flex","Title","Column","CustomColorCheckbox","Checkbox","color","tertiary","restoreCorrectAnswer","correctAnswer","data","correctResponseDefinition","forEach","category","currentIndex","editable","interactive","label","value","ChartingConfig","Component","constructor","props","_defineProperty2","open","callback","setState","dialog","onChange","model","title","text","onConfirm","handleAlertDialog","addCategoryEnabled","onClose","type","state","render","charts","labelsPlaceholders","titlePlaceholder","showPixelGuides","authorNewCategoryDefaults","chartingOptions","mathMlOptions","labelsCharactersLimit","domain","range","createElement","key","component","Chart","defineChart","chartType","size","graph","map","index","onDataChange","changeData","onChangeTitle","changeTitle","onChangeLabels","changeLabel","changeInteractiveEnabled","changeEditableEnabled","categoryDefaultLabel","categoryDefaults","changeAddCategoryEnabled","checked","changeAddRemoveEnabled","target","addCategory","authoringLabel","AlertDialog","exports","PropTypes","object","isRequired","func","array","bool","_default"],"sources":["../src/charting-config.jsx"],"sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { Chart } from '@pie-lib/charting';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport Checkbox from '@mui/material/Checkbox';\nimport { color } from '@pie-lib/render-ui';\n\nimport Typography from '@mui/material/Typography';\n\nconst Container = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(2.5),\n display: 'flex',\n flex: 1,\n}));\n\nconst Title = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(1),\n}));\n\nconst Column = styled('div')({\n flex: 1,\n});\n\nconst CustomColorCheckbox = styled(Checkbox)({\n color: `${color.tertiary()} !important`,\n});\n\nconst restoreCorrectAnswer = (correctAnswer, data) => {\n if (!correctAnswer) {\n return data;\n }\n\n let correctResponseDefinition = [];\n\n (data || []).forEach((category, currentIndex) => {\n const { editable, interactive } = category;\n\n const label = editable && correctAnswer[currentIndex]?.label ? correctAnswer[currentIndex].label : category.label;\n\n const value =\n interactive && correctAnswer[currentIndex]?.value ? correctAnswer[currentIndex].value : category.value;\n\n correctResponseDefinition[currentIndex] = {\n label: label,\n value: value,\n editable: category.editable,\n interactive: category.interactive,\n };\n });\n\n return correctResponseDefinition;\n};\n\nexport class ChartingConfig extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n charts: PropTypes.array,\n labelsPlaceholders: PropTypes.object,\n titlePlaceholder: PropTypes.object,\n showPixelGuides: PropTypes.bool,\n authorNewCategoryDefaults: PropTypes.object,\n chartingOptions: PropTypes.object,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dialog: {\n open: false,\n },\n };\n }\n\n handleAlertDialog = (open, callback) =>\n this.setState(\n {\n dialog: { open },\n },\n callback,\n );\n\n changeData = (data) => this.props.onChange({ ...this.props.model, data });\n\n changeAddRemoveEnabled = (value) => {\n const { model } = this.props;\n const correctAnswer = restoreCorrectAnswer(model.correctAnswer.data, model.data);\n\n if (!value) {\n this.setState({\n dialog: {\n open: true,\n title: 'Warning',\n text: 'This change will remove any correct answer categories that are not part of the initial item configuration.',\n onConfirm: () =>\n this.handleAlertDialog(\n false,\n this.props.onChange({\n ...this.props.model,\n addCategoryEnabled: value,\n correctAnswer: { data: correctAnswer },\n }),\n ),\n onClose: () => this.handleAlertDialog(false),\n },\n });\n } else {\n this.props.onChange({ ...this.props.model, addCategoryEnabled: value });\n }\n };\n\n changeTitle = (title) => this.props.onChange({ ...this.props.model, title });\n\n changeLabel = (type, label) =>\n this.props.onChange({\n ...this.props.model,\n [type]: {\n ...this.props.model[type],\n label,\n },\n });\n\n render() {\n const {\n model,\n charts,\n labelsPlaceholders,\n titlePlaceholder,\n showPixelGuides,\n authorNewCategoryDefaults,\n chartingOptions,\n mathMlOptions = {},\n labelsCharactersLimit,\n } = this.props;\n const { dialog } = this.state;\n const { domain = {}, range = {} } = model || {};\n\n return (\n <div>\n <Title>Define Initial Chart Attributes</Title>\n <Container>\n <Column key=\"graph\">\n <Typography component=\"div\" type=\"body1\">\n <span>Use the tools below to set up the chart as it will initially appear to students.</span>\n </Typography>\n\n <Chart\n defineChart={true}\n chartingOptions={chartingOptions}\n showPixelGuides={showPixelGuides}\n chartType={model.chartType}\n size={model.graph}\n domain={domain}\n range={range}\n charts={charts}\n // index is a property used for setting the correct answer data; it's needed in order to remove categories from other data sets from the same index it was removed from the initial data\n data={model.data.map((category, index) => ({\n ...category,\n index: index,\n }))}\n title={model.title}\n onDataChange={this.changeData}\n onChangeTitle={this.changeTitle}\n onChangeLabels={this.changeLabel}\n addCategoryEnabled={true}\n changeInteractiveEnabled={model.changeInteractiveEnabled}\n changeEditableEnabled={model.changeEditableEnabled}\n categoryDefaultLabel={authorNewCategoryDefaults?.label}\n categoryDefaults={authorNewCategoryDefaults}\n labelsPlaceholders={labelsPlaceholders}\n titlePlaceholder={titlePlaceholder?.label}\n mathMlOptions={mathMlOptions}\n labelsCharactersLimit={labelsCharactersLimit}\n />\n {model.changeAddCategoryEnabled && (\n <div>\n <CustomColorCheckbox\n checked={model.addCategoryEnabled}\n onChange={(e) => {\n this.changeAddRemoveEnabled(e.target.checked);\n }}\n />\n {chartingOptions?.addCategory?.authoringLabel}\n </div>\n )}\n <AlertDialog\n open={dialog.open}\n title={dialog.title}\n text={dialog.text}\n onClose={dialog.onClose}\n onConfirm={dialog.onConfirm}\n />\n </Column>\n </Container>\n </div>\n );\n }\n}\n\nexport default ChartingConfig;\n"],"mappings":"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","ignoreList":[]}