@pie-lib/config-ui 11.11.0-beta.0 → 11.11.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.
Files changed (50) hide show
  1. package/CHANGELOG.json +8 -1653
  2. package/CHANGELOG.md +81 -39
  3. package/package.json +8 -5
  4. package/src/checkbox.jsx +5 -9
  5. package/src/inputs.jsx +2 -2
  6. package/src/radio-with-label.jsx +3 -9
  7. package/src/settings/settings-radio-label.jsx +2 -8
  8. package/lib/__tests__/choice-utils.test.js +0 -16
  9. package/lib/__tests__/langs.test.js +0 -55
  10. package/lib/__tests__/number-text-field.test.js +0 -128
  11. package/lib/__tests__/settings-panel.test.js +0 -201
  12. package/lib/__tests__/two-choice.test.js +0 -33
  13. package/lib/alert-dialog.js +0 -75
  14. package/lib/checkbox.js +0 -99
  15. package/lib/choice-configuration/__tests__/feedback-menu.test.js +0 -20
  16. package/lib/choice-configuration/__tests__/index.test.js +0 -119
  17. package/lib/choice-configuration/feedback-menu.js +0 -164
  18. package/lib/choice-configuration/index.js +0 -445
  19. package/lib/choice-utils.js +0 -54
  20. package/lib/feedback-config/__tests__/feedback-config.test.js +0 -78
  21. package/lib/feedback-config/__tests__/feedback-selector.test.js +0 -71
  22. package/lib/feedback-config/feedback-selector.js +0 -195
  23. package/lib/feedback-config/group.js +0 -75
  24. package/lib/feedback-config/index.js +0 -189
  25. package/lib/form-section.js +0 -46
  26. package/lib/help.js +0 -147
  27. package/lib/index.js +0 -216
  28. package/lib/input.js +0 -139
  29. package/lib/inputs.js +0 -139
  30. package/lib/langs.js +0 -179
  31. package/lib/layout/__tests__/config.layout.test.js +0 -33
  32. package/lib/layout/__tests__/layout-content.test.js +0 -6
  33. package/lib/layout/config-layout.js +0 -143
  34. package/lib/layout/index.js +0 -24
  35. package/lib/layout/layout-contents.js +0 -191
  36. package/lib/layout/settings-box.js +0 -86
  37. package/lib/mui-box/index.js +0 -79
  38. package/lib/number-text-field-custom.js +0 -458
  39. package/lib/number-text-field.js +0 -267
  40. package/lib/radio-with-label.js +0 -49
  41. package/lib/settings/display-size.js +0 -77
  42. package/lib/settings/index.js +0 -143
  43. package/lib/settings/panel.js +0 -463
  44. package/lib/settings/settings-radio-label.js +0 -53
  45. package/lib/settings/toggle.js +0 -74
  46. package/lib/tabs/index.js +0 -110
  47. package/lib/tags-input/__tests__/index.test.js +0 -88
  48. package/lib/tags-input/index.js +0 -198
  49. package/lib/two-choice.js +0 -180
  50. package/lib/with-stateful-model.js +0 -84
