@pie-lib/editable-html-tip-tap 1.2.0-next.2 → 1.2.0-next.5

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 (89) hide show
  1. package/CHANGELOG.md +31 -27
  2. package/LICENSE.md +5 -0
  3. package/lib/components/CharacterPicker.js +1 -1
  4. package/lib/components/CharacterPicker.js.map +1 -1
  5. package/lib/components/EditableHtml.js +1 -1
  6. package/lib/components/EditableHtml.js.map +1 -1
  7. package/lib/components/MenuBar.js +1 -1
  8. package/lib/components/MenuBar.js.map +1 -1
  9. package/lib/components/TiptapContainer.js +1 -1
  10. package/lib/components/TiptapContainer.js.map +1 -1
  11. package/lib/components/characters/characterUtils.js +1 -1
  12. package/lib/components/characters/custom-popper.js +1 -1
  13. package/lib/components/common/done-button.js +1 -1
  14. package/lib/components/common/toolbar-buttons.js +1 -1
  15. package/lib/components/icons/CssIcon.js +1 -1
  16. package/lib/components/icons/RespArea.js +1 -1
  17. package/lib/components/icons/TableIcons.js +1 -1
  18. package/lib/components/icons/TextAlign.js +1 -1
  19. package/lib/components/image/AltDialog.js +1 -1
  20. package/lib/components/image/ImageToolbar.js +1 -1
  21. package/lib/components/image/InsertImageHandler.js +1 -1
  22. package/lib/components/media/MediaDialog.js +1 -1
  23. package/lib/components/media/MediaToolbar.js +1 -1
  24. package/lib/components/media/MediaWrapper.js +1 -1
  25. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +1 -1
  26. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
  27. package/lib/components/respArea/DragInTheBlank/choice.js +1 -1
  28. package/lib/components/respArea/ExplicitConstructedResponse.js +1 -1
  29. package/lib/components/respArea/InlineDropdown.js +1 -1
  30. package/lib/components/respArea/ToolbarIcon.js +1 -1
  31. package/lib/constants.js +1 -1
  32. package/lib/extensions/css.js +1 -1
  33. package/lib/extensions/custom-toolbar-wrapper.js +1 -1
  34. package/lib/extensions/extended-table.js +1 -1
  35. package/lib/extensions/image-component.js +1 -1
  36. package/lib/extensions/image-component.js.map +1 -1
  37. package/lib/extensions/image.js +1 -1
  38. package/lib/extensions/index.js +4 -2
  39. package/lib/extensions/index.js.map +1 -1
  40. package/lib/extensions/math.js +1 -1
  41. package/lib/extensions/media.js +15 -12
  42. package/lib/extensions/media.js.map +1 -1
  43. package/lib/extensions/responseArea.js +1 -1
  44. package/lib/index.js +1 -1
  45. package/lib/styles/editorContainerStyles.js +1 -1
  46. package/lib/theme.js +1 -1
  47. package/lib/utils/size.js +1 -1
  48. package/package.json +7 -7
  49. package/src/components/EditableHtml.jsx +4 -2
  50. package/src/extensions/__tests__/media-node-view.test.jsx +296 -0
  51. package/src/extensions/__tests__/media.test.js +1 -0
  52. package/src/extensions/index.js +2 -0
  53. package/src/extensions/media.js +17 -14
  54. package/lib/__tests__/EditableHtml.test.js +0 -377
  55. package/lib/__tests__/constants.test.js +0 -21
  56. package/lib/__tests__/extensions.test.js +0 -209
  57. package/lib/__tests__/index.test.js +0 -235
  58. package/lib/__tests__/size-utils.test.js +0 -57
  59. package/lib/__tests__/theme.test.js +0 -17
  60. package/lib/components/__tests__/AltDialog.test.js +0 -201
  61. package/lib/components/__tests__/CharacterPicker.test.js +0 -305
  62. package/lib/components/__tests__/CssIcon.test.js +0 -58
  63. package/lib/components/__tests__/DragInTheBlank.test.js +0 -295
  64. package/lib/components/__tests__/ExplicitConstructedResponse.test.js +0 -253
  65. package/lib/components/__tests__/ImageToolbar.test.js +0 -185
  66. package/lib/components/__tests__/InlineDropdown.test.js +0 -287
  67. package/lib/components/__tests__/InsertImageHandler.test.js +0 -162
  68. package/lib/components/__tests__/MediaDialog.test.js +0 -433
  69. package/lib/components/__tests__/MediaToolbar.test.js +0 -126
  70. package/lib/components/__tests__/MediaWrapper.test.js +0 -96
  71. package/lib/components/__tests__/MenuBar.test.js +0 -459
  72. package/lib/components/__tests__/RespArea.test.js +0 -171
  73. package/lib/components/__tests__/TableIcons.test.js +0 -153
  74. package/lib/components/__tests__/TextAlign.test.js +0 -209
  75. package/lib/components/__tests__/TiptapContainer.test.js +0 -196
  76. package/lib/components/__tests__/characterUtils.test.js +0 -178
  77. package/lib/components/__tests__/choice.test.js +0 -213
  78. package/lib/components/__tests__/custom-popper.test.js +0 -108
  79. package/lib/components/__tests__/done-button.test.js +0 -72
  80. package/lib/components/__tests__/toolbar-buttons.test.js +0 -277
  81. package/lib/extensions/__tests__/component.test.js +0 -314
  82. package/lib/extensions/__tests__/css.test.js +0 -214
  83. package/lib/extensions/__tests__/custom-toolbar-wrapper.test.js +0 -175
  84. package/lib/extensions/__tests__/extended-table.test.js +0 -92
  85. package/lib/extensions/__tests__/image-component.test.js +0 -305
  86. package/lib/extensions/__tests__/image.test.js +0 -164
  87. package/lib/extensions/__tests__/media.test.js +0 -292
  88. package/lib/extensions/__tests__/responseArea.test.js +0 -330
  89. package/lib/extensions/component.js +0 -305
