@pie-lib/editable-html-tip-tap 2.2.0-beta.7 → 2.2.0-beta.8

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 (93) hide show
  1. package/package.json +3 -3
  2. package/lib/__tests__/EditableHtml.test.js +0 -831
  3. package/lib/__tests__/EditableHtml.test.js.map +0 -1
  4. package/lib/__tests__/constants.test.js +0 -21
  5. package/lib/__tests__/constants.test.js.map +0 -1
  6. package/lib/__tests__/div-to-paragraph-conversion.test.js +0 -213
  7. package/lib/__tests__/div-to-paragraph-conversion.test.js.map +0 -1
  8. package/lib/__tests__/extensions.test.js +0 -209
  9. package/lib/__tests__/extensions.test.js.map +0 -1
  10. package/lib/__tests__/index.test.js +0 -250
  11. package/lib/__tests__/index.test.js.map +0 -1
  12. package/lib/__tests__/size-utils.test.js +0 -57
  13. package/lib/__tests__/size-utils.test.js.map +0 -1
  14. package/lib/__tests__/theme.test.js +0 -17
  15. package/lib/__tests__/theme.test.js.map +0 -1
  16. package/lib/components/__tests__/AltDialog.test.js +0 -201
  17. package/lib/components/__tests__/AltDialog.test.js.map +0 -1
  18. package/lib/components/__tests__/CharacterPicker.test.js +0 -455
  19. package/lib/components/__tests__/CharacterPicker.test.js.map +0 -1
  20. package/lib/components/__tests__/CssIcon.test.js +0 -58
  21. package/lib/components/__tests__/CssIcon.test.js.map +0 -1
  22. package/lib/components/__tests__/DragInTheBlank.test.js +0 -295
  23. package/lib/components/__tests__/DragInTheBlank.test.js.map +0 -1
  24. package/lib/components/__tests__/ExplicitConstructedResponse.test.js +0 -345
  25. package/lib/components/__tests__/ExplicitConstructedResponse.test.js.map +0 -1
  26. package/lib/components/__tests__/ImageToolbar.test.js +0 -185
  27. package/lib/components/__tests__/ImageToolbar.test.js.map +0 -1
  28. package/lib/components/__tests__/InlineDropdown.test.js +0 -839
  29. package/lib/components/__tests__/InlineDropdown.test.js.map +0 -1
  30. package/lib/components/__tests__/InsertImageHandler.test.js +0 -171
  31. package/lib/components/__tests__/InsertImageHandler.test.js.map +0 -1
  32. package/lib/components/__tests__/MediaDialog.test.js +0 -433
  33. package/lib/components/__tests__/MediaDialog.test.js.map +0 -1
  34. package/lib/components/__tests__/MediaToolbar.test.js +0 -126
  35. package/lib/components/__tests__/MediaToolbar.test.js.map +0 -1
  36. package/lib/components/__tests__/MediaWrapper.test.js +0 -96
  37. package/lib/components/__tests__/MediaWrapper.test.js.map +0 -1
  38. package/lib/components/__tests__/MenuBar.test.js +0 -502
  39. package/lib/components/__tests__/MenuBar.test.js.map +0 -1
  40. package/lib/components/__tests__/RespArea.test.js +0 -171
  41. package/lib/components/__tests__/RespArea.test.js.map +0 -1
  42. package/lib/components/__tests__/TableIcons.test.js +0 -153
  43. package/lib/components/__tests__/TableIcons.test.js.map +0 -1
  44. package/lib/components/__tests__/TextAlign.test.js +0 -209
  45. package/lib/components/__tests__/TextAlign.test.js.map +0 -1
  46. package/lib/components/__tests__/TiptapContainer.test.js +0 -196
  47. package/lib/components/__tests__/TiptapContainer.test.js.map +0 -1
  48. package/lib/components/__tests__/characterUtils.test.js +0 -178
  49. package/lib/components/__tests__/characterUtils.test.js.map +0 -1
  50. package/lib/components/__tests__/choice.test.js +0 -213
  51. package/lib/components/__tests__/choice.test.js.map +0 -1
  52. package/lib/components/__tests__/custom-popper.test.js +0 -108
  53. package/lib/components/__tests__/custom-popper.test.js.map +0 -1
  54. package/lib/components/__tests__/done-button.test.js +0 -72
  55. package/lib/components/__tests__/done-button.test.js.map +0 -1
  56. package/lib/components/__tests__/toolbar-buttons.test.js +0 -277
  57. package/lib/components/__tests__/toolbar-buttons.test.js.map +0 -1
  58. package/lib/components/respArea/DragInTheBlank/__tests__/choice.test.js +0 -90
  59. package/lib/components/respArea/DragInTheBlank/__tests__/choice.test.js.map +0 -1
  60. package/lib/components/respArea/__tests__/MathTemplated.test.js +0 -217
  61. package/lib/components/respArea/__tests__/MathTemplated.test.js.map +0 -1
  62. package/lib/extensions/__tests__/css.test.js +0 -214
  63. package/lib/extensions/__tests__/css.test.js.map +0 -1
  64. package/lib/extensions/__tests__/custom-toolbar-wrapper.test.js +0 -175
  65. package/lib/extensions/__tests__/custom-toolbar-wrapper.test.js.map +0 -1
  66. package/lib/extensions/__tests__/divNode.test.js +0 -108
  67. package/lib/extensions/__tests__/divNode.test.js.map +0 -1
  68. package/lib/extensions/__tests__/ensure-empty-root-div.test.js +0 -50
  69. package/lib/extensions/__tests__/ensure-empty-root-div.test.js.map +0 -1
  70. package/lib/extensions/__tests__/ensure-list-item-content-is-div.test.js +0 -60
  71. package/lib/extensions/__tests__/ensure-list-item-content-is-div.test.js.map +0 -1
  72. package/lib/extensions/__tests__/extended-list-item.test.js +0 -13
  73. package/lib/extensions/__tests__/extended-list-item.test.js.map +0 -1
  74. package/lib/extensions/__tests__/extended-table-cell.test.js +0 -15
  75. package/lib/extensions/__tests__/extended-table-cell.test.js.map +0 -1
  76. package/lib/extensions/__tests__/extended-table.test.js +0 -200
  77. package/lib/extensions/__tests__/extended-table.test.js.map +0 -1
  78. package/lib/extensions/__tests__/image-component.test.js +0 -432
  79. package/lib/extensions/__tests__/image-component.test.js.map +0 -1
  80. package/lib/extensions/__tests__/image.test.js +0 -313
  81. package/lib/extensions/__tests__/image.test.js.map +0 -1
  82. package/lib/extensions/__tests__/math.test.js +0 -1411
  83. package/lib/extensions/__tests__/math.test.js.map +0 -1
  84. package/lib/extensions/__tests__/media-node-view.test.js +0 -307
  85. package/lib/extensions/__tests__/media-node-view.test.js.map +0 -1
  86. package/lib/extensions/__tests__/media.test.js +0 -292
  87. package/lib/extensions/__tests__/media.test.js.map +0 -1
  88. package/lib/extensions/__tests__/responseArea.test.js +0 -736
  89. package/lib/extensions/__tests__/responseArea.test.js.map +0 -1
  90. package/lib/utils/__tests__/helper.test.js +0 -107
  91. package/lib/utils/__tests__/helper.test.js.map +0 -1
  92. package/lib/utils/__tests__/toolbar.test.js +0 -38
  93. package/lib/utils/__tests__/toolbar.test.js.map +0 -1
