@pie-lib/config-ui 13.0.21 → 13.0.22-beta.10

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 (37) hide show
  1. package/CHANGELOG.md +0 -76
  2. package/lib/__tests__/alert-dialog.test.js +262 -0
  3. package/lib/__tests__/checkbox.test.js +227 -0
  4. package/lib/__tests__/choice-utils.test.js +14 -0
  5. package/lib/__tests__/form-section.test.js +252 -0
  6. package/lib/__tests__/help.test.js +270 -0
  7. package/lib/__tests__/input.test.js +268 -0
  8. package/lib/__tests__/langs.test.js +541 -0
  9. package/lib/__tests__/number-text-field-custom.test.js +362 -0
  10. package/lib/__tests__/number-text-field.test.js +421 -0
  11. package/lib/__tests__/radio-with-label.test.js +233 -0
  12. package/lib/__tests__/settings-panel.test.js +184 -0
  13. package/lib/__tests__/settings.test.js +653 -0
  14. package/lib/__tests__/tabs.test.js +211 -0
  15. package/lib/__tests__/two-choice.test.js +124 -0
  16. package/lib/__tests__/with-stateful-model.test.js +221 -0
  17. package/lib/choice-configuration/__tests__/feedback-menu.test.js +287 -0
  18. package/lib/choice-configuration/__tests__/index.test.js +253 -0
  19. package/lib/choice-configuration/index.js +28 -30
  20. package/lib/choice-configuration/index.js.map +1 -1
  21. package/lib/feedback-config/__tests__/feedback-config.test.js +201 -0
  22. package/lib/feedback-config/__tests__/feedback-selector.test.js +177 -0
  23. package/lib/feedback-config/feedback-selector.js +2 -5
  24. package/lib/feedback-config/feedback-selector.js.map +1 -1
  25. package/lib/help.js +10 -13
  26. package/lib/help.js.map +1 -1
  27. package/lib/layout/__tests__/config.layout.test.js +70 -0
  28. package/lib/layout/__tests__/layout-content.test.js +6 -0
  29. package/lib/layout/settings-box.js +4 -11
  30. package/lib/layout/settings-box.js.map +1 -1
  31. package/lib/tags-input/__tests__/index.test.js +183 -0
  32. package/package.json +5 -5
  33. package/src/choice-configuration/index.jsx +3 -5
  34. package/src/feedback-config/feedback-selector.jsx +3 -5
  35. package/src/help.jsx +2 -6
  36. package/src/layout/settings-box.jsx +3 -11
  37. package/LICENSE.md +0 -5
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _react2 = require("@testing-library/react");
9
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
10
+ var _index = require("../index");
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ // Mock FeedbackSelector to simplify testing
14
+ jest.mock('../feedback-selector', function () {
15
+ return function FeedbackSelector(_ref) {
16
+ var label = _ref.label,
17
+ feedback = _ref.feedback,
18
+ _onChange = _ref.onChange;
19
+ return /*#__PURE__*/_react["default"].createElement("div", {
20
+ "data-testid": "feedback-selector"
21
+ }, /*#__PURE__*/_react["default"].createElement("label", null, label), /*#__PURE__*/_react["default"].createElement("select", {
22
+ "aria-label": label,
23
+ value: feedback.type,
24
+ onChange: function onChange(e) {
25
+ return _onChange(_objectSpread(_objectSpread({}, feedback), {}, {
26
+ type: e.target.value
27
+ }));
28
+ }
29
+ }, /*#__PURE__*/_react["default"].createElement("option", {
30
+ value: "default"
31
+ }, "Default"), /*#__PURE__*/_react["default"].createElement("option", {
32
+ value: "custom"
33
+ }, "Custom"), /*#__PURE__*/_react["default"].createElement("option", {
34
+ value: "none"
35
+ }, "None")));
36
+ };
37
+ });
38
+ describe('FeedbackConfig', function () {
39
+ var onChange = jest.fn();
40
+ beforeEach(function () {
41
+ onChange.mockClear();
42
+ });
43
+ describe('rendering', function () {
44
+ it('renders with default feedback types', function () {
45
+ var feedback = (0, _index.buildDefaults)();
46
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
47
+ feedback: feedback,
48
+ onChange: onChange
49
+ }));
50
+ expect(_react2.screen.getByText('Feedback')).toBeInTheDocument();
51
+ expect(_react2.screen.getByText('If correct, show')).toBeInTheDocument();
52
+ expect(_react2.screen.getByText('If partially correct, show')).toBeInTheDocument();
53
+ expect(_react2.screen.getByText('If incorrect, show')).toBeInTheDocument();
54
+ });
55
+ it('renders all three feedback selectors by default', function () {
56
+ var feedback = (0, _index.buildDefaults)();
57
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
58
+ feedback: feedback,
59
+ onChange: onChange
60
+ }));
61
+ var selectors = _react2.screen.getAllByTestId('feedback-selector');
62
+ expect(selectors).toHaveLength(3);
63
+ });
64
+ it('does not render partial feedback selector when allowPartial is false', function () {
65
+ var feedback = (0, _index.buildDefaults)();
66
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
67
+ allowPartial: false,
68
+ feedback: feedback,
69
+ onChange: onChange
70
+ }));
71
+ expect(_react2.screen.getByText('If correct, show')).toBeInTheDocument();
72
+ expect(_react2.screen.queryByText('If partially correct, show')).not.toBeInTheDocument();
73
+ expect(_react2.screen.getByText('If incorrect, show')).toBeInTheDocument();
74
+ var selectors = _react2.screen.getAllByTestId('feedback-selector');
75
+ expect(selectors).toHaveLength(2);
76
+ });
77
+ });
78
+ describe('user interactions', function () {
79
+ it('calls onChange when correct feedback type changes', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
80
+ var user, feedback, correctSelect;
81
+ return _regenerator["default"].wrap(function (_context) {
82
+ while (1) switch (_context.prev = _context.next) {
83
+ case 0:
84
+ user = _userEvent["default"].setup();
85
+ feedback = (0, _index.buildDefaults)();
86
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
87
+ feedback: feedback,
88
+ onChange: onChange
89
+ }));
90
+ correctSelect = _react2.screen.getByLabelText('If correct, show');
91
+ _context.next = 1;
92
+ return user.selectOptions(correctSelect, 'custom');
93
+ case 1:
94
+ expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
95
+ correct: expect.objectContaining({
96
+ type: 'custom'
97
+ })
98
+ }));
99
+ case 2:
100
+ case "end":
101
+ return _context.stop();
102
+ }
103
+ }, _callee);
104
+ })));
105
+ it('calls onChange when incorrect feedback type changes', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
106
+ var user, feedback, incorrectSelect;
107
+ return _regenerator["default"].wrap(function (_context2) {
108
+ while (1) switch (_context2.prev = _context2.next) {
109
+ case 0:
110
+ user = _userEvent["default"].setup();
111
+ feedback = (0, _index.buildDefaults)();
112
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
113
+ feedback: feedback,
114
+ onChange: onChange
115
+ }));
116
+ incorrectSelect = _react2.screen.getByLabelText('If incorrect, show');
117
+ _context2.next = 1;
118
+ return user.selectOptions(incorrectSelect, 'none');
119
+ case 1:
120
+ expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
121
+ incorrect: expect.objectContaining({
122
+ type: 'none'
123
+ })
124
+ }));
125
+ case 2:
126
+ case "end":
127
+ return _context2.stop();
128
+ }
129
+ }, _callee2);
130
+ })));
131
+ it('calls onChange when partial feedback type changes', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
132
+ var user, feedback, partialSelect;
133
+ return _regenerator["default"].wrap(function (_context3) {
134
+ while (1) switch (_context3.prev = _context3.next) {
135
+ case 0:
136
+ user = _userEvent["default"].setup();
137
+ feedback = (0, _index.buildDefaults)();
138
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
139
+ feedback: feedback,
140
+ onChange: onChange
141
+ }));
142
+ partialSelect = _react2.screen.getByLabelText('If partially correct, show');
143
+ _context3.next = 1;
144
+ return user.selectOptions(partialSelect, 'custom');
145
+ case 1:
146
+ expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
147
+ partial: expect.objectContaining({
148
+ type: 'custom'
149
+ })
150
+ }));
151
+ case 2:
152
+ case "end":
153
+ return _context3.stop();
154
+ }
155
+ }, _callee3);
156
+ })));
157
+ });
158
+ describe('buildDefaults helper', function () {
159
+ it('returns default feedback configuration', function () {
160
+ var defaults = (0, _index.buildDefaults)();
161
+ expect(defaults).toEqual({
162
+ correct: {
163
+ type: 'default',
164
+ "default": 'Correct'
165
+ },
166
+ incorrect: {
167
+ type: 'default',
168
+ "default": 'Incorrect'
169
+ },
170
+ partial: {
171
+ type: 'default',
172
+ "default": 'Nearly'
173
+ }
174
+ });
175
+ });
176
+ it('merges custom values with defaults', function () {
177
+ var defaults = (0, _index.buildDefaults)({
178
+ correct: {
179
+ type: 'custom',
180
+ custom: 'Great job!'
181
+ }
182
+ });
183
+ expect(defaults).toEqual({
184
+ correct: {
185
+ type: 'custom',
186
+ "default": 'Correct',
187
+ custom: 'Great job!'
188
+ },
189
+ incorrect: {
190
+ type: 'default',
191
+ "default": 'Incorrect'
192
+ },
193
+ partial: {
194
+ type: 'default',
195
+ "default": 'Nearly'
196
+ }
197
+ });
198
+ });
199
+ });
200
+ });
201
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfdXNlckV2ZW50IiwiX2luZGV4Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJqZXN0IiwibW9jayIsIkZlZWRiYWNrU2VsZWN0b3IiLCJfcmVmIiwibGFiZWwiLCJmZWVkYmFjayIsIm9uQ2hhbmdlIiwiY3JlYXRlRWxlbWVudCIsInZhbHVlIiwidHlwZSIsInRhcmdldCIsImRlc2NyaWJlIiwiZm4iLCJiZWZvcmVFYWNoIiwibW9ja0NsZWFyIiwiaXQiLCJidWlsZERlZmF1bHRzIiwicmVuZGVyIiwiRmVlZGJhY2tDb25maWciLCJleHBlY3QiLCJzY3JlZW4iLCJnZXRCeVRleHQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsInNlbGVjdG9ycyIsImdldEFsbEJ5VGVzdElkIiwidG9IYXZlTGVuZ3RoIiwiYWxsb3dQYXJ0aWFsIiwicXVlcnlCeVRleHQiLCJub3QiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVzZXIiLCJjb3JyZWN0U2VsZWN0Iiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJ1c2VyRXZlbnQiLCJzZXR1cCIsImdldEJ5TGFiZWxUZXh0Iiwic2VsZWN0T3B0aW9ucyIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwib2JqZWN0Q29udGFpbmluZyIsImNvcnJlY3QiLCJzdG9wIiwiX2NhbGxlZTIiLCJpbmNvcnJlY3RTZWxlY3QiLCJfY29udGV4dDIiLCJpbmNvcnJlY3QiLCJfY2FsbGVlMyIsInBhcnRpYWxTZWxlY3QiLCJfY29udGV4dDMiLCJwYXJ0aWFsIiwiZGVmYXVsdHMiLCJ0b0VxdWFsIiwiY3VzdG9tIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZlZWRiYWNrLWNvbmZpZy9fX3Rlc3RzX18vZmVlZGJhY2stY29uZmlnLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXIsIHNjcmVlbiB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IHVzZXJFdmVudCBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3VzZXItZXZlbnQnO1xuaW1wb3J0IHsgYnVpbGREZWZhdWx0cywgRmVlZGJhY2tDb25maWcgfSBmcm9tICcuLi9pbmRleCc7XG5cbi8vIE1vY2sgRmVlZGJhY2tTZWxlY3RvciB0byBzaW1wbGlmeSB0ZXN0aW5nXG5qZXN0Lm1vY2soJy4uL2ZlZWRiYWNrLXNlbGVjdG9yJywgKCkgPT4ge1xuICByZXR1cm4gZnVuY3Rpb24gRmVlZGJhY2tTZWxlY3Rvcih7IGxhYmVsLCBmZWVkYmFjaywgb25DaGFuZ2UgfSkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGRhdGEtdGVzdGlkPVwiZmVlZGJhY2stc2VsZWN0b3JcIj5cbiAgICAgICAgPGxhYmVsPntsYWJlbH08L2xhYmVsPlxuICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgYXJpYS1sYWJlbD17bGFiZWx9XG4gICAgICAgICAgdmFsdWU9e2ZlZWRiYWNrLnR5cGV9XG4gICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBvbkNoYW5nZSh7IC4uLmZlZWRiYWNrLCB0eXBlOiBlLnRhcmdldC52YWx1ZSB9KX1cbiAgICAgICAgPlxuICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJkZWZhdWx0XCI+RGVmYXVsdDwvb3B0aW9uPlxuICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJjdXN0b21cIj5DdXN0b208L29wdGlvbj5cbiAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwibm9uZVwiPk5vbmU8L29wdGlvbj5cbiAgICAgICAgPC9zZWxlY3Q+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9O1xufSk7XG5cbmRlc2NyaWJlKCdGZWVkYmFja0NvbmZpZycsICgpID0+IHtcbiAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25DaGFuZ2UubW9ja0NsZWFyKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgd2l0aCBkZWZhdWx0IGZlZWRiYWNrIHR5cGVzJywgKCkgPT4ge1xuICAgICAgY29uc3QgZmVlZGJhY2sgPSBidWlsZERlZmF1bHRzKCk7XG5cbiAgICAgIHJlbmRlcig8RmVlZGJhY2tDb25maWcgZmVlZGJhY2s9e2ZlZWRiYWNrfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KTtcblxuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ0ZlZWRiYWNrJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnSWYgY29ycmVjdCwgc2hvdycpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ0lmIHBhcnRpYWxseSBjb3JyZWN0LCBzaG93JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnSWYgaW5jb3JyZWN0LCBzaG93JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBhbGwgdGhyZWUgZmVlZGJhY2sgc2VsZWN0b3JzIGJ5IGRlZmF1bHQnLCAoKSA9PiB7XG4gICAgICBjb25zdCBmZWVkYmFjayA9IGJ1aWxkRGVmYXVsdHMoKTtcblxuICAgICAgcmVuZGVyKDxGZWVkYmFja0NvbmZpZyBmZWVkYmFjaz17ZmVlZGJhY2t9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pO1xuXG4gICAgICBjb25zdCBzZWxlY3RvcnMgPSBzY3JlZW4uZ2V0QWxsQnlUZXN0SWQoJ2ZlZWRiYWNrLXNlbGVjdG9yJyk7XG4gICAgICBleHBlY3Qoc2VsZWN0b3JzKS50b0hhdmVMZW5ndGgoMyk7XG4gICAgfSk7XG5cbiAgICBpdCgnZG9lcyBub3QgcmVuZGVyIHBhcnRpYWwgZmVlZGJhY2sgc2VsZWN0b3Igd2hlbiBhbGxvd1BhcnRpYWwgaXMgZmFsc2UnLCAoKSA9PiB7XG4gICAgICBjb25zdCBmZWVkYmFjayA9IGJ1aWxkRGVmYXVsdHMoKTtcblxuICAgICAgcmVuZGVyKDxGZWVkYmFja0NvbmZpZyBhbGxvd1BhcnRpYWw9e2ZhbHNlfSBmZWVkYmFjaz17ZmVlZGJhY2t9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pO1xuXG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnSWYgY29ycmVjdCwgc2hvdycpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5xdWVyeUJ5VGV4dCgnSWYgcGFydGlhbGx5IGNvcnJlY3QsIHNob3cnKSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnSWYgaW5jb3JyZWN0LCBzaG93JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG5cbiAgICAgIGNvbnN0IHNlbGVjdG9ycyA9IHNjcmVlbi5nZXRBbGxCeVRlc3RJZCgnZmVlZGJhY2stc2VsZWN0b3InKTtcbiAgICAgIGV4cGVjdChzZWxlY3RvcnMpLnRvSGF2ZUxlbmd0aCgyKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3VzZXIgaW50ZXJhY3Rpb25zJywgKCkgPT4ge1xuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aGVuIGNvcnJlY3QgZmVlZGJhY2sgdHlwZSBjaGFuZ2VzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgICAgY29uc3QgZmVlZGJhY2sgPSBidWlsZERlZmF1bHRzKCk7XG5cbiAgICAgIHJlbmRlcig8RmVlZGJhY2tDb25maWcgZmVlZGJhY2s9e2ZlZWRiYWNrfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KTtcblxuICAgICAgY29uc3QgY29ycmVjdFNlbGVjdCA9IHNjcmVlbi5nZXRCeUxhYmVsVGV4dCgnSWYgY29ycmVjdCwgc2hvdycpO1xuICAgICAgYXdhaXQgdXNlci5zZWxlY3RPcHRpb25zKGNvcnJlY3RTZWxlY3QsICdjdXN0b20nKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChcbiAgICAgICAgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIGNvcnJlY3Q6IGV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgdHlwZTogJ2N1c3RvbScgfSksXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aGVuIGluY29ycmVjdCBmZWVkYmFjayB0eXBlIGNoYW5nZXMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICBjb25zdCBmZWVkYmFjayA9IGJ1aWxkRGVmYXVsdHMoKTtcblxuICAgICAgcmVuZGVyKDxGZWVkYmFja0NvbmZpZyBmZWVkYmFjaz17ZmVlZGJhY2t9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pO1xuXG4gICAgICBjb25zdCBpbmNvcnJlY3RTZWxlY3QgPSBzY3JlZW4uZ2V0QnlMYWJlbFRleHQoJ0lmIGluY29ycmVjdCwgc2hvdycpO1xuICAgICAgYXdhaXQgdXNlci5zZWxlY3RPcHRpb25zKGluY29ycmVjdFNlbGVjdCwgJ25vbmUnKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aChcbiAgICAgICAgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIGluY29ycmVjdDogZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoeyB0eXBlOiAnbm9uZScgfSksXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aGVuIHBhcnRpYWwgZmVlZGJhY2sgdHlwZSBjaGFuZ2VzJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgICAgY29uc3QgZmVlZGJhY2sgPSBidWlsZERlZmF1bHRzKCk7XG5cbiAgICAgIHJlbmRlcig8RmVlZGJhY2tDb25maWcgZmVlZGJhY2s9e2ZlZWRiYWNrfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KTtcblxuICAgICAgY29uc3QgcGFydGlhbFNlbGVjdCA9IHNjcmVlbi5nZXRCeUxhYmVsVGV4dCgnSWYgcGFydGlhbGx5IGNvcnJlY3QsIHNob3cnKTtcbiAgICAgIGF3YWl0IHVzZXIuc2VsZWN0T3B0aW9ucyhwYXJ0aWFsU2VsZWN0LCAnY3VzdG9tJyk7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoXG4gICAgICAgIGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICBwYXJ0aWFsOiBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7IHR5cGU6ICdjdXN0b20nIH0pLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdidWlsZERlZmF1bHRzIGhlbHBlcicsICgpID0+IHtcbiAgICBpdCgncmV0dXJucyBkZWZhdWx0IGZlZWRiYWNrIGNvbmZpZ3VyYXRpb24nLCAoKSA9PiB7XG4gICAgICBjb25zdCBkZWZhdWx0cyA9IGJ1aWxkRGVmYXVsdHMoKTtcblxuICAgICAgZXhwZWN0KGRlZmF1bHRzKS50b0VxdWFsKHtcbiAgICAgICAgY29ycmVjdDogeyB0eXBlOiAnZGVmYXVsdCcsIGRlZmF1bHQ6ICdDb3JyZWN0JyB9LFxuICAgICAgICBpbmNvcnJlY3Q6IHsgdHlwZTogJ2RlZmF1bHQnLCBkZWZhdWx0OiAnSW5jb3JyZWN0JyB9LFxuICAgICAgICBwYXJ0aWFsOiB7IHR5cGU6ICdkZWZhdWx0JywgZGVmYXVsdDogJ05lYXJseScgfSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ21lcmdlcyBjdXN0b20gdmFsdWVzIHdpdGggZGVmYXVsdHMnLCAoKSA9PiB7XG4gICAgICBjb25zdCBkZWZhdWx0cyA9IGJ1aWxkRGVmYXVsdHMoe1xuICAgICAgICBjb3JyZWN0OiB7IHR5cGU6ICdjdXN0b20nLCBjdXN0b206ICdHcmVhdCBqb2IhJyB9LFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChkZWZhdWx0cykudG9FcXVhbCh7XG4gICAgICAgIGNvcnJlY3Q6IHsgdHlwZTogJ2N1c3RvbScsIGRlZmF1bHQ6ICdDb3JyZWN0JywgY3VzdG9tOiAnR3JlYXQgam9iIScgfSxcbiAgICAgICAgaW5jb3JyZWN0OiB7IHR5cGU6ICdkZWZhdWx0JywgZGVmYXVsdDogJ0luY29ycmVjdCcgfSxcbiAgICAgICAgcGFydGlhbDogeyB0eXBlOiAnZGVmYXVsdCcsIGRlZmF1bHQ6ICdOZWFybHknIH0sXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQXlELFNBQUFJLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxN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
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = require("@testing-library/react");
7
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
8
+ var _react2 = _interopRequireDefault(require("react"));
9
+ var _feedbackSelector = require("../feedback-selector");
10
+ // Mock the editable-html component to avoid window dependencies in tests
11
+ jest.mock('@pie-lib/editable-html-tip-tap', function () {
12
+ return {
13
+ __esModule: true,
14
+ "default": function _default(_ref) {
15
+ var markup = _ref.markup,
16
+ _onChange = _ref.onChange;
17
+ return /*#__PURE__*/_react2["default"].createElement("textarea", {
18
+ "data-testid": "editable-html",
19
+ defaultValue: markup || '',
20
+ onChange: function onChange(e) {
21
+ return _onChange(e.target.value);
22
+ }
23
+ });
24
+ }
25
+ };
26
+ });
27
+ describe('feedback-selector', function () {
28
+ var onChange;
29
+ var renderComponent = function renderComponent() {
30
+ var feedback = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
31
+ type: 'default',
32
+ "default": 'hi'
33
+ };
34
+ return (0, _react.render)(/*#__PURE__*/_react2["default"].createElement(_feedbackSelector.FeedbackSelector, {
35
+ label: 'Feedback',
36
+ onChange: onChange,
37
+ feedback: feedback
38
+ }));
39
+ };
40
+ beforeEach(function () {
41
+ onChange = jest.fn();
42
+ });
43
+ describe('rendering', function () {
44
+ it('renders feedback type selector', function () {
45
+ renderComponent();
46
+ expect(_react.screen.getByText('Simple Feedback')).toBeInTheDocument();
47
+ expect(_react.screen.getByText('No Feedback')).toBeInTheDocument();
48
+ expect(_react.screen.getByText('Customized Feedback')).toBeInTheDocument();
49
+ });
50
+ it('shows default feedback text when type is default', function () {
51
+ renderComponent({
52
+ type: 'default',
53
+ "default": 'hi'
54
+ });
55
+ expect(_react.screen.getByText('hi')).toBeInTheDocument();
56
+ });
57
+ it('shows editable html when type is custom', function () {
58
+ renderComponent({
59
+ type: 'custom',
60
+ "default": 'hi',
61
+ custom: 'custom text'
62
+ });
63
+ expect(_react.screen.getByTestId('editable-html')).toBeInTheDocument();
64
+ expect(_react.screen.getByTestId('editable-html')).toHaveValue('custom text');
65
+ });
66
+ it('does not show default feedback when type is none', function () {
67
+ renderComponent({
68
+ type: 'none',
69
+ "default": 'hi'
70
+ });
71
+ expect(_react.screen.queryByText('hi')).not.toBeInTheDocument();
72
+ });
73
+ });
74
+ describe('user interactions', function () {
75
+ it('calls onChange when switching to default feedback', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
76
+ var user;
77
+ return _regenerator["default"].wrap(function (_context) {
78
+ while (1) switch (_context.prev = _context.next) {
79
+ case 0:
80
+ user = _userEvent["default"].setup();
81
+ renderComponent({
82
+ type: 'custom',
83
+ "default": 'hi'
84
+ });
85
+ _context.next = 1;
86
+ return user.click(_react.screen.getByLabelText('Simple Feedback'));
87
+ case 1:
88
+ expect(onChange).toHaveBeenCalledWith({
89
+ type: 'default',
90
+ "default": 'hi'
91
+ });
92
+ case 2:
93
+ case "end":
94
+ return _context.stop();
95
+ }
96
+ }, _callee);
97
+ })));
98
+ it('calls onChange when switching to custom feedback', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
99
+ var user;
100
+ return _regenerator["default"].wrap(function (_context2) {
101
+ while (1) switch (_context2.prev = _context2.next) {
102
+ case 0:
103
+ user = _userEvent["default"].setup();
104
+ renderComponent({
105
+ type: 'default',
106
+ "default": 'hi'
107
+ });
108
+ _context2.next = 1;
109
+ return user.click(_react.screen.getByLabelText('Customized Feedback'));
110
+ case 1:
111
+ expect(onChange).toHaveBeenCalledWith({
112
+ type: 'custom',
113
+ "default": 'hi'
114
+ });
115
+ case 2:
116
+ case "end":
117
+ return _context2.stop();
118
+ }
119
+ }, _callee2);
120
+ })));
121
+ it('calls onChange when switching to no feedback', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
122
+ var user;
123
+ return _regenerator["default"].wrap(function (_context3) {
124
+ while (1) switch (_context3.prev = _context3.next) {
125
+ case 0:
126
+ user = _userEvent["default"].setup();
127
+ renderComponent({
128
+ type: 'default',
129
+ "default": 'hi'
130
+ });
131
+ _context3.next = 1;
132
+ return user.click(_react.screen.getByLabelText('No Feedback'));
133
+ case 1:
134
+ expect(onChange).toHaveBeenCalledWith({
135
+ type: 'none',
136
+ "default": 'hi'
137
+ });
138
+ case 2:
139
+ case "end":
140
+ return _context3.stop();
141
+ }
142
+ }, _callee3);
143
+ })));
144
+ it('calls onChange with custom text when editing custom feedback', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
145
+ var user, editor, lastCall;
146
+ return _regenerator["default"].wrap(function (_context4) {
147
+ while (1) switch (_context4.prev = _context4.next) {
148
+ case 0:
149
+ user = _userEvent["default"].setup();
150
+ renderComponent({
151
+ type: 'custom',
152
+ "default": 'hi',
153
+ custom: ''
154
+ });
155
+ editor = _react.screen.getByTestId('editable-html');
156
+ _context4.next = 1;
157
+ return user.clear(editor);
158
+ case 1:
159
+ _context4.next = 2;
160
+ return user.type(editor, 'text');
161
+ case 2:
162
+ // user.type triggers onChange for each character, so check that onChange was called
163
+ // and that the last call has 'text' in custom field
164
+ expect(onChange).toHaveBeenCalled();
165
+ lastCall = onChange.mock.calls[onChange.mock.calls.length - 1][0];
166
+ expect(lastCall.type).toBe('custom');
167
+ expect(lastCall.custom).toBe('text');
168
+ expect(lastCall["default"]).toBe('hi');
169
+ case 3:
170
+ case "end":
171
+ return _context4.stop();
172
+ }
173
+ }, _callee4);
174
+ })));
175
+ });
176
+ });
177
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3VzZXJFdmVudCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3QyIiwiX2ZlZWRiYWNrU2VsZWN0b3IiLCJqZXN0IiwibW9jayIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiX3JlZiIsIm1hcmt1cCIsIm9uQ2hhbmdlIiwiY3JlYXRlRWxlbWVudCIsImRlZmF1bHRWYWx1ZSIsImUiLCJ0YXJnZXQiLCJ2YWx1ZSIsImRlc2NyaWJlIiwicmVuZGVyQ29tcG9uZW50IiwiZmVlZGJhY2siLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJ0eXBlIiwicmVuZGVyIiwiRmVlZGJhY2tTZWxlY3RvciIsImxhYmVsIiwiYmVmb3JlRWFjaCIsImZuIiwiaXQiLCJleHBlY3QiLCJzY3JlZW4iLCJnZXRCeVRleHQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsImN1c3RvbSIsImdldEJ5VGVzdElkIiwidG9IYXZlVmFsdWUiLCJxdWVyeUJ5VGV4dCIsIm5vdCIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwidXNlciIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwidXNlckV2ZW50Iiwic2V0dXAiLCJjbGljayIsImdldEJ5TGFiZWxUZXh0IiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJzdG9wIiwiX2NhbGxlZTIiLCJfY29udGV4dDIiLCJfY2FsbGVlMyIsIl9jb250ZXh0MyIsIl9jYWxsZWU0IiwiZWRpdG9yIiwibGFzdENhbGwiLCJfY29udGV4dDQiLCJjbGVhciIsInRvSGF2ZUJlZW5DYWxsZWQiLCJjYWxscyIsInRvQmUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmVlZGJhY2stY29uZmlnL19fdGVzdHNfXy9mZWVkYmFjay1zZWxlY3Rvci50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHNjcmVlbiB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IHVzZXJFdmVudCBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3VzZXItZXZlbnQnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEZlZWRiYWNrU2VsZWN0b3IgfSBmcm9tICcuLi9mZWVkYmFjay1zZWxlY3Rvcic7XG5cbi8vIE1vY2sgdGhlIGVkaXRhYmxlLWh0bWwgY29tcG9uZW50IHRvIGF2b2lkIHdpbmRvdyBkZXBlbmRlbmNpZXMgaW4gdGVzdHNcbmplc3QubW9jaygnQHBpZS1saWIvZWRpdGFibGUtaHRtbC10aXAtdGFwJywgKCkgPT4ge1xuICByZXR1cm4ge1xuICAgIF9fZXNNb2R1bGU6IHRydWUsXG4gICAgZGVmYXVsdDogKHsgbWFya3VwLCBvbkNoYW5nZSB9KSA9PiAoXG4gICAgICA8dGV4dGFyZWEgZGF0YS10ZXN0aWQ9XCJlZGl0YWJsZS1odG1sXCIgZGVmYXVsdFZhbHVlPXttYXJrdXAgfHwgJyd9IG9uQ2hhbmdlPXsoZSkgPT4gb25DaGFuZ2UoZS50YXJnZXQudmFsdWUpfSAvPlxuICAgICksXG4gIH07XG59KTtcblxuZGVzY3JpYmUoJ2ZlZWRiYWNrLXNlbGVjdG9yJywgKCkgPT4ge1xuICBsZXQgb25DaGFuZ2U7XG5cbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGZlZWRiYWNrID0geyB0eXBlOiAnZGVmYXVsdCcsIGRlZmF1bHQ6ICdoaScgfSkgPT4ge1xuICAgIHJldHVybiByZW5kZXIoPEZlZWRiYWNrU2VsZWN0b3IgbGFiZWw9eydGZWVkYmFjayd9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gZmVlZGJhY2s9e2ZlZWRiYWNrfSAvPik7XG4gIH07XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgZmVlZGJhY2sgdHlwZSBzZWxlY3RvcicsICgpID0+IHtcbiAgICAgIHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ1NpbXBsZSBGZWVkYmFjaycpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ05vIEZlZWRiYWNrJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnQ3VzdG9taXplZCBGZWVkYmFjaycpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3dzIGRlZmF1bHQgZmVlZGJhY2sgdGV4dCB3aGVuIHR5cGUgaXMgZGVmYXVsdCcsICgpID0+IHtcbiAgICAgIHJlbmRlckNvbXBvbmVudCh7IHR5cGU6ICdkZWZhdWx0JywgZGVmYXVsdDogJ2hpJyB9KTtcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdoaScpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3dzIGVkaXRhYmxlIGh0bWwgd2hlbiB0eXBlIGlzIGN1c3RvbScsICgpID0+IHtcbiAgICAgIHJlbmRlckNvbXBvbmVudCh7IHR5cGU6ICdjdXN0b20nLCBkZWZhdWx0OiAnaGknLCBjdXN0b206ICdjdXN0b20gdGV4dCcgfSk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGVzdElkKCdlZGl0YWJsZS1odG1sJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGVzdElkKCdlZGl0YWJsZS1odG1sJykpLnRvSGF2ZVZhbHVlKCdjdXN0b20gdGV4dCcpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2RvZXMgbm90IHNob3cgZGVmYXVsdCBmZWVkYmFjayB3aGVuIHR5cGUgaXMgbm9uZScsICgpID0+IHtcbiAgICAgIHJlbmRlckNvbXBvbmVudCh7IHR5cGU6ICdub25lJywgZGVmYXVsdDogJ2hpJyB9KTtcbiAgICAgIGV4cGVjdChzY3JlZW4ucXVlcnlCeVRleHQoJ2hpJykpLm5vdC50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgndXNlciBpbnRlcmFjdGlvbnMnLCAoKSA9PiB7XG4gICAgaXQoJ2NhbGxzIG9uQ2hhbmdlIHdoZW4gc3dpdGNoaW5nIHRvIGRlZmF1bHQgZmVlZGJhY2snLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoeyB0eXBlOiAnY3VzdG9tJywgZGVmYXVsdDogJ2hpJyB9KTtcblxuICAgICAgYXdhaXQgdXNlci5jbGljayhzY3JlZW4uZ2V0QnlMYWJlbFRleHQoJ1NpbXBsZSBGZWVkYmFjaycpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHR5cGU6ICdkZWZhdWx0JywgZGVmYXVsdDogJ2hpJyB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aGVuIHN3aXRjaGluZyB0byBjdXN0b20gZmVlZGJhY2snLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoeyB0eXBlOiAnZGVmYXVsdCcsIGRlZmF1bHQ6ICdoaScgfSk7XG5cbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soc2NyZWVuLmdldEJ5TGFiZWxUZXh0KCdDdXN0b21pemVkIEZlZWRiYWNrJykpO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHsgdHlwZTogJ2N1c3RvbScsIGRlZmF1bHQ6ICdoaScgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2hlbiBzd2l0Y2hpbmcgdG8gbm8gZmVlZGJhY2snLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoeyB0eXBlOiAnZGVmYXVsdCcsIGRlZmF1bHQ6ICdoaScgfSk7XG5cbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soc2NyZWVuLmdldEJ5TGFiZWxUZXh0KCdObyBGZWVkYmFjaycpKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7IHR5cGU6ICdub25lJywgZGVmYXVsdDogJ2hpJyB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aXRoIGN1c3RvbSB0ZXh0IHdoZW4gZWRpdGluZyBjdXN0b20gZmVlZGJhY2snLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXJDb21wb25lbnQoeyB0eXBlOiAnY3VzdG9tJywgZGVmYXVsdDogJ2hpJywgY3VzdG9tOiAnJyB9KTtcblxuICAgICAgY29uc3QgZWRpdG9yID0gc2NyZWVuLmdldEJ5VGVzdElkKCdlZGl0YWJsZS1odG1sJyk7XG4gICAgICBhd2FpdCB1c2VyLmNsZWFyKGVkaXRvcik7XG4gICAgICBhd2FpdCB1c2VyLnR5cGUoZWRpdG9yLCAndGV4dCcpO1xuXG4gICAgICAvLyB1c2VyLnR5cGUgdHJpZ2dlcnMgb25DaGFuZ2UgZm9yIGVhY2ggY2hhcmFjdGVyLCBzbyBjaGVjayB0aGF0IG9uQ2hhbmdlIHdhcyBjYWxsZWRcbiAgICAgIC8vIGFuZCB0aGF0IHRoZSBsYXN0IGNhbGwgaGFzICd0ZXh0JyBpbiBjdXN0b20gZmllbGRcbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgICAgY29uc3QgbGFzdENhbGwgPSBvbkNoYW5nZS5tb2NrLmNhbGxzW29uQ2hhbmdlLm1vY2suY2FsbHMubGVuZ3RoIC0gMV1bMF07XG4gICAgICBleHBlY3QobGFzdENhbGwudHlwZSkudG9CZSgnY3VzdG9tJyk7XG4gICAgICBleHBlY3QobGFzdENhbGwuY3VzdG9tKS50b0JlKCd0ZXh0Jyk7XG4gICAgICBleHBlY3QobGFzdENhbGwuZGVmYXVsdCkudG9CZSgnaGknKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxPQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSxpQkFBQSxHQUFBSixPQUFBO0FBRUE7QUFDQUssSUFBSSxDQUFDQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsWUFBTTtFQUNoRCxPQUFPO0lBQ0xDLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFdBQVMsU0FBVEMsUUFBT0EsQ0FBQUMsSUFBQTtNQUFBLElBQUtDLE1BQU0sR0FBQUQsSUFBQSxDQUFOQyxNQUFNO1FBQUVDLFNBQVEsR0FBQUYsSUFBQSxDQUFSRSxRQUFRO01BQUEsb0JBQzFCUixPQUFBLFlBQUFTLGFBQUE7UUFBVSxlQUFZLGVBQWU7UUFBQ0MsWUFBWSxFQUFFSCxNQUFNLElBQUksRUFBRztRQUFDQyxRQUFRLEVBQUUsU0FBVkEsUUFBUUEsQ0FBR0csQ0FBQztVQUFBLE9BQUtILFNBQVEsQ0FBQ0csQ0FBQyxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQztRQUFBO01BQUMsQ0FBRSxDQUFDO0lBQUE7RUFFbkgsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsWUFBTTtFQUNsQyxJQUFJTixRQUFRO0VBRVosSUFBTU8sZUFBZSxHQUFHLFNBQWxCQSxlQUFlQSxDQUFBLEVBQXNEO0lBQUEsSUFBbERDLFFBQVEsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUc7TUFBRUcsSUFBSSxFQUFFLFNBQVM7TUFBRSxXQUFTO0lBQUssQ0FBQztJQUNwRSxPQUFPLElBQUFDLGFBQU0sZUFBQ3JCLE9BQUEsWUFBQVMsYUFBQSxDQUFDUixpQkFB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
@@ -44,14 +44,11 @@ var StyledInputContainer = (0, _styles.styled)(_renderUi.InputContainer)(functio
44
44
  paddingBottom: 0
45
45
  };