@@ -1,377 +0,0 @@
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _react2 = require("@testing-library/react");
11
- var _EditableHtml = require("../components/EditableHtml");
12
- var _excluded = ["editor"];
13
- 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; }
14
- 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; }
15
- // Mock TipTap dependencies
16
- jest.mock('@tiptap/react', function () {
17
- return {
18
- EditorContent: function EditorContent(_ref) {
19
- var editor = _ref.editor,
20
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
21
- return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
22
- "data-testid": "editor-content"
23
- }, props));
24
- },
25
- useEditor: jest.fn(function (config) {
26
- var mockEditor = {
27
- getHTML: jest.fn(function () {
28
- return '<p>test content</p>';
29
- }),
30
- setEditable: jest.fn(),
31
- commands: {
32
- setContent: jest.fn()
33
- },
34
- isActive: jest.fn(function () {
35
- return false;
36
- }),
37
- isFocused: false
38
- };
39
- return mockEditor;
40
- }),
41
- useEditorState: jest.fn(function () {
42
- return {
43
- isFocused: false
44
- };
45
- })
46
- };
47
- });
48
- jest.mock('@tiptap/starter-kit', function () {
49
- return {
50
- __esModule: true,
51
- "default": {}
52
- };
53
- });
54
- jest.mock('@tiptap/extension-text-style', function () {
55
- return {
56
- TextStyleKit: {}
57
- };
58
- });
59
- jest.mock('@tiptap/extension-character-count', function () {
60
- return {
61
- CharacterCount: {
62
- configure: jest.fn(function () {
63
- return {};
64
- })
65
- }
66
- };
67
- });
68
- jest.mock('@tiptap/extension-superscript', function () {
69
- return {
70
- __esModule: true,
71
- "default": {}
72
- };
73
- });
74
- jest.mock('@tiptap/extension-subscript', function () {
75
- return {
76
- __esModule: true,
77
- "default": {}
78
- };
79
- });
80
- jest.mock('@tiptap/extension-text-align', function () {
81
- return {
82
- __esModule: true,
83
- "default": {
84
- configure: jest.fn(function () {
85
- return {};
86
- })
87
- }
88
- };
89
- });
90
- jest.mock('@tiptap/extension-image', function () {
91
- return {
92
- __esModule: true,
93
- "default": {}
94
- };
95
- });
96
- jest.mock('@tiptap/extension-table', function () {
97
- return {
98
- __esModule: true,
99
- "default": {}
100
- };
101
- });
102
- jest.mock('@tiptap/extension-table-row', function () {
103
- return {
104
- TableRow: {}
105
- };
106
- });
107
- jest.mock('@tiptap/extension-table-cell', function () {
108
- return {
109
- TableCell: {}
110
- };
111
- });
112
- jest.mock('@tiptap/extension-table-header', function () {
113
- return {
114
- TableHeader: {}
115
- };
116
- });
117
- jest.mock('../extensions/extended-table', function () {
118
- return {
119
- __esModule: true,
120
- "default": {}
121
- };
122
- });
123
- jest.mock('../extensions/responseArea', function () {
124
- return {
125
- ExplicitConstructedResponseNode: {
126
- configure: jest.fn(function () {
127
- return {};
128
- })
129
- },
130
- DragInTheBlankNode: {
131
- configure: jest.fn(function () {
132
- return {};
133
- })
134
- },
135
- InlineDropdownNode: {
136
- configure: jest.fn(function () {
137
- return {};
138
- })
139
- },
140
- ResponseAreaExtension: {
141
- configure: jest.fn(function () {
142
- return {};
143
- })
144
- }
145
- };
146
- });
147
- jest.mock('../extensions/math', function () {
148
- return {
149
- MathNode: {
150
- configure: jest.fn(function () {
151
- return {};
152
- })
153
- }
154
- };
155
- });
156
- jest.mock('../extensions/image', function () {
157
- return {
158
- ImageUploadNode: {
159
- configure: jest.fn(function () {
160
- return {};
161
- })
162
- }
163
- };
164
- });
165
- jest.mock('../extensions/media', function () {
166
- return {
167
- Media: {
168
- configure: jest.fn(function () {
169
- return {};
170
- })
171
- }
172
- };
173
- });
174
- jest.mock('../extensions/css', function () {
175
- return {
176
- CSSMark: {
177
- configure: jest.fn(function () {
178
- return {};
179
- })
180
- }
181
- };
182
- });
183
- jest.mock('../components/TiptapContainer', function () {
184
- return {
185
- __esModule: true,
186
- "default": function _default(_ref2) {
187
- var children = _ref2.children;
188
- return /*#__PURE__*/_react["default"].createElement("div", {
189
- "data-testid": "editor-container"
190
- }, children);
191
- }
192
- };
193
- });
194
- jest.mock('../extensions', function () {
195
- return _objectSpread(_objectSpread({}, jest.requireActual('../extensions')), {}, {
196
- buildExtensions: jest.fn(function () {
197
- return [];
198
- })
199
- });
200
- });
201
- describe('EditableHtml', function () {
202
- var defaultProps = {
203
- markup: '<p>Hello World</p>',
204
- onChange: jest.fn(),
205
- onDone: jest.fn(),
206
- disabled: false
207
- };
208
- beforeEach(function () {
209
- jest.clearAllMocks();
210
- });
211
- it('renders without crashing', function () {
212
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, defaultProps)),
213
- container = _render.container;
214
- expect(container).toBeInTheDocument();
215
- });
216
- it('renders editor container', function () {
217
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, defaultProps)),
218
- getByTestId = _render2.getByTestId;
219
- expect(getByTestId('editor-container')).toBeInTheDocument();
220
- });
221
- it('renders editor content when editor is initialized', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
222
- var _render3, getByTestId;
223
- return _regenerator["default"].wrap(function (_context) {
224
- while (1) switch (_context.prev = _context.next) {
225
- case 0:
226
- _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, defaultProps)), getByTestId = _render3.getByTestId;
227
- _context.next = 1;
228
- return (0, _react2.waitFor)(function () {
229
- expect(getByTestId('editor-content')).toBeInTheDocument();
230
- });
231
- case 1:
232
- case "end":
233
- return _context.stop();
234
- }
235
- }, _callee);
236
- })));
237
- it('accepts custom toolbar options', function () {
238
- var toolbarOpts = {
239
- position: 'top',
240
- alignment: 'center',
241
- alwaysVisible: true,
242
- showDone: false,
243
- doneOn: 'change'
244
- };
245
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
246
- toolbarOpts: toolbarOpts
247
- }))),
248
- container = _render4.container;
249
- expect(container).toBeInTheDocument();
250
- });
251
- it('accepts custom active plugins', function () {
252
- var activePlugins = ['bold', 'italic', 'underline'];
253
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
254
- activePlugins: activePlugins
255
- }))),
256
- container = _render5.container;
257
- expect(container).toBeInTheDocument();
258
- });
259
- it('accepts plugin props', function () {
260
- var pluginProps = {
261
- showParagraphs: {
262
- disabled: false
263
- },
264
- separateParagraphs: {
265
- disabled: false
266
- }
267
- };
268
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
269
- pluginProps: pluginProps
270
- }))),
271
- container = _render6.container;
272
- expect(container).toBeInTheDocument();
273
- });
274
- it('accepts response area props', function () {
275
- var responseAreaProps = {
276
- type: 'explicit-constructed-response',
277
- options: {}
278
- };
279
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
280
- responseAreaProps: responseAreaProps
281
- }))),
282
- container = _render7.container;
283
- expect(container).toBeInTheDocument();
284
- });
285
- it('accepts size props', function () {
286
- var sizeProps = {
287
- width: 500,
288
- height: 300,
289
- minHeight: 200,
290
- maxHeight: 400,
291
- minWidth: 300,
292
- maxWidth: 600
293
- };
294
- var _render8 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, sizeProps))),
295
- container = _render8.container;
296
- expect(container).toBeInTheDocument();
297
- });
298
- it('accepts character limit', function () {
299
- var _render9 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
300
- charactersLimit: 500
301
- }))),
302
- container = _render9.container;
303
- expect(container).toBeInTheDocument();
304
- });
305
- it('accepts image support props', function () {
306
- var imageSupport = {
307
- add: jest.fn(),
308
- "delete": jest.fn()
309
- };
310
- var _render0 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
311
- imageSupport: imageSupport
312
- }))),
313
- container = _render0.container;
314
- expect(container).toBeInTheDocument();
315
- });
316
- it('accepts max image dimensions', function () {
317
- var _render1 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
318
- maxImageWidth: 800,
319
- maxImageHeight: 600
320
- }))),
321
- container = _render1.container;
322
- expect(container).toBeInTheDocument();
323
- });
324
- it('accepts language characters props', function () {
325
- var languageCharactersProps = [{
326
- label: 'Greek',
327
- value: 'greek'
328
- }, {
329
- label: 'Cyrillic',
330
- value: 'cyrillic'
331
- }];
332
- var _render10 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
333
- languageCharactersProps: languageCharactersProps
334
- }))),
335
- container = _render10.container;
336
- expect(container).toBeInTheDocument();
337
- });
338
- it('accepts extra CSS rules', function () {
339
- var extraCSSRules = {
340
- '.custom-class': {
341
- color: 'red'
342
- }
343
- };
344
- var _render11 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
345
- extraCSSRules: extraCSSRules
346
- }))),
347
- container = _render11.container;
348
- expect(container).toBeInTheDocument();
349
- });
350
- it('accepts upload sound support', function () {
351
- var uploadSoundSupport = {
352
- add: jest.fn(),
353
- "delete": jest.fn()
354
- };
355
- var _render12 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
356
- uploadSoundSupport: uploadSoundSupport
357
- }))),
358
- container = _render12.container;
359
- expect(container).toBeInTheDocument();
360
- });
361
- it('accepts onKeyDown handler', function () {
362
- var onKeyDown = jest.fn();
363
- var _render13 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
364
- onKeyDown: onKeyDown
365
- }))),
366
- container = _render13.container;
367
- expect(container).toBeInTheDocument();
368
- });
369
- it('accepts disableImageAlignmentButtons prop', function () {
370
- var _render14 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_EditableHtml.EditableHtml, (0, _extends2["default"])({}, defaultProps, {
371
- disableImageAlignmentButtons: true
372
- }))),
373
- container = _render14.container;
374
- expect(container).toBeInTheDocument();
375
- });
376
- });
377
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfRWRpdGFibGVIdG1sIiwiX2V4Y2x1ZGVkIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJqZXN0IiwibW9jayIsIkVkaXRvckNvbnRlbnQiLCJfcmVmIiwiZWRpdG9yIiwicHJvcHMiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsInVzZUVkaXRvciIsImZuIiwiY29uZmlnIiwibW9ja0VkaXRvciIsImdldEhUTUwiLCJzZXRFZGl0YWJsZSIsImNvbW1hbmRzIiwic2V0Q29udGVudCIsImlzQWN0aXZlIiwiaXNGb2N1c2VkIiwidXNlRWRpdG9yU3RhdGUiLCJfX2VzTW9kdWxlIiwiVGV4dFN0eWxlS2l0IiwiQ2hhcmFjdGVyQ291bnQiLCJjb25maWd1cmUiLCJUYWJsZVJvdyIsIlRhYmxlQ2VsbCIsIlRhYmxlSGVhZGVyIiwiRXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlTm9kZSIsIkRyYWdJblRoZUJsYW5rTm9kZSIsIklubGluZURyb3Bkb3duTm9kZSIsIlJlc3BvbnNlQXJlYUV4dGVuc2lvbiIsIk1hdGhOb2RlIiwiSW1hZ2VVcGxvYWROb2RlIiwiTWVkaWEiLCJDU1NNYXJrIiwiZGVmYXVsdCIsIl9yZWYyIiwiY2hpbGRyZW4iLCJyZXF1aXJlQWN0dWFsIiwiYnVpbGRFeHRlbnNpb25zIiwiZGVzY3JpYmUiLCJkZWZhdWx0UHJvcHMiLCJtYXJrdXAiLCJvbkNoYW5nZSIsIm9uRG9uZSIsImRpc2FibGVkIiwiYmVmb3JlRWFjaCIsImNsZWFyQWxsTW9ja3MiLCJpdCIsIl9yZW5kZXIiLCJyZW5kZXIiLCJFZGl0YWJsZUh0bWwiLCJjb250YWluZXIiLCJleHBlY3QiLCJ0b0JlSW5UaGVEb2N1bWVudCIsIl9yZW5kZXIyIiwiZ2V0QnlUZXN0SWQiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsIl9yZW5kZXIzIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJ3YWl0Rm9yIiwic3RvcCIsInRvb2xiYXJPcHRzIiwicG9zaXRpb24iLCJhbGlnbm1lbnQiLCJhbHdheXNWaXNpYmxlIiwic2hvd0RvbmUiLCJkb25lT24iLCJfcmVuZGVyNCIsImFjdGl2ZVBsdWdpbnMiLCJfcmVuZGVyNSIsInBsdWdpblByb3BzIiwic2hvd1BhcmFncmFwaHMiLCJzZXBhcmF0ZVBhcmFncmFwaHMiLCJfcmVuZGVyNiIsInJlc3BvbnNlQXJlYVByb3BzIiwidHlwZSIsIm9wdGlvbnMiLCJfcmVuZGVyNyIsInNpemVQcm9wcyIsIndpZHRoIiwiaGVpZ2h0IiwibWluSGVpZ2h0IiwibWF4SGVpZ2h0IiwibWluV2lkdGgiLCJtYXhXaWR0aCIsIl9yZW5kZXI4IiwiX3JlbmRlcjkiLCJjaGFyYWN0ZXJzTGltaXQiLCJpbWFnZVN1cHBvcnQiLCJhZGQiLCJfcmVuZGVyMCIsIl9yZW5kZXIxIiwibWF4SW1hZ2VXaWR0aCIsIm1heEltYWdlSGVpZ2h0IiwibGFuZ3VhZ2VDaGFyYWN0ZXJzUHJvcHMiLCJsYWJlbCIsInZhbHVlIiwiX3JlbmRlcjEwIiwiZXh0cmFDU1NSdWxlcyIsImNvbG9yIiwiX3JlbmRlcjExIiwidXBsb2FkU291bmRTdXBwb3J0IiwiX3JlbmRlcjEyIiwib25LZXlEb3duIiwiX3JlbmRlcjEzIiwiX3JlbmRlcjE0IiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vRWRpdGFibGVIdG1sLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXIsIHdhaXRGb3IgfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB7IEVkaXRhYmxlSHRtbCB9IGZyb20gJy4uL2NvbXBvbmVudHMvRWRpdGFibGVIdG1sJztcblxuLy8gTW9jayBUaXBUYXAgZGVwZW5kZW5jaWVzXG5qZXN0Lm1vY2soJ0B0aXB0YXAvcmVhY3QnLCAoKSA9PiAoe1xuICBFZGl0b3JDb250ZW50OiAoeyBlZGl0b3IsIC4uLnByb3BzIH0pID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJlZGl0b3ItY29udGVudFwiIHsuLi5wcm9wc30gLz4sXG4gIHVzZUVkaXRvcjogamVzdC5mbigoY29uZmlnKSA9PiB7XG4gICAgY29uc3QgbW9ja0VkaXRvciA9IHtcbiAgICAgIGdldEhUTUw6IGplc3QuZm4oKCkgPT4gJzxwPnRlc3QgY29udGVudDwvcD4nKSxcbiAgICAgIHNldEVkaXRhYmxlOiBqZXN0LmZuKCksXG4gICAgICBjb21tYW5kczoge1xuICAgICAgICBzZXRDb250ZW50OiBqZXN0LmZuKCksXG4gICAgICB9LFxuICAgICAgaXNBY3RpdmU6IGplc3QuZm4oKCkgPT4gZmFsc2UpLFxuICAgICAgaXNGb2N1c2VkOiBmYWxzZSxcbiAgICB9O1xuICAgIHJldHVybiBtb2NrRWRpdG9yO1xuICB9KSxcbiAgdXNlRWRpdG9yU3RhdGU6IGplc3QuZm4oKCkgPT4gKHtcbiAgICBpc0ZvY3VzZWQ6IGZhbHNlLFxuICB9KSksXG59KSk7XG5cbmplc3QubW9jaygnQHRpcHRhcC9zdGFydGVyLWtpdCcsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6IHt9LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0B0aXB0YXAvZXh0ZW5zaW9uLXRleHQtc3R5bGUnLCAoKSA9PiAoe1xuICBUZXh0U3R5bGVLaXQ6IHt9LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0B0aXB0YXAvZXh0ZW5zaW9uLWNoYXJhY3Rlci1jb3VudCcsICgpID0+ICh7XG4gIENoYXJhY3RlckNvdW50OiB7XG4gICAgY29uZmlndXJlOiBqZXN0LmZuKCgpID0+ICh7fSkpLFxuICB9LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0B0aXB0YXAvZXh0ZW5zaW9uLXN1cGVyc2NyaXB0JywgKCkgPT4gKHtcbiAgX19lc01vZHVsZTogdHJ1ZSxcbiAgZGVmYXVsdDoge30sXG59KSk7XG5cbmplc3QubW9jaygnQHRpcHRhcC9leHRlbnNpb24tc3Vic2NyaXB0JywgKCkgPT4gKHtcbiAgX19lc01vZHVsZTogdHJ1ZSxcbiAgZGVmYXVsdDoge30sXG59KSk7XG5cbmplc3QubW9jaygnQHRpcHRhcC9leHRlbnNpb24tdGV4dC1hbGlnbicsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6IHtcbiAgICBjb25maWd1cmU6IGplc3QuZm4oKCkgPT4gKHt9KSksXG4gIH0sXG59KSk7XG5cbmplc3QubW9jaygnQHRpcHRhcC9leHRlbnNpb24taW1hZ2UnLCAoKSA9PiAoe1xuICBfX2VzTW9kdWxlOiB0cnVlLFxuICBkZWZhdWx0OiB7fSxcbn0pKTtcblxuamVzdC5tb2NrKCdAdGlwdGFwL2V4dGVuc2lvbi10YWJsZScsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6IHt9LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0B0aXB0YXAvZXh0ZW5zaW9uLXRhYmxlLXJvdycsICgpID0+ICh7XG4gIFRhYmxlUm93OiB7fSxcbn0pKTtcblxuamVzdC5tb2NrKCdAdGlwdGFwL2V4dGVuc2lvbi10YWJsZS1jZWxsJywgKCkgPT4gKHtcbiAgVGFibGVDZWxsOiB7fSxcbn0pKTtcblxuamVzdC5tb2NrKCdAdGlwdGFwL2V4dGVuc2lvbi10YWJsZS1oZWFkZXInLCAoKSA9PiAoe1xuICBUYWJsZUhlYWRlcjoge30sXG59KSk7XG5cbmplc3QubW9jaygnLi4vZXh0ZW5zaW9ucy9leHRlbmRlZC10YWJsZScsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6IHt9LFxufSkpO1xuXG5qZXN0Lm1vY2soJy4uL2V4dGVuc2lvbnMvcmVzcG9uc2VBcmVhJywgKCkgPT4gKHtcbiAgRXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlTm9kZToge1xuICAgIGNvbmZpZ3VyZTogamVzdC5mbigoKSA9PiAoe30pKSxcbiAgfSxcbiAgRHJhZ0luVGhlQmxhbmtOb2RlOiB7XG4gICAgY29uZmlndXJlOiBqZXN0LmZuKCgpID0+ICh7fSkpLFxuICB9LFxuICBJbmxpbmVEcm9wZG93bk5vZGU6IHtcbiAgICBjb25maWd1cmU6IGplc3QuZm4oKCkgPT4gKHt9KSksXG4gIH0sXG4gIFJlc3BvbnNlQXJlYUV4dGVuc2lvbjoge1xuICAgIGNvbmZpZ3VyZTogamVzdC5mbigoKSA9PiAoe30pKSxcbiAgfSxcbn0pKTtcblxuamVzdC5tb2NrKCcuLi9leHRlbnNpb25zL21hdGgnLCAoKSA9PiAoe1xuICBNYXRoTm9kZToge1xuICAgIGNvbmZpZ3VyZTogamVzdC5mbigoKSA9PiAoe30pKSxcbiAgfSxcbn0pKTtcblxuamVzdC5tb2NrKCcuLi9leHRlbnNpb25zL2ltYWdlJywgKCkgPT4gKHtcbiAgSW1hZ2VVcGxvYWROb2RlOiB7XG4gICAgY29uZmlndXJlOiBqZXN0LmZuKCgpID0+ICh7fSkpLFxuICB9LFxufSkpO1xuXG5qZXN0Lm1vY2soJy4uL2V4dGVuc2lvbnMvbWVkaWEnLCAoKSA9PiAoe1xuICBNZWRpYToge1xuICAgIGNvbmZpZ3VyZTogamVzdC5mbigoKSA9PiAoe30pKSxcbiAgfSxcbn0pKTtcblxuamVzdC5tb2NrKCcuLi9leHRlbnNpb25zL2NzcycsICgpID0+ICh7XG4gIENTU01hcms6IHtcbiAgICBjb25maWd1cmU6IGplc3QuZm4oKCkgPT4gKHt9KSksXG4gIH0sXG59KSk7XG5cbmplc3QubW9jaygnLi4vY29tcG9uZW50cy9UaXB0YXBDb250YWluZXInLCAoKSA9PiAoe1xuICBfX2VzTW9kdWxlOiB0cnVlLFxuICBkZWZhdWx0OiAoeyBjaGlsZHJlbiB9KSA9PiA8ZGl2IGRhdGEtdGVzdGlkPVwiZWRpdG9yLWNvbnRhaW5lclwiPntjaGlsZHJlbn08L2Rpdj4sXG59KSk7XG5cbmplc3QubW9jaygnLi4vZXh0ZW5zaW9ucycsICgpID0+ICh7XG4gIC4uLmplc3QucmVxdWlyZUFjdHVhbCgnLi4vZXh0ZW5zaW9ucycpLFxuICBidWlsZEV4dGVuc2lvbnM6IGplc3QuZm4oKCkgPT4gW10pLFxufSkpO1xuXG5kZXNjcmliZSgnRWRpdGFibGVIdG1sJywgKCkgPT4ge1xuICBjb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gICAgbWFya3VwOiAnPHA+SGVsbG8gV29ybGQ8L3A+JyxcbiAgICBvbkNoYW5nZTogamVzdC5mbigpLFxuICAgIG9uRG9uZTogamVzdC5mbigpLFxuICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgfTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBqZXN0LmNsZWFyQWxsTW9ja3MoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdyZW5kZXJzIGVkaXRvciBjb250YWluZXInLCAoKSA9PiB7XG4gICAgY29uc3QgeyBnZXRCeVRlc3RJZCB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGV4cGVjdChnZXRCeVRlc3RJZCgnZWRpdG9yLWNvbnRhaW5lcicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgncmVuZGVycyBlZGl0b3IgY29udGVudCB3aGVuIGVkaXRvciBpcyBpbml0aWFsaXplZCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCB7IGdldEJ5VGVzdElkIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgYXdhaXQgd2FpdEZvcigoKSA9PiB7XG4gICAgICBleHBlY3QoZ2V0QnlUZXN0SWQoJ2VkaXRvci1jb250ZW50JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdhY2NlcHRzIGN1c3RvbSB0b29sYmFyIG9wdGlvbnMnLCAoKSA9PiB7XG4gICAgY29uc3QgdG9vbGJhck9wdHMgPSB7XG4gICAgICBwb3NpdGlvbjogJ3RvcCcsXG4gICAgICBhbGlnbm1lbnQ6ICdjZW50ZXInLFxuICAgICAgYWx3YXlzVmlzaWJsZTogdHJ1ZSxcbiAgICAgIHNob3dEb25lOiBmYWxzZSxcbiAgICAgIGRvbmVPbjogJ2NoYW5nZScsXG4gICAgfTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gdG9vbGJhck9wdHM9e3Rvb2xiYXJPcHRzfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgY3VzdG9tIGFjdGl2ZSBwbHVnaW5zJywgKCkgPT4ge1xuICAgIGNvbnN0IGFjdGl2ZVBsdWdpbnMgPSBbJ2JvbGQnLCAnaXRhbGljJywgJ3VuZGVybGluZSddO1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSBhY3RpdmVQbHVnaW5zPXthY3RpdmVQbHVnaW5zfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgcGx1Z2luIHByb3BzJywgKCkgPT4ge1xuICAgIGNvbnN0IHBsdWdpblByb3BzID0ge1xuICAgICAgc2hvd1BhcmFncmFwaHM6IHsgZGlzYWJsZWQ6IGZhbHNlIH0sXG4gICAgICBzZXBhcmF0ZVBhcmFncmFwaHM6IHsgZGlzYWJsZWQ6IGZhbHNlIH0sXG4gICAgfTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gcGx1Z2luUHJvcHM9e3BsdWdpblByb3BzfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgcmVzcG9uc2UgYXJlYSBwcm9wcycsICgpID0+IHtcbiAgICBjb25zdCByZXNwb25zZUFyZWFQcm9wcyA9IHtcbiAgICAgIHR5cGU6ICdleHBsaWNpdC1jb25zdHJ1Y3RlZC1yZXNwb25zZScsXG4gICAgICBvcHRpb25zOiB7fSxcbiAgICB9O1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSByZXNwb25zZUFyZWFQcm9wcz17cmVzcG9uc2VBcmVhUHJvcHN9IC8+KTtcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnYWNjZXB0cyBzaXplIHByb3BzJywgKCkgPT4ge1xuICAgIGNvbnN0IHNpemVQcm9wcyA9IHtcbiAgICAgIHdpZHRoOiA1MDAsXG4gICAgICBoZWlnaHQ6IDMwMCxcbiAgICAgIG1pbkhlaWdodDogMjAwLFxuICAgICAgbWF4SGVpZ2h0OiA0MDAsXG4gICAgICBtaW5XaWR0aDogMzAwLFxuICAgICAgbWF4V2lkdGg6IDYwMCxcbiAgICB9O1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSB7Li4uc2l6ZVByb3BzfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgY2hhcmFjdGVyIGxpbWl0JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSBjaGFyYWN0ZXJzTGltaXQ9ezUwMH0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdhY2NlcHRzIGltYWdlIHN1cHBvcnQgcHJvcHMnLCAoKSA9PiB7XG4gICAgY29uc3QgaW1hZ2VTdXBwb3J0ID0ge1xuICAgICAgYWRkOiBqZXN0LmZuKCksXG4gICAgICBkZWxldGU6IGplc3QuZm4oKSxcbiAgICB9O1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSBpbWFnZVN1cHBvcnQ9e2ltYWdlU3VwcG9ydH0gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdhY2NlcHRzIG1heCBpbWFnZSBkaW1lbnNpb25zJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSBtYXhJbWFnZVdpZHRoPXs4MDB9IG1heEltYWdlSGVpZ2h0PXs2MDB9IC8+KTtcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnYWNjZXB0cyBsYW5ndWFnZSBjaGFyYWN0ZXJzIHByb3BzJywgKCkgPT4ge1xuICAgIGNvbnN0IGxhbmd1YWdlQ2hhcmFjdGVyc1Byb3BzID0gW1xuICAgICAgeyBsYWJlbDogJ0dyZWVrJywgdmFsdWU6ICdncmVlaycgfSxcbiAgICAgIHsgbGFiZWw6ICdDeXJpbGxpYycsIHZhbHVlOiAnY3lyaWxsaWMnIH0sXG4gICAgXTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gbGFuZ3VhZ2VDaGFyYWN0ZXJzUHJvcHM9e2xhbmd1YWdlQ2hhcmFjdGVyc1Byb3BzfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgZXh0cmEgQ1NTIHJ1bGVzJywgKCkgPT4ge1xuICAgIGNvbnN0IGV4dHJhQ1NTUnVsZXMgPSB7XG4gICAgICAnLmN1c3RvbS1jbGFzcyc6IHsgY29sb3I6ICdyZWQnIH0sXG4gICAgfTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gZXh0cmFDU1NSdWxlcz17ZXh0cmFDU1NSdWxlc30gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdhY2NlcHRzIHVwbG9hZCBzb3VuZCBzdXBwb3J0JywgKCkgPT4ge1xuICAgIGNvbnN0IHVwbG9hZFNvdW5kU3VwcG9ydCA9IHtcbiAgICAgIGFkZDogamVzdC5mbigpLFxuICAgICAgZGVsZXRlOiBqZXN0LmZuKCksXG4gICAgfTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxFZGl0YWJsZUh0bWwgey4uLmRlZmF1bHRQcm9wc30gdXBsb2FkU291bmRTdXBwb3J0PXt1cGxvYWRTb3VuZFN1cHBvcnR9IC8+KTtcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnYWNjZXB0cyBvbktleURvd24gaGFuZGxlcicsICgpID0+IHtcbiAgICBjb25zdCBvbktleURvd24gPSBqZXN0LmZuKCk7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8RWRpdGFibGVIdG1sIHsuLi5kZWZhdWx0UHJvcHN9IG9uS2V5RG93bj17b25LZXlEb3dufSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FjY2VwdHMgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyBwcm9wJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEVkaXRhYmxlSHRtbCB7Li4uZGVmYXVsdFByb3BzfSBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zPXt0cnVlfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxhQUFBLEdBQUFGLE9BQUE7QUFBMEQsSUFBQUcsU0FBQTtBQUFBLFNBQUFDLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENB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RUFBRSxDQUFDLENBQUM7TUFBdEZyRCxTQUFTLEdBQUF1RCxTQUFBLENBQVR2RCxTQUFTO0lBQ2pCQyxNQUFNLENBQUNELFNBQVMsQ0FBQyxDQUFDRSxpQkFBaUIsQ0FBQyxDQUFDO0VBQ3ZDLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsOEJBQThCLEVBQUUsWUFBTTtJQUN2QyxJQUFNNEQsa0JBQWtCLEdBQUc7TUFDekJaLEdBQUcsRUFBRWhHLElBQUksQ0FBQ1UsRUFBRSxDQUFDLENBQUM7TUFDZCxVQUFRVixJQUFJLENBQUNVLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBQ0QsSUFBQW1HLFNBQUEsR0FBc0IsSUFBQTNELGNBQU0sZUFBQzdFLE1BQUEsWUFBQWtDLGFBQUEsQ0FBQzlCLGFBQUEsQ0FBQTBFLFlBQVksTUFBQTNDLFNBQUEsaUJBQUtpQyxZQUFZO1FBQUVtRSxrQkFBa0IsRUFBRUE7TUFBbUIsRUFBRSxDQUFDLENBQUM7TUFBaEd4RCxTQUFTLEdBQUF5RCxTQUFBLENBQVR6RCxTQUFTO0lBQ2pCQyxNQUFNLENBQUNELFNBQVMsQ0FBQyxDQUFDRSxpQkFBaUIsQ0FBQyxDQUFDO0VBQ3ZDLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsMkJBQTJCLEVBQUUsWUFBTTtJQUNwQyxJQUFNOEQsU0FBUyxHQUFHOUcsSUFBSSxDQUFDVSxFQUFFLENBQUMsQ0FBQztJQUMzQixJQUFBcUcsU0FBQSxHQUFzQixJQUFBN0QsY0FBTSxlQUFDN0UsTUFBQSxZQUFBa0MsYUFBQSxDQUFDOUIsYUFBQSxDQUFBMEUsWUFBWSxNQUFBM0MsU0FBQSxpQkFBS2lDLFlBQVk7UUFBRXFFLFNBQVMsRUFBRUE7TUFBVSxFQUFFLENBQUMsQ0FBQztNQUE5RTFELFNBQVMsR0FBQTJELFNBQUEsQ0FBVDNELFNBQVM7SUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDLENBQUNFLGlCQUFpQixDQUFDLENBQUM7RUFDdkMsQ0FBQyxDQUFDO0VBRUZOLEVBQUUsQ0FBQywyQ0FBMkMsRUFBRSxZQUFNO0lBQ3BELElBQUFnRSxTQUFBLEdBQXNCLElBQUE5RCxjQUFNLGVBQUM3RSxNQUFBLFlBQUFrQyxhQUFBLENBQUM5QixhQUFBLENBQUEwRSxZQUFZLE1BQUEzQyxTQUFBLGlCQUFLaUMsWUFBWTtRQUFFd0UsNEJBQTRCLEVBQUU7TUFBSyxFQUFFLENBQUMsQ0FBQztNQUE1RjdELFNBQVMsR0FBQTRELFNBQUEsQ0FBVDVELFNBQVM7SUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDLENBQUNFLGlCQUFpQixDQUFDLENBQUM7RUFDdkMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -1,21 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
- var _constants = _interopRequireWildcard(require("../constants"));
5
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
6
- describe('Constants', function () {
7
- describe('PIE_TOOLBAR__CLASS', function () {
8
- it('is defined', function () {
9
- expect(_constants.PIE_TOOLBAR__CLASS).toBeDefined();
10
- });
11
- it('has the correct value', function () {
12
- expect(_constants.PIE_TOOLBAR__CLASS).toBe('pie-toolbar');
13
- });
14
- });
15
- describe('default export', function () {
16
- it('contains PIE_TOOLBAR__CLASS', function () {
17
- expect(_constants["default"].PIE_TOOLBAR__CLASS).toBe('pie-toolbar');
18
- });
19
- });
20
- });
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJkZXNjcmliZSIsIml0IiwiZXhwZWN0IiwiUElFX1RPT0xCQVJfX0NMQVNTIiwidG9CZURlZmluZWQiLCJ0b0JlIiwiY29uc3RhbnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL19fdGVzdHNfXy9jb25zdGFudHMudGVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29uc3RhbnRzLCB7IFBJRV9UT09MQkFSX19DTEFTUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmRlc2NyaWJlKCdDb25zdGFudHMnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdQSUVfVE9PTEJBUl9fQ0xBU1MnLCAoKSA9PiB7XG4gICAgaXQoJ2lzIGRlZmluZWQnLCAoKSA9PiB7XG4gICAgICBleHBlY3QoUElFX1RPT0xCQVJfX0NMQVNTKS50b0JlRGVmaW5lZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2hhcyB0aGUgY29ycmVjdCB2YWx1ZScsICgpID0+IHtcbiAgICAgIGV4cGVjdChQSUVfVE9PTEJBUl9fQ0xBU1MpLnRvQmUoJ3BpZS10b29sYmFyJyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdkZWZhdWx0IGV4cG9ydCcsICgpID0+IHtcbiAgICBpdCgnY29udGFpbnMgUElFX1RPT0xCQVJfX0NMQVNTJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KGNvbnN0YW50cy5QSUVfVE9PTEJBUl9fQ0xBU1MpLnRvQmUoJ3BpZS10b29sYmFyJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUE2RCxTQUFBRCx3QkFBQUUsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUosdUJBQUEsWUFBQUEsd0JBQUFFLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFELENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsTUFBQU0sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxtQkFBQVQsQ0FBQSxpQkFBQUEsQ0FBQSxnQkFBQVUsT0FBQSxDQUFBVixDQUFBLDBCQUFBQSxDQUFBLFNBQUFRLENBQUEsTUFBQUYsQ0FBQSxHQUFBTCxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxRQUFBRyxDQUFBLENBQUFLLEdBQUEsQ0FBQVgsQ0FBQSxVQUFBTSxDQUFBLENBQUFNLEdBQUEsQ0FBQVosQ0FBQSxHQUFBTSxDQUFBLENBQUFPLEdBQUEsQ0FBQWIsQ0FBQSxFQUFBUSxDQUFBLGNBQUFNLEVBQUEsSUFBQWQsQ0FBQSxnQkFBQWMsRUFBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsRUFBQSxPQUFBUCxDQUFBLElBQUFELENBQUEsR0FBQVcsTUFBQSxDQUFBQyxjQUFBLEtBQUFELE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQW5CLENBQUEsRUFBQWMsRUFBQSxPQUFBUCxDQUFBLENBQUFLLEdBQUEsSUFBQUwsQ0FBQSxDQUFBTSxHQUFBLElBQUFQLENBQUEsQ0FBQUUsQ0FBQSxFQUFBTSxFQUFBLEVBQUFQLENBQUEsSUFBQUMsQ0FBQSxDQUFBTSxFQUFBLElBQUFkLENBQUEsQ0FBQWMsRUFBQSxXQUFBTixDQUFBLEtBQUFSLENBQUEsRUFBQUMsQ0FBQTtBQUU3RG1CLFFBQVEsQ0FBQyxXQUFXLEVBQUUsWUFBTTtFQUMxQkEsUUFBUSxDQUFDLG9CQUFvQixFQUFFLFlBQU07SUFDbkNDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBTTtNQUNyQkMsTUFBTSxDQUFDQyw2QkFBa0IsQ0FBQyxDQUFDQyxXQUFXLENBQUMsQ0FBQztJQUMxQyxDQUFDLENBQUM7SUFFRkgsRUFBRSxDQUFDLHVCQUF1QixFQUFFLFlBQU07TUFDaENDLE1BQU0sQ0FBQ0MsNkJBQWtCLENBQUMsQ0FBQ0UsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUNoRCxDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7RUFFRkwsUUFBUSxDQUFDLGdCQUFnQixFQUFFLFlBQU07SUFDL0JDLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSxZQUFNO01BQ3RDQyxNQUFNLENBQUNJLHFCQUFTLENBQUNILGtCQUFrQixDQUFDLENBQUNFLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDMUQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119