@pie-lib/editable-html-tip-tap 1.1.1-next.4 → 1.2.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.
Files changed (113) hide show
  1. package/LICENSE.md +5 -0
  2. package/lib/components/CharacterPicker.js +1 -1
  3. package/lib/components/CharacterPicker.js.map +1 -1
  4. package/lib/components/EditableHtml.js +1 -1
  5. package/lib/components/EditableHtml.js.map +1 -1
  6. package/lib/components/MenuBar.js +1 -1
  7. package/lib/components/MenuBar.js.map +1 -1
  8. package/lib/components/TiptapContainer.js +2 -2
  9. package/lib/components/TiptapContainer.js.map +1 -1
  10. package/lib/components/characters/characterUtils.js +1 -1
  11. package/lib/components/characters/characterUtils.js.map +1 -1
  12. package/lib/components/characters/custom-popper.js +1 -1
  13. package/lib/components/characters/custom-popper.js.map +1 -1
  14. package/lib/components/common/done-button.js +1 -1
  15. package/lib/components/common/done-button.js.map +1 -1
  16. package/lib/components/common/toolbar-buttons.js +1 -1
  17. package/lib/components/common/toolbar-buttons.js.map +1 -1
  18. package/lib/components/icons/CssIcon.js +1 -1
  19. package/lib/components/icons/CssIcon.js.map +1 -1
  20. package/lib/components/icons/RespArea.js +1 -1
  21. package/lib/components/icons/RespArea.js.map +1 -1
  22. package/lib/components/icons/TableIcons.js +1 -1
  23. package/lib/components/icons/TableIcons.js.map +1 -1
  24. package/lib/components/icons/TextAlign.js +1 -1
  25. package/lib/components/icons/TextAlign.js.map +1 -1
  26. package/lib/components/image/AltDialog.js +1 -1
  27. package/lib/components/image/AltDialog.js.map +1 -1
  28. package/lib/components/image/ImageToolbar.js +1 -1
  29. package/lib/components/image/ImageToolbar.js.map +1 -1
  30. package/lib/components/image/InsertImageHandler.js +1 -1
  31. package/lib/components/image/InsertImageHandler.js.map +1 -1
  32. package/lib/components/media/MediaDialog.js +1 -1
  33. package/lib/components/media/MediaDialog.js.map +1 -1
  34. package/lib/components/media/MediaToolbar.js +1 -1
  35. package/lib/components/media/MediaToolbar.js.map +1 -1
  36. package/lib/components/media/MediaWrapper.js +1 -1
  37. package/lib/components/media/MediaWrapper.js.map +1 -1
  38. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +1 -1
  39. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
  40. package/lib/components/respArea/DragInTheBlank/choice.js +1 -1
  41. package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -1
  42. package/lib/components/respArea/ExplicitConstructedResponse.js +1 -1
  43. package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -1
  44. package/lib/components/respArea/InlineDropdown.js +1 -1
  45. package/lib/components/respArea/InlineDropdown.js.map +1 -1
  46. package/lib/components/respArea/ToolbarIcon.js +1 -1
  47. package/lib/components/respArea/ToolbarIcon.js.map +1 -1
  48. package/lib/constants.js +1 -1
  49. package/lib/constants.js.map +1 -1
  50. package/lib/extensions/css.js +1 -1
  51. package/lib/extensions/css.js.map +1 -1
  52. package/lib/extensions/custom-toolbar-wrapper.js +1 -1
  53. package/lib/extensions/custom-toolbar-wrapper.js.map +1 -1
  54. package/lib/extensions/extended-table.js +1 -1
  55. package/lib/extensions/extended-table.js.map +1 -1
  56. package/lib/extensions/image-component.js +1 -1
  57. package/lib/extensions/image-component.js.map +1 -1
  58. package/lib/extensions/image.js +1 -1
  59. package/lib/extensions/image.js.map +1 -1
  60. package/lib/extensions/index.js +1 -1
  61. package/lib/extensions/index.js.map +1 -1
  62. package/lib/extensions/math.js +1 -1
  63. package/lib/extensions/math.js.map +1 -1
  64. package/lib/extensions/media.js +1 -1
  65. package/lib/extensions/media.js.map +1 -1
  66. package/lib/extensions/responseArea.js +1 -1
  67. package/lib/extensions/responseArea.js.map +1 -1
  68. package/lib/index.js +1 -1
  69. package/lib/index.js.map +1 -1
  70. package/lib/styles/editorContainerStyles.js +1 -1
  71. package/lib/styles/editorContainerStyles.js.map +1 -1
  72. package/lib/theme.js +1 -1
  73. package/lib/theme.js.map +1 -1
  74. package/lib/utils/size.js +1 -1
  75. package/lib/utils/size.js.map +1 -1
  76. package/package.json +11 -7
  77. package/src/components/TiptapContainer.jsx +1 -1
  78. package/lib/__tests__/EditableHtml.test.js +0 -377
  79. package/lib/__tests__/constants.test.js +0 -21
  80. package/lib/__tests__/extensions.test.js +0 -209
  81. package/lib/__tests__/index.test.js +0 -235
  82. package/lib/__tests__/size-utils.test.js +0 -57
  83. package/lib/__tests__/theme.test.js +0 -17
  84. package/lib/components/__tests__/AltDialog.test.js +0 -201
  85. package/lib/components/__tests__/CharacterPicker.test.js +0 -305
  86. package/lib/components/__tests__/CssIcon.test.js +0 -58
  87. package/lib/components/__tests__/DragInTheBlank.test.js +0 -295
  88. package/lib/components/__tests__/ExplicitConstructedResponse.test.js +0 -253
  89. package/lib/components/__tests__/ImageToolbar.test.js +0 -185
  90. package/lib/components/__tests__/InlineDropdown.test.js +0 -287
  91. package/lib/components/__tests__/InsertImageHandler.test.js +0 -162
  92. package/lib/components/__tests__/MediaDialog.test.js +0 -433
  93. package/lib/components/__tests__/MediaToolbar.test.js +0 -126
  94. package/lib/components/__tests__/MediaWrapper.test.js +0 -96
  95. package/lib/components/__tests__/MenuBar.test.js +0 -459
  96. package/lib/components/__tests__/RespArea.test.js +0 -171
  97. package/lib/components/__tests__/TableIcons.test.js +0 -153
  98. package/lib/components/__tests__/TextAlign.test.js +0 -209
  99. package/lib/components/__tests__/TiptapContainer.test.js +0 -196
  100. package/lib/components/__tests__/characterUtils.test.js +0 -178
  101. package/lib/components/__tests__/choice.test.js +0 -213
  102. package/lib/components/__tests__/custom-popper.test.js +0 -108
  103. package/lib/components/__tests__/done-button.test.js +0 -72
  104. package/lib/components/__tests__/toolbar-buttons.test.js +0 -277
  105. package/lib/extensions/__tests__/component.test.js +0 -314
  106. package/lib/extensions/__tests__/css.test.js +0 -214
  107. package/lib/extensions/__tests__/custom-toolbar-wrapper.test.js +0 -175
  108. package/lib/extensions/__tests__/extended-table.test.js +0 -92
  109. package/lib/extensions/__tests__/image-component.test.js +0 -305
  110. package/lib/extensions/__tests__/image.test.js +0 -164
  111. package/lib/extensions/__tests__/media.test.js +0 -292
  112. package/lib/extensions/__tests__/responseArea.test.js +0 -330
  113. package/lib/extensions/component.js +0 -305