@@ -1,295 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
7
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
8
- var _react = _interopRequireDefault(require("react"));
9
- var _react2 = require("@testing-library/react");
10
- var _DragInTheBlank = _interopRequireWildcard(require("../respArea/DragInTheBlank/DragInTheBlank"));
11
- var _excluded = ["children"];
12
- 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); }
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
- jest.mock('@tiptap/react', function () {
16
- return {
17
- NodeViewWrapper: function NodeViewWrapper(_ref) {
18
- var children = _ref.children,
19
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
20
- return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
21
- "data-testid": "node-view-wrapper"
22
- }, props), children);
23
- }
24
- };
25
- });
26
- jest.mock('../respArea/DragInTheBlank/choice', function () {
27
- return {
28
- __esModule: true,
29
- "default": function _default(_ref2) {
30
- var n = _ref2.n,
31
- dragKey = _ref2.dragKey,
32
- targetId = _ref2.targetId,
33
- pos = _ref2.pos,
34
- value = _ref2.value,
35
- onChange = _ref2.onChange,
36
- removeResponse = _ref2.removeResponse;
37
- return /*#__PURE__*/_react["default"].createElement("div", {
38
- "data-testid": "drag-drop-tile",
39
- "data-drag-key": dragKey,
40
- "data-target-id": targetId,
41
- "data-pos": pos
42
- }, "Tile");
43
- }
44
- };
45
- });
46
- describe('onValueChange', function () {
47
- it('dispatches transaction with updated attributes', function () {
48
- var mockEditor = {
49
- state: {
50
- tr: {
51
- setNodeMarkup: jest.fn(function () {
52
- return this;
53
- }),
54
- isDone: false
55
- }
56
- },
57
- view: {
58
- dispatch: jest.fn()
59
- }
60
- };
61
- var mockNode = {
62
- attrs: {
63
- id: '1',
64
- value: 'old'
65
- }
66
- };
67
- var choice = {
68
- value: {
69
- id: '2',
70
- value: 'new'
71
- }
72
- };
73
- (0, _DragInTheBlank.onValueChange)(mockEditor, mockNode, 5, choice);
74
- expect(mockEditor.state.tr.setNodeMarkup).toHaveBeenCalledWith(5, undefined, _objectSpread({
75
- id: '1',
76
- value: 'old'
77
- }, choice.value));
78
- expect(mockEditor.view.dispatch).toHaveBeenCalled();
79
- });
80
- it('sets isDone flag on transaction', function () {
81
- var mockEditor = {
82
- state: {
83
- tr: {
84
- setNodeMarkup: jest.fn(function () {
85
- return this;
86
- }),
87
- isDone: false
88
- }
89
- },
90
- view: {
91
- dispatch: jest.fn()
92
- }
93
- };
94
- var mockNode = {
95
- attrs: {}
96
- };
97
- var choice = {
98
- value: {}
99
- };
100
- (0, _DragInTheBlank.onValueChange)(mockEditor, mockNode, 0, choice);
101
- expect(mockEditor.state.tr.isDone).toBe(true);
102
- });
103
- });
104
- describe('onRemoveResponse', function () {
105
- it('dispatches transaction removing value and id', function () {
106
- var mockEditor = {
107
- state: {
108
- tr: {
109
- setNodeMarkup: jest.fn(function () {
110
- return this;
111
- }),
112
- isDone: false
113
- }
114
- },
115
- view: {
116
- dispatch: jest.fn()
117
- }
118
- };
119
- var mockNode = {
120
- attrs: {
121
- id: '1',
122
- value: 'test',
123
- other: 'keep'
124
- }
125
- };
126
- var choice = {
127
- pos: 5
128
- };
129
- (0, _DragInTheBlank.onRemoveResponse)(mockEditor, mockNode, choice);
130
- expect(mockEditor.state.tr.setNodeMarkup).toHaveBeenCalledWith(5, undefined, {
131
- other: 'keep'
132
- });
133
- expect(mockEditor.view.dispatch).toHaveBeenCalled();
134
- });
135
- it('sets isDone flag on transaction', function () {
136
- var mockEditor = {
137
- state: {
138
- tr: {
139
- setNodeMarkup: jest.fn(function () {
140
- return this;
141
- }),
142
- isDone: false
143
- }
144
- },
145
- view: {
146
- dispatch: jest.fn()
147
- }
148
- };
149
- var mockNode = {
150
- attrs: {
151
- id: '1',
152
- value: 'test'
153
- }
154
- };
155
- var choice = {
156
- pos: 0
157
- };
158
- (0, _DragInTheBlank.onRemoveResponse)(mockEditor, mockNode, choice);
159
- expect(mockEditor.state.tr.isDone).toBe(true);
160
- });
161
- });
162
- describe('DragDrop', function () {
163
- var mockEditor = {
164
- state: {
165
- tr: {
166
- setNodeMarkup: jest.fn(function () {
167
- return this;
168
- })
169
- }
170
- },
171
- view: {
172
- dispatch: jest.fn()
173
- }
174
- };
175
- var mockNode = {
176
- attrs: {
177
- id: '1',
178
- value: 'Test',
179
- index: '0',
180
- inTable: false
181
- },
182
- nodeSize: 1
183
- };
184
- var mockOptions = {
185
- duplicates: false
186
- };
187
- var defaultProps = {
188
- editor: mockEditor,
189
- node: mockNode,
190
- getPos: function getPos() {
191
- return 5;
192
- },
193
- options: mockOptions,
194
- selected: false
195
- };
196
- beforeEach(function () {
197
- jest.clearAllMocks();
198
- });
199
- it('renders without crashing', function () {
200
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
201
- container = _render.container;
202
- expect(container).toBeInTheDocument();
203
- });
204
- it('renders NodeViewWrapper', function () {
205
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
206
- getByTestId = _render2.getByTestId;
207
- expect(getByTestId('node-view-wrapper')).toBeInTheDocument();
208
- });
209
- it('renders DragDropTile', function () {
210
- var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
211
- getByTestId = _render3.getByTestId;
212
- expect(getByTestId('drag-drop-tile')).toBeInTheDocument();
213
- });
214
- it('passes attributes to DragDropTile', function () {
215
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
216
- getByTestId = _render4.getByTestId;
217
- var tile = getByTestId('drag-drop-tile');
218
- expect(tile).toHaveAttribute('data-drag-key', '1');
219
- expect(tile).toHaveAttribute('data-target-id', '0');
220
- expect(tile).toHaveAttribute('data-pos', '5');
221
- });
222
- it('applies correct margin when not in table', function () {
223
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
224
- container = _render5.container;
225
- var span = container.querySelector('span[style*="margin"]');
226
- expect(span).toHaveStyle({
227
- margin: '0 10px'
228
- });
229
- });
230
- it('applies correct margin when in table', function () {
231
- var nodeInTable = _objectSpread(_objectSpread({}, mockNode), {}, {
232
- attrs: _objectSpread(_objectSpread({}, mockNode.attrs), {}, {
233
- inTable: true
234
- })
235
- });
236
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], (0, _extends2["default"])({}, defaultProps, {
237
- node: nodeInTable
238
- }))),
239
- container = _render6.container;
240
- var span = container.querySelector('span[style*="margin"]');
241
- expect(span).toHaveStyle({
242
- margin: '10px'
243
- });
244
- });
245
- it('has inline-flex display', function () {
246
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
247
- container = _render7.container;
248
- var span = container.querySelector('span[style*="display"]');
249
- expect(span).toHaveStyle({
250
- display: 'inline-flex'
251
- });
252
- });
253
- it('has correct minimum height', function () {
254
- var _render8 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
255
- container = _render8.container;
256
- var span = container.querySelector('span[style*="display"]');
257
- expect(span).toHaveStyle({
258
- minHeight: '50px'
259
- });
260
- });
261
- it('has correct minimum width', function () {
262
- var _render9 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
263
- container = _render9.container;
264
- var span = container.querySelector('span[style*="display"]');
265
- expect(span).toHaveStyle({
266
- minWidth: '178px'
267
- });
268
- });
269
- it('has cursor pointer style', function () {
270
- var _render0 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], defaultProps)),
271
- container = _render0.container;
272
- var span = container.querySelector('span[style*="cursor"]');
273
- expect(span).toHaveStyle({
274
- cursor: 'pointer'
275
- });
276
- });
277
- it('passes duplicates option to DragDropTile', function () {
278
- var optionsWithDuplicates = _objectSpread(_objectSpread({}, mockOptions), {}, {
279
- duplicates: true
280
- });
281
- (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], (0, _extends2["default"])({}, defaultProps, {
282
- options: optionsWithDuplicates
283
- })));
284
- expect(true).toBe(true); // DragDropTile is mocked, so we just verify it renders
285
- });
286
- it('sets data-selected attribute on NodeViewWrapper', function () {
287
- var _render1 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_DragInTheBlank["default"], (0, _extends2["default"])({}, defaultProps, {
288
- selected: true
289
- }))),
290
- getByTestId = _render1.getByTestId;
291
- var wrapper = getByTestId('node-view-wrapper');
292
- expect(wrapper).toHaveAttribute('data-selected', 'true');
293
- });
294
- });
295
- //# sourceMappingURL=DragInTheBlank.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DragInTheBlank.test.js","names":["_react","_interopRequireDefault","require","_react2","_DragInTheBlank","_interopRequireWildcard","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","jest","mock","NodeViewWrapper","_ref","children","props","_objectWithoutProperties2","createElement","_extends2","default","_ref2","dragKey","targetId","pos","value","onChange","removeResponse","describe","it","mockEditor","state","tr","setNodeMarkup","fn","isDone","view","dispatch","mockNode","attrs","id","choice","onValueChange","expect","toHaveBeenCalledWith","undefined","toHaveBeenCalled","toBe","other","onRemoveResponse","index","inTable","nodeSize","mockOptions","duplicates","defaultProps","editor","node","getPos","options","selected","beforeEach","clearAllMocks","_render","render","container","toBeInTheDocument","_render2","getByTestId","_render3","_render4","tile","toHaveAttribute","_render5","span","querySelector","toHaveStyle","margin","nodeInTable","_render6","_render7","display","_render8","minHeight","_render9","minWidth","_render0","cursor","optionsWithDuplicates","_render1","wrapper"],"sources":["../../../src/components/__tests__/DragInTheBlank.test.jsx"],"sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport DragDrop, { onRemoveResponse, onValueChange } from '../respArea/DragInTheBlank/DragInTheBlank';\n\njest.mock('@tiptap/react', () => ({\n NodeViewWrapper: ({ children, ...props }) => (\n <div data-testid=\"node-view-wrapper\" {...props}>\n {children}\n </div>\n ),\n}));\n\njest.mock('../respArea/DragInTheBlank/choice', () => ({\n __esModule: true,\n default: ({ n, dragKey, targetId, pos, value, onChange, removeResponse }) => (\n <div data-testid=\"drag-drop-tile\" data-drag-key={dragKey} data-target-id={targetId} data-pos={pos}>\n Tile\n </div>\n ),\n}));\n\ndescribe('onValueChange', () => {\n it('dispatches transaction with updated attributes', () => {\n const mockEditor = {\n state: {\n tr: {\n setNodeMarkup: jest.fn(function () {\n return this;\n }),\n isDone: false,\n },\n },\n view: {\n dispatch: jest.fn(),\n },\n };\n\n const mockNode = {\n attrs: { id: '1', value: 'old' },\n };\n\n const choice = {\n value: { id: '2', value: 'new' },\n };\n\n onValueChange(mockEditor, mockNode, 5, choice);\n\n expect(mockEditor.state.tr.setNodeMarkup).toHaveBeenCalledWith(5, undefined, {\n id: '1',\n value: 'old',\n ...choice.value,\n });\n expect(mockEditor.view.dispatch).toHaveBeenCalled();\n });\n\n it('sets isDone flag on transaction', () => {\n const mockEditor = {\n state: {\n tr: {\n setNodeMarkup: jest.fn(function () {\n return this;\n }),\n isDone: false,\n },\n },\n view: {\n dispatch: jest.fn(),\n },\n };\n\n const mockNode = {\n attrs: {},\n };\n\n const choice = {\n value: {},\n };\n\n onValueChange(mockEditor, mockNode, 0, choice);\n\n expect(mockEditor.state.tr.isDone).toBe(true);\n });\n});\n\ndescribe('onRemoveResponse', () => {\n it('dispatches transaction removing value and id', () => {\n const mockEditor = {\n state: {\n tr: {\n setNodeMarkup: jest.fn(function () {\n return this;\n }),\n isDone: false,\n },\n },\n view: {\n dispatch: jest.fn(),\n },\n };\n\n const mockNode = {\n attrs: { id: '1', value: 'test', other: 'keep' },\n };\n\n const choice = {\n pos: 5,\n };\n\n onRemoveResponse(mockEditor, mockNode, choice);\n\n expect(mockEditor.state.tr.setNodeMarkup).toHaveBeenCalledWith(5, undefined, { other: 'keep' });\n expect(mockEditor.view.dispatch).toHaveBeenCalled();\n });\n\n it('sets isDone flag on transaction', () => {\n const mockEditor = {\n state: {\n tr: {\n setNodeMarkup: jest.fn(function () {\n return this;\n }),\n isDone: false,\n },\n },\n view: {\n dispatch: jest.fn(),\n },\n };\n\n const mockNode = {\n attrs: { id: '1', value: 'test' },\n };\n\n const choice = {\n pos: 0,\n };\n\n onRemoveResponse(mockEditor, mockNode, choice);\n\n expect(mockEditor.state.tr.isDone).toBe(true);\n });\n});\n\ndescribe('DragDrop', () => {\n const mockEditor = {\n state: {\n tr: {\n setNodeMarkup: jest.fn(function () {\n return this;\n }),\n },\n },\n view: {\n dispatch: jest.fn(),\n },\n };\n\n const mockNode = {\n attrs: {\n id: '1',\n value: 'Test',\n index: '0',\n inTable: false,\n },\n nodeSize: 1,\n };\n\n const mockOptions = {\n duplicates: false,\n };\n\n const defaultProps = {\n editor: mockEditor,\n node: mockNode,\n getPos: () => 5,\n options: mockOptions,\n selected: false,\n };\n\n beforeEach(() => {\n jest.clearAllMocks();\n });\n\n it('renders without crashing', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n expect(container).toBeInTheDocument();\n });\n\n it('renders NodeViewWrapper', () => {\n const { getByTestId } = render(<DragDrop {...defaultProps} />);\n expect(getByTestId('node-view-wrapper')).toBeInTheDocument();\n });\n\n it('renders DragDropTile', () => {\n const { getByTestId } = render(<DragDrop {...defaultProps} />);\n expect(getByTestId('drag-drop-tile')).toBeInTheDocument();\n });\n\n it('passes attributes to DragDropTile', () => {\n const { getByTestId } = render(<DragDrop {...defaultProps} />);\n const tile = getByTestId('drag-drop-tile');\n expect(tile).toHaveAttribute('data-drag-key', '1');\n expect(tile).toHaveAttribute('data-target-id', '0');\n expect(tile).toHaveAttribute('data-pos', '5');\n });\n\n it('applies correct margin when not in table', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n const span = container.querySelector('span[style*=\"margin\"]');\n expect(span).toHaveStyle({ margin: '0 10px' });\n });\n\n it('applies correct margin when in table', () => {\n const nodeInTable = { ...mockNode, attrs: { ...mockNode.attrs, inTable: true } };\n const { container } = render(<DragDrop {...defaultProps} node={nodeInTable} />);\n const span = container.querySelector('span[style*=\"margin\"]');\n expect(span).toHaveStyle({ margin: '10px' });\n });\n\n it('has inline-flex display', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n const span = container.querySelector('span[style*=\"display\"]');\n expect(span).toHaveStyle({ display: 'inline-flex' });\n });\n\n it('has correct minimum height', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n const span = container.querySelector('span[style*=\"display\"]');\n expect(span).toHaveStyle({ minHeight: '50px' });\n });\n\n it('has correct minimum width', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n const span = container.querySelector('span[style*=\"display\"]');\n expect(span).toHaveStyle({ minWidth: '178px' });\n });\n\n it('has cursor pointer style', () => {\n const { container } = render(<DragDrop {...defaultProps} />);\n const span = container.querySelector('span[style*=\"cursor\"]');\n expect(span).toHaveStyle({ cursor: 'pointer' });\n });\n\n it('passes duplicates option to DragDropTile', () => {\n const optionsWithDuplicates = { ...mockOptions, duplicates: true };\n render(<DragDrop {...defaultProps} options={optionsWithDuplicates} />);\n expect(true).toBe(true); // DragDropTile is mocked, so we just verify it renders\n });\n\n it('sets data-selected attribute on NodeViewWrapper', () => {\n const { getByTestId } = render(<DragDrop {...defaultProps} selected={true} />);\n const wrapper = getByTestId('node-view-wrapper');\n expect(wrapper).toHaveAttribute('data-selected', 'true');\n });\n});\n"],"mappings":"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","ignoreList":[]}