@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 +0,0 @@
1
- {"version":3,"file":"extensions.test.js","names":["_extensions","require","describe","it","expect","ALL_PLUGINS","toContain","DEFAULT_PLUGINS","not","result","buildExtensions","Array","isArray","toBe","activeExtensions","toEqual","every","item","undefined","opts","image","jest","fn","math","responseArea","type","extraCSSRules","color","html","languageCharacters","label","value","languageCharsCount","filter","length","toBeGreaterThan","indexOf","toBeLessThan"],"sources":["../../src/__tests__/extensions.test.js"],"sourcesContent":["import { ALL_PLUGINS, buildExtensions, DEFAULT_PLUGINS } from '../extensions';\n\ndescribe('Extensions', () => {\n describe('ALL_PLUGINS', () => {\n it('contains all expected plugins', () => {\n expect(ALL_PLUGINS).toContain('bold');\n expect(ALL_PLUGINS).toContain('italic');\n expect(ALL_PLUGINS).toContain('underline');\n expect(ALL_PLUGINS).toContain('strikethrough');\n expect(ALL_PLUGINS).toContain('bulleted-list');\n expect(ALL_PLUGINS).toContain('numbered-list');\n expect(ALL_PLUGINS).toContain('image');\n expect(ALL_PLUGINS).toContain('math');\n expect(ALL_PLUGINS).toContain('languageCharacters');\n expect(ALL_PLUGINS).toContain('text-align');\n expect(ALL_PLUGINS).toContain('table');\n expect(ALL_PLUGINS).toContain('video');\n expect(ALL_PLUGINS).toContain('audio');\n expect(ALL_PLUGINS).toContain('responseArea');\n expect(ALL_PLUGINS).toContain('superscript');\n expect(ALL_PLUGINS).toContain('subscript');\n expect(ALL_PLUGINS).toContain('h3');\n expect(ALL_PLUGINS).toContain('blockquote');\n expect(ALL_PLUGINS).toContain('undo');\n expect(ALL_PLUGINS).toContain('redo');\n });\n });\n\n describe('DEFAULT_PLUGINS', () => {\n it('excludes responseArea, h3, and blockquote', () => {\n expect(DEFAULT_PLUGINS).not.toContain('responseArea');\n expect(DEFAULT_PLUGINS).not.toContain('h3');\n expect(DEFAULT_PLUGINS).not.toContain('blockquote');\n });\n\n it('contains basic formatting plugins', () => {\n expect(DEFAULT_PLUGINS).toContain('bold');\n expect(DEFAULT_PLUGINS).toContain('italic');\n expect(DEFAULT_PLUGINS).toContain('underline');\n });\n });\n\n describe('buildExtensions', () => {\n it('returns an array when called with default parameters', () => {\n const result = buildExtensions(DEFAULT_PLUGINS, [], {});\n expect(Array.isArray(result)).toBe(true);\n });\n\n it('includes only active extensions', () => {\n const activeExtensions = ['bold', 'italic'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toEqual(['bold', 'italic']);\n });\n\n it('filters out undefined values', () => {\n const result = buildExtensions(['bold', 'italic'], [], {});\n expect(result.every((item) => item !== undefined)).toBe(true);\n });\n\n it('excludes image plugin when opts.image.onDelete is not provided', () => {\n const activeExtensions = ['image'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).not.toContain('image');\n });\n\n it('includes image plugin when opts.image.delete is provided', () => {\n const activeExtensions = ['image'];\n const opts = { image: { delete: jest.fn() } };\n const result = buildExtensions(activeExtensions, [], opts);\n expect(result).toContain('image');\n });\n\n it('excludes math plugin when opts.math is not provided', () => {\n const activeExtensions = ['math'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).not.toContain('math');\n });\n\n it('includes math plugin when opts.math is provided', () => {\n const activeExtensions = ['math'];\n const opts = { math: {} };\n const result = buildExtensions(activeExtensions, [], opts);\n expect(result).toContain('math');\n });\n\n it('excludes responseArea plugin when opts.responseArea.type is not provided', () => {\n const activeExtensions = ['responseArea'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).not.toContain('responseArea');\n });\n\n it('includes responseArea plugin when opts.responseArea.type is provided', () => {\n const activeExtensions = ['responseArea'];\n const opts = { responseArea: { type: 'explicit-constructed-response' } };\n const result = buildExtensions(activeExtensions, [], opts);\n expect(result).toContain('responseArea');\n });\n\n it('excludes css plugin when opts.extraCSSRules is empty', () => {\n const activeExtensions = ['css'];\n const result = buildExtensions(activeExtensions, [], { extraCSSRules: {} });\n expect(result).not.toContain('css');\n });\n\n it('includes css plugin when opts.extraCSSRules has values', () => {\n const activeExtensions = ['css'];\n const opts = { extraCSSRules: { color: 'red' } };\n const result = buildExtensions(activeExtensions, [], opts);\n expect(result).toContain('css');\n });\n\n it('excludes html plugin when opts.html is not provided', () => {\n const activeExtensions = ['html'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).not.toContain('html');\n });\n\n it('includes html plugin when opts.html is provided', () => {\n const activeExtensions = ['html'];\n const opts = { html: true };\n const result = buildExtensions(activeExtensions, [], opts);\n expect(result).toContain('html');\n });\n\n it('handles languageCharacters plugins array', () => {\n const activeExtensions = ['languageCharacters'];\n const opts = {\n languageCharacters: [\n { label: 'Greek', value: 'greek' },\n { label: 'Cyrillic', value: 'cyrillic' },\n ],\n };\n const result = buildExtensions(activeExtensions, [], opts);\n // Should include languageCharacters for each item in the array\n const languageCharsCount = result.filter((item) => item === 'languageCharacters').length;\n expect(languageCharsCount).toBe(2);\n });\n\n it('uses DEFAULT_PLUGINS when activeExtensions is not provided', () => {\n const result = buildExtensions(null, [], {});\n expect(Array.isArray(result)).toBe(true);\n expect(result.length).toBeGreaterThan(0);\n });\n\n it('includes list plugins', () => {\n const activeExtensions = ['bulleted-list', 'numbered-list'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('bulleted-list');\n expect(result).toContain('numbered-list');\n });\n\n it('includes undo and redo plugins', () => {\n const activeExtensions = ['undo', 'redo'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('undo');\n expect(result).toContain('redo');\n });\n\n it('includes text formatting plugins', () => {\n const activeExtensions = ['superscript', 'subscript', 'strikethrough', 'underline'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('superscript');\n expect(result).toContain('subscript');\n expect(result).toContain('strikethrough');\n expect(result).toContain('underline');\n });\n\n it('includes media plugins', () => {\n const activeExtensions = ['video', 'audio'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('video');\n expect(result).toContain('audio');\n });\n\n it('includes table plugin', () => {\n const activeExtensions = ['table'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('table');\n });\n\n it('includes text-align plugin', () => {\n const activeExtensions = ['text-align'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('text-align');\n });\n\n it('includes blockquote and h3 plugins when in active list', () => {\n const activeExtensions = ['blockquote', 'h3'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).toContain('blockquote');\n expect(result).toContain('h3');\n });\n\n it('filters out inactive extensions', () => {\n const activeExtensions = ['bold'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result).not.toContain('italic');\n expect(result).not.toContain('underline');\n });\n\n it('maintains order of extensions', () => {\n const activeExtensions = ['table', 'bold', 'italic'];\n const result = buildExtensions(activeExtensions, [], {});\n expect(result.indexOf('table')).toBeLessThan(result.indexOf('bold'));\n expect(result.indexOf('bold')).toBeLessThan(result.indexOf('italic'));\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,250 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
- var _index = _interopRequireWildcard(require("../index"));
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
- // Mock TipTap and dependencies
7
- jest.mock('@tiptap/react', function () {
8
- return {
9
- EditorContent: function EditorContent() {
10
- return /*#__PURE__*/React.createElement("div", {
11
- "data-testid": "editor-content"
12
- });
13
- },
14
- useEditor: jest.fn(function () {
15
- return {
16
- getHTML: jest.fn(function () {
17
- return '<p>test content</p>';
18
- }),
19
- setEditable: jest.fn(),
20
- commands: {
21
- setContent: jest.fn()
22
- },
23
- isActive: jest.fn(function () {
24
- return false;
25
- }),
26
- isFocused: false
27
- };
28
- }),
29
- useEditorState: jest.fn(function () {
30
- return {
31
- isFocused: false
32
- };
33
- })
34
- };
35
- });
36
- jest.mock('@tiptap/starter-kit', function () {
37
- return {
38
- __esModule: true,
39
- "default": {
40
- configure: jest.fn(function () {
41
- return {};
42
- })
43
- }
44
- };
45
- });
46
- jest.mock('@tiptap/extension-text-style', function () {
47
- return {
48
- TextStyleKit: {}
49
- };
50
- });
51
- jest.mock('@tiptap/extension-character-count', function () {
52
- return {
53
- CharacterCount: {
54
- configure: jest.fn(function () {
55
- return {};
56
- })
57
- }
58
- };
59
- });
60
- jest.mock('@tiptap/extension-superscript', function () {
61
- return {
62
- __esModule: true,
63
- "default": {}
64
- };
65
- });
66
- jest.mock('@tiptap/extension-subscript', function () {
67
- return {
68
- __esModule: true,
69
- "default": {}
70
- };
71
- });
72
- jest.mock('@tiptap/extension-text-align', function () {
73
- return {
74
- __esModule: true,
75
- "default": {
76
- configure: jest.fn(function () {
77
- return {};
78
- })
79
- }
80
- };
81
- });
82
- jest.mock('@tiptap/extension-image', function () {
83
- return {
84
- __esModule: true,
85
- "default": {}
86
- };
87
- });
88
- jest.mock('@tiptap/extension-table', function () {
89
- return {
90
- __esModule: true,
91
- "default": {}
92
- };
93
- });
94
- jest.mock('@tiptap/extension-table-row', function () {
95
- return {
96
- TableRow: {}
97
- };
98
- });
99
- jest.mock('../extensions/extended-table-cell', function () {
100
- return {
101
- ExtendedTableCell: {},
102
- ExtendedTableHeader: {}
103
- };
104
- });
105
- jest.mock('../extensions/extended-table', function () {
106
- return {
107
- __esModule: true,
108
- "default": {}
109
- };
110
- });
111
- jest.mock('../extensions/ensure-empty-root-div', function () {
112
- return {
113
- EnsureEmptyRootIsDiv: {}
114
- };
115
- });
116
- jest.mock('../extensions/extended-list-item', function () {
117
- return {
118
- ExtendedListItem: {}
119
- };
120
- });
121
- jest.mock('../extensions/ensure-list-item-content-is-div', function () {
122
- return {
123
- EnsureListItemContentIsDiv: {}
124
- };
125
- });
126
- jest.mock('../extensions/responseArea', function () {
127
- return {
128
- ExplicitConstructedResponseNode: {
129
- configure: jest.fn(function () {
130
- return {};
131
- })
132
- },
133
- DragInTheBlankNode: {
134
- configure: jest.fn(function () {
135
- return {};
136
- })
137
- },
138
- InlineDropdownNode: {
139
- configure: jest.fn(function () {
140
- return {};
141
- })
142
- },
143
- ResponseAreaExtension: {
144
- configure: jest.fn(function () {
145
- return {};
146
- })
147
- }
148
- };
149
- });
150
- jest.mock('../extensions/math', function () {
151
- return {
152
- MathNode: {
153
- configure: jest.fn(function () {
154
- return {};
155
- })
156
- }
157
- };
158
- });
159
- jest.mock('../extensions/image', function () {
160
- return {
161
- ImageUploadNode: {
162
- configure: jest.fn(function () {
163
- return {};
164
- })
165
- }
166
- };
167
- });
168
- jest.mock('../extensions/media', function () {
169
- return {
170
- Media: {
171
- configure: jest.fn(function () {
172
- return {};
173
- })
174
- }
175
- };
176
- });
177
- jest.mock('../extensions/css', function () {
178
- return {
179
- CSSMark: {
180
- configure: jest.fn(function () {
181
- return {};
182
- })
183
- }
184
- };
185
- });
186
- jest.mock('../components/TiptapContainer', function () {
187
- return {
188
- __esModule: true,
189
- "default": function _default(_ref) {
190
- var children = _ref.children;
191
- return /*#__PURE__*/React.createElement("div", {
192
- "data-testid": "editor-container"
193
- }, children);
194
- }
195
- };
196
- });
197
- jest.mock('../extensions', function () {
198
- return {
199
- buildExtensions: jest.fn(function () {
200
- return [];
201
- }),
202
- ALL_PLUGINS: ['bold', 'html', 'extraCSSRules', 'italic', 'underline', 'strikethrough', 'bulleted-list', 'numbered-list', 'image', 'math', 'languageCharacters', 'text-align', 'blockquote', 'h3', 'table', 'video', 'audio', 'responseArea', 'redo', 'undo', 'superscript', 'subscript'],
203
- DEFAULT_PLUGINS: ['bold', 'html', 'extraCSSRules', 'italic', 'underline', 'strikethrough', 'bulleted-list', 'numbered-list', 'image', 'math', 'languageCharacters', 'text-align', 'table', 'video', 'audio', 'redo', 'undo', 'superscript', 'subscript']
204
- };
205
- });
206
- describe('editable-html-tip-tap module', function () {
207
- describe('exports', function () {
208
- it('exports StyledEditor as default', function () {
209
- expect(_index["default"]).toBeDefined();
210
- });
211
- it('exports EditableHtml as named export', function () {
212
- expect(_index.EditableHtml).toBeDefined();
213
- });
214
- it('exports ALL_PLUGINS as named export', function () {
215
- expect(_index.ALL_PLUGINS).toBeDefined();
216
- expect(Array.isArray(_index.ALL_PLUGINS)).toBe(true);
217
- });
218
- it('exports DEFAULT_PLUGINS as named export', function () {
219
- expect(_index.DEFAULT_PLUGINS).toBeDefined();
220
- expect(Array.isArray(_index.DEFAULT_PLUGINS)).toBe(true);
221
- });
222
- it('StyledEditor and EditableHtml refer to the same component', function () {
223
- expect(_index["default"]).toBe(_index.EditableHtml);
224
- });
225
- });
226
- describe('ALL_PLUGINS', function () {
227
- it('contains expected plugins', function () {
228
- expect(_index.ALL_PLUGINS).toContain('bold');
229
- expect(_index.ALL_PLUGINS).toContain('italic');
230
- expect(_index.ALL_PLUGINS).toContain('underline');
231
- expect(_index.ALL_PLUGINS).toContain('math');
232
- expect(_index.ALL_PLUGINS).toContain('table');
233
- expect(_index.ALL_PLUGINS).toContain('responseArea');
234
- });
235
- });
236
- describe('DEFAULT_PLUGINS', function () {
237
- it('is a subset of ALL_PLUGINS', function () {
238
- var allPluginsSet = new Set(_index.ALL_PLUGINS);
239
- _index.DEFAULT_PLUGINS.forEach(function (plugin) {
240
- expect(allPluginsSet.has(plugin)).toBe(true);
241
- });
242
- });
243
- it('contains basic formatting plugins', function () {
244
- expect(_index.DEFAULT_PLUGINS).toContain('bold');
245
- expect(_index.DEFAULT_PLUGINS).toContain('italic');
246
- expect(_index.DEFAULT_PLUGINS).toContain('underline');
247
- });
248
- });
249
- });
250
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","names":["_index","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","jest","mock","EditorContent","React","createElement","useEditor","fn","getHTML","setEditable","commands","setContent","isActive","isFocused","useEditorState","configure","TextStyleKit","CharacterCount","TableRow","ExtendedTableCell","ExtendedTableHeader","EnsureEmptyRootIsDiv","ExtendedListItem","EnsureListItemContentIsDiv","ExplicitConstructedResponseNode","DragInTheBlankNode","InlineDropdownNode","ResponseAreaExtension","MathNode","ImageUploadNode","Media","CSSMark","default","_ref","children","buildExtensions","ALL_PLUGINS","DEFAULT_PLUGINS","describe","it","expect","StyledEditor","toBeDefined","EditableHtml","Array","isArray","toBe","toContain","allPluginsSet","Set","forEach","plugin"],"sources":["../../src/__tests__/index.test.jsx"],"sourcesContent":["import StyledEditor, { ALL_PLUGINS, DEFAULT_PLUGINS, EditableHtml } from '../index';\n\n// Mock TipTap and dependencies\njest.mock('@tiptap/react', () => ({\n EditorContent: () => <div data-testid=\"editor-content\" />,\n useEditor: jest.fn(() => ({\n getHTML: jest.fn(() => '<p>test content</p>'),\n setEditable: jest.fn(),\n commands: { setContent: jest.fn() },\n isActive: jest.fn(() => false),\n isFocused: false,\n })),\n useEditorState: jest.fn(() => ({ isFocused: false })),\n}));\n\njest.mock('@tiptap/starter-kit', () => ({\n __esModule: true,\n default: { configure: jest.fn(() => ({})) },\n}));\njest.mock('@tiptap/extension-text-style', () => ({ TextStyleKit: {} }));\njest.mock('@tiptap/extension-character-count', () => ({\n CharacterCount: { configure: jest.fn(() => ({})) },\n}));\njest.mock('@tiptap/extension-superscript', () => ({ __esModule: true, default: {} }));\njest.mock('@tiptap/extension-subscript', () => ({ __esModule: true, default: {} }));\njest.mock('@tiptap/extension-text-align', () => ({\n __esModule: true,\n default: { configure: jest.fn(() => ({})) },\n}));\njest.mock('@tiptap/extension-image', () => ({ __esModule: true, default: {} }));\njest.mock('@tiptap/extension-table', () => ({ __esModule: true, default: {} }));\njest.mock('@tiptap/extension-table-row', () => ({ TableRow: {} }));\njest.mock('../extensions/extended-table-cell', () => ({\n ExtendedTableCell: {},\n ExtendedTableHeader: {},\n}));\njest.mock('../extensions/extended-table', () => ({ __esModule: true, default: {} }));\njest.mock('../extensions/ensure-empty-root-div', () => ({ EnsureEmptyRootIsDiv: {} }));\njest.mock('../extensions/extended-list-item', () => ({ ExtendedListItem: {} }));\njest.mock('../extensions/ensure-list-item-content-is-div', () => ({ EnsureListItemContentIsDiv: {} }));\njest.mock('../extensions/responseArea', () => ({\n ExplicitConstructedResponseNode: { configure: jest.fn(() => ({})) },\n DragInTheBlankNode: { configure: jest.fn(() => ({})) },\n InlineDropdownNode: { configure: jest.fn(() => ({})) },\n ResponseAreaExtension: { configure: jest.fn(() => ({})) },\n}));\njest.mock('../extensions/math', () => ({ MathNode: { configure: jest.fn(() => ({})) } }));\njest.mock('../extensions/image', () => ({ ImageUploadNode: { configure: jest.fn(() => ({})) } }));\njest.mock('../extensions/media', () => ({ Media: { configure: jest.fn(() => ({})) } }));\njest.mock('../extensions/css', () => ({ CSSMark: { configure: jest.fn(() => ({})) } }));\njest.mock('../components/TiptapContainer', () => ({\n __esModule: true,\n default: ({ children }) => <div data-testid=\"editor-container\">{children}</div>,\n}));\njest.mock('../extensions', () => ({\n buildExtensions: jest.fn(() => []),\n ALL_PLUGINS: [\n 'bold',\n 'html',\n 'extraCSSRules',\n 'italic',\n 'underline',\n 'strikethrough',\n 'bulleted-list',\n 'numbered-list',\n 'image',\n 'math',\n 'languageCharacters',\n 'text-align',\n 'blockquote',\n 'h3',\n 'table',\n 'video',\n 'audio',\n 'responseArea',\n 'redo',\n 'undo',\n 'superscript',\n 'subscript',\n ],\n DEFAULT_PLUGINS: [\n 'bold',\n 'html',\n 'extraCSSRules',\n 'italic',\n 'underline',\n 'strikethrough',\n 'bulleted-list',\n 'numbered-list',\n 'image',\n 'math',\n 'languageCharacters',\n 'text-align',\n 'table',\n 'video',\n 'audio',\n 'redo',\n 'undo',\n 'superscript',\n 'subscript',\n ],\n}));\n\ndescribe('editable-html-tip-tap module', () => {\n describe('exports', () => {\n it('exports StyledEditor as default', () => {\n expect(StyledEditor).toBeDefined();\n });\n\n it('exports EditableHtml as named export', () => {\n expect(EditableHtml).toBeDefined();\n });\n\n it('exports ALL_PLUGINS as named export', () => {\n expect(ALL_PLUGINS).toBeDefined();\n expect(Array.isArray(ALL_PLUGINS)).toBe(true);\n });\n\n it('exports DEFAULT_PLUGINS as named export', () => {\n expect(DEFAULT_PLUGINS).toBeDefined();\n expect(Array.isArray(DEFAULT_PLUGINS)).toBe(true);\n });\n\n it('StyledEditor and EditableHtml refer to the same component', () => {\n expect(StyledEditor).toBe(EditableHtml);\n });\n });\n\n describe('ALL_PLUGINS', () => {\n it('contains expected plugins', () => {\n expect(ALL_PLUGINS).toContain('bold');\n expect(ALL_PLUGINS).toContain('italic');\n expect(ALL_PLUGINS).toContain('underline');\n expect(ALL_PLUGINS).toContain('math');\n expect(ALL_PLUGINS).toContain('table');\n expect(ALL_PLUGINS).toContain('responseArea');\n });\n });\n\n describe('DEFAULT_PLUGINS', () => {\n it('is a subset of ALL_PLUGINS', () => {\n const allPluginsSet = new Set(ALL_PLUGINS);\n DEFAULT_PLUGINS.forEach((plugin) => {\n expect(allPluginsSet.has(plugin)).toBe(true);\n });\n });\n\n it('contains basic formatting plugins', () => {\n expect(DEFAULT_PLUGINS).toContain('bold');\n expect(DEFAULT_PLUGINS).toContain('italic');\n expect(DEFAULT_PLUGINS).toContain('underline');\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- var _size = require("../utils/size");
4
- describe('Size Utilities', function () {
5
- describe('valueToSize', function () {
6
- it('returns undefined for falsy values', function () {
7
- expect((0, _size.valueToSize)(null)).toBeUndefined();
8
- expect((0, _size.valueToSize)(undefined)).toBeUndefined();
9
- expect((0, _size.valueToSize)('')).toBeUndefined();
10
- expect((0, _size.valueToSize)(0)).toBeUndefined();
11
- });
12
- it('converts number to px string', function () {
13
- expect((0, _size.valueToSize)(100)).toBe('100px');
14
- expect((0, _size.valueToSize)(50)).toBe('50px');
15
- expect((0, _size.valueToSize)(0)).toBeUndefined();
16
- });
17
- it('returns undefined for percentage strings', function () {
18
- expect((0, _size.valueToSize)('100%')).toBeUndefined();
19
- expect((0, _size.valueToSize)('50%')).toBeUndefined();
20
- expect((0, _size.valueToSize)('0%')).toBeUndefined();
21
- });
22
- it('preserves valid CSS unit strings', function () {
23
- expect((0, _size.valueToSize)('100px')).toBe('100px');
24
- expect((0, _size.valueToSize)('10vh')).toBe('10vh');
25
- expect((0, _size.valueToSize)('50vw')).toBe('50vw');
26
- expect((0, _size.valueToSize)('9ch')).toBe('9ch');
27
- expect((0, _size.valueToSize)('2em')).toBe('2em');
28
- });
29
- it('preserves calc() expressions', function () {
30
- expect((0, _size.valueToSize)('calc(10em + 42px)')).toBe('calc(10em + 42px)');
31
- expect((0, _size.valueToSize)('calc(100% - 20px)')).toBe('calc(100% - 20px)');
32
- expect((0, _size.valueToSize)('calc(50vh + 10px)')).toBe('calc(50vh + 10px)');
33
- });
34
- it('converts numeric strings to px', function () {
35
- expect((0, _size.valueToSize)('100')).toBe('100px');
36
- expect((0, _size.valueToSize)('50')).toBe('50px');
37
- expect((0, _size.valueToSize)('250')).toBe('250px');
38
- });
39
- it('handles invalid numeric strings', function () {
40
- var result = (0, _size.valueToSize)('invalid');
41
- expect(isNaN(result)).toBe(true);
42
- });
43
- it('handles edge cases with whitespace', function () {
44
- var result = (0, _size.valueToSize)(' ');
45
- expect(isNaN(result)).toBe(true);
46
- });
47
- it('handles negative numbers', function () {
48
- expect((0, _size.valueToSize)(-100)).toBe('-100px');
49
- expect((0, _size.valueToSize)('-50')).toBe('-50px');
50
- });
51
- it('handles decimal numbers', function () {
52
- expect((0, _size.valueToSize)(100.5)).toBe('100.5px');
53
- expect((0, _size.valueToSize)('100.5')).toBe('100px'); // parseInt truncates
54
- });
55
- });
56
- });
57
- //# sourceMappingURL=size-utils.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"size-utils.test.js","names":["_size","require","describe","it","expect","valueToSize","toBeUndefined","undefined","toBe","result","isNaN"],"sources":["../../src/__tests__/size-utils.test.js"],"sourcesContent":["import { valueToSize } from '../utils/size';\n\ndescribe('Size Utilities', () => {\n describe('valueToSize', () => {\n it('returns undefined for falsy values', () => {\n expect(valueToSize(null)).toBeUndefined();\n expect(valueToSize(undefined)).toBeUndefined();\n expect(valueToSize('')).toBeUndefined();\n expect(valueToSize(0)).toBeUndefined();\n });\n\n it('converts number to px string', () => {\n expect(valueToSize(100)).toBe('100px');\n expect(valueToSize(50)).toBe('50px');\n expect(valueToSize(0)).toBeUndefined();\n });\n\n it('returns undefined for percentage strings', () => {\n expect(valueToSize('100%')).toBeUndefined();\n expect(valueToSize('50%')).toBeUndefined();\n expect(valueToSize('0%')).toBeUndefined();\n });\n\n it('preserves valid CSS unit strings', () => {\n expect(valueToSize('100px')).toBe('100px');\n expect(valueToSize('10vh')).toBe('10vh');\n expect(valueToSize('50vw')).toBe('50vw');\n expect(valueToSize('9ch')).toBe('9ch');\n expect(valueToSize('2em')).toBe('2em');\n });\n\n it('preserves calc() expressions', () => {\n expect(valueToSize('calc(10em + 42px)')).toBe('calc(10em + 42px)');\n expect(valueToSize('calc(100% - 20px)')).toBe('calc(100% - 20px)');\n expect(valueToSize('calc(50vh + 10px)')).toBe('calc(50vh + 10px)');\n });\n\n it('converts numeric strings to px', () => {\n expect(valueToSize('100')).toBe('100px');\n expect(valueToSize('50')).toBe('50px');\n expect(valueToSize('250')).toBe('250px');\n });\n\n it('handles invalid numeric strings', () => {\n const result = valueToSize('invalid');\n expect(isNaN(result)).toBe(true);\n });\n\n it('handles edge cases with whitespace', () => {\n const result = valueToSize(' ');\n expect(isNaN(result)).toBe(true);\n });\n\n it('handles negative numbers', () => {\n expect(valueToSize(-100)).toBe('-100px');\n expect(valueToSize('-50')).toBe('-50px');\n });\n\n it('handles decimal numbers', () => {\n expect(valueToSize(100.5)).toBe('100.5px');\n expect(valueToSize('100.5')).toBe('100px'); // parseInt truncates\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- var _theme = require("../theme");
4
- describe('Theme', function () {
5
- describe('primary color', function () {
6
- it('is defined', function () {
7
- expect(_theme.primary).toBeDefined();
8
- });
9
- it('has the correct hex value', function () {
10
- expect(_theme.primary).toBe('#304ffe');
11
- });
12
- it('is a valid hex color', function () {
13
- expect(_theme.primary).toMatch(/^#[0-9A-Fa-f]{6}$/);
14
- });
15
- });
16
- });
17
- //# sourceMappingURL=theme.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme.test.js","names":["_theme","require","describe","it","expect","primary","toBeDefined","toBe","toMatch"],"sources":["../../src/__tests__/theme.test.js"],"sourcesContent":["import { primary } from '../theme';\n\ndescribe('Theme', () => {\n describe('primary color', () => {\n it('is defined', () => {\n expect(primary).toBeDefined();\n });\n\n it('has the correct hex value', () => {\n expect(primary).toBe('#304ffe');\n });\n\n it('is a valid hex color', () => {\n expect(primary).toMatch(/^#[0-9A-Fa-f]{6}$/);\n });\n });\n});\n"],"mappings":";;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEAC,QAAQ,CAAC,OAAO,EAAE,YAAM;EACtBA,QAAQ,CAAC,eAAe,EAAE,YAAM;IAC9BC,EAAE,CAAC,YAAY,EAAE,YAAM;MACrBC,MAAM,CAACC,cAAO,CAAC,CAACC,WAAW,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEFH,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpCC,MAAM,CAACC,cAAO,CAAC,CAACE,IAAI,CAAC,SAAS,CAAC;IACjC,CAAC,CAAC;IAEFJ,EAAE,CAAC,sBAAsB,EAAE,YAAM;MAC/BC,MAAM,CAACC,cAAO,CAAC,CAACG,OAAO,CAAC,mBAAmB,CAAC;IAC9C,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1,201 +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 _AltDialog = require("../image/AltDialog");
8
- jest.mock('@mui/material/Dialog', function () {
9
- return {
10
- __esModule: true,
11
- "default": function _default(_ref) {
12
- var children = _ref.children,
13
- open = _ref.open,
14
- id = _ref.id;
15
- return open && /*#__PURE__*/_react["default"].createElement("div", {
16
- id: id
17
- }, children);
18
- }
19
- };
20
- });
21
- jest.mock('@mui/material/DialogContent', function () {
22
- return {
23
- __esModule: true,
24
- "default": function _default(_ref2) {
25
- var children = _ref2.children;
26
- return /*#__PURE__*/_react["default"].createElement("div", null, children);
27
- }
28
- };
29
- });
30
- jest.mock('@mui/material/DialogActions', function () {
31
- return {
32
- __esModule: true,
33
- "default": function _default(_ref3) {
34
- var children = _ref3.children;
35
- return /*#__PURE__*/_react["default"].createElement("div", null, children);
36
- }
37
- };
38
- });
39
- jest.mock('@mui/material/Button', function () {
40
- return {
41
- __esModule: true,
42
- "default": function _default(_ref4) {
43
- var children = _ref4.children,
44
- onClick = _ref4.onClick;
45
- return /*#__PURE__*/_react["default"].createElement("button", {
46
- onClick: onClick
47
- }, children);
48
- }
49
- };
50
- });
51
- jest.mock('@mui/material/TextField', function () {
52
- return {
53
- __esModule: true,
54
- "default": function _default(_ref5) {
55
- var value = _ref5.value,
56
- onChange = _ref5.onChange,
57
- placeholder = _ref5.placeholder,
58
- helperText = _ref5.helperText,
59
- FormHelperTextProps = _ref5.FormHelperTextProps,
60
- multiline = _ref5.multiline;
61
- return /*#__PURE__*/_react["default"].createElement("div", {
62
- className: "MuiTextField-root"
63
- }, /*#__PURE__*/_react["default"].createElement("textarea", {
64
- value: value || '',
65
- onChange: onChange,
66
- placeholder: placeholder,
67
- "data-multiline": multiline
68
- }), helperText && /*#__PURE__*/_react["default"].createElement("div", {
69
- style: FormHelperTextProps === null || FormHelperTextProps === void 0 ? void 0 : FormHelperTextProps.style
70
- }, helperText));
71
- }
72
- };
73
- });
74
- jest.mock('@mui/icons-material/ArrowBackIos', function () {
75
- return {
76
- __esModule: true,
77
- "default": function _default() {
78
- return /*#__PURE__*/_react["default"].createElement("svg", {
79
- "data-testid": "arrow-back-icon"
80
- });
81
- }
82
- };
83
- });
84
- describe('AltDialog', function () {
85
- var defaultProps = {
86
- onDone: jest.fn(),
87
- alt: 'Initial alt text'
88
- };
89
- beforeEach(function () {
90
- jest.clearAllMocks();
91
- document.body.innerHTML = '';
92
- });
93
- it('renders without crashing', function () {
94
- var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
95
- container = _render.container;
96
- expect(container).toBeInTheDocument();
97
- });
98
- it('renders with initial alt text', function () {
99
- var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
100
- container = _render2.container;
101
- var textarea = container.querySelector('textarea');
102
- expect(textarea.value).toBe('Initial alt text');
103
- });
104
- it('renders placeholder text', function () {
105
- var _render3 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, (0, _extends2["default"])({}, defaultProps, {
106
- alt: ""
107
- }))),
108
- getByPlaceholderText = _render3.getByPlaceholderText;
109
- expect(getByPlaceholderText('Enter an Alt Text description of this image')).toBeInTheDocument();
110
- });
111
- it('renders helper text', function () {
112
- var _render4 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
113
- getByText = _render4.getByText;
114
- expect(getByText('Users with visual limitations rely on Alt Text, since screen readers cannot otherwise describe the contents of an image.')).toBeInTheDocument();
115
- });
116
- it('renders Done button', function () {
117
- var _render5 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
118
- getByText = _render5.getByText;
119
- expect(getByText('Done')).toBeInTheDocument();
120
- });
121
- it('renders ArrowBackIos icon', function () {
122
- var _render6 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
123
- getByTestId = _render6.getByTestId;
124
- expect(getByTestId('arrow-back-icon')).toBeInTheDocument();
125
- });
126
- it('updates value on text field change', function () {
127
- var _render7 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
128
- container = _render7.container;
129
- var textarea = container.querySelector('textarea');
130
- _react2.fireEvent.change(textarea, {
131
- target: {
132
- value: 'New alt text'
133
- }
134
- });
135
- expect(textarea.value).toBe('New alt text');
136
- });
137
- it('calls onDone with value when Done button is clicked', function () {
138
- var onDone = jest.fn();
139
- // Mock document.querySelectorAll to avoid DOM manipulation issues
140
- var mockQuerySelectorAll = jest.spyOn(document, 'querySelectorAll').mockReturnValue([]);
141
- var _render8 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, (0, _extends2["default"])({}, defaultProps, {
142
- onDone: onDone
143
- }))),
144
- getByText = _render8.getByText,
145
- container = _render8.container;
146
- var textarea = container.querySelector('textarea');
147
- _react2.fireEvent.change(textarea, {
148
- target: {
149
- value: 'Updated alt text'
150
- }
151
- });
152
- _react2.fireEvent.click(getByText('Done'));
153
- expect(onDone).toHaveBeenCalledWith('Updated alt text');
154
- mockQuerySelectorAll.mockRestore();
155
- });
156
- it('closes dialog when Done button is clicked', function () {
157
- // Mock document.querySelectorAll to avoid DOM manipulation issues
158
- var mockQuerySelectorAll = jest.spyOn(document, 'querySelectorAll').mockReturnValue([]);
159
- var _render9 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
160
- getByText = _render9.getByText,
161
- container = _render9.container;
162
- var dialog = container.querySelector('#text-dialog');
163
- expect(dialog).toBeInTheDocument();
164
- _react2.fireEvent.click(getByText('Done'));
165
- mockQuerySelectorAll.mockRestore();
166
- });
167
- it('dialog is open', function () {
168
- var _render0 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
169
- container = _render0.container;
170
- var dialog = container.querySelector('[id="text-dialog"]');
171
- expect(dialog).toBeInTheDocument();
172
- });
173
- it('has correct dialog props', function () {
174
- var _render1 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
175
- container = _render1.container;
176
- var dialog = container.querySelector('[id="text-dialog"]');
177
- expect(dialog).toBeInTheDocument();
178
- });
179
- it('text field is multiline', function () {
180
- var _render10 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, defaultProps)),
181
- container = _render10.container;
182
- var textarea = container.querySelector('textarea');
183
- expect(textarea.getAttribute('data-multiline')).toBe('true');
184
- });
185
- it('renders without alt text', function () {
186
- var _render11 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, (0, _extends2["default"])({}, defaultProps, {
187
- alt: undefined
188
- }))),
189
- getByPlaceholderText = _render11.getByPlaceholderText;
190
- expect(getByPlaceholderText('Enter an Alt Text description of this image')).toBeInTheDocument();
191
- });
192
- it('handles empty alt text', function () {
193
- var _render12 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_AltDialog.AltDialog, (0, _extends2["default"])({}, defaultProps, {
194
- alt: ""
195
- }))),
196
- container = _render12.container;
197
- var textarea = container.querySelector('textarea');
198
- expect(textarea.value).toBe('');
199
- });
200
- });
201
- //# sourceMappingURL=AltDialog.test.js.map