46
46
  });
47
-
48
- // A fill is meant to sit close to the page, so `--pie-background-dark` rather
49
- // than a stroke token; MUI's grey[300] held #e0e0e0 under every scheme.
50
47
  var StyledCustomHolder = (0, _styles.styled)('div')(function (_ref3) {
51
48
  var theme = _ref3.theme;
52
49
  return {
53
50
  marginTop: '0px',
54
- background: _renderUi.color.backgroundDark(),
51
+ background: theme.palette.grey[300],
55
52
  padding: 0,
56
53
  marginBottom: theme.spacing(2),
57
54
  borderRadius: '4px'
@@ -61,7 +58,7 @@ var StyledDefaultHolder = (0, _styles.styled)('div')(function (_ref4) {
61
58
  var theme = _ref4.theme;
62
59
  return {
63
60
  marginTop: '0px',
64
- background: _renderUi.color.backgroundDark(),
61
+ background: theme.palette.grey[300],
65
62
  padding: theme.spacing(2),
66
63
  marginBottom: theme.spacing(2),
67
64
  borderRadius: '4px',
@@ -1 +1 @@
1
- {"version":3,"file":"feedback-selector.js","names":["_editableHtmlTipTap","_interopRequireDefault","require","_renderUi","_propTypes","_react","_styles","_group","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","StyledEditableHTML","styled","EditableHtml","_ref","theme","fontFamily","typography","feedbackLabels","none","custom","StyledFeedbackSelector","_ref2","marginBottom","spacing","StyledInputContainer","InputContainer","paddingBottom","StyledCustomHolder","_ref3","marginTop","background","color","backgroundDark","padding","borderRadius","StyledDefaultHolder","_ref4","cursor","StyledGroup","Group","_ref5","paddingTop","FeedbackType","exports","type","PropTypes","oneOf","string","FeedbackSelector","_React$Component","_this","_classCallCheck2","_len","args","Array","_key","concat","_this$props","props","onChange","feedback","_this$props2","_inherits2","_createClass2","key","value","render","_this$props3","label","toolbarOpts","_this$props3$mathMlOp","mathMlOptions","feedbackKeys","createElement","extraClasses","transform","changeType","changeCustom","markup","languageCharactersProps","language","React","Component","arrayOf","isRequired","shape","func","object","_default"],"sources":["../../src/feedback-config/feedback-selector.jsx"],"sourcesContent":["import EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { InputContainer, color } from '@pie-lib/render-ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { styled } from '@mui/material/styles';\nimport Group from './group';\n\n// - mathquill error window not defined\nconst StyledEditableHTML = styled(EditableHtml)(({ theme }) => ({\n fontFamily: theme.typography.fontFamily,\n}));\n\nconst feedbackLabels = {\n default: 'Simple Feedback',\n none: 'No Feedback',\n custom: 'Customized Feedback',\n};\n\nconst StyledFeedbackSelector = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(1),\n}));\n\nconst StyledInputContainer = styled(InputContainer)(() => ({\n paddingBottom: 0,\n}));\n\n// A fill is meant to sit close to the page, so `--pie-background-dark` rather\n// than a stroke token; MUI's grey[300] held #e0e0e0 under every scheme.\nconst StyledCustomHolder = styled('div')(({ theme }) => ({\n marginTop: '0px',\n background: color.backgroundDark(),\n padding: 0,\n marginBottom: theme.spacing(2),\n borderRadius: '4px',\n}));\n\nconst StyledDefaultHolder = styled('div')(({ theme }) => ({\n marginTop: '0px',\n background: color.backgroundDark(),\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n borderRadius: '4px',\n fontFamily: theme.typography.fontFamily,\n cursor: 'default',\n}));\n\nconst StyledGroup = styled(Group)(({ theme }) => ({\n paddingTop: theme.spacing(1),\n}));\n\nexport const FeedbackType = {\n type: PropTypes.oneOf(['default', 'custom', 'none']),\n default: PropTypes.string,\n custom: PropTypes.string,\n};\n\nexport class FeedbackSelector extends React.Component {\n static propTypes = {\n keys: PropTypes.arrayOf(PropTypes.string),\n label: PropTypes.string.isRequired,\n feedback: PropTypes.shape(FeedbackType).isRequired,\n onChange: PropTypes.func.isRequired,\n toolbarOpts: PropTypes.object,\n mathMlOptions: PropTypes.object,\n };\n\n changeType = (type) => {\n const { onChange, feedback } = this.props;\n\n onChange({ ...feedback, type });\n };\n\n changeCustom = (custom) => {\n const { onChange, feedback } = this.props;\n\n onChange({ ...feedback, type: 'custom', custom });\n };\n\n render() {\n const { keys, label, feedback, toolbarOpts, mathMlOptions = {} } = this.props;\n\n const feedbackKeys = keys || Object.keys(feedbackLabels);\n\n return (\n <StyledFeedbackSelector>\n <StyledInputContainer label={label} extraClasses={{ label: { transform: 'translateY(-20%)' } }}>\n <StyledGroup\n keys={feedbackKeys}\n label={label}\n value={feedback.type}\n onChange={this.changeType}\n feedbackLabels={feedbackLabels}\n />\n </StyledInputContainer>\n\n {feedback.type === 'custom' && (\n <StyledCustomHolder>\n <StyledEditableHTML\n onChange={this.changeCustom}\n markup={feedback.custom || ''}\n toolbarOpts={toolbarOpts}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </StyledCustomHolder>\n )}\n\n {feedback.type === 'default' && <StyledDefaultHolder> {feedback.default}</StyledDefaultHolder>}\n </StyledFeedbackSelector>\n );\n }\n}\n\nexport default FeedbackSelector;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"feedback-selector.js","names":["_editableHtmlTipTap","_interopRequireDefault","require","_renderUi","_propTypes","_react","_styles","_group","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","Boolean","prototype","valueOf","call","StyledEditableHTML","styled","EditableHtml","_ref","theme","fontFamily","typography","feedbackLabels","none","custom","StyledFeedbackSelector","_ref2","marginBottom","spacing","StyledInputContainer","InputContainer","paddingBottom","StyledCustomHolder","_ref3","marginTop","background","palette","grey","padding","borderRadius","StyledDefaultHolder","_ref4","cursor","StyledGroup","Group","_ref5","paddingTop","FeedbackType","exports","type","PropTypes","oneOf","string","FeedbackSelector","_React$Component","_this","_classCallCheck2","_len","args","Array","_key","concat","_this$props","props","onChange","feedback","_this$props2","_inherits2","_createClass2","key","value","render","_this$props3","label","toolbarOpts","_this$props3$mathMlOp","mathMlOptions","feedbackKeys","createElement","extraClasses","transform","changeType","changeCustom","markup","languageCharactersProps","language","React","Component","arrayOf","isRequired","shape","func","object","_default"],"sources":["../../src/feedback-config/feedback-selector.jsx"],"sourcesContent":["import EditableHtml from '@pie-lib/editable-html-tip-tap';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport { styled } from '@mui/material/styles';\nimport Group from './group';\n\n// - mathquill error window not defined\nconst StyledEditableHTML = styled(EditableHtml)(({ theme }) => ({\n fontFamily: theme.typography.fontFamily,\n}));\n\nconst feedbackLabels = {\n default: 'Simple Feedback',\n none: 'No Feedback',\n custom: 'Customized Feedback',\n};\n\nconst StyledFeedbackSelector = styled('div')(({ theme }) => ({\n marginBottom: theme.spacing(1),\n}));\n\nconst StyledInputContainer = styled(InputContainer)(() => ({\n paddingBottom: 0,\n}));\n\nconst StyledCustomHolder = styled('div')(({ theme }) => ({\n marginTop: '0px',\n background: theme.palette.grey[300],\n padding: 0,\n marginBottom: theme.spacing(2),\n borderRadius: '4px',\n}));\n\nconst StyledDefaultHolder = styled('div')(({ theme }) => ({\n marginTop: '0px',\n background: theme.palette.grey[300],\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n borderRadius: '4px',\n fontFamily: theme.typography.fontFamily,\n cursor: 'default',\n}));\n\nconst StyledGroup = styled(Group)(({ theme }) => ({\n paddingTop: theme.spacing(1),\n}));\n\nexport const FeedbackType = {\n type: PropTypes.oneOf(['default', 'custom', 'none']),\n default: PropTypes.string,\n custom: PropTypes.string,\n};\n\nexport class FeedbackSelector extends React.Component {\n static propTypes = {\n keys: PropTypes.arrayOf(PropTypes.string),\n label: PropTypes.string.isRequired,\n feedback: PropTypes.shape(FeedbackType).isRequired,\n onChange: PropTypes.func.isRequired,\n toolbarOpts: PropTypes.object,\n mathMlOptions: PropTypes.object,\n };\n\n changeType = (type) => {\n const { onChange, feedback } = this.props;\n\n onChange({ ...feedback, type });\n };\n\n changeCustom = (custom) => {\n const { onChange, feedback } = this.props;\n\n onChange({ ...feedback, type: 'custom', custom });\n };\n\n render() {\n const { keys, label, feedback, toolbarOpts, mathMlOptions = {} } = this.props;\n\n const feedbackKeys = keys || Object.keys(feedbackLabels);\n\n return (\n <StyledFeedbackSelector>\n <StyledInputContainer label={label} extraClasses={{ label: { transform: 'translateY(-20%)' } }}>\n <StyledGroup\n keys={feedbackKeys}\n label={label}\n value={feedback.type}\n onChange={this.changeType}\n feedbackLabels={feedbackLabels}\n />\n </StyledInputContainer>\n\n {feedback.type === 'custom' && (\n <StyledCustomHolder>\n <StyledEditableHTML\n onChange={this.changeCustom}\n markup={feedback.custom || ''}\n toolbarOpts={toolbarOpts}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </StyledCustomHolder>\n )}\n\n {feedback.type === 'default' && <StyledDefaultHolder> {feedback.default}</StyledDefaultHolder>}\n </StyledFeedbackSelector>\n );\n }\n}\n\nexport default FeedbackSelector;\n"],"mappings":"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","ignoreList":[]}
package/lib/help.js CHANGED
@@ -22,21 +22,18 @@ var _Help2 = _interopRequireDefault(require("@mui/icons-material/Help"));
22
22
  var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
23
23
  var _react = _interopRequireDefault(require("react"));
24
24
  var _styles = require("@mui/material/styles");
25
- var _renderUi = require("@pie-lib/render-ui");
26
25
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
27
26
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
28
- var StyledIconButton = (0, _styles.styled)(_IconButton["default"])(function () {
27
+ var StyledIconButton = (0, _styles.styled)(_IconButton["default"])(function (_ref) {
28
+ var theme = _ref.theme;
29
29
  return {
30
30
  '&:hover': {
31
- // A decorative de-emphasis on hover -- the icon's resting state carries the
32
- // affordance, so this does not need the 3:1 non-text minimum. MUI's grey[300]
33
- // did not follow `--pie-*`, so it stayed #e0e0e0 on a dark scheme's surface.
34
- color: _renderUi.color.borderLight()
31
+ color: theme.palette.grey[300]
35
32
  }
36
33
  };
37
34
  });
38
- var HelpButton = exports.HelpButton = function HelpButton(_ref) {
39
- var onClick = _ref.onClick;
35
+ var HelpButton = exports.HelpButton = function HelpButton(_ref2) {
36
+ var onClick = _ref2.onClick;
40
37
  return /*#__PURE__*/_react["default"].createElement(StyledIconButton, {
41
38
  onClick: onClick,
42
39
  size: "large"
@@ -45,11 +42,11 @@ var HelpButton = exports.HelpButton = function HelpButton(_ref) {
45
42
  HelpButton.propTypes = {
46
43
  onClick: _propTypes["default"].func
47
44
  };
48
- var HelpDialog = exports.HelpDialog = function HelpDialog(_ref2) {
49
- var open = _ref2.open,
50
- onClose = _ref2.onClose,
51
- children = _ref2.children,
52
- title = _ref2.title;
45
+ var HelpDialog = exports.HelpDialog = function HelpDialog(_ref3) {
46
+ var open = _ref3.open,
47
+ onClose = _ref3.onClose,
48
+ children = _ref3.children,
49
+ title = _ref3.title;
53
50
  return /*#__PURE__*/_react["default"].createElement(_Dialog["default"], {
54
51
  open: open,
55
52
  onClose: onClose
package/lib/help.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","names":["_Dialog","_interopRequireDefault","require","_DialogTitle","_DialogContentText","_DialogContent","_DialogActions","_propTypes","_Button","_Help2","_IconButton","_react","_styles","_renderUi","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","StyledIconButton","styled","IconButton","color","borderLight","HelpButton","exports","_ref","onClick","createElement","size","propTypes","PropTypes","func","HelpDialog","_ref2","open","onClose","children","title","bool","oneOfType","arrayOf","node","isRequired","string","Help","_React$Component","props","_this","_classCallCheck2","state","_inherits2","_createClass2","key","value","render","_this2","_this$props","setState","React","Component","_defineProperty2","_default"],"sources":["../src/help.jsx"],"sourcesContent":["import Dialog from '@mui/material/Dialog';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport HelpIcon from '@mui/icons-material/Help';\nimport IconButton from '@mui/material/IconButton';\nimport React from 'react';\nimport { styled } from '@mui/material/styles';\nimport { color } from '@pie-lib/render-ui';\n\nconst StyledIconButton = styled(IconButton)(() => ({\n '&:hover': {\n // A decorative de-emphasis on hover -- the icon's resting state carries the\n // affordance, so this does not need the 3:1 non-text minimum. MUI's grey[300]\n // did not follow `--pie-*`, so it stayed #e0e0e0 on a dark scheme's surface.\n color: color.borderLight(),\n },\n}));\n\nexport const HelpButton = ({ onClick }) => (\n <StyledIconButton onClick={onClick} size=\"large\">\n <HelpIcon />\n </StyledIconButton>\n);\n\nHelpButton.propTypes = {\n onClick: PropTypes.func,\n};\n\nexport const HelpDialog = ({ open, onClose, children, title }) => (\n <Dialog open={open} onClose={onClose}>\n <DialogTitle>{title}</DialogTitle>\n <DialogContent>\n <DialogContentText>{children}</DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={onClose} color=\"primary\">\n OK\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nHelpDialog.propTypes = {\n open: PropTypes.bool,\n onClose: PropTypes.func,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n title: PropTypes.string.isRequired,\n};\n\nclass Help extends React.Component {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n title: PropTypes.string,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n };\n }\n\n render() {\n const { children, title } = this.props;\n\n return (\n <div>\n <HelpButton color=\"accent\" onClick={() => this.setState({ open: true })} />\n\n <HelpDialog open={this.state.open} title={title} onClose={() => this.setState({ open: false })}>\n {children}\n </HelpDialog>\n </div>\n );\n }\n}\n\nexport default Help;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"help.js","names":["_Dialog","_interopRequireDefault","require","_DialogTitle","_DialogContentText","_DialogContent","_DialogActions","_propTypes","_Button","_Help2","_IconButton","_react","_styles","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","StyledIconButton","styled","IconButton","_ref","theme","color","palette","grey","HelpButton","exports","_ref2","onClick","createElement","size","propTypes","PropTypes","func","HelpDialog","_ref3","open","onClose","children","title","bool","oneOfType","arrayOf","node","isRequired","string","Help","_React$Component","props","_this","_classCallCheck2","state","_inherits2","_createClass2","key","value","render","_this2","_this$props","setState","React","Component","_defineProperty2","_default"],"sources":["../src/help.jsx"],"sourcesContent":["import Dialog from '@mui/material/Dialog';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogActions from '@mui/material/DialogActions';\nimport PropTypes from 'prop-types';\n\nimport Button from '@mui/material/Button';\nimport HelpIcon from '@mui/icons-material/Help';\nimport IconButton from '@mui/material/IconButton';\nimport React from 'react';\nimport { styled } from '@mui/material/styles';\n\nconst StyledIconButton = styled(IconButton)(({ theme }) => ({\n '&:hover': {\n color: theme.palette.grey[300],\n },\n}));\n\nexport const HelpButton = ({ onClick }) => (\n <StyledIconButton onClick={onClick} size=\"large\">\n <HelpIcon />\n </StyledIconButton>\n);\n\nHelpButton.propTypes = {\n onClick: PropTypes.func,\n};\n\nexport const HelpDialog = ({ open, onClose, children, title }) => (\n <Dialog open={open} onClose={onClose}>\n <DialogTitle>{title}</DialogTitle>\n <DialogContent>\n <DialogContentText>{children}</DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={onClose} color=\"primary\">\n OK\n </Button>\n </DialogActions>\n </Dialog>\n);\n\nHelpDialog.propTypes = {\n open: PropTypes.bool,\n onClose: PropTypes.func,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n title: PropTypes.string.isRequired,\n};\n\nclass Help extends React.Component {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n title: PropTypes.string,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n open: false,\n };\n }\n\n render() {\n const { children, title } = this.props;\n\n return (\n <div>\n <HelpButton color=\"accent\" onClick={() => this.setState({ open: true })} />\n\n <HelpDialog open={this.state.open} title={title} onClose={() => this.setState({ open: false })}>\n {children}\n </HelpDialog>\n </div>\n );\n }\n}\n\nexport default Help;\n"],"mappings":"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","ignoreList":[]}