@@ -1,445 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.ChoiceConfiguration = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _styles = require("@material-ui/core/styles");
31
-
32
- var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
33
-
34
- var _Delete = _interopRequireDefault(require("@material-ui/icons/Delete"));
35
-
36
- var _SubdirectoryArrowRight = _interopRequireDefault(require("@material-ui/icons/SubdirectoryArrowRight"));
37
-
38
- var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
39
-
40
- var _classnames = _interopRequireDefault(require("classnames"));
41
-
42
- var _renderUi = require("@pie-lib/render-ui");
43
-
44
- var _editableHtml = _interopRequireDefault(require("@pie-lib/editable-html"));
45
-
46
- var _inputs = require("../inputs");
47
-
48
- var _feedbackMenu = _interopRequireDefault(require("./feedback-menu"));
49
-
50
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
51
-
52
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
53
-
54
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
55
-
56
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
57
-
58
- var EditableHtmlContainer = (0, _styles.withStyles)(function (theme) {
59
- return {
60
- labelContainer: {},
61
- editorHolder: {
62
- marginTop: theme.spacing.unit * 2
63
- }
64
- };
65
- })(function (_ref) {
66
- var label = _ref.label,
67
- classes = _ref.classes,
68
- onChange = _ref.onChange,
69
- value = _ref.value,
70
- className = _ref.className,
71
- imageSupport = _ref.imageSupport,
72
- disableImageAlignmentButtons = _ref.disableImageAlignmentButtons,
73
- disabled = _ref.disabled,
74
- spellCheck = _ref.spellCheck,
75
- nonEmpty = _ref.nonEmpty,
76
- pluginOpts = _ref.pluginOpts,
77
- toolbarOpts = _ref.toolbarOpts,
78
- error = _ref.error,
79
- maxImageWidth = _ref.maxImageWidth,
80
- maxImageHeight = _ref.maxImageHeight,
81
- uploadSoundSupport = _ref.uploadSoundSupport,
82
- _ref$mathMlOptions = _ref.mathMlOptions,
83
- mathMlOptions = _ref$mathMlOptions === void 0 ? {} : _ref$mathMlOptions;
84
- var names = (0, _classnames["default"])(classes.labelContainer, className);
85
- return /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
86
- label: label,
87
- className: names
88
- }, /*#__PURE__*/_react["default"].createElement("div", {
89
- className: classes.editorHolder
90
- }, /*#__PURE__*/_react["default"].createElement(_editableHtml["default"], {
91
- markup: value || '',
92
- disabled: disabled,
93
- spellCheck: spellCheck,
94
- nonEmpty: nonEmpty,
95
- onChange: onChange,
96
- imageSupport: imageSupport,
97
- disableImageAlignmentButtons: disableImageAlignmentButtons,
98
- className: classes.editor,
99
- pluginProps: pluginOpts || {},
100
- toolbarOpts: toolbarOpts,
101
- error: error,
102
- maxImageWidth: maxImageWidth,
103
- maxImageHeight: maxImageHeight,
104
- uploadSoundSupport: uploadSoundSupport,
105
- languageCharactersProps: [{
106
- language: 'spanish'
107
- }, {
108
- language: 'special'
109
- }],
110
- mathMlOptions: mathMlOptions
111
- })));
112
- });
113
- var Feedback = (0, _styles.withStyles)(function (theme) {
114
- return {
115
- text: {
116
- width: '100%'
117
- },
118
- feedbackContainer: {
119
- position: 'relative'
120
- },
121
- arrowIcon: {
122
- fill: theme.palette.grey[400],
123
- left: -56,
124
- position: 'absolute',
125
- top: 20
126
- }
127
- };
128
- })(function (_ref2) {
129
- var value = _ref2.value,
130
- onChange = _ref2.onChange,
131
- type = _ref2.type,
132
- correct = _ref2.correct,
133
- classes = _ref2.classes,
134
- defaults = _ref2.defaults,
135
- toolbarOpts = _ref2.toolbarOpts,
136
- _ref2$mathMlOptions = _ref2.mathMlOptions,
137
- mathMlOptions = _ref2$mathMlOptions === void 0 ? {} : _ref2$mathMlOptions;
138
-
139
- if (!type || type === 'none') {
140
- return null;
141
- } else if (type === 'default') {
142
- return /*#__PURE__*/_react["default"].createElement("div", {
143
- className: classes.feedbackContainer
144
- }, /*#__PURE__*/_react["default"].createElement(_SubdirectoryArrowRight["default"], {
145
- className: classes.arrowIcon
146
- }), /*#__PURE__*/_react["default"].createElement(_TextField["default"], {
147
- className: classes.text,
148
- label: "Feedback Text",
149
- value: correct ? defaults.correct : defaults.incorrect
150
- }));
151
- } else {
152
- return /*#__PURE__*/_react["default"].createElement("div", {
153
- className: classes.feedbackContainer
154
- }, /*#__PURE__*/_react["default"].createElement(_SubdirectoryArrowRight["default"], {
155
- className: classes.arrowIcon
156
- }), /*#__PURE__*/_react["default"].createElement(EditableHtmlContainer, {
157
- className: classes.text,
158
- label: "Feedback Text",
159
- value: value,
160
- onChange: onChange,
161
- toolbarOpts: toolbarOpts,
162
- mathMlOptions: mathMlOptions
163
- }));
164
- }
165
- });
166
-
167
- var ChoiceConfiguration = /*#__PURE__*/function (_React$Component) {
168
- (0, _inherits2["default"])(ChoiceConfiguration, _React$Component);
169
-
170
- var _super = _createSuper(ChoiceConfiguration);
171
-
172
- function ChoiceConfiguration() {
173
- var _this;
174
-
175
- (0, _classCallCheck2["default"])(this, ChoiceConfiguration);
176
-
177
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
178
- args[_key] = arguments[_key];
179
- }
180
-
181
- _this = _super.call.apply(_super, [this].concat(args));
182
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_changeFn", function (key) {
183
- return function (update) {
184
- var _this$props = _this.props,
185
- data = _this$props.data,
186
- onChange = _this$props.onChange;
187
-
188
- if (onChange) {
189
- onChange(_objectSpread(_objectSpread({}, data), {}, (0, _defineProperty2["default"])({}, key, update)));
190
- }
191
- };
192
- });
193
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onLabelChange", _this._changeFn('label'));
194
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onCheckedChange", function (event) {
195
- var correct = event.target.checked;
196
- var _this$props2 = _this.props,
197
- data = _this$props2.data,
198
- onChange = _this$props2.onChange;
199
-
200
- if (onChange) {
201
- onChange(_objectSpread(_objectSpread({}, data), {}, {
202
- correct: correct
203
- }));
204
- }
205
- });
206
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onFeedbackValueChange", function (v) {
207
- var _this$props3 = _this.props,
208
- data = _this$props3.data,
209
- onChange = _this$props3.onChange;
210
-
211
- if (data.feedback.type !== 'custom') {
212
- return;
213
- }
214
-
215
- var fb = _objectSpread(_objectSpread({}, data.feedback), {}, {
216
- value: v
217
- });
218
-
219
- if (onChange) onChange(_objectSpread(_objectSpread({}, data), {}, {
220
- feedback: fb
221
- }));
222
- });
223
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onFeedbackTypeChange", function (t) {
224
- var _this$props4 = _this.props,
225
- data = _this$props4.data,
226
- onChange = _this$props4.onChange;
227
-
228
- var fb = _objectSpread(_objectSpread({}, data.feedback), {}, {
229
- type: t
230
- });
231
-
232
- if (fb.type !== 'custom') {
233
- fb.value = undefined;
234
- }
235
-
236
- if (onChange) onChange(_objectSpread(_objectSpread({}, data), {}, {
237
- feedback: fb
238
- }));
239
- });
240
- return _this;
241
- }
242
-
243
- (0, _createClass2["default"])(ChoiceConfiguration, [{
244
- key: "render",
245
- value: function render() {
246
- var _this$props5 = this.props,
247
- data = _this$props5.data,
248
- classes = _this$props5.classes,
249
- mode = _this$props5.mode,
250
- onDelete = _this$props5.onDelete,
251
- defaultFeedback = _this$props5.defaultFeedback,
252
- index = _this$props5.index,
253
- className = _this$props5.className,
254
- noLabels = _this$props5.noLabels,
255
- useLetterOrdering = _this$props5.useLetterOrdering,
256
- imageSupport = _this$props5.imageSupport,
257
- disableImageAlignmentButtons = _this$props5.disableImageAlignmentButtons,
258
- disabled = _this$props5.disabled,
259
- spellCheck = _this$props5.spellCheck,
260
- nonEmpty = _this$props5.nonEmpty,
261
- allowFeedBack = _this$props5.allowFeedBack,
262
- allowDelete = _this$props5.allowDelete,
263
- pluginOpts = _this$props5.pluginOpts,
264
- toolbarOpts = _this$props5.toolbarOpts,
265
- error = _this$props5.error,
266
- noCorrectAnswerError = _this$props5.noCorrectAnswerError,
267
- uploadSoundSupport = _this$props5.uploadSoundSupport,
268
- maxImageWidth = _this$props5.maxImageWidth,
269
- maxImageHeight = _this$props5.maxImageHeight,
270
- _this$props5$mathMlOp = _this$props5.mathMlOptions,
271
- mathMlOptions = _this$props5$mathMlOp === void 0 ? {} : _this$props5$mathMlOp;
272
- var InputToggle = mode === 'checkbox' ? _inputs.InputCheckbox : _inputs.InputRadio;
273
- var names = (0, _classnames["default"])(classes.choiceConfiguration, className);
274
- return /*#__PURE__*/_react["default"].createElement("div", {
275
- className: names
276
- }, /*#__PURE__*/_react["default"].createElement("div", {
277
- className: classes.topRow
278
- }, index > 0 && /*#__PURE__*/_react["default"].createElement("span", {
279
- className: classes.index,
280
- type: "title"
281
- }, useLetterOrdering ? String.fromCharCode(96 + index).toUpperCase() : index), /*#__PURE__*/_react["default"].createElement(InputToggle, {
282
- className: classes.toggle,
283
- onChange: this.onCheckedChange,
284
- label: !noLabels ? 'Correct' : '',
285
- checked: !!data.correct,
286
- error: noCorrectAnswerError
287
- }), /*#__PURE__*/_react["default"].createElement("div", {
288
- className: classes.middleColumn
289
- }, /*#__PURE__*/_react["default"].createElement(EditableHtmlContainer, {
290
- className: classes.input,
291
- label: !noLabels ? 'Label' : '',
292
- value: data.label,
293
- onChange: this.onLabelChange,
294
- imageSupport: imageSupport,
295
- disableImageAlignmentButtons: disableImageAlignmentButtons,
296
- disabled: disabled,
297
- spellCheck: spellCheck,
298
- nonEmpty: nonEmpty,
299
- pluginOpts: pluginOpts,
300
- toolbarOpts: toolbarOpts,
301
- error: error,
302
- uploadSoundSupport: uploadSoundSupport,
303
- mathMlOptions: mathMlOptions,
304
- maxImageWidth: maxImageWidth,
305
- maxImageHeight: maxImageHeight
306
- }), error && /*#__PURE__*/_react["default"].createElement("div", {
307
- className: classes.errorText
308
- }, error), allowFeedBack && /*#__PURE__*/_react["default"].createElement(Feedback, (0, _extends2["default"])({}, data.feedback, {
309
- correct: data.correct,
310
- defaults: defaultFeedback,
311
- onChange: this.onFeedbackValueChange,
312
- toolbarOpts: toolbarOpts
313
- }))), allowFeedBack && /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
314
- className: classes.feedback,
315
- label: !noLabels ? 'Feedback' : ''
316
- }, /*#__PURE__*/_react["default"].createElement(_feedbackMenu["default"], {
317
- onChange: this.onFeedbackTypeChange,
318
- value: data.feedback,
319
- classes: {
320
- icon: classes.feedbackIcon
321
- }
322
- })), allowDelete && /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
323
- className: classes["delete"],
324
- label: !noLabels ? 'Delete' : ''
325
- }, /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
326
- "aria-label": "delete",
327
- className: classes.deleteIcon,
328
- onClick: onDelete
329
- }, /*#__PURE__*/_react["default"].createElement(_Delete["default"], null)))));
330
- }
331
- }]);
332
- return ChoiceConfiguration;
333
- }(_react["default"].Component);
334
-
335
- exports.ChoiceConfiguration = ChoiceConfiguration;
336
- (0, _defineProperty2["default"])(ChoiceConfiguration, "propTypes", {
337
- classes: _propTypes["default"].object.isRequired,
338
- noLabels: _propTypes["default"].bool,
339
- useLetterOrdering: _propTypes["default"].bool,
340
- className: _propTypes["default"].string,
341
- error: _propTypes["default"].string,
342
- mode: _propTypes["default"].oneOf(['checkbox', 'radio']),
343
- defaultFeedback: _propTypes["default"].object.isRequired,
344
- disabled: _propTypes["default"].bool,
345
- nonEmpty: _propTypes["default"].bool,
346
- data: _propTypes["default"].shape({
347
- label: _propTypes["default"].string.isRequired,
348
- value: _propTypes["default"].string.isRequired,
349
- correct: _propTypes["default"].bool,
350
- feedback: _propTypes["default"].shape({
351
- type: _propTypes["default"].string,
352
- value: _propTypes["default"].string
353
- })
354
- }),
355
- onDelete: _propTypes["default"].func,
356
- onChange: _propTypes["default"].func,
357
- index: _propTypes["default"].number,
358
- imageSupport: _propTypes["default"].shape({
359
- add: _propTypes["default"].func.isRequired,
360
- "delete": _propTypes["default"].func.isRequired
361
- }),
362
- disableImageAlignmentButtons: _propTypes["default"].bool,
363
- allowFeedBack: _propTypes["default"].bool,
364
- allowDelete: _propTypes["default"].bool,
365
- noCorrectAnswerError: _propTypes["default"].string,
366
- spellCheck: _propTypes["default"].bool,
367
- pluginOpts: _propTypes["default"].object,
368
- toolbarOpts: _propTypes["default"].object,
369
- uploadSoundSupport: _propTypes["default"].object,
370
- maxImageWidth: _propTypes["default"].number,
371
- maxImageHeight: _propTypes["default"].number
372
- });
373
- (0, _defineProperty2["default"])(ChoiceConfiguration, "defaultProps", {
374
- index: -1,
375
- noLabels: false,
376
- useLetterOrdering: false,
377
- allowFeedBack: true,
378
- allowDelete: true
379
- });
380
-
381
- var styles = function styles(theme) {
382
- return {
383
- index: {
384
- paddingRight: theme.spacing.unit,
385
- paddingTop: theme.spacing.unit * 3.5
386
- },
387
- choiceConfiguration: {},
388
- topRow: {
389
- display: 'flex'
390
- },
391
- value: {
392
- flex: '0.5',
393
- paddingRight: theme.spacing.unit
394
- },
395
- editorHolder: {
396
- marginTop: theme.spacing.unit * 2
397
- },
398
- toggle: {
399
- flex: '0 1 auto',
400
- paddingTop: theme.spacing.unit / 2,
401
- paddingBottom: 0,
402
- marginRight: 0,
403
- marginLeft: theme.spacing.unit
404
- },
405
- feedback: {
406
- flex: '0 1 auto',
407
- paddingTop: theme.spacing.unit * 2,
408
- paddingLeft: 0,
409
- marginLeft: 0,
410
- marginRight: theme.spacing.unit
411
- },
412
- feedbackIcon: {
413
- margin: 0,
414
- width: 'inherit'
415
- },
416
- deleteIcon: {
417
- margin: 0,
418
- width: 'inherit'
419
- },
420
- "delete": {
421
- flex: '0 1 auto',
422
- paddingTop: theme.spacing.unit * 2,
423
- paddingLeft: 0,
424
- marginLeft: 0
425
- },
426
- middleColumn: {
427
- display: 'flex',
428
- flex: 1,
429
- flexDirection: 'column',
430
- marginRight: theme.spacing.unit
431
- },
432
- input: {
433
- marginRight: 0
434
- },
435
- errorText: {
436
- fontSize: theme.typography.fontSize - 2,
437
- color: theme.palette.error.main
438
- }
439
- };
440
- };
441
-
442
- var _default = (0, _styles.withStyles)(styles)(ChoiceConfiguration);
443
-
444
- exports["default"] = _default;
445
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaG9pY2UtY29uZmlndXJhdGlvbi9pbmRleC5qc3giXSwibmFtZXMiOlsiRWRpdGFibGVIdG1sQ29udGFpbmVyIiwidGhlbWUiLCJsYWJlbENvbnRhaW5lciIsImVkaXRvckhvbGRlciIsIm1hcmdpblRvcCIsInNwYWNpbmciLCJ1bml0IiwibGFiZWwiLCJjbGFzc2VzIiwib25DaGFuZ2UiLCJ2YWx1ZSIsImNsYXNzTmFtZSIsImltYWdlU3VwcG9ydCIsImRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnMiLCJkaXNhYmxlZCIsInNwZWxsQ2hlY2siLCJub25FbXB0eSIsInBsdWdpbk9wdHMiLCJ0b29sYmFyT3B0cyIsImVycm9yIiwibWF4SW1hZ2VXaWR0aCIsIm1heEltYWdlSGVpZ2h0IiwidXBsb2FkU291bmRTdXBwb3J0IiwibWF0aE1sT3B0aW9ucyIsIm5hbWVzIiwiZWRpdG9yIiwibGFuZ3VhZ2UiLCJGZWVkYmFjayIsInRleHQiLCJ3aWR0aCIsImZlZWRiYWNrQ29udGFpbmVyIiwicG9zaXRpb24iLCJhcnJvd0ljb24iLCJmaWxsIiwicGFsZXR0ZSIsImdyZXkiLCJsZWZ0IiwidG9wIiwidHlwZSIsImNvcnJlY3QiLCJkZWZhdWx0cyIsImluY29ycmVjdCIsIkNob2ljZUNvbmZpZ3VyYXRpb24iLCJrZXkiLCJ1cGRhdGUiLCJwcm9wcyIsImRhdGEiLCJfY2hhbmdlRm4iLCJldmVudCIsInRhcmdldCIsImNoZWNrZWQiLCJ2IiwiZmVlZGJhY2siLCJmYiIsInQiLCJ1bmRlZmluZWQiLCJtb2RlIiwib25EZWxldGUiLCJkZWZhdWx0RmVlZGJhY2siLCJpbmRleCIsIm5vTGFiZWxzIiwidXNlTGV0dGVyT3JkZXJpbmciLCJhbGxvd0ZlZWRCYWNrIiwiYWxsb3dEZWxldGUiLCJub0NvcnJlY3RBbnN3ZXJFcnJvciIsIklucHV0VG9nZ2xlIiwiSW5wdXRDaGVja2JveCIsIklucHV0UmFkaW8iLCJjaG9pY2VDb25maWd1cmF0aW9uIiwidG9wUm93IiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwidG9VcHBlckNhc2UiLCJ0b2dnbGUiLCJvbkNoZWNrZWRDaGFuZ2UiLCJtaWRkbGVDb2x1bW4iLCJpbnB1dCIsIm9uTGFiZWxDaGFuZ2UiLCJlcnJvclRleHQiLCJvbkZlZWRiYWNrVmFsdWVDaGFuZ2UiLCJvbkZlZWRiYWNrVHlwZUNoYW5nZSIsImljb24iLCJmZWVkYmFja0ljb24iLCJkZWxldGVJY29uIiwiUmVhY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJpc1JlcXVpcmVkIiwiYm9vbCIsInN0cmluZyIsIm9uZU9mIiwic2hhcGUiLCJmdW5jIiwibnVtYmVyIiwiYWRkIiwic3R5bGVzIiwicGFkZGluZ1JpZ2h0IiwicGFkZGluZ1RvcCIsImRpc3BsYXkiLCJmbGV4IiwicGFkZGluZ0JvdHRvbSIsIm1hcmdpblJpZ2h0IiwibWFyZ2luTGVmdCIsInBhZGRpbmdMZWZ0IiwibWFyZ2luIiwiZmxleERpcmVjdGlvbiIsImZvbnRTaXplIiwidHlwb2dyYXBoeSIsImNvbG9yIiwibWFpbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7O0FBRUEsSUFBTUEscUJBQXFCLEdBQUcsd0JBQVcsVUFBQ0MsS0FBRDtBQUFBLFNBQVk7QUFDbkRDLElBQUFBLGNBQWMsRUFBRSxFQURtQztBQUVuREMsSUFBQUEsWUFBWSxFQUFFO0FBQ1pDLE1BQUFBLFNBQVMsRUFBRUgsS0FBSyxDQUFDSSxPQUFOLENBQWNDLElBQWQsR0FBcUI7QUFEcEI7QUFGcUMsR0FBWjtBQUFBLENBQVgsRUFNNUIsZ0JBa0JNO0FBQUEsTUFqQkpDLEtBaUJJLFFBakJKQSxLQWlCSTtBQUFBLE1BaEJKQyxPQWdCSSxRQWhCSkEsT0FnQkk7QUFBQSxNQWZKQyxRQWVJLFFBZkpBLFFBZUk7QUFBQSxN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QUFXZCxNQUFYLEVBQW1CdEQsbUJBQW5CLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IFRleHRGaWVsZCBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9UZXh0RmllbGQnO1xuaW1wb3J0IEFjdGlvbkRlbGV0ZSBmcm9tICdAbWF0ZXJpYWwtdWkvaWNvbnMvRGVsZXRlJztcbmltcG9ydCBBcnJvd1JpZ2h0IGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9TdWJkaXJlY3RvcnlBcnJvd1JpZ2h0JztcbmltcG9ydCBJY29uQnV0dG9uIGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL0ljb25CdXR0b24nO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBJbnB1dENvbnRhaW5lciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgRWRpdGFibGVIdG1sIGZyb20gJ0BwaWUtbGliL2VkaXRhYmxlLWh0bWwnO1xuaW1wb3J0IHsgSW5wdXRDaGVja2JveCwgSW5wdXRSYWRpbyB9IGZyb20gJy4uL2lucHV0cyc7XG5pbXBvcnQgRmVlZGJhY2tNZW51IGZyb20gJy4vZmVlZGJhY2stbWVudSc7XG5cbmNvbnN0IEVkaXRhYmxlSHRtbENvbnRhaW5lciA9IHdpdGhTdHlsZXMoKHRoZW1lKSA9PiAoe1xuICBsYWJlbENvbnRhaW5lcjoge30sXG4gIGVkaXRvckhvbGRlcjoge1xuICAgIG1hcmdpblRvcDogdGhlbWUuc3BhY2luZy51bml0ICogMixcbiAgfSxcbn0pKShcbiAgKHtcbiAgICBsYWJlbCxcbiAgICBjbGFzc2VzLFxuICAgIG9uQ2hhbmdlLFxuICAgIHZhbHVlLFxuICAgIGNsYXNzTmFtZSxcbiAgICBpbWFnZVN1cHBvcnQsXG4gICAgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyxcbiAgICBkaXNhYmxlZCxcbiAgICBzcGVsbENoZWNrLFxuICAgIG5vbkVtcHR5LFxuICAgIHBsdWdpbk9wdHMsXG4gICAgdG9vbGJhck9wdHMsXG4gICAgZXJyb3IsXG4gICAgbWF4SW1hZ2VXaWR0aCxcbiAgICBtYXhJbWFnZUhlaWdodCxcbiAgICB1cGxvYWRTb3VuZFN1cHBvcnQsXG4gICAgbWF0aE1sT3B0aW9ucyA9IHt9LFxuICB9KSA9PiB7XG4gICAgY29uc3QgbmFtZXMgPSBjbGFzc05hbWVzKGNsYXNzZXMubGFiZWxDb250YWluZXIsIGNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPElucHV0Q29udGFpbmVyIGxhYmVsPXtsYWJlbH0gY2xhc3NOYW1lPXtuYW1lc30+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLmVkaXRvckhvbGRlcn0+XG4gICAgICAgICAgPEVkaXRhYmxlSHRtbFxuICAgICAgICAgICAgbWFya3VwPXt2YWx1ZSB8fCAnJ31cbiAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgIHNwZWxsQ2hlY2s9e3NwZWxsQ2hlY2t9XG4gICAgICAgICAgICBub25FbXB0eT17bm9uRW1wdHl9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICBpbWFnZVN1cHBvcnQ9e2ltYWdlU3VwcG9ydH1cbiAgICAgICAgICAgIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnM9e2Rpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnN9XG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMuZWRpdG9yfVxuICAgICAgICAgICAgcGx1Z2luUHJvcHM9e3BsdWdpbk9wdHMgfHwge319XG4gICAgICAgICAgICB0b29sYmFyT3B0cz17dG9vbGJhck9wdHN9XG4gICAgICAgICAgICBlcnJvcj17ZXJyb3J9XG4gICAgICAgICAgICBtYXhJbWFnZVdpZHRoPXttYXhJbWFnZVdpZHRofVxuICAgICAgICAgICAgbWF4SW1hZ2VIZWlnaHQ9e21heEltYWdlSGVpZ2h0fVxuICAgICAgICAgICAgdXBsb2FkU291bmRTdXBwb3J0PXt1cGxvYWRTb3VuZFN1cHBvcnR9XG4gICAgICAgICAgICBsYW5ndWFnZUNoYXJhY3RlcnNQcm9wcz17W3sgbGFuZ3VhZ2U6ICdzcGFuaXNoJyB9LCB7IGxhbmd1YWdlOiAnc3BlY2lhbCcgfV19XG4gICAgICAgICAgICBtYXRoTWxPcHRpb25zPXttYXRoTWxPcHRpb25zfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9JbnB1dENvbnRhaW5lcj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmVlZGJhY2sgPSB3aXRoU3R5bGVzKCh0aGVtZSkgPT4gKHtcbiAgdGV4dDoge1xuICAgIHdpZHRoOiAnMTAwJScsXG4gIH0sXG4gIGZlZWRiYWNrQ29udGFpbmVyOiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gIH0sXG4gIGFycm93SWNvbjoge1xuICAgIGZpbGw6IHRoZW1lLnBhbGV0dGUuZ3JleVs0MDBdLFxuICAgIGxlZnQ6IC01NixcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB0b3A6IDIwLFxuICB9LFxufSkpKCh7IHZhbHVlLCBvbkNoYW5nZSwgdHlwZSwgY29ycmVjdCwgY2xhc3NlcywgZGVmYXVsdHMsIHRvb2xiYXJPcHRzLCBtYXRoTWxPcHRpb25zID0ge30gfSkgPT4ge1xuICBpZiAoIXR5cGUgfHwgdHlwZSA9PT0gJ25vbmUnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc2VzLmZlZWRiYWNrQ29udGFpbmVyfT5cbiAgICAgICAgPEFycm93UmlnaHQgY2xhc3NOYW1lPXtjbGFzc2VzLmFycm93SWNvbn0gLz5cbiAgICAgICAgPFRleHRGaWVsZFxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3Nlcy50ZXh0fVxuICAgICAgICAgIGxhYmVsPVwiRmVlZGJhY2sgVGV4dFwiXG4gICAgICAgICAgdmFsdWU9e2NvcnJlY3QgPyBkZWZhdWx0cy5jb3JyZWN0IDogZGVmYXVsdHMuaW5jb3JyZWN0fVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuZmVlZGJhY2tDb250YWluZXJ9PlxuICAgICAgICA8QXJyb3dSaWdodCBjbGFzc05hbWU9e2NsYXNzZXMuYXJyb3dJY29ufSAvPlxuICAgICAgICA8RWRpdGFibGVIdG1sQ29udGFpbmVyXG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLnRleHR9XG4gICAgICAgICAgbGFiZWw9XCJGZWVkYmFjayBUZXh0XCJcbiAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICBtYXRoTWxPcHRpb25zPXttYXRoTWxPcHRpb25zfVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufSk7XG5cbmV4cG9ydCBjbGFzcyBDaG9pY2VDb25maWd1cmF0aW9uIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgbm9MYWJlbHM6IFByb3BUeXBlcy5ib29sLFxuICAgIHVzZUxldHRlck9yZGVyaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgZXJyb3I6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbW9kZTogUHJvcFR5cGVzLm9uZU9mKFsnY2hlY2tib3gnLCAncmFkaW8nXSksXG4gICAgZGVmYXVsdEZlZWRiYWNrOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIG5vbkVtcHR5OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBkYXRhOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgICBjb3JyZWN0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGZlZWRiYWNrOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgICB0eXBlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIH0pLFxuICAgIH0pLFxuICAgIG9uRGVsZXRlOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgaW5kZXg6IFByb3BUeXBlcy5udW1iZXIsXG4gICAgaW1hZ2VTdXBwb3J0OiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgYWRkOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgZGVsZXRlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIH0pLFxuICAgIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnM6IFByb3BUeXBlcy5ib29sLFxuICAgIGFsbG93RmVlZEJhY2s6IFByb3BUeXBlcy5ib29sLFxuICAgIGFsbG93RGVsZXRlOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBub0NvcnJlY3RBbnN3ZXJFcnJvcjogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBzcGVsbENoZWNrOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBwbHVnaW5PcHRzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIHRvb2xiYXJPcHRzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIHVwbG9hZFNvdW5kU3VwcG9ydDogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBtYXhJbWFnZVdpZHRoOiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIG1heEltYWdlSGVpZ2h0OiBQcm9wVHlwZXMubnVtYmVyLFxuICB9O1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgaW5kZXg6IC0xLFxuICAgIG5vTGFiZWxzOiBmYWxzZSxcbiAgICB1c2VMZXR0ZXJPcmRlcmluZzogZmFsc2UsXG4gICAgYWxsb3dGZWVkQmFjazogdHJ1ZSxcbiAgICBhbGxvd0RlbGV0ZTogdHJ1ZSxcbiAgfTtcblxuICBfY2hhbmdlRm4gPSAoa2V5KSA9PiAodXBkYXRlKSA9PiB7XG4gICAgY29uc3QgeyBkYXRhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcblxuICAgIGlmIChvbkNoYW5nZSkge1xuICAgICAgb25DaGFuZ2UoeyAuLi5kYXRhLCBba2V5XTogdXBkYXRlIH0pO1xuICAgIH1cbiAgfTtcblxuICBvbkxhYmVsQ2hhbmdlID0gdGhpcy5fY2hhbmdlRm4oJ2xhYmVsJyk7XG5cbiAgb25DaGVja2VkQ2hhbmdlID0gKGV2ZW50KSA9PiB7XG4gICAgY29uc3QgY29ycmVjdCA9IGV2ZW50LnRhcmdldC5jaGVja2VkO1xuICAgIGNvbnN0IHsgZGF0YSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBpZiAob25DaGFuZ2UpIHtcbiAgICAgIG9uQ2hhbmdlKHsgLi4uZGF0YSwgY29ycmVjdCB9KTtcbiAgICB9XG4gIH07XG5cbiAgb25GZWVkYmFja1ZhbHVlQ2hhbmdlID0gKHYpID0+IHtcbiAgICBjb25zdCB7IGRhdGEsIG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGRhdGEuZmVlZGJhY2sudHlwZSAhPT0gJ2N1c3RvbScpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmYiA9IHsgLi4uZGF0YS5mZWVkYmFjaywgdmFsdWU6IHYgfTtcblxuICAgIGlmIChvbkNoYW5nZSkgb25DaGFuZ2UoeyAuLi5kYXRhLCBmZWVkYmFjazogZmIgfSk7XG4gIH07XG5cbiAgb25GZWVkYmFja1R5cGVDaGFuZ2UgPSAodCkgPT4ge1xuICAgIGNvbnN0IHsgZGF0YSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgZmIgPSB7IC4uLmRhdGEuZmVlZGJhY2ssIHR5cGU6IHQgfTtcblxuICAgIGlmIChmYi50eXBlICE9PSAnY3VzdG9tJykge1xuICAgICAgZmIudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKG9uQ2hhbmdlKSBvbkNoYW5nZSh7IC4uLmRhdGEsIGZlZWRiYWNrOiBmYiB9KTtcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge1xuICAgICAgZGF0YSxcbiAgICAgIGNsYXNzZXMsXG4gICAgICBtb2RlLFxuICAgICAgb25EZWxldGUsXG4gICAgICBkZWZhdWx0RmVlZGJhY2ssXG4gICAgICBpbmRleCxcbiAgICAgIGNsYXNzTmFtZSxcbiAgICAgIG5vTGFiZWxzLFxuICAgICAgdXNlTGV0dGVyT3JkZXJpbmcsXG4gICAgICBpbWFnZVN1cHBvcnQsXG4gICAgICBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBzcGVsbENoZWNrLFxuICAgICAgbm9uRW1wdHksXG4gICAgICBhbGxvd0ZlZWRCYWNrLFxuICAgICAgYWxsb3dEZWxldGUsXG4gICAgICBwbHVnaW5PcHRzLFxuICAgICAgdG9vbGJhck9wdHMsXG4gICAgICBlcnJvcixcbiAgICAgIG5vQ29ycmVjdEFuc3dlckVycm9yLFxuICAgICAgdXBsb2FkU291bmRTdXBwb3J0LFxuICAgICAgbWF4SW1hZ2VXaWR0aCxcbiAgICAgIG1heEltYWdlSGVpZ2h0LFxuICAgICAgbWF0aE1sT3B0aW9ucyA9IHt9LFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgSW5wdXRUb2dnbGUgPSBtb2RlID09PSAnY2hlY2tib3gnID8gSW5wdXRDaGVja2JveCA6IElucHV0UmFkaW87XG4gICAgY29uc3QgbmFtZXMgPSBjbGFzc05hbWVzKGNsYXNzZXMuY2hvaWNlQ29uZmlndXJhdGlvbiwgY2xhc3NOYW1lKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17bmFtZXN9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy50b3BSb3d9PlxuICAgICAgICAgIHtpbmRleCA+IDAgJiYgKFxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtjbGFzc2VzLmluZGV4fSB0eXBlPVwidGl0bGVcIj5cbiAgICAgICAgICAgICAge3VzZUxldHRlck9yZGVyaW5nID8gU3RyaW5nLmZyb21DaGFyQ29kZSg5NiArIGluZGV4KS50b1VwcGVyQ2FzZSgpIDogaW5kZXh9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIDxJbnB1dFRvZ2dsZVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLnRvZ2dsZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hlY2tlZENoYW5nZX1cbiAgICAgICAgICAgIGxhYmVsPXshbm9MYWJlbHMgPyAnQ29ycmVjdCcgOiAnJ31cbiAgICAgICAgICAgIGNoZWNrZWQ9eyEhZGF0YS5jb3JyZWN0fVxuICAgICAgICAgICAgZXJyb3I9e25vQ29ycmVjdEFuc3dlckVycm9yfVxuICAgICAgICAgIC8+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5taWRkbGVDb2x1bW59PlxuICAgICAgICAgICAgPEVkaXRhYmxlSHRtbENvbnRhaW5lclxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMuaW5wdXR9XG4gICAgICAgICAgICAgIGxhYmVsPXshbm9MYWJlbHMgPyAnTGFiZWwnIDogJyd9XG4gICAgICAgICAgICAgIHZhbHVlPXtkYXRhLmxhYmVsfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkxhYmVsQ2hhbmdlfVxuICAgICAgICAgICAgICBpbWFnZVN1cHBvcnQ9e2ltYWdlU3VwcG9ydH1cbiAgICAgICAgICAgICAgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucz17ZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9uc31cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICBzcGVsbENoZWNrPXtzcGVsbENoZWNrfVxuICAgICAgICAgICAgICBub25FbXB0eT17bm9uRW1wdHl9XG4gICAgICAgICAgICAgIHBsdWdpbk9wdHM9e3BsdWdpbk9wdHN9XG4gICAgICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICAgICAgZXJyb3I9e2Vycm9yfVxuICAgICAgICAgICAgICB1cGxvYWRTb3VuZFN1cHBvcnQ9e3VwbG9hZFNvdW5kU3VwcG9ydH1cbiAgICAgICAgICAgICAgbWF0aE1sT3B0aW9ucz17bWF0aE1sT3B0aW9uc31cbiAgICAgICAgICAgICAgbWF4SW1hZ2VXaWR0aD17bWF4SW1hZ2VXaWR0aH1cbiAgICAgICAgICAgICAgbWF4SW1hZ2VIZWlnaHQ9e21heEltYWdlSGVpZ2h0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHtlcnJvciAmJiA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5lcnJvclRleHR9PntlcnJvcn08L2Rpdj59XG5cbiAgICAgICAgICAgIHthbGxvd0ZlZWRCYWNrICYmIChcbiAgICAgICAgICAgICAgPEZlZWRiYWNrXG4gICAgICAgICAgICAgICAgey4uLmRhdGEuZmVlZGJhY2t9XG4gICAgICAgICAgICAgICAgY29ycmVjdD17ZGF0YS5jb3JyZWN0fVxuICAgICAgICAgICAgICAgIGRlZmF1bHRzPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25GZWVkYmFja1ZhbHVlQ2hhbmdlfVxuICAgICAgICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICB7YWxsb3dGZWVkQmFjayAmJiAoXG4gICAgICAgICAgICA8SW5wdXRDb250YWluZXIgY2xhc3NOYW1lPXtjbGFzc2VzLmZlZWRiYWNrfSBsYWJlbD17IW5vTGFiZWxzID8gJ0ZlZWRiYWNrJyA6ICcnfT5cbiAgICAgICAgICAgICAgPEZlZWRiYWNrTWVudVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uRmVlZGJhY2tUeXBlQ2hhbmdlfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtkYXRhLmZlZWRiYWNrfVxuICAgICAgICAgICAgICAgIGNsYXNzZXM9e3tcbiAgICAgICAgICAgICAgICAgIGljb246IGNsYXNzZXMuZmVlZGJhY2tJY29uLFxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L0lucHV0Q29udGFpbmVyPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7YWxsb3dEZWxldGUgJiYgKFxuICAgICAgICAgICAgPElucHV0Q29udGFpbmVyIGNsYXNzTmFtZT17Y2xhc3Nlcy5kZWxldGV9IGxhYmVsPXshbm9MYWJlbHMgPyAnRGVsZXRlJyA6ICcnfT5cbiAgICAgICAgICAgICAgPEljb25CdXR0b24gYXJpYS1sYWJlbD1cImRlbGV0ZVwiIGNsYXNzTmFtZT17Y2xhc3Nlcy5kZWxldGVJY29ufSBvbkNsaWNrPXtvbkRlbGV0ZX0+XG4gICAgICAgICAgICAgICAgPEFjdGlvbkRlbGV0ZSAvPlxuICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICA8L0lucHV0Q29udGFpbmVyPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBzdHlsZXMgPSAodGhlbWUpID0+ICh7XG4gIGluZGV4OiB7XG4gICAgcGFkZGluZ1JpZ2h0OiB0aGVtZS5zcGFjaW5nLnVuaXQsXG4gICAgcGFkZGluZ1RvcDogdGhlbWUuc3BhY2luZy51bml0ICogMy41LFxuICB9LFxuICBjaG9pY2VDb25maWd1cmF0aW9uOiB7fSxcbiAgdG9wUm93OiB7XG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICB9LFxuICB2YWx1ZToge1xuICAgIGZsZXg6ICcwLjUnLFxuICAgIHBhZGRpbmdSaWdodDogdGhlbWUuc3BhY2luZy51bml0LFxuICB9LFxuICBlZGl0b3JIb2xkZXI6IHtcbiAgICBtYXJnaW5Ub3A6IHRoZW1lLnNwYWNpbmcudW5pdCAqIDIsXG4gIH0sXG4gIHRvZ2dsZToge1xuICAgIGZsZXg6ICcwIDEgYXV0bycsXG4gICAgcGFkZGluZ1RvcDogdGhlbWUuc3BhY2luZy51bml0IC8gMixcbiAgICBwYWRkaW5nQm90dG9tOiAwLFxuICAgIG1hcmdpblJpZ2h0OiAwLFxuICAgIG1hcmdpbkxlZnQ6IHRoZW1lLnNwYWNpbmcudW5pdCxcbiAgfSxcbiAgZmVlZGJhY2s6IHtcbiAgICBmbGV4OiAnMCAxIGF1dG8nLFxuICAgIHBhZGRpbmdUb3A6IHRoZW1lLnNwYWNpbmcudW5pdCAqIDIsXG4gICAgcGFkZGluZ0xlZnQ6IDAsXG4gICAgbWFyZ2luTGVmdDogMCxcbiAgICBtYXJnaW5SaWdodDogdGhlbWUuc3BhY2luZy51bml0LFxuICB9LFxuICBmZWVkYmFja0ljb246IHtcbiAgICBtYXJnaW46IDAsXG4gICAgd2lkdGg6ICdpbmhlcml0JyxcbiAgfSxcbiAgZGVsZXRlSWNvbjoge1xuICAgIG1hcmdpbjogMCxcbiAgICB3aWR0aDogJ2luaGVyaXQnLFxuICB9LFxuICBkZWxldGU6IHtcbiAgICBmbGV4OiAnMCAxIGF1dG8nLFxuICAgIHBhZGRpbmdUb3A6IHRoZW1lLnNwYWNpbmcudW5pdCAqIDIsXG4gICAgcGFkZGluZ0xlZnQ6IDAsXG4gICAgbWFyZ2luTGVmdDogMCxcbiAgfSxcbiAgbWlkZGxlQ29sdW1uOiB7XG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIGZsZXg6IDEsXG4gICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgbWFyZ2luUmlnaHQ6IHRoZW1lLnNwYWNpbmcudW5pdCxcbiAgfSxcbiAgaW5wdXQ6IHtcbiAgICBtYXJnaW5SaWdodDogMCxcbiAgfSxcbiAgZXJyb3JUZXh0OiB7XG4gICAgZm9udFNpemU6IHRoZW1lLnR5cG9ncmFwaHkuZm9udFNpemUgLSAyLFxuICAgIGNvbG9yOiB0aGVtZS5wYWxldHRlLmVycm9yLm1haW4sXG4gIH0sXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlcyhzdHlsZXMpKENob2ljZUNvbmZpZ3VyYXRpb24pO1xuIl19
@@ -1,54 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.normalizeChoices = exports.firstAvailableIndex = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _includes = _interopRequireDefault(require("lodash/includes"));
13
-
14
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
-
16
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
-
18
- /**
19
- * Add value to every model.choices.
20
- * @param {Object} model the model to normalize
21
- * @return {Object} the updated model
22
- */
23
- var normalizeChoices = function normalizeChoices(model) {
24
- var choices = model.choices.map(function (c, index) {
25
- if (!c.value) {
26
- c.value = "".concat(index);
27
- }
28
-
29
- return c;
30
- });
31
- return _objectSpread(_objectSpread({}, model), {}, {
32
- choices: choices
33
- });
34
- };
35
- /**
36
- * Find the first available index.
37
- * @param {string[]} values
38
- * @param {number} index
39
- * @return {string}
40
- */
41
-
42
-
43
- exports.normalizeChoices = normalizeChoices;
44
-
45
- var firstAvailableIndex = function firstAvailableIndex(values, index) {
46
- if ((0, _includes["default"])(values, "".concat(index))) {
47
- return firstAvailableIndex(values, index + 1);
48
- } else {
49
- return "".concat(index);
50
- }
51
- };
52
-
53
- exports.firstAvailableIndex = firstAvailableIndex;
54
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jaG9pY2UtdXRpbHMuanMiXSwibmFtZXMiOlsibm9ybWFsaXplQ2hvaWNlcyIsIm1vZGVsIiwiY2hvaWNlcyIsIm1hcCIsImMiLCJpbmRleCIsInZhbHVlIiwiZmlyc3RBdmFpbGFibGVJbmRleCIsInZhbHVlcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7Ozs7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1BLGdCQUFnQixHQUFHLFNBQW5CQSxnQkFBbUIsQ0FBQ0MsS0FBRCxFQUFXO0FBQ3pDLE1BQU1DLE9BQU8sR0FBR0QsS0FBSyxDQUFDQyxPQUFOLENBQWNDLEdBQWQsQ0FBa0IsVUFBQ0MsQ0FBRCxFQUFJQyxLQUFKLEVBQWM7QUFDOUMsUUFBSSxDQUFDRCxDQUFDLENBQUNFLEtBQVAsRUFBYztBQUNaRixNQUFBQSxDQUFDLENBQUNFLEtBQUYsYUFBYUQsS0FBYjtBQUNEOztBQUNELFdBQU9ELENBQVA7QUFDRCxHQUxlLENBQWhCO0FBTUEseUNBQVlILEtBQVo7QUFBbUJDLElBQUFBLE9BQU8sRUFBUEE7QUFBbkI7QUFDRCxDQVJNO0FBVVA7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OztBQUNPLElBQU1LLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBc0IsQ0FBQ0MsTUFBRCxFQUFTSCxLQUFULEVBQW1CO0FBQ3BELE1BQUksMEJBQVNHLE1BQVQsWUFBb0JILEtBQXBCLEVBQUosRUFBa0M7QUFDaEMsV0FBT0UsbUJBQW1CLENBQUNDLE1BQUQsRUFBU0gsS0FBSyxHQUFHLENBQWpCLENBQTFCO0FBQ0QsR0FGRCxNQUVPO0FBQ0wscUJBQVVBLEtBQVY7QUFDRDtBQUNGLENBTk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaW5jbHVkZXMgZnJvbSAnbG9kYXNoL2luY2x1ZGVzJztcblxuLyoqXG4gKiBBZGQgdmFsdWUgdG8gZXZlcnkgbW9kZWwuY2hvaWNlcy5cbiAqIEBwYXJhbSB7T2JqZWN0fSBtb2RlbCB0aGUgbW9kZWwgdG8gbm9ybWFsaXplXG4gKiBAcmV0dXJuIHtPYmplY3R9IHRoZSB1cGRhdGVkIG1vZGVsXG4gKi9cbmV4cG9ydCBjb25zdCBub3JtYWxpemVDaG9pY2VzID0gKG1vZGVsKSA9PiB7XG4gIGNvbnN0IGNob2ljZXMgPSBtb2RlbC5jaG9pY2VzLm1hcCgoYywgaW5kZXgpID0+IHtcbiAgICBpZiAoIWMudmFsdWUpIHtcbiAgICAgIGMudmFsdWUgPSBgJHtpbmRleH1gO1xuICAgIH1cbiAgICByZXR1cm4gYztcbiAgfSk7XG4gIHJldHVybiB7IC4uLm1vZGVsLCBjaG9pY2VzIH07XG59O1xuXG4vKipcbiAqIEZpbmQgdGhlIGZpcnN0IGF2YWlsYWJsZSBpbmRleC5cbiAqIEBwYXJhbSB7c3RyaW5nW119IHZhbHVlc1xuICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBmaXJzdEF2YWlsYWJsZUluZGV4ID0gKHZhbHVlcywgaW5kZXgpID0+IHtcbiAgaWYgKGluY2x1ZGVzKHZhbHVlcywgYCR7aW5kZXh9YCkpIHtcbiAgICByZXR1cm4gZmlyc3RBdmFpbGFibGVJbmRleCh2YWx1ZXMsIGluZGV4ICsgMSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGAke2luZGV4fWA7XG4gIH1cbn07XG4iXX0=
@@ -1,78 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- var _react = _interopRequireWildcard(require("react"));
8
-
9
- var _enzyme = _interopRequireWildcard(require("enzyme"));
10
-
11
- var _index = require("../index");
12
-
13
- var _feedbackSelector = _interopRequireDefault(require("../feedback-selector"));
14
-
15
- var _enzymeAdapterReact = _interopRequireDefault(require("enzyme-adapter-react-16"));
16
-
17
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
-
19
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
-
21
- _enzyme["default"].configure({
22
- adapter: new _enzymeAdapterReact["default"]()
23
- });
24
-
25
- describe('FeedbackConfig', function () {
26
- describe('render', function () {
27
- var component, selectors;
28
- var feedback = {
29
- correctFeedback: undefined,
30
- correctFeedbackType: 'default',
31
- incorrectFeedback: undefined,
32
- incorrectFeedbackType: 'default'
33
- };
34
- var defaults = {
35
- correct: 'Correct',
36
- incorrect: 'Incorrect',
37
- partial: 'Nearly'
38
- };
39
- describe('Feedback Config Component', function () {
40
- it('should exist', function () {
41
- component = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
42
- feedback: feedback,
43
- defaults: defaults,
44
- onChange: jest.fn(),
45
- classes: {}
46
- }));
47
- selectors = component.find(_feedbackSelector["default"]);
48
- expect(selectors.length).toEqual(3);
49
- });
50
- describe('props', function () {
51
- it('should not render optionally correct if optional is not needed', function () {
52
- component = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
53
- allowPartial: false,
54
- feedback: feedback,
55
- defaults: defaults,
56
- onChange: jest.fn(),
57
- classes: {}
58
- }));
59
- selectors = component.find(_feedbackSelector["default"]);
60
- expect(selectors.length).toEqual(2);
61
- });
62
- });
63
- describe('snapshot', function () {
64
- it('matches the snapshot', function () {
65
- component = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index.FeedbackConfig, {
66
- allowPartial: false,
67
- feedback: feedback,
68
- defaults: defaults,
69
- onChange: jest.fn(),
70
- classes: {}
71
- }));
72
- expect(component).toMatchSnapshot();
73
- });
74
- });
75
- });
76
- });
77
- });
78
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mZWVkYmFjay1jb25maWcvX190ZXN0c19fL2ZlZWRiYWNrLWNvbmZpZy50ZXN0LmpzeCJdLCJuYW1lcyI6WyJFbnp5bWUiLCJjb25maWd1cmUiLCJhZGFwdGVyIiwiQWRhcHRlciIsImRlc2NyaWJlIiwiY29tcG9uZW50Iiwic2VsZWN0b3JzIiwiZmVlZGJhY2siLCJjb3JyZWN0RmVlZGJhY2siLCJ1bmRlZmluZWQiLCJjb3JyZWN0RmVlZGJhY2tUeXBlIiwiaW5jb3JyZWN0RmVlZGJhY2siLCJpbmNvcnJlY3RGZWVkYmFja1R5cGUiLCJkZWZhdWx0cyIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJwYXJ0aWFsIiwiaXQiLCJqZXN0IiwiZm4iLCJmaW5kIiwiRmVlZGJhY2tTZWxlY3RvciIsImV4cGVjdCIsImxlbmd0aCIsInRvRXF1YWwiLCJ0b01hdGNoU25hcHNob3QiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsbUJBQU9DLFNBQVAsQ0FBaUI7QUFBRUMsRUFBQUEsT0FBTyxFQUFFLElBQUlDLDhCQUFKO0FBQVgsQ0FBakI7O0FBRUFDLFFBQVEsQ0FBQyxnQkFBRCxFQUFtQixZQUFNO0FBQy9CQSxFQUFBQSxRQUFRLENBQUMsUUFBRCxFQUFXLFlBQU07QUFDdkIsUUFBSUMsU0FBSixFQUFlQyxTQUFmO0FBQ0EsUUFBSUMsUUFBUSxHQUFHO0FBQ2JDLE1BQUFBLGVBQWUsRUFBRUMsU0FESjtBQUViQyxNQUFBQSxtQkFBbUIsRUFBRSxTQUZSO0FBR2JDLE1BQUFBLGlCQUFpQixFQUFFRixTQUhOO0FBSWJHLE1BQUFBLHFCQUFxQixFQUFFO0FBSlYsS0FBZjtBQU9BLFFBQUlDLFFBQVEsR0FBRztBQUNiQyxNQUFBQSxPQUFPLEVBQUUsU0FESTtBQUViQyxNQUFBQSxTQUFTLEVBQUUsV0FGRTtBQUdiQyxNQUFBQSxPQUFPLEVBQUU7QUFISSxLQUFmO0FBTUFaLElBQUFBLFFBQVEsQ0FBQywyQkFBRCxFQUE4QixZQUFNO0FBQzFDYSxNQUFBQSxFQUFFLENBQUMsY0FBRCxFQUFpQixZQUFNO0FBQ3ZCWixRQUFBQSxTQUFTLEdBQUcsbUNBQ1YsZ0NBQUMscUJBQUQ7QUFBZ0IsVUFBQSxRQUFRLEVBQUVFLFFBQTFCO0FBQW9DLFVBQUEsUUFBUSxFQUFFTSxRQUE5QztBQUF3RCxVQUFBLFFBQVEsRUFBRUssSUFBSSxDQUFDQyxFQUFMLEVBQWxFO0FBQTZFLFVBQUEsT0FBTyxFQUFFO0FBQXRGLFVBRFUsQ0FBWjtBQUlBYixRQUFBQSxTQUFTLEdBQUdELFNBQVMsQ0FBQ2UsSUFBVixDQUFlQyw0QkFBZixDQUFaO0FBRUFDLFFBQUFBLE1BQU0sQ0FBQ2hCLFNBQVMsQ0FBQ2lCLE1BQVgsQ0FBTixDQUF5QkMsT0FBekIsQ0FBaUMsQ0FBakM7QUFDRCxPQVJDLENBQUY7QUFVQXBCLE1BQUFBLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBTTtBQUN0QmEsUUFBQUEsRUFBRSxDQUFDLGdFQUFELEVBQW1FLFlBQU07QUFDekVaLFVBQUFBLFNBQVMsR0FBRyxtQ0FDVixnQ0FBQyxxQkFBRDtBQUNFLFlBQUEsWUFBWSxFQUFFLEtBRGhCO0FBRUUsWUFBQSxRQUFRLEVBQUVFLFFBRlo7QUFHRSxZQUFBLFFBQVEsRUFBRU0sUUFIWjtBQUlFLFlBQUEsUUFBUSxFQUFFSyxJQUFJLENBQUNDLEVBQUwsRUFKWjtBQUtFLFlBQUEsT0FBTyxFQUFFO0FBTFgsWUFEVSxDQUFaO0FBVUFiLFVBQUFBLFNBQVMsR0FBR0QsU0FBUyxDQUFDZSxJQUFWLENBQWVDLDRCQUFmLENBQVo7QUFFQUMsVUFBQUEsTUFBTSxDQUFDaEIsU0FBUyxDQUFDaUIsTUFBWCxDQUFOLENBQXlCQyxPQUF6QixDQUFpQyxDQUFqQztBQUNELFNBZEMsQ0FBRjtBQWVELE9BaEJPLENBQVI7QUFrQkFwQixNQUFBQSxRQUFRLENBQUMsVUFBRCxFQUFhLFlBQU07QUFDekJhLFFBQUFBLEVBQUUsQ0FBQyxzQkFBRCxFQUF5QixZQUFNO0FBQy9CWixVQUFBQSxTQUFTLEdBQUcsbUNBQ1YsZ0NBQUMscUJBQUQ7QUFDRSxZQUFBLFlBQVksRUFBRSxLQURoQjtBQUVFLFlBQUEsUUFBUSxFQUFFRSxRQUZaO0FBR0UsWUFBQSxRQUFRLEVBQUVNLFFBSFo7QUFJRSxZQUFBLFFBQVEsRUFBRUssSUFBSSxDQUFDQyxFQUFMLEVBSlo7QUFLRSxZQUFBLE9BQU8sRUFBRTtBQUxYLFlBRFUsQ0FBWjtBQVVBRyxVQUFBQSxNQUFNLENBQUNqQixTQUFELENBQU4sQ0FBa0JvQixlQUFsQjtBQUNELFNBWkMsQ0FBRjtBQWFELE9BZE8sQ0FBUjtBQWVELEtBNUNPLENBQVI7QUE2Q0QsR0E1RE8sQ0FBUjtBQTZERCxDQTlETyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFByb3BUeXBlcyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBFbnp5bWUsIHsgc2hhbGxvdywgbW91bnQgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IHsgRmVlZGJhY2tDb25maWcgfSBmcm9tICcuLi9pbmRleCc7XG5pbXBvcnQgRmVlZGJhY2tTZWxlY3RvciBmcm9tICcuLi9mZWVkYmFjay1zZWxlY3Rvcic7XG5pbXBvcnQgQWRhcHRlciBmcm9tICdlbnp5bWUtYWRhcHRlci1yZWFjdC0xNic7XG5cbkVuenltZS5jb25maWd1cmUoeyBhZGFwdGVyOiBuZXcgQWRhcHRlcigpIH0pO1xuXG5kZXNjcmliZSgnRmVlZGJhY2tDb25maWcnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdyZW5kZXInLCAoKSA9PiB7XG4gICAgbGV0IGNvbXBvbmVudCwgc2VsZWN0b3JzO1xuICAgIGxldCBmZWVkYmFjayA9IHtcbiAgICAgIGNvcnJlY3RGZWVkYmFjazogdW5kZWZpbmVkLFxuICAgICAgY29ycmVjdEZlZWRiYWNrVHlwZTogJ2RlZmF1bHQnLFxuICAgICAgaW5jb3JyZWN0RmVlZGJhY2s6IHVuZGVmaW5lZCxcbiAgICAgIGluY29ycmVjdEZlZWRiYWNrVHlwZTogJ2RlZmF1bHQnLFxuICAgIH07XG5cbiAgICBsZXQgZGVmYXVsdHMgPSB7XG4gICAgICBjb3JyZWN0OiAnQ29ycmVjdCcsXG4gICAgICBpbmNvcnJlY3Q6ICdJbmNvcnJlY3QnLFxuICAgICAgcGFydGlhbDogJ05lYXJseScsXG4gICAgfTtcblxuICAgIGRlc2NyaWJlKCdGZWVkYmFjayBDb25maWcgQ29tcG9uZW50JywgKCkgPT4ge1xuICAgICAgaXQoJ3Nob3VsZCBleGlzdCcsICgpID0+IHtcbiAgICAgICAgY29tcG9uZW50ID0gc2hhbGxvdyhcbiAgICAgICAgICA8RmVlZGJhY2tDb25maWcgZmVlZGJhY2s9e2ZlZWRiYWNrfSBkZWZhdWx0cz17ZGVmYXVsdHN9IG9uQ2hhbmdlPXtqZXN0LmZuKCl9IGNsYXNzZXM9e3t9fSAvPixcbiAgICAgICAgKTtcblxuICAgICAgICBzZWxlY3RvcnMgPSBjb21wb25lbnQuZmluZChGZWVkYmFja1NlbGVjdG9yKTtcblxuICAgICAgICBleHBlY3Qoc2VsZWN0b3JzLmxlbmd0aCkudG9FcXVhbCgzKTtcbiAgICAgIH0pO1xuXG4gICAgICBkZXNjcmliZSgncHJvcHMnLCAoKSA9PiB7XG4gICAgICAgIGl0KCdzaG91bGQgbm90IHJlbmRlciBvcHRpb25hbGx5IGNvcnJlY3QgaWYgb3B0aW9uYWwgaXMgbm90IG5lZWRlZCcsICgpID0+IHtcbiAgICAgICAgICBjb21wb25lbnQgPSBzaGFsbG93KFxuICAgICAgICAgICAgPEZlZWRiYWNrQ29uZmlnXG4gICAgICAgICAgICAgIGFsbG93UGFydGlhbD17ZmFsc2V9XG4gICAgICAgICAgICAgIGZlZWRiYWNrPXtmZWVkYmFja31cbiAgICAgICAgICAgICAgZGVmYXVsdHM9e2RlZmF1bHRzfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17amVzdC5mbigpfVxuICAgICAgICAgICAgICBjbGFzc2VzPXt7fX1cbiAgICAgICAgICAgIC8+LFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBzZWxlY3RvcnMgPSBjb21wb25lbnQuZmluZChGZWVkYmFja1NlbGVjdG9yKTtcblxuICAgICAgICAgIGV4cGVjdChzZWxlY3RvcnMubGVuZ3RoKS50b0VxdWFsKDIpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgICBkZXNjcmliZSgnc25hcHNob3QnLCAoKSA9PiB7XG4gICAgICAgIGl0KCdtYXRjaGVzIHRoZSBzbmFwc2hvdCcsICgpID0+IHtcbiAgICAgICAgICBjb21wb25lbnQgPSBzaGFsbG93KFxuICAgICAgICAgICAgPEZlZWRiYWNrQ29uZmlnXG4gICAgICAgICAgICAgIGFsbG93UGFydGlhbD17ZmFsc2V9XG4gICAgICAgICAgICAgIGZlZWRiYWNrPXtmZWVkYmFja31cbiAgICAgICAgICAgICAgZGVmYXVsdHM9e2RlZmF1bHRzfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17amVzdC5mbigpfVxuICAgICAgICAgICAgICBjbGFzc2VzPXt7fX1cbiAgICAgICAgICAgIC8+LFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBleHBlY3QoY29tcG9uZW50KS50b01hdGNoU25hcHNob3QoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==