@pie-lib/config-ui 12.0.0-next.0 → 12.1.0-next.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.
- package/lib/__tests__/alert-dialog.test.js +262 -0
- package/lib/__tests__/checkbox.test.js +227 -0
- package/lib/__tests__/choice-utils.test.js +14 -0
- package/lib/__tests__/form-section.test.js +252 -0
- package/lib/__tests__/help.test.js +270 -0
- package/lib/__tests__/input.test.js +268 -0
- package/lib/__tests__/langs.test.js +541 -0
- package/lib/__tests__/number-text-field-custom.test.js +362 -0
- package/lib/__tests__/number-text-field.test.js +421 -0
- package/lib/__tests__/radio-with-label.test.js +233 -0
- package/lib/__tests__/settings-panel.test.js +184 -0
- package/lib/__tests__/settings.test.js +653 -0
- package/lib/__tests__/tabs.test.js +211 -0
- package/lib/__tests__/two-choice.test.js +124 -0
- package/lib/__tests__/with-stateful-model.test.js +221 -0
- package/lib/alert-dialog.js +1 -1
- package/lib/checkbox.js +1 -1
- package/lib/choice-configuration/__tests__/feedback-menu.test.js +287 -0
- package/lib/choice-configuration/__tests__/index.test.js +253 -0
- package/lib/choice-configuration/feedback-menu.js +1 -1
- package/lib/choice-configuration/index.js +3 -3
- package/lib/choice-configuration/index.js.map +1 -1
- package/lib/choice-utils.js +1 -1
- package/lib/feedback-config/__tests__/feedback-config.test.js +201 -0
- package/lib/feedback-config/__tests__/feedback-selector.test.js +177 -0
- package/lib/feedback-config/feedback-selector.js +3 -3
- package/lib/feedback-config/feedback-selector.js.map +1 -1
- package/lib/feedback-config/group.js +1 -1
- package/lib/feedback-config/index.js +1 -1
- package/lib/form-section.js +1 -1
- package/lib/help.js +1 -1
- package/lib/index.js +1 -1
- package/lib/input.js +1 -1
- package/lib/inputs.js +1 -1
- package/lib/langs.js +1 -1
- package/lib/layout/__tests__/config.layout.test.js +70 -0
- package/lib/layout/__tests__/layout-content.test.js +6 -0
- package/lib/layout/config-layout.js +1 -1
- package/lib/layout/index.js +1 -1
- package/lib/layout/layout-contents.js +1 -1
- package/lib/layout/settings-box.js +1 -1
- package/lib/mui-box/index.js +1 -1
- package/lib/number-text-field-custom.js +1 -1
- package/lib/number-text-field.js +1 -1
- package/lib/radio-with-label.js +1 -1
- package/lib/settings/display-size.js +1 -1
- package/lib/settings/index.js +1 -1
- package/lib/settings/panel.js +1 -1
- package/lib/settings/settings-radio-label.js +1 -1
- package/lib/settings/toggle.js +1 -1
- package/lib/tabs/index.js +1 -1
- package/lib/tags-input/__tests__/index.test.js +183 -0
- package/lib/tags-input/index.js +1 -1
- package/lib/two-choice.js +1 -1
- package/lib/with-stateful-model.js +1 -1
- package/package.json +5 -13
- package/src/choice-configuration/__tests__/index.test.jsx +1 -1
- package/src/choice-configuration/index.jsx +68 -75
- package/src/feedback-config/__tests__/feedback-selector.test.jsx +3 -13
- package/src/feedback-config/feedback-selector.jsx +3 -7
|
@@ -0,0 +1,221 @@
|
|
|
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 _withStatefulModel = _interopRequireDefault(require("../with-stateful-model"));
|
|
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
|
+
var MockComponent = function MockComponent(_ref) {
|
|
14
|
+
var model = _ref.model,
|
|
15
|
+
onChange = _ref.onChange;
|
|
16
|
+
return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
17
|
+
"data-testid": "model-value"
|
|
18
|
+
}, JSON.stringify(model)), /*#__PURE__*/_react["default"].createElement("button", {
|
|
19
|
+
onClick: function onClick() {
|
|
20
|
+
return onChange(_objectSpread(_objectSpread({}, model), {}, {
|
|
21
|
+
updated: true
|
|
22
|
+
}));
|
|
23
|
+
}
|
|
24
|
+
}, "Update Model"));
|
|
25
|
+
};
|
|
26
|
+
describe('withStatefulModel', function () {
|
|
27
|
+
it('wraps component and passes model and onChange', function () {
|
|
28
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
29
|
+
var model = {
|
|
30
|
+
name: 'test'
|
|
31
|
+
};
|
|
32
|
+
var onChange = jest.fn();
|
|
33
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
34
|
+
model: model,
|
|
35
|
+
onChange: onChange
|
|
36
|
+
}));
|
|
37
|
+
expect(_react2.screen.getByTestId('model-value')).toBeInTheDocument();
|
|
38
|
+
expect(_react2.screen.getByText(JSON.stringify(model))).toBeInTheDocument();
|
|
39
|
+
});
|
|
40
|
+
it('manages local state with initial model prop', function () {
|
|
41
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
42
|
+
var model = {
|
|
43
|
+
id: 1,
|
|
44
|
+
name: 'test'
|
|
45
|
+
};
|
|
46
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
47
|
+
model: model,
|
|
48
|
+
onChange: jest.fn()
|
|
49
|
+
}));
|
|
50
|
+
expect(_react2.screen.getByText(JSON.stringify(model))).toBeInTheDocument();
|
|
51
|
+
});
|
|
52
|
+
it('calls onChange with updated model when component calls onChange', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
53
|
+
var user, WrappedComponent, model, onChange, updateButton;
|
|
54
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
55
|
+
while (1) switch (_context.prev = _context.next) {
|
|
56
|
+
case 0:
|
|
57
|
+
user = _userEvent["default"].setup();
|
|
58
|
+
WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
59
|
+
model = {
|
|
60
|
+
name: 'test'
|
|
61
|
+
};
|
|
62
|
+
onChange = jest.fn();
|
|
63
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
64
|
+
model: model,
|
|
65
|
+
onChange: onChange
|
|
66
|
+
}));
|
|
67
|
+
updateButton = _react2.screen.getByRole('button', {
|
|
68
|
+
name: /Update Model/i
|
|
69
|
+
});
|
|
70
|
+
_context.next = 1;
|
|
71
|
+
return user.click(updateButton);
|
|
72
|
+
case 1:
|
|
73
|
+
expect(onChange).toHaveBeenCalled();
|
|
74
|
+
expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
|
|
75
|
+
updated: true
|
|
76
|
+
}));
|
|
77
|
+
case 2:
|
|
78
|
+
case "end":
|
|
79
|
+
return _context.stop();
|
|
80
|
+
}
|
|
81
|
+
}, _callee);
|
|
82
|
+
})));
|
|
83
|
+
it('updates internal state when model prop changes', function () {
|
|
84
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
85
|
+
var initialModel = {
|
|
86
|
+
name: 'initial'
|
|
87
|
+
};
|
|
88
|
+
var updatedModel = {
|
|
89
|
+
name: 'updated'
|
|
90
|
+
};
|
|
91
|
+
var onChange = jest.fn();
|
|
92
|
+
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
93
|
+
model: initialModel,
|
|
94
|
+
onChange: onChange
|
|
95
|
+
})),
|
|
96
|
+
rerender = _render.rerender;
|
|
97
|
+
expect(_react2.screen.getByText(JSON.stringify(initialModel))).toBeInTheDocument();
|
|
98
|
+
rerender(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
99
|
+
model: updatedModel,
|
|
100
|
+
onChange: onChange
|
|
101
|
+
}));
|
|
102
|
+
expect(_react2.screen.getByText(JSON.stringify(updatedModel))).toBeInTheDocument();
|
|
103
|
+
});
|
|
104
|
+
it('maintains state across multiple onChange calls', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
105
|
+
var user, WrappedComponent, model, onChange, updateButton;
|
|
106
|
+
return _regenerator["default"].wrap(function (_context2) {
|
|
107
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
108
|
+
case 0:
|
|
109
|
+
user = _userEvent["default"].setup();
|
|
110
|
+
WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
111
|
+
model = {
|
|
112
|
+
count: 0
|
|
113
|
+
};
|
|
114
|
+
onChange = jest.fn();
|
|
115
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
116
|
+
model: model,
|
|
117
|
+
onChange: onChange
|
|
118
|
+
}));
|
|
119
|
+
updateButton = _react2.screen.getByRole('button', {
|
|
120
|
+
name: /Update Model/i
|
|
121
|
+
});
|
|
122
|
+
_context2.next = 1;
|
|
123
|
+
return user.click(updateButton);
|
|
124
|
+
case 1:
|
|
125
|
+
expect(onChange).toHaveBeenCalledTimes(1);
|
|
126
|
+
_context2.next = 2;
|
|
127
|
+
return user.click(updateButton);
|
|
128
|
+
case 2:
|
|
129
|
+
expect(onChange).toHaveBeenCalledTimes(2);
|
|
130
|
+
case 3:
|
|
131
|
+
case "end":
|
|
132
|
+
return _context2.stop();
|
|
133
|
+
}
|
|
134
|
+
}, _callee2);
|
|
135
|
+
})));
|
|
136
|
+
it('passes updated model state to onChange callback', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
137
|
+
var user, WrappedComponent, model, onChange, updateButton, lastCall;
|
|
138
|
+
return _regenerator["default"].wrap(function (_context3) {
|
|
139
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
140
|
+
case 0:
|
|
141
|
+
user = _userEvent["default"].setup();
|
|
142
|
+
WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
143
|
+
model = {
|
|
144
|
+
value: 'original'
|
|
145
|
+
};
|
|
146
|
+
onChange = jest.fn();
|
|
147
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
148
|
+
model: model,
|
|
149
|
+
onChange: onChange
|
|
150
|
+
}));
|
|
151
|
+
updateButton = _react2.screen.getByRole('button', {
|
|
152
|
+
name: /Update Model/i
|
|
153
|
+
});
|
|
154
|
+
_context3.next = 1;
|
|
155
|
+
return user.click(updateButton);
|
|
156
|
+
case 1:
|
|
157
|
+
lastCall = onChange.mock.calls[onChange.mock.calls.length - 1];
|
|
158
|
+
expect(lastCall[0]).toHaveProperty('updated', true);
|
|
159
|
+
expect(lastCall[0]).toHaveProperty('value', 'original');
|
|
160
|
+
case 2:
|
|
161
|
+
case "end":
|
|
162
|
+
return _context3.stop();
|
|
163
|
+
}
|
|
164
|
+
}, _callee3);
|
|
165
|
+
})));
|
|
166
|
+
it('handles empty model object', function () {
|
|
167
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
168
|
+
var model = {};
|
|
169
|
+
var onChange = jest.fn();
|
|
170
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
171
|
+
model: model,
|
|
172
|
+
onChange: onChange
|
|
173
|
+
}));
|
|
174
|
+
expect(_react2.screen.getByText(JSON.stringify(model))).toBeInTheDocument();
|
|
175
|
+
});
|
|
176
|
+
it('handles model with nested properties', function () {
|
|
177
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
178
|
+
var model = {
|
|
179
|
+
user: {
|
|
180
|
+
name: 'John',
|
|
181
|
+
age: 30
|
|
182
|
+
},
|
|
183
|
+
settings: {
|
|
184
|
+
theme: 'dark'
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
var onChange = jest.fn();
|
|
188
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
189
|
+
model: model,
|
|
190
|
+
onChange: onChange
|
|
191
|
+
}));
|
|
192
|
+
expect(_react2.screen.getByText(JSON.stringify(model))).toBeInTheDocument();
|
|
193
|
+
});
|
|
194
|
+
it('requires model and onChange props', function () {
|
|
195
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
196
|
+
var consoleSpy = jest.spyOn(console, 'error').mockImplementation();
|
|
197
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
198
|
+
model: {
|
|
199
|
+
test: 'data'
|
|
200
|
+
},
|
|
201
|
+
onChange: jest.fn()
|
|
202
|
+
}));
|
|
203
|
+
expect(_react2.screen.getByTestId('model-value')).toBeInTheDocument();
|
|
204
|
+
consoleSpy.mockRestore();
|
|
205
|
+
});
|
|
206
|
+
it('renders wrapped component with correct props structure', function () {
|
|
207
|
+
var WrappedComponent = (0, _withStatefulModel["default"])(MockComponent);
|
|
208
|
+
var model = {
|
|
209
|
+
id: 1
|
|
210
|
+
};
|
|
211
|
+
var onChange = jest.fn();
|
|
212
|
+
var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(WrappedComponent, {
|
|
213
|
+
model: model,
|
|
214
|
+
onChange: onChange
|
|
215
|
+
})),
|
|
216
|
+
container = _render2.container;
|
|
217
|
+
expect(container.querySelector('[data-testid="model-value"]')).toBeInTheDocument();
|
|
218
|
+
expect(container.querySelector('button')).toBeInTheDocument();
|
|
219
|
+
});
|
|
220
|
+
});
|
|
221
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfdXNlckV2ZW50IiwiX3dpdGhTdGF0ZWZ1bE1vZGVsIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJNb2NrQ29tcG9uZW50IiwiX3JlZiIsIm1vZGVsIiwib25DaGFuZ2UiLCJjcmVhdGVFbGVtZW50IiwiSlNPTiIsInN0cmluZ2lmeSIsIm9uQ2xpY2siLCJ1cGRhdGVkIiwiZGVzY3JpYmUiLCJpdCIsIldyYXBwZWRDb21wb25lbnQiLCJ3aXRoU3RhdGVmdWxNb2RlbCIsIm5hbWUiLCJqZXN0IiwiZm4iLCJyZW5kZXIiLCJleHBlY3QiLCJzY3JlZW4iLCJnZXRCeVRlc3RJZCIsInRvQmVJblRoZURvY3VtZW50IiwiZ2V0QnlUZXh0IiwiaWQiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVzZXIiLCJ1cGRhdGVCdXR0b24iLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInVzZXJFdmVudCIsInNldHVwIiwiZ2V0QnlSb2xlIiwiY2xpY2siLCJ0b0hhdmVCZWVuQ2FsbGVkIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJvYmplY3RDb250YWluaW5nIiwic3RvcCIsImluaXRpYWxNb2RlbCIsInVwZGF0ZWRNb2RlbCIsIl9yZW5kZXIiLCJyZXJlbmRlciIsIl9jYWxsZWUyIiwiX2NvbnRleHQyIiwiY291bnQiLCJ0b0hhdmVCZWVuQ2FsbGVkVGltZXMiLCJfY2FsbGVlMyIsImxhc3RDYWxsIiwiX2NvbnRleHQzIiwidmFsdWUiLCJtb2NrIiwiY2FsbHMiLCJ0b0hhdmVQcm9wZXJ0eSIsImFnZSIsInNldHRpbmdzIiwidGhlbWUiLCJjb25zb2xlU3B5Iiwic3B5T24iLCJjb25zb2xlIiwibW9ja0ltcGxlbWVudGF0aW9uIiwidGVzdCIsIm1vY2tSZXN0b3JlIiwiX3JlbmRlcjIiLCJjb250YWluZXIiLCJxdWVyeVNlbGVjdG9yIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL19fdGVzdHNfXy93aXRoLXN0YXRlZnVsLW1vZGVsLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXIsIHNjcmVlbiB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IHVzZXJFdmVudCBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3VzZXItZXZlbnQnO1xuaW1wb3J0IHdpdGhTdGF0ZWZ1bE1vZGVsIGZyb20gJy4uL3dpdGgtc3RhdGVmdWwtbW9kZWwnO1xuXG5jb25zdCBNb2NrQ29tcG9uZW50ID0gKHsgbW9kZWwsIG9uQ2hhbmdlIH0pID0+IChcbiAgPGRpdj5cbiAgICA8ZGl2IGRhdGEtdGVzdGlkPVwibW9kZWwtdmFsdWVcIj57SlNPTi5zdHJpbmdpZnkobW9kZWwpfTwvZGl2PlxuICAgIDxidXR0b24gb25DbGljaz17KCkgPT4gb25DaGFuZ2UoeyAuLi5tb2RlbCwgdXBkYXRlZDogdHJ1ZSB9KX0+VXBkYXRlIE1vZGVsPC9idXR0b24+XG4gIDwvZGl2PlxuKTtcblxuZGVzY3JpYmUoJ3dpdGhTdGF0ZWZ1bE1vZGVsJywgKCkgPT4ge1xuICBpdCgnd3JhcHMgY29tcG9uZW50IGFuZCBwYXNzZXMgbW9kZWwgYW5kIG9uQ2hhbmdlJywgKCkgPT4ge1xuICAgIGNvbnN0IFdyYXBwZWRDb21wb25lbnQgPSB3aXRoU3RhdGVmdWxNb2RlbChNb2NrQ29tcG9uZW50KTtcbiAgICBjb25zdCBtb2RlbCA9IHsgbmFtZTogJ3Rlc3QnIH07XG4gICAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgICByZW5kZXIoPFdyYXBwZWRDb21wb25lbnQgbW9kZWw9e21vZGVsfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KTtcblxuICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXN0SWQoJ21vZGVsLXZhbHVlJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoSlNPTi5zdHJpbmdpZnkobW9kZWwpKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ21hbmFnZXMgbG9jYWwgc3RhdGUgd2l0aCBpbml0aWFsIG1vZGVsIHByb3AnLCAoKSA9PiB7XG4gICAgY29uc3QgV3JhcHBlZENvbXBvbmVudCA9IHdpdGhTdGF0ZWZ1bE1vZGVsKE1vY2tDb21wb25lbnQpO1xuICAgIGNvbnN0IG1vZGVsID0geyBpZDogMSwgbmFtZTogJ3Rlc3QnIH07XG5cbiAgICByZW5kZXIoPFdyYXBwZWRDb21wb25lbnQgbW9kZWw9e21vZGVsfSBvbkNoYW5nZT17amVzdC5mbigpfSAvPik7XG5cbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dChKU09OLnN0cmluZ2lmeShtb2RlbCkpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2l0aCB1cGRhdGVkIG1vZGVsIHdoZW4gY29tcG9uZW50IGNhbGxzIG9uQ2hhbmdlJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHVzZXIgPSB1c2VyRXZlbnQuc2V0dXAoKTtcbiAgICBjb25zdCBXcmFwcGVkQ29tcG9uZW50ID0gd2l0aFN0YXRlZnVsTW9kZWwoTW9ja0NvbXBvbmVudCk7XG4gICAgY29uc3QgbW9kZWwgPSB7IG5hbWU6ICd0ZXN0JyB9O1xuICAgIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuXG4gICAgcmVuZGVyKDxXcmFwcGVkQ29tcG9uZW50IG1vZGVsPXttb2RlbH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPik7XG5cbiAgICBjb25zdCB1cGRhdGVCdXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9VcGRhdGUgTW9kZWwvaSB9KTtcbiAgICBhd2FpdCB1c2VyLmNsaWNrKHVwZGF0ZUJ1dHRvbik7XG5cbiAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgdXBkYXRlZDogdHJ1ZSB9KSk7XG4gIH0pO1xuXG4gIGl0KCd1cGRhdGVzIGludGVybmFsIHN0YXRlIHdoZW4gbW9kZWwgcHJvcCBjaGFuZ2VzJywgKCkgPT4ge1xuICAgIGNvbnN0IFdyYXBwZWRDb21wb25lbnQgPSB3aXRoU3RhdGVmdWxNb2RlbChNb2NrQ29tcG9uZW50KTtcbiAgICBjb25zdCBpbml0aWFsTW9kZWwgPSB7IG5hbWU6ICdpbml0aWFsJyB9O1xuICAgIGNvbnN0IHVwZGF0ZWRNb2RlbCA9IHsgbmFtZTogJ3VwZGF0ZWQnIH07XG4gICAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgICBjb25zdCB7IHJlcmVuZGVyIH0gPSByZW5kZXIoXG4gICAgICA8V3JhcHBlZENvbXBvbmVudCBtb2RlbD17aW5pdGlhbE1vZGVsfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+XG4gICAgKTtcblxuICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KEpTT04uc3RyaW5naWZ5KGluaXRpYWxNb2RlbCkpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuXG4gICAgcmVyZW5kZXIoPFdyYXBwZWRDb21wb25lbnQgbW9kZWw9e3VwZGF0ZWRNb2RlbH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPik7XG5cbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dChKU09OLnN0cmluZ2lmeSh1cGRhdGVkTW9kZWwpKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ21haW50YWlucyBzdGF0ZSBhY3Jvc3MgbXVsdGlwbGUgb25DaGFuZ2UgY2FsbHMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgIGNvbnN0IFdyYXBwZWRDb21wb25lbnQgPSB3aXRoU3RhdGVmdWxNb2RlbChNb2NrQ29tcG9uZW50KTtcbiAgICBjb25zdCBtb2RlbCA9IHsgY291bnQ6IDAgfTtcbiAgICBjb25zdCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcblxuICAgIHJlbmRlcig8V3JhcHBlZENvbXBvbmVudCBtb2RlbD17bW9kZWx9IG9uQ2hhbmdlPXtvbkNoYW5nZX0gLz4pO1xuXG4gICAgY29uc3QgdXBkYXRlQnV0dG9uID0gc2NyZWVuLmdldEJ5Um9sZSgnYnV0dG9uJywgeyBuYW1lOiAvVXBkYXRlIE1vZGVsL2kgfSk7XG5cbiAgICBhd2FpdCB1c2VyLmNsaWNrKHVwZGF0ZUJ1dHRvbik7XG4gICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkVGltZXMoMSk7XG5cbiAgICBhd2FpdCB1c2VyLmNsaWNrKHVwZGF0ZUJ1dHRvbik7XG4gICAgZXhwZWN0KG9uQ2hhbmdlKS50b0hhdmVCZWVuQ2FsbGVkVGltZXMoMik7XG4gIH0pO1xuXG4gIGl0KCdwYXNzZXMgdXBkYXRlZCBtb2RlbCBzdGF0ZSB0byBvbkNoYW5nZSBjYWxsYmFjaycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgY29uc3QgV3JhcHBlZENvbXBvbmVudCA9IHdpdGhTdGF0ZWZ1bE1vZGVsKE1vY2tDb21wb25lbnQpO1xuICAgIGNvbnN0IG1vZGVsID0geyB2YWx1ZTogJ29yaWdpbmFsJyB9O1xuICAgIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuXG4gICAgcmVuZGVyKDxXcmFwcGVkQ29tcG9uZW50IG1vZGVsPXttb2RlbH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPik7XG5cbiAgICBjb25zdCB1cGRhdGVCdXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9VcGRhdGUgTW9kZWwvaSB9KTtcbiAgICBhd2FpdCB1c2VyLmNsaWNrKHVwZGF0ZUJ1dHRvbik7XG5cbiAgICBjb25zdCBsYXN0Q2FsbCA9IG9uQ2hhbmdlLm1vY2suY2FsbHNbb25DaGFuZ2UubW9jay5jYWxscy5sZW5ndGggLSAxXTtcbiAgICBleHBlY3QobGFzdENhbGxbMF0pLnRvSGF2ZVByb3BlcnR5KCd1cGRhdGVkJywgdHJ1ZSk7XG4gICAgZXhwZWN0KGxhc3RDYWxsWzBdKS50b0hhdmVQcm9wZXJ0eSgndmFsdWUnLCAnb3JpZ2luYWwnKTtcbiAgfSk7XG5cbiAgaXQoJ2hhbmRsZXMgZW1wdHkgbW9kZWwgb2JqZWN0JywgKCkgPT4ge1xuICAgIGNvbnN0IFdyYXBwZWRDb21wb25lbnQgPSB3aXRoU3RhdGVmdWxNb2RlbChNb2NrQ29tcG9uZW50KTtcbiAgICBjb25zdCBtb2RlbCA9IHt9O1xuICAgIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuXG4gICAgcmVuZGVyKDxXcmFwcGVkQ29tcG9uZW50IG1vZGVsPXttb2RlbH0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPik7XG5cbiAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dChKU09OLnN0cmluZ2lmeShtb2RlbCkpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnaGFuZGxlcyBtb2RlbCB3aXRoIG5lc3RlZCBwcm9wZXJ0aWVzJywgKCkgPT4ge1xuICAgIGNvbnN0IFdyYXBwZWRDb21wb25lbnQgPSB3aXRoU3RhdGVmdWxNb2RlbChNb2NrQ29tcG9uZW50KTtcbiAgICBjb25zdCBtb2RlbCA9IHsgdXNlcjogeyBuYW1lOiAnSm9obicsIGFnZTogMzAgfSwgc2V0dGluZ3M6IHsgdGhlbWU6ICdkYXJrJyB9IH07XG4gICAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgICByZW5kZXIoPFdyYXBwZWRDb21wb25lbnQgbW9kZWw9e21vZGVsfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+KTtcblxuICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KEpTT04uc3RyaW5naWZ5KG1vZGVsKSkpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdyZXF1aXJlcyBtb2RlbCBhbmQgb25DaGFuZ2UgcHJvcHMnLCAoKSA9PiB7XG4gICAgY29uc3QgV3JhcHBlZENvbXBvbmVudCA9IHdpdGhTdGF0ZWZ1bE1vZGVsKE1vY2tDb21wb25lbnQpO1xuXG4gICAgY29uc3QgY29uc29sZVNweSA9IGplc3Quc3B5T24oY29uc29sZSwgJ2Vycm9yJykubW9ja0ltcGxlbWVudGF0aW9uKCk7XG5cbiAgICByZW5kZXIoXG4gICAgICA8V3JhcHBlZENvbXBvbmVudCBtb2RlbD17eyB0ZXN0OiAnZGF0YScgfX0gb25DaGFuZ2U9e2plc3QuZm4oKX0gLz5cbiAgICApO1xuXG4gICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRlc3RJZCgnbW9kZWwtdmFsdWUnKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcblxuICAgIGNvbnNvbGVTcHkubW9ja1Jlc3RvcmUoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd3JhcHBlZCBjb21wb25lbnQgd2l0aCBjb3JyZWN0IHByb3BzIHN0cnVjdHVyZScsICgpID0+IHtcbiAgICBjb25zdCBXcmFwcGVkQ29tcG9uZW50ID0gd2l0aFN0YXRlZnVsTW9kZWwoTW9ja0NvbXBvbmVudCk7XG4gICAgY29uc3QgbW9kZWwgPSB7IGlkOiAxIH07XG4gICAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKFxuICAgICAgPFdyYXBwZWRDb21wb25lbnQgbW9kZWw9e21vZGVsfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+XG4gICAgKTtcblxuICAgIGV4cGVjdChjb250YWluZXIucXVlcnlTZWxlY3RvcignW2RhdGEtdGVzdGlkPVwibW9kZWwtdmFsdWVcIl0nKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICBleHBlY3QoY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxrQkFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQXVELFNBQUFJLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRixPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdBQUFkLENBQUEsUUFBQWUsZ0JBQUEsYUFBQWhCLENBQUEsRUFBQUMsQ0FBQSxFQUFB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
|
package/lib/alert-dialog.js
CHANGED
|
@@ -65,4 +65,4 @@ AlertDialog.propTypes = {
|
|
|
65
65
|
disableRestoreFocus: _propTypes["default"].bool
|
|
66
66
|
};
|
|
67
67
|
var _default = exports["default"] = AlertDialog;
|
|
68
|
-
//# sourceMappingURL=
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfbWF0ZXJpYWwiLCJfc3R5bGVzIiwiU3R5bGVkRGlhbG9nVGl0bGUiLCJzdHlsZWQiLCJEaWFsb2dUaXRsZSIsImZvbnRTaXplIiwiU3R5bGVkRGlhbG9nQ29udGVudFRleHQiLCJEaWFsb2dDb250ZW50VGV4dCIsIkFsZXJ0RGlhbG9nIiwiX3JlZiIsInRleHQiLCJ0aXRsZSIsIm9uQ2xvc2UiLCJvbkNvbmZpcm0iLCJvcGVuIiwib25DbG9zZVRleHQiLCJvbkNvbmZpcm1UZXh0IiwiZGlzYWJsZUF1dG9Gb2N1cyIsImRpc2FibGVFbmZvcmNlRm9jdXMiLCJkaXNhYmxlUmVzdG9yZUZvY3VzIiwiY3JlYXRlRWxlbWVudCIsIkRpYWxvZyIsIkRpYWxvZ0NvbnRlbnQiLCJEaWFsb2dBY3Rpb25zIiwiQnV0dG9uIiwib25DbGljayIsImNvbG9yIiwiYXV0b0ZvY3VzIiwiZGVmYXVsdFByb3BzIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwib25lT2ZUeXBlIiwic3RyaW5nIiwib2JqZWN0IiwiZnVuYyIsImJvb2wiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi9zcmMvYWxlcnQtZGlhbG9nLmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IEJ1dHRvbiwgRGlhbG9nLCBEaWFsb2dBY3Rpb25zLCBEaWFsb2dDb250ZW50LCBEaWFsb2dDb250ZW50VGV4dCwgRGlhbG9nVGl0bGUgfSBmcm9tICdAbXVpL21hdGVyaWFsJztcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwvc3R5bGVzJztcblxuY29uc3QgU3R5bGVkRGlhbG9nVGl0bGUgPSBzdHlsZWQoRGlhbG9nVGl0bGUpKCgpID0+ICh7XG4gIGZvbnRTaXplOiAnbWF4KDEuMjVyZW0sIDE4cHgpJyxcbn0pKTtcblxuY29uc3QgU3R5bGVkRGlhbG9nQ29udGVudFRleHQgPSBzdHlsZWQoRGlhbG9nQ29udGVudFRleHQpKCgpID0+ICh7XG4gIGZvbnRTaXplOiAnbWF4KDFyZW0sIDE0cHgpJyxcbn0pKTtcblxuY29uc3QgQWxlcnREaWFsb2cgPSAoeyB0ZXh0LCB0aXRsZSwgb25DbG9zZSwgb25Db25maXJtLCBvcGVuLCBvbkNsb3NlVGV4dCwgb25Db25maXJtVGV4dCwgZGlzYWJsZUF1dG9Gb2N1cywgZGlzYWJsZUVuZm9yY2VGb2N1cywgZGlzYWJsZVJlc3RvcmVGb2N1cyB9KSA9PiAoXG4gIDxEaWFsb2cgb3Blbj17b3Blbn0gZGlzYWJsZUF1dG9Gb2N1cz17ZGlzYWJsZUF1dG9Gb2N1c30gZGlzYWJsZUVuZm9yY2VGb2N1cz17ZGlzYWJsZUVuZm9yY2VGb2N1c30gZGlzYWJsZVJlc3RvcmVGb2N1cz17ZGlzYWJsZVJlc3RvcmVGb2N1c30gb25DbG9zZT17b25DbG9zZX0+XG4gICAge3RpdGxlICYmIDxTdHlsZWREaWFsb2dUaXRsZT57dGl0bGV9PC9TdHlsZWREaWFsb2dUaXRsZT59XG4gICAge3RleHQgJiYgKFxuICAgICAgPERpYWxvZ0NvbnRlbnQ+XG4gICAgICAgIDxTdHlsZWREaWFsb2dDb250ZW50VGV4dD57dGV4dH08L1N0eWxlZERpYWxvZ0NvbnRlbnRUZXh0PlxuICAgICAgPC9EaWFsb2dDb250ZW50PlxuICAgICl9XG4gICAgPERpYWxvZ0FjdGlvbnM+XG4gICAgICB7b25DbG9zZSAmJiAoXG4gICAgICAgIDxCdXR0b24gb25DbGljaz17b25DbG9zZX0gY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgICAgICAge29uQ2xvc2VUZXh0fVxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgICl9XG4gICAgICB7b25Db25maXJtICYmIChcbiAgICAgICAgPEJ1dHRvbiBhdXRvRm9jdXMgb25DbGljaz17b25Db25maXJtfSBjb2xvcj1cInByaW1hcnlcIj5cbiAgICAgICAgICB7b25Db25maXJtVGV4dH1cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICApfVxuICAgIDwvRGlhbG9nQWN0aW9ucz5cbiAgPC9EaWFsb2c+XG4pO1xuXG5BbGVydERpYWxvZy5kZWZhdWx0UHJvcHMgPSB7XG4gIG9uQ2xvc2VUZXh0OiAnQ0FOQ0VMJyxcbiAgb25Db25maXJtVGV4dDogJ09LJyxcbiAgZGlzYWJsZUF1dG9Gb2N1czogZmFsc2UsXG4gIGRpc2FibGVFbmZvcmNlRm9jdXM6IGZhbHNlLFxuICBkaXNhYmxlUmVzdG9yZUZvY3VzOiBmYWxzZSxcbn07XG5cbkFsZXJ0RGlhbG9nLnByb3BUeXBlcyA9IHtcbiAgdGV4dDogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLm9iamVjdF0pLFxuICB0aXRsZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgb25DbG9zZTogUHJvcFR5cGVzLmZ1bmMsXG4gIG9uQ29uZmlybTogUHJvcFR5cGVzLmZ1bmMsXG4gIG9wZW46IFByb3BUeXBlcy5ib29sLFxuICBvbkNvbmZpcm1UZXh0OiBQcm9wVHlwZXMuc3RyaW5nLFxuICBvbkNsb3NlVGV4dDogUHJvcFR5cGVzLnN0cmluZyxcbiAgZGlzYWJsZUF1dG9Gb2N1czogUHJvcFR5cGVzLmJvb2wsXG4gIGRpc2FibGVFbmZvcmNlRm9jdXM6IFByb3BUeXBlcy5ib29sLFxuICBkaXNhYmxlUmVzdG9yZUZvY3VzOiBQcm9wVHlwZXMuYm9vbCxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEFsZXJ0RGlhbG9nO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsVUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsU0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSCxPQUFBO0FBRUEsSUFBTUksaUJBQWlCLEdBQUcsSUFBQUMsY0FBTSxFQUFDQyxxQkFBVyxDQUFDLENBQUM7RUFBQSxPQUFPO0lBQ25EQyxRQUFRLEVBQUU7RUFDWixDQUFDO0FBQUEsQ0FBQyxDQUFDO0FBRUgsSUFBTUMsdUJBQXVCLEdBQUcsSUFBQUgsY0FBTSxFQUFDSSwyQkFBaUIsQ0FBQyxDQUFDO0VBQUEsT0FBTztJQUMvREYsUUFBUSxFQUFFO0VBQ1osQ0FBQztBQUFBLENBQUMsQ0FBQztBQUVILElBQU1HLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFBQyxJQUFBO0VBQUEsSUFBTUMsSUFBSSxHQUFBRCxJQUFBLENBQUpDLElBQUk7SUFBRUMsS0FBSyxHQUFBRixJQUFBLENBQUxFLEtBQUs7SUFBRUMsT0FBTyxHQUFBSCxJQUFBLENBQVBHLE9BQU87SUFBRUMsU0FBUyxHQUFBSixJQUFBLENBQVRJLFNBQVM7SUFBRUMsSUFBSSxHQUFBTCxJQUFBLENBQUpLLElBQUk7SUFBRUMsV0FBVyxHQUFBTixJQUFBLENBQVhNLFdBQVc7SUFBRUMsYUFBYSxHQUFBUCxJQUFBLENBQWJPLGFBQWE7SUFBRUMsZ0JBQWdCLEdBQUFSLElBQUEsQ0FBaEJRLGdCQUFnQjtJQUFFQyxtQkFBbUIsR0FBQVQsSUFBQSxDQUFuQlMsbUJBQW1CO0lBQUVDLG1CQUFtQixHQUFBVixJQUFBLENBQW5CVSxtQkFBbUI7RUFBQSxvQkFDbEp2QixNQUFBLFlBQUF3QixhQUFBLENBQUNwQixTQUFBLENBQUFxQixNQUFNO0lBQUNQLElBQUksRUFBRUEsSUFBSztJQUFDRyxnQkFBZ0IsRUFBRUEsZ0JBQWlCO0lBQUNDLG1CQUFtQixFQUFFQSxtQkFBb0I7SUFBQ0MsbUJBQW1CLEVBQUVBLG1CQUFvQjtJQUFDUCxPQUFPLEVBQUVBO0VBQVEsR0FDMUpELEtBQUssaUJBQUlmLE1BQUEsWUFBQXdCLGFBQUEsQ0FBQ2xCLGlCQUFpQixRQUFFUyxLQUF5QixDQUFDLEVBQ3ZERCxJQUFJLGlCQUNIZCxNQUFBLFlBQUF3QixhQUFBLENBQUNwQixTQUFBLENBQUFzQixhQUFhLHFCQUNaMUIsTUFBQSxZQUFBd0IsYUFBQSxDQUFDZCx1QkFBdUIsUUFBRUksSUFBOEIsQ0FDM0MsQ0FDaEIsZUFDRGQsTUFBQSxZQUFBd0IsYUFBQSxDQUFDcEIsU0FBQSxDQUFBdUIsYUFBYSxRQUNYWCxPQUFPLGlCQUNOaEIsTUFBQSxZQUFBd0IsYUFBQSxDQUFDcEIsU0FBQSxDQUFBd0IsTUFBTTtJQUFDQyxPQUFPLEVBQUViLE9BQVE7SUFBQ2MsS0FBSyxFQUFDO0VBQVMsR0FDdENYLFdBQ0ssQ0FDVCxFQUNBRixTQUFTLGlCQUNSakIsTUFBQSxZQUFBd0IsYUFBQSxDQUFDcEIsU0FBQSxDQUFBd0IsTUFBTTtJQUFDRyxTQUFTO0lBQUNGLE9BQU8sRUFBRVosU0FBVTtJQUFDYSxLQUFLLEVBQUM7RUFBUyxHQUNsRFYsYUFDSyxDQUVHLENBQ1QsQ0FBQztBQUFBLENBQ1Y7QUFFRFIsV0FBVyxDQUFDb0IsWUFBWSxHQUFHO0VBQ3pCYixXQUFXLEVBQUUsUUFBUTtFQUNyQkMsYUFBYSxFQUFFLElBQUk7RUFDbkJDLGdCQUFnQixFQUFFLEtBQUs7RUFDdkJDLG1CQUFtQixFQUFFLEtBQUs7RUFDMUJDLG1CQUFtQixFQUFFO0FBQ3ZCLENBQUM7QUFFRFgsV0FBVyxDQUFDcUIsU0FBUyxHQUFHO0VBQ3RCbkIsSUFBSSxFQUFFb0IscUJBQVMsQ0FBQ0MsU0FBUyxDQUFDLENBQUNELHFCQUFTLENBQUNFLE1BQU0sRUFBRUYscUJBQVMsQ0FBQ0csTUFBTSxDQUFDLENBQUM7RUFDL0R0QixLQUFLLEVBQUVtQixxQkFBUyxDQUFDRSxNQUFNO0VBQ3ZCcEIsT0FBTyxFQUFFa0IscUJBQVMsQ0FBQ0ksSUFBSTtFQUN2QnJCLFNBQVMsRUFBRWlCLHFCQUFTLENBQUNJLElBQUk7RUFDekJwQixJQUFJLEVBQUVnQixxQkFBUyxDQUFDSyxJQUFJO0VBQ3BCbkIsYUFBYSxFQUFFYyxxQkFBUyxDQUFDRSxNQUFNO0VBQy9CakIsV0FBVyxFQUFFZSxxQkFBUyxDQUFDRSxNQUFNO0VBQzdCZixnQkFBZ0IsRUFBRWEscUJBQVMsQ0FBQ0ssSUFBSTtFQUNoQ2pCLG1CQUFtQixFQUFFWSxxQkFBUyxDQUFDSyxJQUFJO0VBQ25DaEIsbUJBQW1CLEVBQUVXLHFCQUFTLENBQUNLO0FBQ2pDLENBQUM7QUFBQyxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsY0FFYTdCLFdBQVciLCJpZ25vcmVMaXN0IjpbXX0=
|
package/lib/checkbox.js
CHANGED
|
@@ -81,4 +81,4 @@ Checkbox.defaultProps = {
|
|
|
81
81
|
error: false
|
|
82
82
|
};
|
|
83
83
|
var _default = exports["default"] = Checkbox;
|
|
84
|
-
//# sourceMappingURL=
|
|
84
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfRm9ybUNvbnRyb2xMYWJlbCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX0NoZWNrYm94IiwiX3Byb3BUeXBlcyIsIl9yZWFjdCIsIl9zdHlsZXMiLCJfcmVuZGVyVWkiLCJfY29sb3JzIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJTdHlsZWRGb3JtQ29udHJvbExhYmVsIiwic3R5bGVkIiwiRm9ybUNvbnRyb2xMYWJlbCIsIl9yZWYiLCJ0aGVtZSIsIm1pbmkiLCJtYXJnaW4iLCJtYXJnaW5MZWZ0IiwicGFkZGluZyIsImZvbnRTaXplIiwidHlwb2dyYXBoeSIsInRyYW5zZm9ybSIsImNvbG9yIiwic3BhY2luZyIsImdyZXkiLCJTdHlsZWRDaGVja2JveCIsIk11aUNoZWNrYm94IiwiX3JlZjIiLCJlcnJvciIsImNvbmNhdCIsInRlcnRpYXJ5Iiwid2lkdGgiLCJoZWlnaHQiLCJwYWxldHRlIiwibWFpbiIsIkNoZWNrYm94IiwiX3JlZjMiLCJjaGVja2VkIiwib25DaGFuZ2UiLCJ2YWx1ZSIsImxhYmVsIiwiY3JlYXRlRWxlbWVudCIsImNvbnRyb2wiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJib29sIiwiaXNSZXF1aXJlZCIsImZ1bmMiLCJzdHJpbmciLCJkZWZhdWx0UHJvcHMiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi9zcmMvY2hlY2tib3guanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBGb3JtQ29udHJvbExhYmVsIGZyb20gJ0BtdWkvbWF0ZXJpYWwvRm9ybUNvbnRyb2xMYWJlbCc7XG5pbXBvcnQgTXVpQ2hlY2tib3ggZnJvbSAnQG11aS9tYXRlcmlhbC9DaGVja2JveCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwvc3R5bGVzJztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCB7IGdyZXkgfSBmcm9tICdAbXVpL21hdGVyaWFsL2NvbG9ycyc7XG5cbmNvbnN0IFN0eWxlZEZvcm1Db250cm9sTGFiZWwgPSBzdHlsZWQoRm9ybUNvbnRyb2xMYWJlbCkoKHsgdGhlbWUsIG1pbmkgfSkgPT4gKHtcbiAgbWFyZ2luOiAwLFxuICBtYXJnaW5MZWZ0OiAwLFxuICBwYWRkaW5nOiAwLFxuICAnJiAuTXVpRm9ybUNvbnRyb2xMYWJlbC1sYWJlbCc6IHtcbiAgICBmb250U2l6ZTogdGhlbWUudHlwb2dyYXBoeS5mb250U2l6ZSAtIDEsXG4gICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKC00JSwgMiUpJyxcbiAgICBjb2xvcjogJ3JnYmEoMCwwLDAsMS4wKScsXG4gICAgLi4uKG1pbmkgJiYge1xuICAgICAgbWFyZ2luTGVmdDogdGhlbWUuc3BhY2luZygxKSxcbiAgICAgIGNvbG9yOiBncmV5WzcwMF0sXG4gICAgICBmb250U2l6ZTogdGhlbWUudHlwb2dyYXBoeS5mb250U2l6ZSAtIDMsXG4gICAgfSksXG4gIH0sXG59KSk7XG5cbmNvbnN0IFN0eWxlZENoZWNrYm94ID0gc3R5bGVkKE11aUNoZWNrYm94KSgoeyB0aGVtZSwgbWluaSwgZXJyb3IgfSkgPT4gKHtcbiAgY29sb3I6IGAke2NvbG9yLnRlcnRpYXJ5KCl9ICFpbXBvcnRhbnRgLFxuICAuLi4obWluaSAmJiB7XG4gICAgbWFyZ2luOiAwLFxuICAgIHBhZGRpbmc6IDAsXG4gICAgd2lkdGg6IHRoZW1lLnNwYWNpbmcoMyksXG4gICAgaGVpZ2h0OiB0aGVtZS5zcGFjaW5nKDMpLFxuICB9KSxcbiAgLi4uKGVycm9yICYmIHtcbiAgICBjb2xvcjogYCR7dGhlbWUucGFsZXR0ZS5lcnJvci5tYWlufSAhaW1wb3J0YW50YCxcbiAgfSksXG59KSk7XG5cbmNvbnN0IENoZWNrYm94ID0gKHsgbWluaSwgY2hlY2tlZCwgb25DaGFuZ2UsIHZhbHVlLCBsYWJlbCwgZXJyb3IgfSkgPT4gKFxuICA8U3R5bGVkRm9ybUNvbnRyb2xMYWJlbFxuICAgIG1pbmk9e21pbml9XG4gICAgY29udHJvbD17XG4gICAgICA8U3R5bGVkQ2hlY2tib3hcbiAgICAgICAgY2hlY2tlZD17Y2hlY2tlZH1cbiAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgIG1pbmk9e21pbml9XG4gICAgICAgIGVycm9yPXtlcnJvcn1cbiAgICAgIC8+XG4gICAgfVxuICAgIGxhYmVsPXtsYWJlbH1cbiAgLz5cbik7XG5cbkNoZWNrYm94LnByb3BUeXBlcyA9IHtcbiAgbWluaTogUHJvcFR5cGVzLmJvb2wsXG4gIGNoZWNrZWQ6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgZXJyb3I6IFByb3BUeXBlcy5ib29sLFxufTtcblxuQ2hlY2tib3guZGVmYXVsdFByb3BzID0ge1xuICB2YWx1ZTogJycsXG4gIG1pbmk6IGZhbHNlLFxuICBlcnJvcjogZmFsc2UsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBDaGVja2JveDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxP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
|
|
@@ -0,0 +1,287 @@
|
|
|
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 = _interopRequireDefault(require("react"));
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
9
|
+
var _feedbackMenu = _interopRequireDefault(require("../feedback-menu"));
|
|
10
|
+
describe('feedback-menu', function () {
|
|
11
|
+
var onChange = jest.fn();
|
|
12
|
+
beforeEach(function () {
|
|
13
|
+
onChange.mockClear();
|
|
14
|
+
});
|
|
15
|
+
describe('rendering', function () {
|
|
16
|
+
it('renders feedback menu with default options', function () {
|
|
17
|
+
var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
18
|
+
onChange: onChange,
|
|
19
|
+
classes: {}
|
|
20
|
+
})),
|
|
21
|
+
container = _render.container;
|
|
22
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
23
|
+
});
|
|
24
|
+
it('renders menu with feedback type selector', function () {
|
|
25
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
26
|
+
onChange: onChange,
|
|
27
|
+
value: {
|
|
28
|
+
type: 'default'
|
|
29
|
+
},
|
|
30
|
+
classes: {}
|
|
31
|
+
}));
|
|
32
|
+
// Menu button should be in the document
|
|
33
|
+
expect(_react2.screen.getByRole('button')).toBeInTheDocument();
|
|
34
|
+
});
|
|
35
|
+
it('renders with no feedback type', function () {
|
|
36
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
37
|
+
onChange: onChange,
|
|
38
|
+
value: {
|
|
39
|
+
type: 'none'
|
|
40
|
+
},
|
|
41
|
+
classes: {}
|
|
42
|
+
}));
|
|
43
|
+
expect(_react2.screen.getByRole('button')).toBeInTheDocument();
|
|
44
|
+
});
|
|
45
|
+
it('renders with custom feedback type', function () {
|
|
46
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
47
|
+
onChange: onChange,
|
|
48
|
+
value: {
|
|
49
|
+
type: 'custom'
|
|
50
|
+
},
|
|
51
|
+
classes: {}
|
|
52
|
+
}));
|
|
53
|
+
expect(_react2.screen.getByRole('button')).toBeInTheDocument();
|
|
54
|
+
});
|
|
55
|
+
it('renders feedback icon button', function () {
|
|
56
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
57
|
+
onChange: onChange,
|
|
58
|
+
classes: {}
|
|
59
|
+
}));
|
|
60
|
+
var button = _react2.screen.getByRole('button');
|
|
61
|
+
expect(button).toBeInTheDocument();
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe('user interactions', function () {
|
|
65
|
+
it('opens menu when button is clicked', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
66
|
+
var user, button;
|
|
67
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
68
|
+
while (1) switch (_context.prev = _context.next) {
|
|
69
|
+
case 0:
|
|
70
|
+
user = _userEvent["default"].setup();
|
|
71
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
72
|
+
onChange: onChange,
|
|
73
|
+
value: {
|
|
74
|
+
type: 'default'
|
|
75
|
+
},
|
|
76
|
+
classes: {}
|
|
77
|
+
}));
|
|
78
|
+
button = _react2.screen.getByRole('button');
|
|
79
|
+
_context.next = 1;
|
|
80
|
+
return user.click(button);
|
|
81
|
+
case 1:
|
|
82
|
+
// Menu items should appear
|
|
83
|
+
expect(_react2.screen.getByText('No Feedback')).toBeInTheDocument();
|
|
84
|
+
expect(_react2.screen.getByText('Default')).toBeInTheDocument();
|
|
85
|
+
expect(_react2.screen.getByText('Custom')).toBeInTheDocument();
|
|
86
|
+
case 2:
|
|
87
|
+
case "end":
|
|
88
|
+
return _context.stop();
|
|
89
|
+
}
|
|
90
|
+
}, _callee);
|
|
91
|
+
})));
|
|
92
|
+
it('calls onChange with "none" when No Feedback is selected', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
93
|
+
var user, button, noFeedbackOption;
|
|
94
|
+
return _regenerator["default"].wrap(function (_context2) {
|
|
95
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
96
|
+
case 0:
|
|
97
|
+
user = _userEvent["default"].setup();
|
|
98
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
99
|
+
onChange: onChange,
|
|
100
|
+
value: {
|
|
101
|
+
type: 'default'
|
|
102
|
+
},
|
|
103
|
+
classes: {}
|
|
104
|
+
}));
|
|
105
|
+
button = _react2.screen.getByRole('button');
|
|
106
|
+
_context2.next = 1;
|
|
107
|
+
return user.click(button);
|
|
108
|
+
case 1:
|
|
109
|
+
noFeedbackOption = _react2.screen.getByText('No Feedback');
|
|
110
|
+
_context2.next = 2;
|
|
111
|
+
return user.click(noFeedbackOption);
|
|
112
|
+
case 2:
|
|
113
|
+
expect(onChange).toHaveBeenCalledWith('none');
|
|
114
|
+
case 3:
|
|
115
|
+
case "end":
|
|
116
|
+
return _context2.stop();
|
|
117
|
+
}
|
|
118
|
+
}, _callee2);
|
|
119
|
+
})));
|
|
120
|
+
it('calls onChange with "default" when Default is selected', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
121
|
+
var user, button, defaultOption;
|
|
122
|
+
return _regenerator["default"].wrap(function (_context3) {
|
|
123
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
124
|
+
case 0:
|
|
125
|
+
user = _userEvent["default"].setup();
|
|
126
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
127
|
+
onChange: onChange,
|
|
128
|
+
value: {
|
|
129
|
+
type: 'none'
|
|
130
|
+
},
|
|
131
|
+
classes: {}
|
|
132
|
+
}));
|
|
133
|
+
button = _react2.screen.getByRole('button');
|
|
134
|
+
_context3.next = 1;
|
|
135
|
+
return user.click(button);
|
|
136
|
+
case 1:
|
|
137
|
+
defaultOption = _react2.screen.getByText('Default');
|
|
138
|
+
_context3.next = 2;
|
|
139
|
+
return user.click(defaultOption);
|
|
140
|
+
case 2:
|
|
141
|
+
expect(onChange).toHaveBeenCalledWith('default');
|
|
142
|
+
case 3:
|
|
143
|
+
case "end":
|
|
144
|
+
return _context3.stop();
|
|
145
|
+
}
|
|
146
|
+
}, _callee3);
|
|
147
|
+
})));
|
|
148
|
+
it('calls onChange with "custom" when Custom is selected', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
149
|
+
var user, button, customOption;
|
|
150
|
+
return _regenerator["default"].wrap(function (_context4) {
|
|
151
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
152
|
+
case 0:
|
|
153
|
+
user = _userEvent["default"].setup();
|
|
154
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
155
|
+
onChange: onChange,
|
|
156
|
+
value: {
|
|
157
|
+
type: 'none'
|
|
158
|
+
},
|
|
159
|
+
classes: {}
|
|
160
|
+
}));
|
|
161
|
+
button = _react2.screen.getByRole('button');
|
|
162
|
+
_context4.next = 1;
|
|
163
|
+
return user.click(button);
|
|
164
|
+
case 1:
|
|
165
|
+
customOption = _react2.screen.getByText('Custom');
|
|
166
|
+
_context4.next = 2;
|
|
167
|
+
return user.click(customOption);
|
|
168
|
+
case 2:
|
|
169
|
+
expect(onChange).toHaveBeenCalledWith('custom');
|
|
170
|
+
case 3:
|
|
171
|
+
case "end":
|
|
172
|
+
return _context4.stop();
|
|
173
|
+
}
|
|
174
|
+
}, _callee4);
|
|
175
|
+
})));
|
|
176
|
+
it('closes menu after selection', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
177
|
+
var user, button, noFeedbackOption;
|
|
178
|
+
return _regenerator["default"].wrap(function (_context5) {
|
|
179
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
180
|
+
case 0:
|
|
181
|
+
user = _userEvent["default"].setup();
|
|
182
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
183
|
+
onChange: onChange,
|
|
184
|
+
value: {
|
|
185
|
+
type: 'default'
|
|
186
|
+
},
|
|
187
|
+
classes: {}
|
|
188
|
+
}));
|
|
189
|
+
button = _react2.screen.getByRole('button');
|
|
190
|
+
_context5.next = 1;
|
|
191
|
+
return user.click(button);
|
|
192
|
+
case 1:
|
|
193
|
+
expect(_react2.screen.getByText('No Feedback')).toBeInTheDocument();
|
|
194
|
+
noFeedbackOption = _react2.screen.getByText('No Feedback');
|
|
195
|
+
_context5.next = 2;
|
|
196
|
+
return user.click(noFeedbackOption);
|
|
197
|
+
case 2:
|
|
198
|
+
// Menu should close after selection
|
|
199
|
+
expect(onChange).toHaveBeenCalledWith('none');
|
|
200
|
+
case 3:
|
|
201
|
+
case "end":
|
|
202
|
+
return _context5.stop();
|
|
203
|
+
}
|
|
204
|
+
}, _callee5);
|
|
205
|
+
})));
|
|
206
|
+
});
|
|
207
|
+
describe('feedback type indicators', function () {
|
|
208
|
+
it('shows correct icon color for default feedback', function () {
|
|
209
|
+
var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
210
|
+
onChange: onChange,
|
|
211
|
+
value: {
|
|
212
|
+
type: 'default'
|
|
213
|
+
},
|
|
214
|
+
classes: {}
|
|
215
|
+
})),
|
|
216
|
+
container = _render2.container;
|
|
217
|
+
// Icon should be present with primary color
|
|
218
|
+
expect(container.querySelector('svg')).toBeInTheDocument();
|
|
219
|
+
});
|
|
220
|
+
it('shows correct icon color for custom feedback', function () {
|
|
221
|
+
var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
222
|
+
onChange: onChange,
|
|
223
|
+
value: {
|
|
224
|
+
type: 'custom'
|
|
225
|
+
},
|
|
226
|
+
classes: {}
|
|
227
|
+
})),
|
|
228
|
+
container = _render3.container;
|
|
229
|
+
// Icon should be present with primary color
|
|
230
|
+
expect(container.querySelector('svg')).toBeInTheDocument();
|
|
231
|
+
});
|
|
232
|
+
it('shows correct icon color for disabled feedback', function () {
|
|
233
|
+
var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
234
|
+
onChange: onChange,
|
|
235
|
+
value: {
|
|
236
|
+
type: 'none'
|
|
237
|
+
},
|
|
238
|
+
classes: {}
|
|
239
|
+
})),
|
|
240
|
+
container = _render4.container;
|
|
241
|
+
// Icon should be present with disabled color
|
|
242
|
+
expect(container.querySelector('svg')).toBeInTheDocument();
|
|
243
|
+
});
|
|
244
|
+
});
|
|
245
|
+
describe('aria labels', function () {
|
|
246
|
+
it('has aria-label on button for default feedback', function () {
|
|
247
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
248
|
+
onChange: onChange,
|
|
249
|
+
value: {
|
|
250
|
+
type: 'default'
|
|
251
|
+
},
|
|
252
|
+
classes: {}
|
|
253
|
+
}));
|
|
254
|
+
var button = _react2.screen.getByRole('button', {
|
|
255
|
+
name: /Default Feedback/i
|
|
256
|
+
});
|
|
257
|
+
expect(button).toBeInTheDocument();
|
|
258
|
+
});
|
|
259
|
+
it('has aria-label on button for custom feedback', function () {
|
|
260
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
261
|
+
onChange: onChange,
|
|
262
|
+
value: {
|
|
263
|
+
type: 'custom'
|
|
264
|
+
},
|
|
265
|
+
classes: {}
|
|
266
|
+
}));
|
|
267
|
+
var button = _react2.screen.getByRole('button', {
|
|
268
|
+
name: /Custom Feedback/i
|
|
269
|
+
});
|
|
270
|
+
expect(button).toBeInTheDocument();
|
|
271
|
+
});
|
|
272
|
+
it('has aria-label on button for disabled feedback', function () {
|
|
273
|
+
(0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
|
|
274
|
+
onChange: onChange,
|
|
275
|
+
value: {
|
|
276
|
+
type: 'none'
|
|
277
|
+
},
|
|
278
|
+
classes: {}
|
|
279
|
+
}));
|
|
280
|
+
var button = _react2.screen.getByRole('button', {
|
|
281
|
+
name: /Feedback disabled/i
|
|
282
|
+
});
|
|
283
|
+
expect(button).toBeInTheDocument();
|
|
284
|
+
});
|
|
285
|
+
});
|
|
286
|
+
});
|
|
287
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfdXNlckV2ZW50IiwiX2ZlZWRiYWNrTWVudSIsImRlc2NyaWJlIiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJiZWZvcmVFYWNoIiwibW9ja0NsZWFyIiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzZXMiLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiLCJ2YWx1ZSIsInR5cGUiLCJzY3JlZW4iLCJnZXRCeVJvbGUiLCJidXR0b24iLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsInVzZXIiLCJ3cmFwIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInVzZXJFdmVudCIsInNldHVwIiwiY2xpY2siLCJnZXRCeVRleHQiLCJzdG9wIiwiX2NhbGxlZTIiLCJub0ZlZWRiYWNrT3B0aW9uIiwiX2NvbnRleHQyIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJfY2FsbGVlMyIsImRlZmF1bHRPcHRpb24iLCJfY29udGV4dDMiLCJfY2FsbGVlNCIsImN1c3RvbU9wdGlvbiIsIl9jb250ZXh0NCIsIl9jYWxsZWU1IiwiX2NvbnRleHQ1IiwiX3JlbmRlcjIiLCJxdWVyeVNlbGVjdG9yIiwiX3JlbmRlcjMiLCJfcmVuZGVyNCIsIm5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2hvaWNlLWNvbmZpZ3VyYXRpb24vX190ZXN0c19fL2ZlZWRiYWNrLW1lbnUudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHJlbmRlciwgc2NyZWVuIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgdXNlckV2ZW50IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvdXNlci1ldmVudCc7XG5pbXBvcnQgRmVlZGJhY2tNZW51IGZyb20gJy4uL2ZlZWRiYWNrLW1lbnUnO1xuXG5kZXNjcmliZSgnZmVlZGJhY2stbWVudScsICgpID0+IHtcbiAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25DaGFuZ2UubW9ja0NsZWFyKCk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdyZW5kZXJpbmcnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMgZmVlZGJhY2sgbWVudSB3aXRoIGRlZmF1bHQgb3B0aW9ucycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IGNsYXNzZXM9e3t9fSAvPik7XG4gICAgICBleHBlY3QoY29udGFpbmVyLmZpcnN0Q2hpbGQpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBtZW51IHdpdGggZmVlZGJhY2sgdHlwZSBzZWxlY3RvcicsICgpID0+IHtcbiAgICAgIHJlbmRlcig8RmVlZGJhY2tNZW51IG9uQ2hhbmdlPXtvbkNoYW5nZX0gdmFsdWU9e3sgdHlwZTogJ2RlZmF1bHQnIH19IGNsYXNzZXM9e3t9fSAvPik7XG4gICAgICAvLyBNZW51IGJ1dHRvbiBzaG91bGQgYmUgaW4gdGhlIGRvY3VtZW50XG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5Um9sZSgnYnV0dG9uJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRoIG5vIGZlZWRiYWNrIHR5cGUnLCAoKSA9PiB7XG4gICAgICByZW5kZXIoPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdub25lJyB9fSBjbGFzc2VzPXt7fX0gLz4pO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgd2l0aCBjdXN0b20gZmVlZGJhY2sgdHlwZScsICgpID0+IHtcbiAgICAgIHJlbmRlcig8RmVlZGJhY2tNZW51IG9uQ2hhbmdlPXtvbkNoYW5nZX0gdmFsdWU9e3sgdHlwZTogJ2N1c3RvbScgfX0gY2xhc3Nlcz17e319IC8+KTtcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIGZlZWRiYWNrIGljb24gYnV0dG9uJywgKCkgPT4ge1xuICAgICAgcmVuZGVyKDxGZWVkYmFja01lbnUgb25DaGFuZ2U9e29uQ2hhbmdlfSBjbGFzc2VzPXt7fX0gLz4pO1xuICAgICAgY29uc3QgYnV0dG9uID0gc2NyZWVuLmdldEJ5Um9sZSgnYnV0dG9uJyk7XG4gICAgICBleHBlY3QoYnV0dG9uKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgndXNlciBpbnRlcmFjdGlvbnMnLCAoKSA9PiB7XG4gICAgaXQoJ29wZW5zIG1lbnUgd2hlbiBidXR0b24gaXMgY2xpY2tlZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHVzZXIgPSB1c2VyRXZlbnQuc2V0dXAoKTtcbiAgICAgIHJlbmRlcig8RmVlZGJhY2tNZW51IG9uQ2hhbmdlPXtvbkNoYW5nZX0gdmFsdWU9e3sgdHlwZTogJ2RlZmF1bHQnIH19IGNsYXNzZXM9e3t9fSAvPik7XG5cbiAgICAgIGNvbnN0IGJ1dHRvbiA9IHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicpO1xuICAgICAgYXdhaXQgdXNlci5jbGljayhidXR0b24pO1xuXG4gICAgICAvLyBNZW51IGl0ZW1zIHNob3VsZCBhcHBlYXJcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdObyBGZWVkYmFjaycpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgICAgZXhwZWN0KHNjcmVlbi5nZXRCeVRleHQoJ0RlZmF1bHQnKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICAgIGV4cGVjdChzY3JlZW4uZ2V0QnlUZXh0KCdDdXN0b20nKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aXRoIFwibm9uZVwiIHdoZW4gTm8gRmVlZGJhY2sgaXMgc2VsZWN0ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXIoPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdkZWZhdWx0JyB9fSBjbGFzc2VzPXt7fX0gLz4pO1xuXG4gICAgICBjb25zdCBidXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nKTtcbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soYnV0dG9uKTtcblxuICAgICAgY29uc3Qgbm9GZWVkYmFja09wdGlvbiA9IHNjcmVlbi5nZXRCeVRleHQoJ05vIEZlZWRiYWNrJyk7XG4gICAgICBhd2FpdCB1c2VyLmNsaWNrKG5vRmVlZGJhY2tPcHRpb24pO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdub25lJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2l0aCBcImRlZmF1bHRcIiB3aGVuIERlZmF1bHQgaXMgc2VsZWN0ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXIoPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdub25lJyB9fSBjbGFzc2VzPXt7fX0gLz4pO1xuXG4gICAgICBjb25zdCBidXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nKTtcbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soYnV0dG9uKTtcblxuICAgICAgY29uc3QgZGVmYXVsdE9wdGlvbiA9IHNjcmVlbi5nZXRCeVRleHQoJ0RlZmF1bHQnKTtcbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soZGVmYXVsdE9wdGlvbik7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2RlZmF1bHQnKTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBvbkNoYW5nZSB3aXRoIFwiY3VzdG9tXCIgd2hlbiBDdXN0b20gaXMgc2VsZWN0ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXIoPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdub25lJyB9fSBjbGFzc2VzPXt7fX0gLz4pO1xuXG4gICAgICBjb25zdCBidXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nKTtcbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soYnV0dG9uKTtcblxuICAgICAgY29uc3QgY3VzdG9tT3B0aW9uID0gc2NyZWVuLmdldEJ5VGV4dCgnQ3VzdG9tJyk7XG4gICAgICBhd2FpdCB1c2VyLmNsaWNrKGN1c3RvbU9wdGlvbik7XG5cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2N1c3RvbScpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2Nsb3NlcyBtZW51IGFmdGVyIHNlbGVjdGlvbicsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHVzZXIgPSB1c2VyRXZlbnQuc2V0dXAoKTtcbiAgICAgIHJlbmRlcig8RmVlZGJhY2tNZW51IG9uQ2hhbmdlPXtvbkNoYW5nZX0gdmFsdWU9e3sgdHlwZTogJ2RlZmF1bHQnIH19IGNsYXNzZXM9e3t9fSAvPik7XG5cbiAgICAgIGNvbnN0IGJ1dHRvbiA9IHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicpO1xuICAgICAgYXdhaXQgdXNlci5jbGljayhidXR0b24pO1xuXG4gICAgICBleHBlY3Qoc2NyZWVuLmdldEJ5VGV4dCgnTm8gRmVlZGJhY2snKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcblxuICAgICAgY29uc3Qgbm9GZWVkYmFja09wdGlvbiA9IHNjcmVlbi5nZXRCeVRleHQoJ05vIEZlZWRiYWNrJyk7XG4gICAgICBhd2FpdCB1c2VyLmNsaWNrKG5vRmVlZGJhY2tPcHRpb24pO1xuXG4gICAgICAvLyBNZW51IHNob3VsZCBjbG9zZSBhZnRlciBzZWxlY3Rpb25cbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ25vbmUnKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2ZlZWRiYWNrIHR5cGUgaW5kaWNhdG9ycycsICgpID0+IHtcbiAgICBpdCgnc2hvd3MgY29ycmVjdCBpY29uIGNvbG9yIGZvciBkZWZhdWx0IGZlZWRiYWNrJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcihcbiAgICAgICAgPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdkZWZhdWx0JyB9fSBjbGFzc2VzPXt7fX0gLz5cbiAgICAgICk7XG4gICAgICAvLyBJY29uIHNob3VsZCBiZSBwcmVzZW50IHdpdGggcHJpbWFyeSBjb2xvclxuICAgICAgZXhwZWN0KGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG93cyBjb3JyZWN0IGljb24gY29sb3IgZm9yIGN1c3RvbSBmZWVkYmFjaycsICgpID0+IHtcbiAgICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoXG4gICAgICAgIDxGZWVkYmFja01lbnUgb25DaGFuZ2U9e29uQ2hhbmdlfSB2YWx1ZT17eyB0eXBlOiAnY3VzdG9tJyB9fSBjbGFzc2VzPXt7fX0gLz5cbiAgICAgICk7XG4gICAgICAvLyBJY29uIHNob3VsZCBiZSBwcmVzZW50IHdpdGggcHJpbWFyeSBjb2xvclxuICAgICAgZXhwZWN0KGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKSkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG93cyBjb3JyZWN0IGljb24gY29sb3IgZm9yIGRpc2FibGVkIGZlZWRiYWNrJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcihcbiAgICAgICAgPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdub25lJyB9fSBjbGFzc2VzPXt7fX0gLz5cbiAgICAgICk7XG4gICAgICAvLyBJY29uIHNob3VsZCBiZSBwcmVzZW50IHdpdGggZGlzYWJsZWQgY29sb3JcbiAgICAgIGV4cGVjdChjb250YWluZXIucXVlcnlTZWxlY3Rvcignc3ZnJykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdhcmlhIGxhYmVscycsICgpID0+IHtcbiAgICBpdCgnaGFzIGFyaWEtbGFiZWwgb24gYnV0dG9uIGZvciBkZWZhdWx0IGZlZWRiYWNrJywgKCkgPT4ge1xuICAgICAgcmVuZGVyKFxuICAgICAgICA8RmVlZGJhY2tNZW51IG9uQ2hhbmdlPXtvbkNoYW5nZX0gdmFsdWU9e3sgdHlwZTogJ2RlZmF1bHQnIH19IGNsYXNzZXM9e3t9fSAvPlxuICAgICAgKTtcbiAgICAgIGNvbnN0IGJ1dHRvbiA9IHNjcmVlbi5nZXRCeVJvbGUoJ2J1dHRvbicsIHsgbmFtZTogL0RlZmF1bHQgRmVlZGJhY2svaSB9KTtcbiAgICAgIGV4cGVjdChidXR0b24pLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnaGFzIGFyaWEtbGFiZWwgb24gYnV0dG9uIGZvciBjdXN0b20gZmVlZGJhY2snLCAoKSA9PiB7XG4gICAgICByZW5kZXIoXG4gICAgICAgIDxGZWVkYmFja01lbnUgb25DaGFuZ2U9e29uQ2hhbmdlfSB2YWx1ZT17eyB0eXBlOiAnY3VzdG9tJyB9fSBjbGFzc2VzPXt7fX0gLz5cbiAgICAgICk7XG4gICAgICBjb25zdCBidXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9DdXN0b20gRmVlZGJhY2svaSB9KTtcbiAgICAgIGV4cGVjdChidXR0b24pLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnaGFzIGFyaWEtbGFiZWwgb24gYnV0dG9uIGZvciBkaXNhYmxlZCBmZWVkYmFjaycsICgpID0+IHtcbiAgICAgIHJlbmRlcihcbiAgICAgICAgPEZlZWRiYWNrTWVudSBvbkNoYW5nZT17b25DaGFuZ2V9IHZhbHVlPXt7IHR5cGU6ICdub25lJyB9fSBjbGFzc2VzPXt7fX0gLz5cbiAgICAgICk7XG4gICAgICBjb25zdCBidXR0b24gPSBzY3JlZW4uZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9GZWVkYmFjayBkaXNhYmxlZC9pIH0pO1xuICAgICAgZXhwZWN0KGJ1dHRvbikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxhQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFFQUksUUFBUSxDQUFDLGVBQWUsRUFBRSxZQUFNO0VBQzlCLElBQU1DLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxFQUFFLENBQUMsQ0FBQztFQUUxQkMsVUFBVSxDQUFDLFlBQU07SUFDZkgsUUFBUSxDQUFDSSxTQUFTLENBQUMsQ0FBQztFQUN0QixDQUFDLENBQUM7RUFFRkwsUUFBUSxDQUFDLFdBQVcsRUFBRSxZQUFNO0lBQzFCTSxFQUFFLENBQUMsNENBQTRDLEVBQUUsWUFBTTtNQUNyRCxJQUFBQyxPQUFBLEdBQXNCLElBQUFDLGNBQU0sZUFBQ2QsTUFBQSxZQUFBZSxhQUFBLENBQUNWLGFBQUEsV0FBWTtVQUFDRSxRQUFRLEVBQUVBLFFBQVM7VUFBQ1MsT0FBTyxFQUFFLENBQUM7UUFBRSxDQUFFLENBQUMsQ0FBQztRQUF2RUMsU0FBUyxHQUFBSixPQUFBLENBQVRJLFNBQVM7TUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDRSxVQUFVLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUMsQ0FBQztJQUNsRCxDQUFDLENBQUM7SUFFRlIsRUFBRSxDQUFDLDBDQUEwQyxFQUFFLFlBQU07TUFDbkQsSUFBQUUsY0FBTSxlQUFDZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1FBQUNFLFFBQVEsRUFBRUEsUUFBUztRQUFDYyxLQUFLLEVBQUU7VUFBRUMsSUFBSSxFQUFFO1FBQVUsQ0FBRTtRQUFDTixPQUFPLEVBQUUsQ0FBQztNQUFFLENBQUUsQ0FBQyxDQUFDO01BQ3JGO01BQ0FFLE1BQU0sQ0FBQ0ssY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQ0osaUJBQWlCLENBQUMsQ0FBQztJQUN4RCxDQUFDLENBQUM7SUFFRlIsRUFBRSxDQUFDLCtCQUErQixFQUFFLFlBQU07TUFDeEMsSUFBQUUsY0FBTSxlQUFDZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1FBQUNFLFFBQVEsRUFBRUEsUUFBUztRQUFDYyxLQUFLLEVBQUU7VUFBRUMsSUFBSSxFQUFFO1FBQU8sQ0FBRTtRQUFDTixPQUFPLEVBQUUsQ0FBQztNQUFFLENBQUUsQ0FBQyxDQUFDO01BQ2xGRSxNQUFNLENBQUNLLGNBQU0sQ0FBQ0MsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUNKLGlCQUFpQixDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDO0lBRUZSLEVBQUUsQ0FBQyxtQ0FBbUMsRUFBRSxZQUFNO01BQzVDLElBQUFFLGNBQU0sZUFBQ2QsTUFBQSxZQUFBZSxhQUFBLENBQUNWLGFBQUEsV0FBWTtRQUFDRSxRQUFRLEVBQUVBLFFBQVM7UUFBQ2MsS0FBSyxFQUFFO1VBQUVDLElBQUksRUFBRTtRQUFTLENBQUU7UUFBQ04sT0FBTyxFQUFFLENBQUM7TUFBRSxDQUFFLENBQUMsQ0FBQztNQUNwRkUsTUFBTSxDQUFDSyxjQUFNLENBQUNDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDSixpQkFBaUIsQ0FBQyxDQUFDO0lBQ3hELENBQUMsQ0FBQztJQUVGUixFQUFFLENBQUMsOEJBQThCLEVBQUUsWUFBTTtNQUN2QyxJQUFBRSxjQUFNLGVBQUNkLE1BQUEsWUFBQWUsYUFBQSxDQUFDVixhQUFBLFdBQVk7UUFBQ0UsUUFBUSxFQUFFQSxRQUFTO1FBQUNTLE9BQU8sRUFBRSxDQUFDO01BQUUsQ0FBRSxDQUFDLENBQUM7TUFDekQsSUFBTVMsTUFBTSxHQUFHRixjQUFNLENBQUNDLFNBQVMsQ0FBQyxRQUFRLENBQUM7TUFDekNOLE1BQU0sQ0FBQ08sTUFBTSxDQUFDLENBQUNMLGlCQUFpQixDQUFDLENBQUM7SUFDcEMsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZkLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxZQUFNO0lBQ2xDTSxFQUFFLENBQUMsbUNBQW1DLG1CQUFBYyxrQkFBQSwwQkFBQUMsWUFBQSxZQUFBQyxJQUFBLENBQUUsU0FBQUMsUUFBQTtNQUFBLElBQUFDLElBQUEsRUFBQUwsTUFBQTtNQUFBLE9BQUFFLFlBQUEsWUFBQUksSUFBQSxXQUFBQyxRQUFBO1FBQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7VUFBQTtZQUNoQ0osSUFBSSxHQUFHSyxxQkFBUyxDQUFDQyxLQUFLLENBQUMsQ0FBQztZQUM5QixJQUFBdEIsY0FBTSxlQUFDZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO2NBQUNFLFFBQVEsRUFBRUEsUUFBUztjQUFDYyxLQUFLLEVBQUU7Z0JBQUVDLElBQUksRUFBRTtjQUFVLENBQUU7Y0FBQ04sT0FBTyxFQUFFLENBQUM7WUFBRSxDQUFFLENBQUMsQ0FBQztZQUUvRVMsTUFBTSxHQUFHRixjQUFNLENBQUNDLFNBQVMsQ0FBQyxRQUFRLENBQUM7WUFBQVEsUUFBQSxDQUFBRSxJQUFBO1lBQUEsT0FDbkNKLElBQUksQ0FBQ08sS0FBSyxDQUFDWixNQUFNLENBQUM7VUFBQTtZQUV4QjtZQUNBUCxNQUFNLENBQUNLLGNBQU0sQ0FBQ2UsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUNsQixpQkFBaUIsQ0FBQyxDQUFDO1lBQzNERixNQUFNLENBQUNLLGNBQU0sQ0FBQ2UsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUNsQixpQkFBaUIsQ0FBQyxDQUFDO1lBQ3ZERixNQUFNLENBQUNLLGNBQU0sQ0FBQ2UsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUNsQixpQkFBaUIsQ0FBQyxDQUFDO1VBQUM7VUFBQTtZQUFBLE9BQUFZLFFBQUEsQ0FBQU8sSUFBQTtRQUFBO01BQUEsR0FBQVYsT0FBQTtJQUFBLENBQ3hELEdBQUM7SUFFRmpCLEVBQUUsQ0FBQyx5REFBeUQsbUJBQUFjLGtCQUFBLDBCQUFBQyxZQUFBLFlBQUFDLElBQUEsQ0FBRSxTQUFBWSxTQUFBO01BQUEsSUFBQVYsSUFBQSxFQUFBTCxNQUFBLEVBQUFnQixnQkFBQTtNQUFBLE9BQUFkLFlBQUEsWUFBQUksSUFBQSxXQUFBVyxTQUFBO1FBQUEsa0JBQUFBLFNBQUEsQ0FBQVQsSUFBQSxHQUFBUyxTQUFBLENBQUFSLElBQUE7VUFBQTtZQUN0REosSUFBSSxHQUFHSyxxQkFBUyxDQUFDQyxLQUFLLENBQUMsQ0FBQztZQUM5QixJQUFBdEIsY0FBTSxlQUFDZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO2NBQUNFLFFBQVEsRUFBRUEsUUFBUztjQUFDYyxLQUFLLEVBQUU7Z0JBQUVDLElBQUksRUFBRTtjQUFVLENBQUU7Y0FBQ04sT0FBTyxFQUFFLENBQUM7WUFBRSxDQUFFLENBQUMsQ0FBQztZQUUvRVMsTUFBTSxHQUFHRixjQUFNLENBQUNDLFNBQVMsQ0FBQyxRQUFRLENBQUM7WUFBQWtCLFNBQUEsQ0FBQVIsSUFBQTtZQUFBLE9BQ25DSixJQUFJLENBQUNPLEtBQUssQ0FBQ1osTUFBTSxDQUFDO1VBQUE7WUFFbEJnQixnQkFBZ0IsR0FBR2xCLGNBQU0sQ0FBQ2UsU0FBUyxDQUFDLGFBQWEsQ0FBQztZQUFBSSxTQUFBLENBQUFSLElBQUE7WUFBQSxPQUNsREosSUFBSSxDQUFDTyxLQUFLLENBQUNJLGdCQUFnQixDQUFDO1VBQUE7WUFFbEN2QixNQUFNLENBQUNYLFFBQVEsQ0FBQyxDQUFDb0Msb0JBQW9CLENBQUMsTUFBTSxDQUFDO1VBQUM7VUFBQTtZQUFBLE9BQUFELFNBQUEsQ0FBQUgsSUFBQTtRQUFBO01BQUEsR0FBQUMsUUFBQTtJQUFBLENBQy9DLEdBQUM7SUFFRjVCLEVBQUUsQ0FBQyx3REFBd0QsbUJBQUFjLGtCQUFBLDBCQUFBQyxZQUFBLFlBQUFDLElBQUEsQ0FBRSxTQUFBZ0IsU0FBQTtNQUFBLElBQUFkLElBQUEsRUFBQUwsTUFBQSxFQUFBb0IsYUFBQTtNQUFBLE9BQUFsQixZQUFBLFlBQUFJLElBQUEsV0FBQWUsU0FBQTtRQUFBLGtCQUFBQSxTQUFBLENBQUFiLElBQUEsR0FBQWEsU0FBQSxDQUFBWixJQUFBO1VBQUE7WUFDckRKLElBQUksR0FBR0sscUJBQVMsQ0FBQ0MsS0FBSyxDQUFDLENBQUM7WUFDOUIsSUFBQXRCLGNBQU0sZUFBQ2QsTUFBQSxZQUFBZSxhQUFBLENBQUNWLGFBQUEsV0FBWTtjQUFDRSxRQUFRLEVBQUVBLFFBQVM7Y0FBQ2MsS0FBSyxFQUFFO2dCQUFFQyxJQUFJLEVBQUU7Y0FBTyxDQUFFO2NBQUNOLE9BQU8sRUFBRSxDQUFDO1lBQUUsQ0FBRSxDQUFDLENBQUM7WUFFNUVTLE1BQU0sR0FBR0YsY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxDQUFDO1lBQUFzQixTQUFBLENBQUFaLElBQUE7WUFBQSxPQUNuQ0osSUFBSSxDQUFDTyxLQUFLLENBQUNaLE1BQU0sQ0FBQztVQUFBO1lBRWxCb0IsYUFBYSxHQUFHdEIsY0FBTSxDQUFDZSxTQUFTLENBQUMsU0FBUyxDQUFDO1lBQUFRLFNBQUEsQ0FBQVosSUFBQTtZQUFBLE9BQzNDSixJQUFJLENBQUNPLEtBQUssQ0FBQ1EsYUFBYSxDQUFDO1VBQUE7WUFFL0IzQixNQUFNLENBQUNYLFFBQVEsQ0FBQyxDQUFDb0Msb0JBQW9CLENBQUMsU0FBUyxDQUFDO1VBQUM7VUFBQTtZQUFBLE9BQUFHLFNBQUEsQ0FBQVAsSUFBQTtRQUFBO01BQUEsR0FBQUssUUFBQTtJQUFBLENBQ2xELEdBQUM7SUFFRmhDLEVBQUUsQ0FBQyxzREFBc0QsbUJBQUFjLGtCQUFBLDBCQUFBQyxZQUFBLFlBQUFDLElBQUEsQ0FBRSxTQUFBbUIsU0FBQTtNQUFBLElBQUFqQixJQUFBLEVBQUFMLE1BQUEsRUFBQXVCLFlBQUE7TUFBQSxPQUFBckIsWUFBQSxZQUFBSSxJQUFBLFdBQUFrQixTQUFBO1FBQUEsa0JBQUFBLFNBQUEsQ0FBQWhCLElBQUEsR0FBQWdCLFNBQUEsQ0FBQWYsSUFBQTtVQUFBO1lBQ25ESixJQUFJLEdBQUdLLHFCQUFTLENBQUNDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLElBQUF0QixjQUFNLGVBQUNkLE1BQUEsWUFBQWUsYUFBQSxDQUFDVixhQUFBLFdBQVk7Y0FBQ0UsUUFBUSxFQUFFQSxRQUFTO2NBQUNjLEtBQUssRUFBRTtnQkFBRUMsSUFBSSxFQUFFO2NBQU8sQ0FBRTtjQUFDTixPQUFPLEVBQUUsQ0FBQztZQUFFLENBQUUsQ0FBQyxDQUFDO1lBRTVFUyxNQUFNLEdBQUdGLGNBQU0sQ0FBQ0MsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUFBeUIsU0FBQSxDQUFBZixJQUFBO1lBQUEsT0FDbkNKLElBQUksQ0FBQ08sS0FBSyxDQUFDWixNQUFNLENBQUM7VUFBQTtZQUVsQnVCLFlBQVksR0FBR3pCLGNBQU0sQ0FBQ2UsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUFBVyxTQUFBLENBQUFmLElBQUE7WUFBQSxPQUN6Q0osSUFBSSxDQUFDTyxLQUFLLENBQUNXLFlBQVksQ0FBQztVQUFBO1lBRTlCOUIsTUFBTSxDQUFDWCxRQUFRLENBQUMsQ0FBQ29DLG9CQUFvQixDQUFDLFFBQVEsQ0FBQztVQUFDO1VBQUE7WUFBQSxPQUFBTSxTQUFBLENBQUFWLElBQUE7UUFBQTtNQUFBLEdBQUFRLFFBQUE7SUFBQSxDQUNqRCxHQUFDO0lBRUZuQyxFQUFFLENBQUMsNkJBQTZCLG1CQUFBYyxrQkFBQSwwQkFBQUMsWUFBQSxZQUFBQyxJQUFBLENBQUUsU0FBQXNCLFNBQUE7TUFBQSxJQUFBcEIsSUFBQSxFQUFBTCxNQUFBLEVBQUFnQixnQkFBQTtNQUFBLE9BQUFkLFlBQUEsWUFBQUksSUFBQSxXQUFBb0IsU0FBQTtRQUFBLGtCQUFBQSxTQUFBLENBQUFsQixJQUFBLEdBQUFrQixTQUFBLENBQUFqQixJQUFBO1VBQUE7WUFDMUJKLElBQUksR0FBR0sscUJBQVMsQ0FBQ0MsS0FBSyxDQUFDLENBQUM7WUFDOUIsSUFBQXRCLGNBQU0sZUFBQ2QsTUFBQSxZQUFBZSxhQUFBLENBQUNWLGFBQUEsV0FBWTtjQUFDRSxRQUFRLEVBQUVBLFFBQVM7Y0FBQ2MsS0FBSyxFQUFFO2dCQUFFQyxJQUFJLEVBQUU7Y0FBVSxDQUFFO2NBQUNOLE9BQU8sRUFBRSxDQUFDO1lBQUUsQ0FBRSxDQUFDLENBQUM7WUFFL0VTLE1BQU0sR0FBR0YsY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxDQUFDO1lBQUEyQixTQUFBLENBQUFqQixJQUFBO1lBQUEsT0FDbkNKLElBQUksQ0FBQ08sS0FBSyxDQUFDWixNQUFNLENBQUM7VUFBQTtZQUV4QlAsTUFBTSxDQUFDSyxjQUFNLENBQUNlLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDbEIsaUJBQWlCLENBQUMsQ0FBQztZQUVyRHFCLGdCQUFnQixHQUFHbEIsY0FBTSxDQUFDZSxTQUFTLENBQUMsYUFBYSxDQUFDO1lBQUFhLFNBQUEsQ0FBQWpCLElBQUE7WUFBQSxPQUNsREosSUFBSSxDQUFDTyxLQUFLLENBQUNJLGdCQUFnQixDQUFDO1VBQUE7WUFFbEM7WUFDQXZCLE1BQU0sQ0FBQ1gsUUFBUSxDQUFDLENBQUNvQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7VUFBQztVQUFBO1lBQUEsT0FBQVEsU0FBQSxDQUFBWixJQUFBO1FBQUE7TUFBQSxHQUFBVyxRQUFBO0lBQUEsQ0FDL0MsR0FBQztFQUNKLENBQUMsQ0FBQztFQUVGNUMsUUFBUSxDQUFDLDBCQUEwQixFQUFFLFlBQU07SUFDekNNLEVBQUUsQ0FBQywrQ0FBK0MsRUFBRSxZQUFNO01BQ3hELElBQUF3QyxRQUFBLEdBQXNCLElBQUF0QyxjQUFNLGVBQzFCZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1VBQUNFLFFBQVEsRUFBRUEsUUFBUztVQUFDYyxLQUFLLEVBQUU7WUFBRUMsSUFBSSxFQUFFO1VBQVUsQ0FBRTtVQUFDTixPQUFPLEVBQUUsQ0FBQztRQUFFLENBQUUsQ0FDOUUsQ0FBQztRQUZPQyxTQUFTLEdBQUFtQyxRQUFBLENBQVRuQyxTQUFTO01BR2pCO01BQ0FDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDb0MsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUNqQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVELENBQUMsQ0FBQztJQUVGUixFQUFFLENBQUMsOENBQThDLEVBQUUsWUFBTTtNQUN2RCxJQUFBMEMsUUFBQSxHQUFzQixJQUFBeEMsY0FBTSxlQUMxQmQsTUFBQSxZQUFBZSxhQUFBLENBQUNWLGFBQUEsV0FBWTtVQUFDRSxRQUFRLEVBQUVBLFFBQVM7VUFBQ2MsS0FBSyxFQUFFO1lBQUVDLElBQUksRUFBRTtVQUFTLENBQUU7VUFBQ04sT0FBTyxFQUFFLENBQUM7UUFBRSxDQUFFLENBQzdFLENBQUM7UUFGT0MsU0FBUyxHQUFBcUMsUUFBQSxDQUFUckMsU0FBUztNQUdqQjtNQUNBQyxNQUFNLENBQUNELFNBQVMsQ0FBQ29DLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDakMsaUJBQWlCLENBQUMsQ0FBQztJQUM1RCxDQUFDLENBQUM7SUFFRlIsRUFBRSxDQUFDLGdEQUFnRCxFQUFFLFlBQU07TUFDekQsSUFBQTJDLFFBQUEsR0FBc0IsSUFBQXpDLGNBQU0sZUFDMUJkLE1BQUEsWUFBQWUsYUFBQSxDQUFDVixhQUFBLFdBQVk7VUFBQ0UsUUFBUSxFQUFFQSxRQUFTO1VBQUNjLEtBQUssRUFBRTtZQUFFQyxJQUFJLEVBQUU7VUFBTyxDQUFFO1VBQUNOLE9BQU8sRUFBRSxDQUFDO1FBQUUsQ0FBRSxDQUMzRSxDQUFDO1FBRk9DLFNBQVMsR0FBQXNDLFFBQUEsQ0FBVHRDLFNBQVM7TUFHakI7TUFDQUMsTUFBTSxDQUFDRCxTQUFTLENBQUNvQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQ2pDLGlCQUFpQixDQUFDLENBQUM7SUFDNUQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUZkLFFBQVEsQ0FBQyxhQUFhLEVBQUUsWUFBTTtJQUM1Qk0sRUFBRSxDQUFDLCtDQUErQyxFQUFFLFlBQU07TUFDeEQsSUFBQUUsY0FBTSxlQUNKZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1FBQUNFLFFBQVEsRUFBRUEsUUFBUztRQUFDYyxLQUFLLEVBQUU7VUFBRUMsSUFBSSxFQUFFO1FBQVUsQ0FBRTtRQUFDTixPQUFPLEVBQUUsQ0FBQztNQUFFLENBQUUsQ0FDOUUsQ0FBQztNQUNELElBQU1TLE1BQU0sR0FBR0YsY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxFQUFFO1FBQUVnQyxJQUFJLEVBQUU7TUFBb0IsQ0FBQyxDQUFDO01BQ3hFdEMsTUFBTSxDQUFDTyxNQUFNLENBQUMsQ0FBQ0wsaUJBQWlCLENBQUMsQ0FBQztJQUNwQyxDQUFDLENBQUM7SUFFRlIsRUFBRSxDQUFDLDhDQUE4QyxFQUFFLFlBQU07TUFDdkQsSUFBQUUsY0FBTSxlQUNKZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1FBQUNFLFFBQVEsRUFBRUEsUUFBUztRQUFDYyxLQUFLLEVBQUU7VUFBRUMsSUFBSSxFQUFFO1FBQVMsQ0FBRTtRQUFDTixPQUFPLEVBQUUsQ0FBQztNQUFFLENBQUUsQ0FDN0UsQ0FBQztNQUNELElBQU1TLE1BQU0sR0FBR0YsY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxFQUFFO1FBQUVnQyxJQUFJLEVBQUU7TUFBbUIsQ0FBQyxDQUFDO01BQ3ZFdEMsTUFBTSxDQUFDTyxNQUFNLENBQUMsQ0FBQ0wsaUJBQWlCLENBQUMsQ0FBQztJQUNwQyxDQUFDLENBQUM7SUFFRlIsRUFBRSxDQUFDLGdEQUFnRCxFQUFFLFlBQU07TUFDekQsSUFBQUUsY0FBTSxlQUNKZCxNQUFBLFlBQUFlLGFBQUEsQ0FBQ1YsYUFBQSxXQUFZO1FBQUNFLFFBQVEsRUFBRUEsUUFBUztRQUFDYyxLQUFLLEVBQUU7VUFBRUMsSUFBSSxFQUFFO1FBQU8sQ0FBRTtRQUFDTixPQUFPLEVBQUUsQ0FBQztNQUFFLENBQUUsQ0FDM0UsQ0FBQztNQUNELElBQU1TLE1BQU0sR0FBR0YsY0FBTSxDQUFDQyxTQUFTLENBQUMsUUFBUSxFQUFFO1FBQUVnQyxJQUFJLEVBQUU7TUFBcUIsQ0FBQyxDQUFDO01BQ3pFdEMsTUFBTSxDQUFDTyxNQUFNLENBQUMsQ0FBQ0wsaUJBQWlCLENBQUMsQ0FBQztJQUNwQyxDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|