@@ -1,213 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
5
- var _react = _interopRequireDefault(require("react"));
6
- var _react2 = require("@testing-library/react");
7
- var _choice = require("../respArea/DragInTheBlank/choice");
8
- jest.mock('@pie-lib/math-rendering', function () {
9
- return {
10
- renderMath: jest.fn()
11
- };
12
- });
13
- jest.mock('@dnd-kit/core', function () {
14
- return {
15
- useDraggable: function useDraggable() {
16
- return {
17
- attributes: {},
18
- listeners: {},
19
- setNodeRef: jest.fn(),
20
- isDragging: false
21
- };
22
- },
23
- useDroppable: function useDroppable() {
24
- return {
25
- setNodeRef: jest.fn(),
26
- isOver: false,
27
- active: null
28
- };
29
- }
30
- };
31
- });
32
- describe('BlankContent', function () {
33
- var mockN = {
34
- index: '0'
35
- };
36
- var mockValue = {
37
- value: 'Test Value'
38
- };
39
- var defaultProps = {
40
- n: mockN,
41
- value: mockValue,
42
- isDragging: false,
43
- isOver: false,
44
- dragItem: null
45
- };
46
- beforeEach(function () {
47
- jest.clearAllMocks();
48
- });
49
- it('renders without crashing', function () {
50
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
51
- container = _render.container;
52
- expect(container).toBeInTheDocument();
53
- });
54
- it('displays value text', function () {
55
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
56
- container = _render2.container;
57
- var contentDiv = container.querySelector('div[data-key]');
58
- expect(contentDiv).toBeInTheDocument();
59
- });
60
- it('displays nbsp when value is empty', function () {
61
- var emptyValue = {
62
- value: ''
63
- };
64
- var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
65
- value: emptyValue
66
- }))),
67
- container = _render3.container;
68
- expect(container).toBeInTheDocument();
69
- });
70
- it('shows grip icon when value is present', function () {
71
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
72
- container = _render4.container;
73
- var gripIcon = container.querySelector('svg');
74
- expect(gripIcon).toBeInTheDocument();
75
- });
76
- it('does not show grip icon when value is nbsp', function () {
77
- var emptyValue = {
78
- value: ''
79
- };
80
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
81
- value: emptyValue
82
- }))),
83
- container = _render5.container;
84
- // Grip should not be visible
85
- expect(container).toBeInTheDocument();
86
- });
87
- it('applies correct background when not preview', function () {
88
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
89
- container = _render6.container;
90
- var contentDiv = container.querySelector('div[data-key]');
91
- expect(contentDiv).toHaveStyle({
92
- background: 'rgb(255, 255, 255)'
93
- });
94
- });
95
- it('applies preview background when isOver', function () {
96
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
97
- isOver: true
98
- }))),
99
- container = _render7.container;
100
- var contentDiv = container.querySelector('div[data-key]');
101
- expect(contentDiv).toHaveStyle({
102
- border: '1px solid #d1d1d1'
103
- });
104
- });
105
- it('has correct minimum dimensions', function () {
106
- var _render8 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
107
- container = _render8.container;
108
- var contentDiv = container.querySelector('div[data-key]');
109
- expect(contentDiv).toHaveStyle({
110
- minWidth: '178px',
111
- minHeight: '36px'
112
- });
113
- });
114
- it('has inline-flex display', function () {
115
- var _render9 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
116
- container = _render9.container;
117
- var contentDiv = container.querySelector('div[data-key]');
118
- expect(contentDiv).toHaveStyle({
119
- display: 'inline-flex'
120
- });
121
- });
122
- it('has correct border radius', function () {
123
- var _render0 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
124
- container = _render0.container;
125
- var contentDiv = container.querySelector('div[data-key]');
126
- expect(contentDiv).toHaveStyle({
127
- borderRadius: '3px'
128
- });
129
- });
130
- it('has correct padding', function () {
131
- var _render1 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
132
- container = _render1.container;
133
- var contentDiv = container.querySelector('div[data-key]');
134
- expect(contentDiv).toHaveStyle({
135
- padding: '8px 8px 8px 35px'
136
- });
137
- });
138
- it('is not content editable', function () {
139
- var _render10 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
140
- container = _render10.container;
141
- var contentDiv = container.querySelector('div[data-key]');
142
- expect(contentDiv).toHaveAttribute('contentEditable', 'false');
143
- });
144
- it('sets data-key attribute', function () {
145
- var _render11 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
146
- container = _render11.container;
147
- var contentDiv = container.querySelector('div[data-key]');
148
- expect(contentDiv).toHaveAttribute('data-key', '0');
149
- });
150
- it('renders children', function () {
151
- var _render12 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps, /*#__PURE__*/_react["default"].createElement("span", null, "Child Content"))),
152
- getByText = _render12.getByText;
153
- expect(getByText('Child Content')).toBeInTheDocument();
154
- });
155
- it('shows dragItem value when isOver', function () {
156
- var dragItem = {
157
- value: {
158
- value: 'Dragged Value'
159
- }
160
- };
161
- var _render13 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
162
- isOver: true,
163
- dragItem: dragItem
164
- }))),
165
- container = _render13.container;
166
- expect(container).toBeInTheDocument();
167
- });
168
- it('shows nbsp when isDragging', function () {
169
- var _render14 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
170
- isDragging: true
171
- }))),
172
- container = _render14.container;
173
- expect(container).toBeInTheDocument();
174
- });
175
- it('positions grip icon correctly', function () {
176
- var _container$querySelec;
177
- var _render15 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
178
- container = _render15.container;
179
- var gripContainer = (_container$querySelec = container.querySelector('svg')) === null || _container$querySelec === void 0 ? void 0 : _container$querySelec.parentElement;
180
- if (gripContainer) {
181
- expect(gripContainer).toHaveStyle({
182
- position: 'absolute',
183
- top: '6px',
184
- left: '15px'
185
- });
186
- }
187
- });
188
- it('applies hover size when isOver', function () {
189
- var _render16 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, (0, _extends2["default"])({}, defaultProps, {
190
- isOver: true
191
- }))),
192
- container = _render16.container;
193
- var contentDiv = container.querySelector('div[data-key]');
194
- expect(contentDiv).toBeInTheDocument();
195
- });
196
- it('handles click to add selected class', function () {
197
- var _render17 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
198
- container = _render17.container;
199
- var contentDiv = container.querySelector('div[data-key]');
200
- _react2.fireEvent.click(contentDiv);
201
- expect(contentDiv).toHaveClass('selected');
202
- });
203
- it('handles click outside to remove selected class', function () {
204
- var _render18 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_choice.BlankContent, defaultProps)),
205
- container = _render18.container;
206
- var contentDiv = container.querySelector('div[data-key]');
207
- _react2.fireEvent.click(contentDiv);
208
- expect(contentDiv).toHaveClass('selected');
209
- _react2.fireEvent.click(document.body);
210
- expect(contentDiv).not.toHaveClass('selected');
211
- });
212
- });
213
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfY2hvaWNlIiwiamVzdCIsIm1vY2siLCJyZW5kZXJNYXRoIiwiZm4iLCJ1c2VEcmFnZ2FibGUiLCJhdHRyaWJ1dGVzIiwibGlzdGVuZXJzIiwic2V0Tm9kZVJlZiIsImlzRHJhZ2dpbmciLCJ1c2VEcm9wcGFibGUiLCJpc092ZXIiLCJhY3RpdmUiLCJkZXNjcmliZSIsIm1vY2tOIiwiaW5kZXgiLCJtb2NrVmFsdWUiLCJ2YWx1ZSIsImRlZmF1bHRQcm9wcyIsIm4iLCJkcmFnSXRlbSIsImJlZm9yZUVhY2giLCJjbGVhckFsbE1vY2tzIiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIkJsYW5rQ29udGVudCIsImNvbnRhaW5lciIsImV4cGVjdCIsInRvQmVJblRoZURvY3VtZW50IiwiX3JlbmRlcjIiLCJjb250ZW50RGl2IiwicXVlcnlTZWxlY3RvciIsImVtcHR5VmFsdWUiLCJfcmVuZGVyMyIsIl9leHRlbmRzMiIsIl9yZW5kZXI0IiwiZ3JpcEljb24iLCJfcmVuZGVyNSIsIl9yZW5kZXI2IiwidG9IYXZlU3R5bGUiLCJiYWNrZ3JvdW5kIiwiX3JlbmRlcjciLCJib3JkZXIiLCJfcmVuZGVyOCIsIm1pbldpZHRoIiwibWluSGVpZ2h0IiwiX3JlbmRlcjkiLCJkaXNwbGF5IiwiX3JlbmRlcjAiLCJib3JkZXJSYWRpdXMiLCJfcmVuZGVyMSIsInBhZGRpbmciLCJfcmVuZGVyMTAiLCJ0b0hhdmVBdHRyaWJ1dGUiLCJfcmVuZGVyMTEiLCJfcmVuZGVyMTIiLCJnZXRCeVRleHQiLCJfcmVuZGVyMTMiLCJfcmVuZGVyMTQiLCJfY29udGFpbmVyJHF1ZXJ5U2VsZWMiLCJfcmVuZGVyMTUiLCJncmlwQ29udGFpbmVyIiwicGFyZW50RWxlbWVudCIsInBvc2l0aW9uIiwidG9wIiwibGVmdCIsIl9yZW5kZXIxNiIsIl9yZW5kZXIxNyIsImZpcmVFdmVudCIsImNsaWNrIiwidG9IYXZlQ2xhc3MiLCJfcmVuZGVyMTgiLCJkb2N1bWVudCIsImJvZHkiLCJub3QiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9fX3Rlc3RzX18vY2hvaWNlLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBmaXJlRXZlbnQsIHJlbmRlciB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IHsgQmxhbmtDb250ZW50IH0gZnJvbSAnLi4vcmVzcEFyZWEvRHJhZ0luVGhlQmxhbmsvY2hvaWNlJztcblxuamVzdC5tb2NrKCdAcGllLWxpYi9tYXRoLXJlbmRlcmluZycsICgpID0+ICh7XG4gIHJlbmRlck1hdGg6IGplc3QuZm4oKSxcbn0pKTtcblxuamVzdC5tb2NrKCdAZG5kLWtpdC9jb3JlJywgKCkgPT4gKHtcbiAgdXNlRHJhZ2dhYmxlOiAoKSA9PiAoe1xuICAgIGF0dHJpYnV0ZXM6IHt9LFxuICAgIGxpc3RlbmVyczoge30sXG4gICAgc2V0Tm9kZVJlZjogamVzdC5mbigpLFxuICAgIGlzRHJhZ2dpbmc6IGZhbHNlLFxuICB9KSxcbiAgdXNlRHJvcHBhYmxlOiAoKSA9PiAoe1xuICAgIHNldE5vZGVSZWY6IGplc3QuZm4oKSxcbiAgICBpc092ZXI6IGZhbHNlLFxuICAgIGFjdGl2ZTogbnVsbCxcbiAgfSksXG59KSk7XG5cbmRlc2NyaWJlKCdCbGFua0NvbnRlbnQnLCAoKSA9PiB7XG4gIGNvbnN0IG1vY2tOID0ge1xuICAgIGluZGV4OiAnMCcsXG4gIH07XG5cbiAgY29uc3QgbW9ja1ZhbHVlID0ge1xuICAgIHZhbHVlOiAnVGVzdCBWYWx1ZScsXG4gIH07XG5cbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIG46IG1vY2tOLFxuICAgIHZhbHVlOiBtb2NrVmFsdWUsXG4gICAgaXNEcmFnZ2luZzogZmFsc2UsXG4gICAgaXNPdmVyOiBmYWxzZSxcbiAgICBkcmFnSXRlbTogbnVsbCxcbiAgfTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBqZXN0LmNsZWFyQWxsTW9ja3MoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdkaXNwbGF5cyB2YWx1ZSB0ZXh0JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEJsYW5rQ29udGVudCB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgY29uc3QgY29udGVudERpdiA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdkaXZbZGF0YS1rZXldJyk7XG4gICAgZXhwZWN0KGNvbnRlbnREaXYpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdkaXNwbGF5cyBuYnNwIHdoZW4gdmFsdWUgaXMgZW1wdHknLCAoKSA9PiB7XG4gICAgY29uc3QgZW1wdHlWYWx1ZSA9IHsgdmFsdWU6ICcnIH07XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IHZhbHVlPXtlbXB0eVZhbHVlfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3dzIGdyaXAgaWNvbiB3aGVuIHZhbHVlIGlzIHByZXNlbnQnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb25zdCBncmlwSWNvbiA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKTtcbiAgICBleHBlY3QoZ3JpcEljb24pLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdkb2VzIG5vdCBzaG93IGdyaXAgaWNvbiB3aGVuIHZhbHVlIGlzIG5ic3AnLCAoKSA9PiB7XG4gICAgY29uc3QgZW1wdHlWYWx1ZSA9IHsgdmFsdWU6ICcnIH07XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IHZhbHVlPXtlbXB0eVZhbHVlfSAvPik7XG4gICAgLy8gR3JpcCBzaG91bGQgbm90IGJlIHZpc2libGVcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnYXBwbGllcyBjb3JyZWN0IGJhY2tncm91bmQgd2hlbiBub3QgcHJldmlldycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0hhdmVTdHlsZSh7IGJhY2tncm91bmQ6ICdyZ2IoMjU1LCAyNTUsIDI1NSknIH0pO1xuICB9KTtcblxuICBpdCgnYXBwbGllcyBwcmV2aWV3IGJhY2tncm91bmQgd2hlbiBpc092ZXInLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IGlzT3Zlcj17dHJ1ZX0gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0hhdmVTdHlsZSh7IGJvcmRlcjogJzFweCBzb2xpZCAjZDFkMWQxJyB9KTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBjb3JyZWN0IG1pbmltdW0gZGltZW5zaW9ucycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0hhdmVTdHlsZSh7IG1pbldpZHRoOiAnMTc4cHgnLCBtaW5IZWlnaHQ6ICczNnB4JyB9KTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBpbmxpbmUtZmxleCBkaXNwbGF5JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEJsYW5rQ29udGVudCB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgY29uc3QgY29udGVudERpdiA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdkaXZbZGF0YS1rZXldJyk7XG4gICAgZXhwZWN0KGNvbnRlbnREaXYpLnRvSGF2ZVN0eWxlKHsgZGlzcGxheTogJ2lubGluZS1mbGV4JyB9KTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBjb3JyZWN0IGJvcmRlciByYWRpdXMnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb25zdCBjb250ZW50RGl2ID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2RpdltkYXRhLWtleV0nKTtcbiAgICBleHBlY3QoY29udGVudERpdikudG9IYXZlU3R5bGUoeyBib3JkZXJSYWRpdXM6ICczcHgnIH0pO1xuICB9KTtcblxuICBpdCgnaGFzIGNvcnJlY3QgcGFkZGluZycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0hhdmVTdHlsZSh7IHBhZGRpbmc6ICc4cHggOHB4IDhweCAzNXB4JyB9KTtcbiAgfSk7XG5cbiAgaXQoJ2lzIG5vdCBjb250ZW50IGVkaXRhYmxlJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEJsYW5rQ29udGVudCB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgY29uc3QgY29udGVudERpdiA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdkaXZbZGF0YS1rZXldJyk7XG4gICAgZXhwZWN0KGNvbnRlbnREaXYpLnRvSGF2ZUF0dHJpYnV0ZSgnY29udGVudEVkaXRhYmxlJywgJ2ZhbHNlJyk7XG4gIH0pO1xuXG4gIGl0KCdzZXRzIGRhdGEta2V5IGF0dHJpYnV0ZScsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0hhdmVBdHRyaWJ1dGUoJ2RhdGEta2V5JywgJzAnKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgY2hpbGRyZW4nLCAoKSA9PiB7XG4gICAgY29uc3QgeyBnZXRCeVRleHQgfSA9IHJlbmRlcihcbiAgICAgIDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30+XG4gICAgICAgIDxzcGFuPkNoaWxkIENvbnRlbnQ8L3NwYW4+XG4gICAgICA8L0JsYW5rQ29udGVudD4sXG4gICAgKTtcbiAgICBleHBlY3QoZ2V0QnlUZXh0KCdDaGlsZCBDb250ZW50JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdzaG93cyBkcmFnSXRlbSB2YWx1ZSB3aGVuIGlzT3ZlcicsICgpID0+IHtcbiAgICBjb25zdCBkcmFnSXRlbSA9IHsgdmFsdWU6IHsgdmFsdWU6ICdEcmFnZ2VkIFZhbHVlJyB9IH07XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IGlzT3Zlcj17dHJ1ZX0gZHJhZ0l0ZW09e2RyYWdJdGVtfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3dzIG5ic3Agd2hlbiBpc0RyYWdnaW5nJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEJsYW5rQ29udGVudCB7Li4uZGVmYXVsdFByb3BzfSBpc0RyYWdnaW5nPXt0cnVlfSAvPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3Bvc2l0aW9ucyBncmlwIGljb24gY29ycmVjdGx5JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEJsYW5rQ29udGVudCB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgY29uc3QgZ3JpcENvbnRhaW5lciA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdzdmcnKT8ucGFyZW50RWxlbWVudDtcbiAgICBpZiAoZ3JpcENvbnRhaW5lcikge1xuICAgICAgZXhwZWN0KGdyaXBDb250YWluZXIpLnRvSGF2ZVN0eWxlKHsgcG9zaXRpb246ICdhYnNvbHV0ZScsIHRvcDogJzZweCcsIGxlZnQ6ICcxNXB4JyB9KTtcbiAgICB9XG4gIH0pO1xuXG4gIGl0KCdhcHBsaWVzIGhvdmVyIHNpemUgd2hlbiBpc092ZXInLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IGlzT3Zlcj17dHJ1ZX0gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnaGFuZGxlcyBjbGljayB0byBhZGQgc2VsZWN0ZWQgY2xhc3MnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8QmxhbmtDb250ZW50IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb25zdCBjb250ZW50RGl2ID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2RpdltkYXRhLWtleV0nKTtcbiAgICBmaXJlRXZlbnQuY2xpY2soY29udGVudERpdik7XG4gICAgZXhwZWN0KGNvbnRlbnREaXYpLnRvSGF2ZUNsYXNzKCdzZWxlY3RlZCcpO1xuICB9KTtcblxuICBpdCgnaGFuZGxlcyBjbGljayBvdXRzaWRlIHRvIHJlbW92ZSBzZWxlY3RlZCBjbGFzcycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxCbGFua0NvbnRlbnQgey4uLmRlZmF1bHRQcm9wc30gLz4pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignZGl2W2RhdGEta2V5XScpO1xuICAgIGZpcmVFdmVudC5jbGljayhjb250ZW50RGl2KTtcbiAgICBleHBlY3QoY29udGVudERpdikudG9IYXZlQ2xhc3MoJ3NlbGVjdGVkJyk7XG4gICAgZmlyZUV2ZW50LmNsaWNrKGRvY3VtZW50LmJvZHkpO1xuICAgIGV4cGVjdChjb250ZW50RGl2KS5ub3QudG9IYXZlQ2xhc3MoJ3NlbGVjdGVkJyk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFGLE9BQUE7QUFFQUcsSUFBSSxDQUFDQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7RUFBQSxPQUFPO0lBQzFDQyxVQUFVLEVBQUVGLElBQUksQ0FBQ0csRUFBRSxDQUFDO0VBQ3RCLENBQUM7QUFBQSxDQUFDLENBQUM7QUFFSEgsSUFBSSxDQUFDQyxJQUFJLENBQUMsZUFBZSxFQUFFO0VBQUEsT0FBTztJQUNoQ0csWUFBWSxFQUFFLFNBQWRBLFlBQVlBLENBQUE7TUFBQSxPQUFTO1FBQ25CQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ2RDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDYkMsVUFBVSxFQUFFUCxJQUFJLENBQUNHLEVBQUUsQ0FBQyxDQUFDO1FBQ3JCSyxVQUFVLEVBQUU7TUFDZCxDQUFDO0lBQUEsQ0FBQztJQUNGQyxZQUFZLEVBQUUsU0FBZEEsWUFBWUEsQ0FBQTtNQUFBLE9BQVM7UUFDbkJGLFVBQVUsRUFBRVAsSUFBSSxDQUFDRyxFQUFFLENBQUMsQ0FBQztRQUNyQk8sTUFBTSxFQUFFLEtBQUs7UUFDYkMsTUFBTSxFQUFFO01BQ1YsQ0FBQztJQUFBO0VBQ0gsQ0FBQztBQUFBLENBQUMsQ0FBQztBQUVIQyxRQUFRLENBQUMsY0FBYyxFQUFFLFlBQU07RUFDN0IsSUFBTUMsS0FBSyxHQUFHO0lBQ1pDLEtBQUssRUFBRTtFQUNULENBQUM7RUFFRCxJQUFNQyxTQUFTLEdBQUc7SUFDaEJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFFRCxJQUFNQyxZQUFZLEdBQUc7SUFDbkJDLENBQUMsRUFBRUwsS0FBSztJQUNSRyxLQUFLLEVBQUVELFNBQVM7SUFDaEJQLFVBQVUsRUFBRSxLQUFLO0lBQ2pCRSxNQUFNLEVBQUUsS0FBSztJQUNiUyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBRURDLFVBQVUsQ0FBQyxZQUFNO0lBQ2ZwQixJQUFJLENBQUNxQixhQUFhLENBQUMsQ0FBQztFQUN0QixDQUFDLENBQUM7RUFFRkMsRUFBRSxDQUFDLDBCQUEwQixFQUFFLFlBQU07SUFDbkMsSUFBQUMsT0FBQSxHQUFzQixJQUFBQyxjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLEVBQUtULFlBQWUsQ0FBQyxDQUFDO01BQXhEVSxTQUFTLEdBQUFKLE9BQUEsQ0FBVEksU0FBUztJQUNqQkMsTUFBTSxDQUFDRCxTQUFTLENBQUMsQ0FBQ0UsaUJBQWlCLENBQUMsQ0FBQztFQUN2QyxDQUFDLENBQUM7RUFFRlAsRUFBRSxDQUFDLHFCQUFxQixFQUFFLFlBQU07SUFDOUIsSUFBQVEsUUFBQSxHQUFzQixJQUFBTixjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLEVBQUtULFlBQWUsQ0FBQyxDQUFDO01BQXhEVSxTQUFTLEdBQUFHLFFBQUEsQ0FBVEgsU0FBUztJQUNqQixJQUFNSSxVQUFVLEdBQUdKLFNBQVMsQ0FBQ0ssYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUMzREosTUFBTSxDQUFDRyxVQUFVLENBQUMsQ0FBQ0YsaUJBQWlCLENBQUMsQ0FBQztFQUN4QyxDQUFDLENBQUM7RUFFRlAsRUFBRSxDQUFDLG1DQUFtQyxFQUFFLFlBQU07SUFDNUMsSUFBTVcsVUFBVSxHQUFHO01BQUVqQixLQUFLLEVBQUU7SUFBRyxDQUFDO0lBQ2hDLElBQUFrQixRQUFBLEdBQXNCLElBQUFWLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksTUFBQVMsU0FBQSxpQkFBS2xCLFlBQVk7UUFBRUQsS0FBSyxFQUFFaUI7TUFBVyxFQUFFLENBQUMsQ0FBQztNQUEzRU4sU0FBUyxHQUFBTyxRQUFBLENBQVRQLFNBQVM7SUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDLENBQUNFLGlCQUFpQixDQUFDLENBQUM7RUFDdkMsQ0FBQyxDQUFDO0VBRUZQLEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRSxZQUFNO0lBQ2hELElBQUFjLFFBQUEsR0FBc0IsSUFBQVosY0FBTSxlQUFDN0IsTUFBQSxZQUFBOEIsYUFBQSxDQUFDMUIsT0FBQSxDQUFBMkIsWUFBWSxFQUFLVCxZQUFlLENBQUMsQ0FBQztNQUF4RFUsU0FBUyxHQUFBUyxRQUFBLENBQVRULFNBQVM7SUFDakIsSUFBTVUsUUFBUSxHQUFHVixTQUFTLENBQUNLLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDL0NKLE1BQU0sQ0FBQ1MsUUFBUSxDQUFDLENBQUNSLGlCQUFpQixDQUFDLENBQUM7RUFDdEMsQ0FBQyxDQUFDO0VBRUZQLEVBQUUsQ0FBQyw0Q0FBNEMsRUFBRSxZQUFNO0lBQ3JELElBQU1XLFVBQVUsR0FBRztNQUFFakIsS0FBSyxFQUFFO0lBQUcsQ0FBQztJQUNoQyxJQUFBc0IsUUFBQSxHQUFzQixJQUFBZCxjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLE1BQUFTLFNBQUEsaUJBQUtsQixZQUFZO1FBQUVELEtBQUssRUFBRWlCO01BQVcsRUFBRSxDQUFDLENBQUM7TUFBM0VOLFNBQVMsR0FBQVcsUUFBQSxDQUFUWCxTQUFTO0lBQ2pCO0lBQ0FDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDLENBQUNFLGlCQUFpQixDQUFDLENBQUM7RUFDdkMsQ0FBQyxDQUFDO0VBRUZQLEVBQUUsQ0FBQyw2Q0FBNkMsRUFBRSxZQUFNO0lBQ3RELElBQUFpQixRQUFBLEdBQXNCLElBQUFmLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQVksUUFBQSxDQUFUWixTQUFTO0lBQ2pCLElBQU1JLFVBQVUsR0FBR0osU0FBUyxDQUFDSyxhQUFhLENBQUMsZUFBZSxDQUFDO0lBQzNESixNQUFNLENBQUNHLFVBQVUsQ0FBQyxDQUFDUyxXQUFXLENBQUM7TUFBRUMsVUFBVSxFQUFFO0lBQXFCLENBQUMsQ0FBQztFQUN0RSxDQUFDLENBQUM7RUFFRm5CLEVBQUUsQ0FBQyx3Q0FBd0MsRUFBRSxZQUFNO0lBQ2pELElBQUFvQixRQUFBLEdBQXNCLElBQUFsQixjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLE1BQUFTLFNBQUEsaUJBQUtsQixZQUFZO1FBQUVQLE1BQU0sRUFBRTtNQUFLLEVBQUUsQ0FBQyxDQUFDO01BQXRFaUIsU0FBUyxHQUFBZSxRQUFBLENBQVRmLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RKLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUNTLFdBQVcsQ0FBQztNQUFFRyxNQUFNLEVBQUU7SUFBb0IsQ0FBQyxDQUFDO0VBQ2pFLENBQUMsQ0FBQztFQUVGckIsRUFBRSxDQUFDLGdDQUFnQyxFQUFFLFlBQU07SUFDekMsSUFBQXNCLFFBQUEsR0FBc0IsSUFBQXBCLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQWlCLFFBQUEsQ0FBVGpCLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RKLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUNTLFdBQVcsQ0FBQztNQUFFSyxRQUFRLEVBQUUsT0FBTztNQUFFQyxTQUFTLEVBQUU7SUFBTyxDQUFDLENBQUM7RUFDMUUsQ0FBQyxDQUFDO0VBRUZ4QixFQUFFLENBQUMseUJBQXlCLEVBQUUsWUFBTTtJQUNsQyxJQUFBeUIsUUFBQSxHQUFzQixJQUFBdkIsY0FBTSxlQUFDN0IsTUFBQSxZQUFBOEIsYUFBQSxDQUFDMUIsT0FBQSxDQUFBMkIsWUFBWSxFQUFLVCxZQUFlLENBQUMsQ0FBQztNQUF4RFUsU0FBUyxHQUFBb0IsUUFBQSxDQUFUcEIsU0FBUztJQUNqQixJQUFNSSxVQUFVLEdBQUdKLFNBQVMsQ0FBQ0ssYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUMzREosTUFBTSxDQUFDRyxVQUFVLENBQUMsQ0FBQ1MsV0FBVyxDQUFDO01BQUVRLE9BQU8sRUFBRTtJQUFjLENBQUMsQ0FBQztFQUM1RCxDQUFDLENBQUM7RUFFRjFCLEVBQUUsQ0FBQywyQkFBMkIsRUFBRSxZQUFNO0lBQ3BDLElBQUEyQixRQUFBLEdBQXNCLElBQUF6QixjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLEVBQUtULFlBQWUsQ0FBQyxDQUFDO01BQXhEVSxTQUFTLEdBQUFzQixRQUFBLENBQVR0QixTQUFTO0lBQ2pCLElBQU1JLFVBQVUsR0FBR0osU0FBUyxDQUFDSyxhQUFhLENBQUMsZUFBZSxDQUFDO0lBQzNESixNQUFNLENBQUNHLFVBQVUsQ0FBQyxDQUFDUyxXQUFXLENBQUM7TUFBRVUsWUFBWSxFQUFFO0lBQU0sQ0FBQyxDQUFDO0VBQ3pELENBQUMsQ0FBQztFQUVGNUIsRUFBRSxDQUFDLHFCQUFxQixFQUFFLFlBQU07SUFDOUIsSUFBQTZCLFFBQUEsR0FBc0IsSUFBQTNCLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQXdCLFFBQUEsQ0FBVHhCLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RKLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUNTLFdBQVcsQ0FBQztNQUFFWSxPQUFPLEVBQUU7SUFBbUIsQ0FBQyxDQUFDO0VBQ2pFLENBQUMsQ0FBQztFQUVGOUIsRUFBRSxDQUFDLHlCQUF5QixFQUFFLFlBQU07SUFDbEMsSUFBQStCLFNBQUEsR0FBc0IsSUFBQTdCLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQTBCLFNBQUEsQ0FBVDFCLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RKLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUN1QixlQUFlLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDO0VBQ2hFLENBQUMsQ0FBQztFQUVGaEMsRUFBRSxDQUFDLHlCQUF5QixFQUFFLFlBQU07SUFDbEMsSUFBQWlDLFNBQUEsR0FBc0IsSUFBQS9CLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQTRCLFNBQUEsQ0FBVDVCLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RKLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUN1QixlQUFlLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQztFQUNyRCxDQUFDLENBQUM7RUFFRmhDLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxZQUFNO0lBQzNCLElBQUFrQyxTQUFBLEdBQXNCLElBQUFoQyxjQUFNLGVBQzFCN0IsTUFBQSxZQUFBOEIsYUFBQSxDQUFDMUIsT0FBQSxDQUFBMkIsWUFBWSxFQUFLVCxZQUFZLGVBQzVCdEIsTUFBQSxZQUFBOEIsYUFBQSxlQUFNLGVBQW1CLENBQ2IsQ0FDaEIsQ0FBQztNQUpPZ0MsU0FBUyxHQUFBRCxTQUFBLENBQVRDLFNBQVM7SUFLakI3QixNQUFNLENBQUM2QixTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQzVCLGlCQUFpQixDQUFDLENBQUM7RUFDeEQsQ0FBQyxDQUFDO0VBRUZQLEVBQUUsQ0FBQyxrQ0FBa0MsRUFBRSxZQUFNO0lBQzNDLElBQU1ILFFBQVEsR0FBRztNQUFFSCxLQUFLLEVBQUU7UUFBRUEsS0FBSyxFQUFFO01BQWdCO0lBQUUsQ0FBQztJQUN0RCxJQUFBMEMsU0FBQSxHQUFzQixJQUFBbEMsY0FBTSxlQUFDN0IsTUFBQSxZQUFBOEIsYUFBQSxDQUFDMUIsT0FBQSxDQUFBMkIsWUFBWSxNQUFBUyxTQUFBLGlCQUFLbEIsWUFBWTtRQUFFUCxNQUFNLEVBQUUsSUFBSztRQUFDUyxRQUFRLEVBQUVBO01BQVMsRUFBRSxDQUFDLENBQUM7TUFBMUZRLFNBQVMsR0FBQStCLFNBQUEsQ0FBVC9CLFNBQVM7SUFDakJDLE1BQU0sQ0FBQ0QsU0FBUyxDQUFDLENBQUNFLGlCQUFpQixDQUFDLENBQUM7RUFDdkMsQ0FBQyxDQUFDO0VBRUZQLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxZQUFNO0lBQ3JDLElBQUFxQyxTQUFBLEdBQXNCLElBQUFuQyxjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLE1BQUFTLFNBQUEsaUJBQUtsQixZQUFZO1FBQUVULFVBQVUsRUFBRTtNQUFLLEVBQUUsQ0FBQyxDQUFDO01BQTFFbUIsU0FBUyxHQUFBZ0MsU0FBQSxDQUFUaEMsU0FBUztJQUNqQkMsTUFBTSxDQUFDRCxTQUFTLENBQUMsQ0FBQ0UsaUJBQWlCLENBQUMsQ0FBQztFQUN2QyxDQUFDLENBQUM7RUFFRlAsRUFBRSxDQUFDLCtCQUErQixFQUFFLFlBQU07SUFBQSxJQUFBc0MscUJBQUE7SUFDeEMsSUFBQUMsU0FBQSxHQUFzQixJQUFBckMsY0FBTSxlQUFDN0IsTUFBQSxZQUFBOEIsYUFBQSxDQUFDMUIsT0FBQSxDQUFBMkIsWUFBWSxFQUFLVCxZQUFlLENBQUMsQ0FBQztNQUF4RFUsU0FBUyxHQUFBa0MsU0FBQSxDQUFUbEMsU0FBUztJQUNqQixJQUFNbUMsYUFBYSxJQUFBRixxQkFBQSxHQUFHakMsU0FBUyxDQUFDSyxhQUFhLENBQUMsS0FBSyxDQUFDLGNBQUE0QixxQkFBQSx1QkFBOUJBLHFCQUFBLENBQWdDRyxhQUFhO0lBQ25FLElBQUlELGFBQWEsRUFBRTtNQUNqQmxDLE1BQU0sQ0FBQ2tDLGFBQWEsQ0FBQyxDQUFDdEIsV0FBVyxDQUFDO1FBQUV3QixRQUFRLEVBQUUsVUFBVTtRQUFFQyxHQUFHLEVBQUUsS0FBSztRQUFFQyxJQUFJLEVBQUU7TUFBTyxDQUFDLENBQUM7SUFDdkY7RUFDRixDQUFDLENBQUM7RUFFRjVDLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxZQUFNO0lBQ3pDLElBQUE2QyxTQUFBLEdBQXNCLElBQUEzQyxjQUFNLGVBQUM3QixNQUFBLFlBQUE4QixhQUFBLENBQUMxQixPQUFBLENBQUEyQixZQUFZLE1BQUFTLFNBQUEsaUJBQUtsQixZQUFZO1FBQUVQLE1BQU0sRUFBRTtNQUFLLEVBQUUsQ0FBQyxDQUFDO01BQXRFaUIsU0FBUyxHQUFBd0MsU0FBQSxDQUFUeEMsU0FBUztJQUNqQixJQUFNSSxVQUFVLEdBQUdKLFNBQVMsQ0FBQ0ssYUFBYSxDQUFDLGVBQWUsQ0FBQztJQUMzREosTUFBTSxDQUFDRyxVQUFVLENBQUMsQ0FBQ0YsaUJBQWlCLENBQUMsQ0FBQztFQUN4QyxDQUFDLENBQUM7RUFFRlAsRUFBRSxDQUFDLHFDQUFxQyxFQUFFLFlBQU07SUFDOUMsSUFBQThDLFNBQUEsR0FBc0IsSUFBQTVDLGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQXlDLFNBQUEsQ0FBVHpDLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RxQyxpQkFBUyxDQUFDQyxLQUFLLENBQUN2QyxVQUFVLENBQUM7SUFDM0JILE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUN3QyxXQUFXLENBQUMsVUFBVSxDQUFDO0VBQzVDLENBQUMsQ0FBQztFQUVGakQsRUFBRSxDQUFDLGdEQUFnRCxFQUFFLFlBQU07SUFDekQsSUFBQWtELFNBQUEsR0FBc0IsSUFBQWhELGNBQU0sZUFBQzdCLE1BQUEsWUFBQThCLGFBQUEsQ0FBQzFCLE9BQUEsQ0FBQTJCLFlBQVksRUFBS1QsWUFBZSxDQUFDLENBQUM7TUFBeERVLFNBQVMsR0FBQTZDLFNBQUEsQ0FBVDdDLFNBQVM7SUFDakIsSUFBTUksVUFBVSxHQUFHSixTQUFTLENBQUNLLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDM0RxQyxpQkFBUyxDQUFDQyxLQUFLLENBQUN2QyxVQUFVLENBQUM7SUFDM0JILE1BQU0sQ0FBQ0csVUFBVSxDQUFDLENBQUN3QyxXQUFXLENBQUMsVUFBVSxDQUFDO0lBQzFDRixpQkFBUyxDQUFDQyxLQUFLLENBQUNHLFFBQVEsQ0FBQ0MsSUFBSSxDQUFDO0lBQzlCOUMsTUFBTSxDQUFDRyxVQUFVLENBQUMsQ0FBQzRDLEdBQUcsQ0FBQ0osV0FBVyxDQUFDLFVBQVUsQ0FBQztFQUNoRCxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,108 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
5
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
6
- var _react = _interopRequireDefault(require("react"));
7
- var _react2 = require("@testing-library/react");
8
- var _customPopper = _interopRequireDefault(require("../characters/custom-popper"));
9
- var _excluded = ["children", "id", "open"];
10
- jest.mock('@mui/material/Popper', function () {
11
- return {
12
- __esModule: true,
13
- "default": function _default(_ref) {
14
- var children = _ref.children,
15
- id = _ref.id,
16
- open = _ref.open,
17
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
18
- return open ? /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
19
- id: id,
20
- "data-testid": "popper"
21
- }, props), children) : null;
22
- }
23
- };
24
- });
25
- describe('CustomPopper', function () {
26
- var mockAnchorEl = document.createElement('div');
27
- it('renders without crashing', function () {
28
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
29
- anchorEl: mockAnchorEl
30
- }, "Content")),
31
- container = _render.container;
32
- expect(container).toBeInTheDocument();
33
- });
34
- it('renders children', function () {
35
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
36
- anchorEl: mockAnchorEl
37
- }, "Test Content")),
38
- getByText = _render2.getByText;
39
- expect(getByText('Test Content')).toBeInTheDocument();
40
- });
41
- it('is always open', function () {
42
- var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
43
- anchorEl: mockAnchorEl
44
- }, "Content")),
45
- getByTestId = _render3.getByTestId;
46
- expect(getByTestId('popper')).toBeInTheDocument();
47
- });
48
- it('has correct id', function () {
49
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
50
- anchorEl: mockAnchorEl
51
- }, "Content")),
52
- container = _render4.container;
53
- var popper = container.querySelector('#mouse-over-popover');
54
- expect(popper).toBeInTheDocument();
55
- });
56
- it('applies correct styling to typography', function () {
57
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
58
- anchorEl: mockAnchorEl
59
- }, "Content")),
60
- getByText = _render5.getByText;
61
- var typography = getByText('Content');
62
- expect(typography).toHaveStyle({
63
- fontSize: '50px',
64
- textAlign: 'center'
65
- });
66
- });
67
- it('passes additional props to Popper', function () {
68
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
69
- anchorEl: mockAnchorEl,
70
- onClose: jest.fn()
71
- }, "Content")),
72
- container = _render6.container;
73
- expect(container).toBeInTheDocument();
74
- });
75
- it('renders multiple children', function () {
76
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
77
- anchorEl: mockAnchorEl
78
- }, /*#__PURE__*/_react["default"].createElement("div", null, "First"), /*#__PURE__*/_react["default"].createElement("div", null, "Second"))),
79
- getByText = _render7.getByText;
80
- expect(getByText('First')).toBeInTheDocument();
81
- expect(getByText('Second')).toBeInTheDocument();
82
- });
83
- it('has pointer-events disabled', function () {
84
- var _render8 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
85
- anchorEl: mockAnchorEl
86
- }, "Content")),
87
- container = _render8.container;
88
- // Styling is applied via styled component, just verify it rendered
89
- expect(container).toBeInTheDocument();
90
- });
91
- it('has high z-index', function () {
92
- var _render9 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
93
- anchorEl: mockAnchorEl
94
- }, "Content")),
95
- container = _render9.container;
96
- // Styling is applied via styled component, just verify it rendered
97
- expect(container).toBeInTheDocument();
98
- });
99
- it('has correct background color', function () {
100
- var _render0 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_customPopper["default"], {
101
- anchorEl: mockAnchorEl
102
- }, "Content")),
103
- container = _render0.container;
104
- // Styling is applied via styled component, just verify it rendered
105
- expect(container).toBeInTheDocument();
106
- });
107
- });
108
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfY3VzdG9tUG9wcGVyIiwiX2V4Y2x1ZGVkIiwiamVzdCIsIm1vY2siLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9yZWYiLCJjaGlsZHJlbiIsImlkIiwib3BlbiIsInByb3BzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kczIiLCJkZXNjcmliZSIsIm1vY2tBbmNob3JFbCIsImRvY3VtZW50IiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiYW5jaG9yRWwiLCJjb250YWluZXIiLCJleHBlY3QiLCJ0b0JlSW5UaGVEb2N1bWVudCIsIl9yZW5kZXIyIiwiZ2V0QnlUZXh0IiwiX3JlbmRlcjMiLCJnZXRCeVRlc3RJZCIsIl9yZW5kZXI0IiwicG9wcGVyIiwicXVlcnlTZWxlY3RvciIsIl9yZW5kZXI1IiwidHlwb2dyYXBoeSIsInRvSGF2ZVN0eWxlIiwiZm9udFNpemUiLCJ0ZXh0QWxpZ24iLCJfcmVuZGVyNiIsIm9uQ2xvc2UiLCJmbiIsIl9yZW5kZXI3IiwiX3JlbmRlcjgiLCJfcmVuZGVyOSIsIl9yZW5kZXIwIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvX190ZXN0c19fL2N1c3RvbS1wb3BwZXIudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHJlbmRlciB9IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvcmVhY3QnO1xuaW1wb3J0IEN1c3RvbVBvcHBlciBmcm9tICcuLi9jaGFyYWN0ZXJzL2N1c3RvbS1wb3BwZXInO1xuXG5qZXN0Lm1vY2soJ0BtdWkvbWF0ZXJpYWwvUG9wcGVyJywgKCkgPT4gKHtcbiAgX19lc01vZHVsZTogdHJ1ZSxcbiAgZGVmYXVsdDogKHsgY2hpbGRyZW4sIGlkLCBvcGVuLCAuLi5wcm9wcyB9KSA9PlxuICAgIG9wZW4gPyAoXG4gICAgICA8ZGl2IGlkPXtpZH0gZGF0YS10ZXN0aWQ9XCJwb3BwZXJcIiB7Li4ucHJvcHN9PlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L2Rpdj5cbiAgICApIDogbnVsbCxcbn0pKTtcblxuZGVzY3JpYmUoJ0N1c3RvbVBvcHBlcicsICgpID0+IHtcbiAgY29uc3QgbW9ja0FuY2hvckVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cbiAgaXQoJ3JlbmRlcnMgd2l0aG91dCBjcmFzaGluZycsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDdXN0b21Qb3BwZXIgYW5jaG9yRWw9e21vY2tBbmNob3JFbH0+Q29udGVudDwvQ3VzdG9tUG9wcGVyPik7XG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgY2hpbGRyZW4nLCAoKSA9PiB7XG4gICAgY29uc3QgeyBnZXRCeVRleHQgfSA9IHJlbmRlcig8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9PlRlc3QgQ29udGVudDwvQ3VzdG9tUG9wcGVyPik7XG4gICAgZXhwZWN0KGdldEJ5VGV4dCgnVGVzdCBDb250ZW50JykpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdpcyBhbHdheXMgb3BlbicsICgpID0+IHtcbiAgICBjb25zdCB7IGdldEJ5VGVzdElkIH0gPSByZW5kZXIoPEN1c3RvbVBvcHBlciBhbmNob3JFbD17bW9ja0FuY2hvckVsfT5Db250ZW50PC9DdXN0b21Qb3BwZXI+KTtcbiAgICBleHBlY3QoZ2V0QnlUZXN0SWQoJ3BvcHBlcicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnaGFzIGNvcnJlY3QgaWQnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9PkNvbnRlbnQ8L0N1c3RvbVBvcHBlcj4pO1xuICAgIGNvbnN0IHBvcHBlciA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcjbW91c2Utb3Zlci1wb3BvdmVyJyk7XG4gICAgZXhwZWN0KHBvcHBlcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FwcGxpZXMgY29ycmVjdCBzdHlsaW5nIHRvIHR5cG9ncmFwaHknLCAoKSA9PiB7XG4gICAgY29uc3QgeyBnZXRCeVRleHQgfSA9IHJlbmRlcig8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9PkNvbnRlbnQ8L0N1c3RvbVBvcHBlcj4pO1xuICAgIGNvbnN0IHR5cG9ncmFwaHkgPSBnZXRCeVRleHQoJ0NvbnRlbnQnKTtcbiAgICBleHBlY3QodHlwb2dyYXBoeSkudG9IYXZlU3R5bGUoeyBmb250U2l6ZTogJzUwcHgnLCB0ZXh0QWxpZ246ICdjZW50ZXInIH0pO1xuICB9KTtcblxuICBpdCgncGFzc2VzIGFkZGl0aW9uYWwgcHJvcHMgdG8gUG9wcGVyJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoXG4gICAgICA8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9IG9uQ2xvc2U9e2plc3QuZm4oKX0+XG4gICAgICAgIENvbnRlbnRcbiAgICAgIDwvQ3VzdG9tUG9wcGVyPixcbiAgICApO1xuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdyZW5kZXJzIG11bHRpcGxlIGNoaWxkcmVuJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgZ2V0QnlUZXh0IH0gPSByZW5kZXIoXG4gICAgICA8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9PlxuICAgICAgICA8ZGl2PkZpcnN0PC9kaXY+XG4gICAgICAgIDxkaXY+U2Vjb25kPC9kaXY+XG4gICAgICA8L0N1c3RvbVBvcHBlcj4sXG4gICAgKTtcbiAgICBleHBlY3QoZ2V0QnlUZXh0KCdGaXJzdCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIGV4cGVjdChnZXRCeVRleHQoJ1NlY29uZCcpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnaGFzIHBvaW50ZXItZXZlbnRzIGRpc2FibGVkJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPEN1c3RvbVBvcHBlciBhbmNob3JFbD17bW9ja0FuY2hvckVsfT5Db250ZW50PC9DdXN0b21Qb3BwZXI+KTtcbiAgICAvLyBTdHlsaW5nIGlzIGFwcGxpZWQgdmlhIHN0eWxlZCBjb21wb25lbnQsIGp1c3QgdmVyaWZ5IGl0IHJlbmRlcmVkXG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2hhcyBoaWdoIHotaW5kZXgnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8Q3VzdG9tUG9wcGVyIGFuY2hvckVsPXttb2NrQW5jaG9yRWx9PkNvbnRlbnQ8L0N1c3RvbVBvcHBlcj4pO1xuICAgIC8vIFN0eWxpbmcgaXMgYXBwbGllZCB2aWEgc3R5bGVkIGNvbXBvbmVudCwganVzdCB2ZXJpZnkgaXQgcmVuZGVyZWRcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgnaGFzIGNvcnJlY3QgYmFja2dyb3VuZCBjb2xvcicsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxDdXN0b21Qb3BwZXIgYW5jaG9yRWw9e21vY2tBbmNob3JFbH0+Q29udGVudDwvQ3VzdG9tUG9wcGVyPik7XG4gICAgLy8gU3R5bGluZyBpcyBhcHBsaWVkIHZpYSBzdHlsZWQgY29tcG9uZW50LCBqdXN0IHZlcmlmeSBpdCByZW5kZXJlZFxuICAgIGV4cGVjdChjb250YWluZXIpLnRvQmVJblRo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
@@ -1,72 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _react = _interopRequireDefault(require("react"));
5
- var _react2 = require("@testing-library/react");
6
- var _doneButton = require("../common/done-button");
7
- describe('RawDoneButton', function () {
8
- it('renders without crashing', function () {
9
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
10
- onClick: jest.fn()
11
- })),
12
- container = _render.container;
13
- expect(container).toBeInTheDocument();
14
- });
15
- it('renders with Check icon', function () {
16
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
17
- onClick: jest.fn()
18
- })),
19
- container = _render2.container;
20
- var button = container.querySelector('button');
21
- expect(button).toBeInTheDocument();
22
- });
23
- it('calls onClick when clicked', function () {
24
- var onClick = jest.fn();
25
- var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
26
- onClick: onClick
27
- })),
28
- container = _render3.container;
29
- var button = container.querySelector('button');
30
- _react2.fireEvent.click(button);
31
- expect(onClick).toHaveBeenCalled();
32
- });
33
- it('has aria-label "Done"', function () {
34
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
35
- onClick: jest.fn()
36
- })),
37
- container = _render4.container;
38
- var button = container.querySelector('button');
39
- expect(button).toHaveAttribute('aria-label', 'Done');
40
- });
41
- it('accepts doneButtonRef prop', function () {
42
- var doneButtonRef = jest.fn();
43
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
44
- onClick: jest.fn(),
45
- doneButtonRef: doneButtonRef
46
- })),
47
- container = _render5.container;
48
- // doneButtonRef is passed as buttonRef to IconButton, just verify it's accepted
49
- expect(container).toBeInTheDocument();
50
- });
51
- it('applies correct styling', function () {
52
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.RawDoneButton, {
53
- onClick: jest.fn()
54
- })),
55
- container = _render6.container;
56
- var button = container.querySelector('button');
57
- expect(button).toHaveClass('MuiIconButton-root');
58
- });
59
- });
60
- describe('DoneButton', function () {
61
- it('is the same as RawDoneButton', function () {
62
- expect(_doneButton.DoneButton).toBe(_doneButton.RawDoneButton);
63
- });
64
- it('renders correctly', function () {
65
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
66
- onClick: jest.fn()
67
- })),
68
- container = _render7.container;
69
- expect(container.querySelector('button')).toBeInTheDocument();
70
- });
71
- });
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfZG9uZUJ1dHRvbiIsImRlc2NyaWJlIiwiaXQiLCJfcmVuZGVyIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIlJhd0RvbmVCdXR0b24iLCJvbkNsaWNrIiwiamVzdCIsImZuIiwiY29udGFpbmVyIiwiZXhwZWN0IiwidG9CZUluVGhlRG9jdW1lbnQiLCJfcmVuZGVyMiIsImJ1dHRvbiIsInF1ZXJ5U2VsZWN0b3IiLCJfcmVuZGVyMyIsImZpcmVFdmVudCIsImNsaWNrIiwidG9IYXZlQmVlbkNhbGxlZCIsIl9yZW5kZXI0IiwidG9IYXZlQXR0cmlidXRlIiwiZG9uZUJ1dHRvblJlZiIsIl9yZW5kZXI1IiwiX3JlbmRlcjYiLCJ0b0hhdmVDbGFzcyIsIkRvbmVCdXR0b24iLCJ0b0JlIiwiX3JlbmRlcjciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9fX3Rlc3RzX18vZG9uZS1idXR0b24udGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGZpcmVFdmVudCwgcmVuZGVyIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgeyBEb25lQnV0dG9uLCBSYXdEb25lQnV0dG9uIH0gZnJvbSAnLi4vY29tbW9uL2RvbmUtYnV0dG9uJztcblxuZGVzY3JpYmUoJ1Jhd0RvbmVCdXR0b24nLCAoKSA9PiB7XG4gIGl0KCdyZW5kZXJzIHdpdGhvdXQgY3Jhc2hpbmcnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8UmF3RG9uZUJ1dHRvbiBvbkNsaWNrPXtqZXN0LmZuKCl9IC8+KTtcbiAgICBleHBlY3QoY29udGFpbmVyKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcblxuICBpdCgncmVuZGVycyB3aXRoIENoZWNrIGljb24nLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8UmF3RG9uZUJ1dHRvbiBvbkNsaWNrPXtqZXN0LmZuKCl9IC8+KTtcbiAgICBjb25zdCBidXR0b24gPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignYnV0dG9uJyk7XG4gICAgZXhwZWN0KGJ1dHRvbikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2NhbGxzIG9uQ2xpY2sgd2hlbiBjbGlja2VkJywgKCkgPT4ge1xuICAgIGNvbnN0IG9uQ2xpY2sgPSBqZXN0LmZuKCk7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8UmF3RG9uZUJ1dHRvbiBvbkNsaWNrPXtvbkNsaWNrfSAvPik7XG4gICAgY29uc3QgYnV0dG9uID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpO1xuICAgIGZpcmVFdmVudC5jbGljayhidXR0b24pO1xuICAgIGV4cGVjdChvbkNsaWNrKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gIH0pO1xuXG4gIGl0KCdoYXMgYXJpYS1sYWJlbCBcIkRvbmVcIicsICgpID0+IHtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxSYXdEb25lQnV0dG9uIG9uQ2xpY2s9e2plc3QuZm4oKX0gLz4pO1xuICAgIGNvbnN0IGJ1dHRvbiA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCdidXR0b24nKTtcbiAgICBleHBlY3QoYnV0dG9uKS50b0hhdmVBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCAnRG9uZScpO1xuICB9KTtcblxuICBpdCgnYWNjZXB0cyBkb25lQnV0dG9uUmVmIHByb3AnLCAoKSA9PiB7XG4gICAgY29uc3QgZG9uZUJ1dHRvblJlZiA9IGplc3QuZm4oKTtcbiAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKDxSYXdEb25lQnV0dG9uIG9uQ2xpY2s9e2plc3QuZm4oKX0gZG9uZUJ1dHRvblJlZj17ZG9uZUJ1dHRvblJlZn0gLz4pO1xuICAgIC8vIGRvbmVCdXR0b25SZWYgaXMgcGFzc2VkIGFzIGJ1dHRvblJlZiB0byBJY29uQnV0dG9uLCBqdXN0IHZlcmlmeSBpdCdzIGFjY2VwdGVkXG4gICAgZXhwZWN0KGNvbnRhaW5lcikudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ2FwcGxpZXMgY29ycmVjdCBzdHlsaW5nJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgY29udGFpbmVyIH0gPSByZW5kZXIoPFJhd0RvbmVCdXR0b24gb25DbGljaz17amVzdC5mbigpfSAvPik7XG4gICAgY29uc3QgYnV0dG9uID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpO1xuICAgIGV4cGVjdChidXR0b24pLnRvSGF2ZUNsYXNzKCdNdWlJY29uQnV0dG9uLXJvb3QnKTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ0RvbmVCdXR0b24nLCAoKSA9PiB7XG4gIGl0KCdpcyB0aGUgc2FtZSBhcyBSYXdEb25lQnV0dG9uJywgKCkgPT4ge1xuICAgIGV4cGVjdChEb25lQnV0dG9uKS50b0JlKFJhd0RvbmVCdXR0b24pO1xuICB9KTtcblxuICBpdCgncmVuZGVycyBjb3JyZWN0bHknLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlcig8RG9uZUJ1dHRvbiBvbkNsaWNrPXtqZXN0LmZuKCl9IC8+KTtcbiAgICBleHBlY3QoY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbicpKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFFQUcsUUFBUSxDQUFDLGVBQWUsRUFBRSxZQUFNO0VBQzlCQyxFQUFFLENBQUMsMEJBQTBCLEVBQUUsWUFBTTtJQUNuQyxJQUFBQyxPQUFBLEdBQXNCLElBQUFDLGNB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