@pie-element/charting 10.3.4-next.0 → 11.0.0-beta.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;
191
+ var _default = exports.default = ChartingConfig;
263
192
  //# sourceMappingURL=charting-config.js.map
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBC,IAAAA,SAAS,EAAE;AACTC,MAAAA,YAAY,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,GAD1B;AAETC,MAAAA,OAAO,EAAE,MAFA;AAGTC,MAAAA,IAAI,EAAE;AAHG,KADc;AAMzBC,IAAAA,KAAK,EAAE;AACLL,MAAAA,YAAY,EAAEF,KAAK,CAACG,OAAN,CAAcC;AADvB,KANkB;AASzBI,IAAAA,MAAM,EAAE;AACNF,MAAAA,IAAI,EAAE;AADA,KATiB;AAYzBG,IAAAA,WAAW,EAAE;AACXC,MAAAA,KAAK,YAAKA,gBAAMC,QAAN,EAAL;AADM;AAZY,GAAZ;AAAA,CAAf;;AAiBA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,aAAD,EAAgBC,IAAhB,EAAyB;AACpD,MAAI,CAACD,aAAL,EAAoB;AAClB,WAAOC,IAAP;AACD;;AAED,MAAIC,yBAAyB,GAAG,EAAhC;AAEA,GAACD,IAAI,IAAI,EAAT,EAAaE,OAAb,CAAqB,UAACC,QAAD,EAAWC,YAAX,EAA4B;AAAA;;AAC/C,QAAQC,QAAR,GAAkCF,QAAlC,CAAQE,QAAR;AAAA,QAAkBC,WAAlB,GAAkCH,QAAlC,CAAkBG,WAAlB;AAEA,QAAMC,KAAK,GAAGF,QAAQ,6BAAIN,aAAa,CAACK,YAAD,CAAjB,kDAAI,sBAA6BG,KAAzC,GAAiDR,aAAa,CAACK,YAAD,CAAb,CAA4BG,KAA7E,GAAqFJ,QAAQ,CAACI,KAA5G;AAEA,QAAMC,KAAK,GACTF,WAAW,8BAAIP,aAAa,CAACK,YAAD,CAAjB,mDAAI,uBAA6BI,KAA5C,GAAoDT,aAAa,CAACK,YAAD,CAAb,CAA4BI,KAAhF,GAAwFL,QAAQ,CAACK,KADnG;AAGAP,IAAAA,yBAAyB,CAACG,YAAD,CAAzB,GAA0C;AACxCG,MAAAA,KAAK,EAAEA,KADiC;AAExCC,MAAAA,KAAK,EAAEA,KAFiC;AAGxCH,MAAAA,QAAQ,EAAEF,QAAQ,CAACE,QAHqB;AAIxCC,MAAAA,WAAW,EAAEH,QAAQ,CAACG;AAJkB,KAA1C;AAMD,GAdD;AAgBA,SAAOL,yBAAP;AACD,CAxBD;;IA0BaQ,c;;;;;AAaX,0BAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,0GASC,UAACC,IAAD,EAAOC,QAAP;AAAA,aAClB,MAAKC,QAAL,CACE;AACEC,QAAAA,MAAM,EAAE;AAAEH,UAAAA,IAAI,EAAJA;AAAF;AADV,OADF,EAIEC,QAJF,CADkB;AAAA,KATD;AAAA,mGAiBN,UAACZ,IAAD;AAAA,aAAU,MAAKU,KAAL,CAAWK,QAAX,iCAAyB,MAAKL,KAAL,CAAWM,KAApC;AAA2ChB,QAAAA,IAAI,EAAJA;AAA3C,SAAV;AAAA,KAjBM;AAAA,+GAmBM,UAACQ,KAAD,EAAW;AAClC,UAAQQ,KAAR,GAAkB,MAAKN,KAAvB,CAAQM,KAAR;AACA,UAAMjB,aAAa,GAAGD,oBAAoB,CAACkB,KAAK,CAACjB,aAAN,CAAoBC,IAArB,EAA2BgB,KAAK,CAAChB,IAAjC,CAA1C;;AAEA,UAAI,CAACQ,KAAL,EAAY;AACV,cAAKK,QAAL,CAAc;AACZC,UAAAA,MAAM,EAAE;AACNH,YAAAA,IAAI,EAAE,IADA;AAENlB,YAAAA,KAAK,EAAE,SAFD;AAGNwB,YAAAA,IAAI,EAAE,4GAHA;AAINC,YAAAA,SAAS,EAAE;AAAA,qBACT,MAAKC,iBAAL,CACE,KADF,EAEE,MAAKT,KAAL,CAAWK,QAAX,iCACK,MAAKL,KAAL,CAAWM,KADhB;AAEEI,gBAAAA,kBAAkB,EAAEZ,KAFtB;AAGET,gBAAAA,aAAa,EAAE;AAAEC,kBAAAA,IAAI,EAAED;AAAR;AAHjB,iBAFF,CADS;AAAA,aAJL;AAaNsB,YAAAA,OAAO,EAAE;AAAA,qBAAM,MAAKF,iBAAL,CAAuB,KAAvB,CAAN;AAAA;AAbH;AADI,SAAd;AAiBD,OAlBD,MAkBO;AACL,cAAKT,KAAL,CAAWK,QAAX,iCAAyB,MAAKL,KAAL,CAAWM,KAApC;AAA2CI,UAAAA,kBAAkB,EAAEZ;AAA/D;AACD;AACF,KA5CkB;AAAA,oGA8CL,UAACf,KAAD;AAAA,aAAW,MAAKiB,KAAL,CAAWK,QAAX,iCAAyB,MAAKL,KAAL,CAAWM,KAApC;AAA2CvB,QAAAA,KAAK,EAALA;AAA3C,SAAX;AAAA,KA9CK;AAAA,oGAgDL,UAAC6B,IAAD,EAAOf,KAAP;AAAA,aACZ,MAAKG,KAAL,CAAWK,QAAX,iCACK,MAAKL,KAAL,CAAWM,KADhB,4CAEGM,IAFH,kCAGO,MAAKZ,KAAL,CAAWM,KAAX,CAAiBM,IAAjB,CAHP;AAIIf,QAAAA,KAAK,EAALA;AAJJ,WADY;AAAA,KAhDK;AAEjB,UAAKgB,KAAL,GAAa;AACXT,MAAAA,MAAM,EAAE;AACNH,QAAAA,IAAI,EAAE;AADA;AADG,KAAb;AAFiB;AAOlB;;;;WAkDD,kBAAS;AAAA;AAAA;;AACP,wBAWI,KAAKD,KAXT;AAAA,UACEc,OADF,eACEA,OADF;AAAA,UAEER,KAFF,eAEEA,KAFF;AAAA,UAGES,MAHF,eAGEA,MAHF;AAAA,UAIEC,kBAJF,eAIEA,kBAJF;AAAA,UAKEC,gBALF,eAKEA,gBALF;AAAA,UAMEC,eANF,eAMEA,eANF;AAAA,UAOEC,yBAPF,eAOEA,yBAPF;AAAA,UAQEC,eARF,eAQEA,eARF;AAAA,8CASEC,aATF;AAAA,UASEA,aATF,sCASkB,EATlB;AAAA,UAUEC,qBAVF,eAUEA,qBAVF;AAYA,UAAQlB,MAAR,GAAmB,KAAKS,KAAxB,CAAQT,MAAR;;AACA,iBAAoCE,KAAK,IAAI,EAA7C;AAAA,6BAAQiB,MAAR;AAAA,UAAQA,MAAR,4BAAiB,EAAjB;AAAA,4BAAqBC,KAArB;AAAA,UAAqBA,KAArB,2BAA6B,EAA7B;;AAEA,0BACE,8CACE;AAAK,QAAA,SAAS,EAAEV,OAAO,CAAC/B;AAAxB,2CADF,eAEE;AAAK,QAAA,SAAS,EAAE+B,OAAO,CAACrC;AAAxB,sBACE;AAAK,QAAA,SAAS,EAAEqC,OAAO,CAAC9B,MAAxB;AAAgC,QAAA,GAAG,EAAC;AAApC,sBACE,oBAAC,sBAAD;AAAY,QAAA,SAAS,EAAC,KAAtB;AAA4B,QAAA,IAAI,EAAC;AAAjC,sBACE,qHADF,CADF,eAKE,oBAAC,eAAD;AACE,QAAA,WAAW,EAAE,IADf;AAEE,QAAA,eAAe,EAAEoC,eAFnB;AAGE,QAAA,eAAe,EAAEF,eAHnB;AAIE,QAAA,SAAS,EAAEZ,KAAK,CAACmB,SAJnB;AAKE,QAAA,IAAI,EAAEnB,KAAK,CAACoB,KALd;AAME,QAAA,MAAM,EAAEH,MANV;AAOE,QAAA,KAAK,EAAEC,KAPT;AAQE,QAAA,MAAM,EAAET,MARV,CASE;AATF;AAUE,QAAA,IAAI,EAAET,KAAK,CAAChB,IAAN,CAAWqC,GAAX,CAAe,UAAClC,QAAD,EAAWmC,KAAX;AAAA,iDAChBnC,QADgB;AAEnBmC,YAAAA,KAAK,EAAEA;AAFY;AAAA,SAAf,CAVR;AAcE,QAAA,KAAK,EAAEtB,KAAK,CAACvB,KAdf;AAeE,QAAA,YAAY,EAAE,KAAK8C,UAfrB;AAgBE,QAAA,aAAa,EAAE,KAAKC,WAhBtB;AAiBE,QAAA,cAAc,EAAE,KAAKC,WAjBvB;AAkBE,QAAA,kBAAkB,EAAE,IAlBtB;AAmBE,QAAA,wBAAwB,EAAEzB,KAAK,CAAC0B,wBAnBlC;AAoBE,QAAA,qBAAqB,EAAE1B,KAAK,CAAC2B,qBApB/B;AAqBE,QAAA,oBAAoB,EAAEd,yBAAF,aAAEA,yBAAF,uBAAEA,yBAAyB,CAAEtB,KArBnD;AAsBE,QAAA,gBAAgB,EAAEsB,yBAtBpB;AAuBE,QAAA,kBAAkB,EAAEH,kBAvBtB;AAwBE,QAAA,gBAAgB,EAAEC,gBAAF,aAAEA,gBAAF,uBAAEA,gBAAgB,CAAEpB,KAxBtC;AAyBE,QAAA,aAAa,EAAEwB,aAzBjB;AA0BE,QAAA,qBAAqB,EAAEC;AA1BzB,QALF,EAiCGhB,KAAK,CAAC4B,wBAAN,iBACC,8CACE,oBAAC,oBAAD;AACE,QAAA,SAAS,EAAEpB,OAAO,CAAC7B,WADrB;AAEE,QAAA,OAAO,EAAEqB,KAAK,CAACI,kBAFjB;AAGE,QAAA,QAAQ,EAAE,kBAACyB,CAAD,EAAO;AACf,UAAA,MAAI,CAACC,sBAAL,CAA4BD,CAAC,CAACE,MAAF,CAASC,OAArC;AACD;AALH,QADF,EAQGlB,eARH,aAQGA,eARH,gDAQGA,eAAe,CAAEmB,WARpB,0DAQG,sBAA8BC,cARjC,CAlCJ,eA6CE,oBAAC,qBAAD;AACE,QAAA,IAAI,EAAEpC,MAAM,CAACH,IADf;AAEE,QAAA,KAAK,EAAEG,MAAM,CAACrB,KAFhB;AAGE,QAAA,IAAI,EAAEqB,MAAM,CAACG,IAHf;AAIE,QAAA,OAAO,EAAEH,MAAM,CAACO,OAJlB;AAKE,QAAA,SAAS,EAAEP,MAAM,CAACI;AALpB,QA7CF,CADF,CAFF,CADF;AA4DD;;;EAlJiCiC,KAAK,CAACC,S;;;iCAA7B3C,c,eACQ;AACjBe,EAAAA,OAAO,EAAE6B,sBAAUC,MAAV,CAAiBC,UADT;AAEjBvC,EAAAA,KAAK,EAAEqC,sBAAUC,MAAV,CAAiBC,UAFP;AAGjBxC,EAAAA,QAAQ,EAAEsC,sBAAUG,IAAV,CAAeD,UAHR;AAIjB9B,EAAAA,MAAM,EAAE4B,sBAAUI,KAJD;AAKjB/B,EAAAA,kBAAkB,EAAE2B,sBAAUC,MALb;AAMjB3B,EAAAA,gBAAgB,EAAE0B,sBAAUC,MANX;AAOjB1B,EAAAA,eAAe,EAAEyB,sBAAUK,IAPV;AAQjB7B,EAAAA,yBAAyB,EAAEwB,sBAAUC,MARpB;AASjBxB,EAAAA,eAAe,EAAEuB,sBAAUC;AATV,C;;eAoJN,wBAAWrE,MAAX,EAAmBwB,cAAnB,C","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":[]}