@bendyline/squisq-editor-react 1.0.0 → 1.0.1

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 (45) hide show
  1. package/dist/EditorContext.d.ts +75 -0
  2. package/dist/EditorContext.d.ts.map +1 -0
  3. package/dist/EditorContext.js +158 -0
  4. package/dist/EditorContext.js.map +1 -0
  5. package/dist/EditorShell.d.ts +34 -0
  6. package/dist/EditorShell.d.ts.map +1 -0
  7. package/dist/EditorShell.js +59 -0
  8. package/dist/EditorShell.js.map +1 -0
  9. package/dist/PreviewPanel.d.ts +33 -0
  10. package/dist/PreviewPanel.d.ts.map +1 -0
  11. package/dist/PreviewPanel.js +385 -0
  12. package/dist/PreviewPanel.js.map +1 -0
  13. package/dist/RawEditor.d.ts +25 -0
  14. package/dist/RawEditor.d.ts.map +1 -0
  15. package/dist/RawEditor.js +100 -0
  16. package/dist/RawEditor.js.map +1 -0
  17. package/dist/StatusBar.d.ts +15 -0
  18. package/dist/StatusBar.d.ts.map +1 -0
  19. package/dist/StatusBar.js +24 -0
  20. package/dist/StatusBar.js.map +1 -0
  21. package/dist/TemplateAnnotation.d.ts +20 -0
  22. package/dist/TemplateAnnotation.d.ts.map +1 -0
  23. package/dist/TemplateAnnotation.js +69 -0
  24. package/dist/TemplateAnnotation.js.map +1 -0
  25. package/dist/Toolbar.d.ts +19 -0
  26. package/dist/Toolbar.d.ts.map +1 -0
  27. package/dist/Toolbar.js +350 -0
  28. package/dist/Toolbar.js.map +1 -0
  29. package/dist/ViewSwitcher.d.ts +14 -0
  30. package/dist/ViewSwitcher.d.ts.map +1 -0
  31. package/dist/ViewSwitcher.js +20 -0
  32. package/dist/ViewSwitcher.js.map +1 -0
  33. package/dist/WysiwygEditor.d.ts +28 -0
  34. package/dist/WysiwygEditor.d.ts.map +1 -0
  35. package/dist/WysiwygEditor.js +111 -0
  36. package/dist/WysiwygEditor.js.map +1 -0
  37. package/dist/index.d.ts +36 -268
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +34 -3832
  40. package/dist/index.js.map +1 -1
  41. package/dist/tiptapBridge.d.ts +24 -0
  42. package/dist/tiptapBridge.d.ts.map +1 -0
  43. package/dist/tiptapBridge.js +358 -0
  44. package/dist/tiptapBridge.js.map +1 -0
  45. package/package.json +4 -5
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Tiptap Bridge
3
+ *
4
+ * Conversion utilities between raw markdown source and Tiptap's JSON/HTML
5
+ * content format. Uses a lightweight HTML-based approach: we convert markdown
6
+ * to a simple HTML representation that Tiptap can consume, and parse
7
+ * Tiptap's HTML output back to markdown.
8
+ *
9
+ * This bridge preserves markdown semantics much better than going through
10
+ * Tiptap's native markdown extension, since we control the conversion
11
+ * using squisq's own parser.
12
+ */
13
+ /**
14
+ * Convert raw markdown source to Tiptap-consumable HTML content.
15
+ * Uses a simple markdown-to-HTML conversion that maps cleanly to
16
+ * Tiptap's ProseMirror schema.
17
+ */
18
+ export declare function markdownToTiptap(markdown: string): string;
19
+ /**
20
+ * Convert Tiptap HTML output back to markdown source.
21
+ * Extracts semantic structure from HTML and produces clean markdown.
22
+ */
23
+ export declare function tiptapToMarkdown(html: string): string;
24
+ //# sourceMappingURL=tiptapBridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiptapBridge.d.ts","sourceRoot":"","sources":["../src/tiptapBridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAsBH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAyJzD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuJrD"}
@@ -0,0 +1,358 @@
1
+ /**
2
+ * Tiptap Bridge
3
+ *
4
+ * Conversion utilities between raw markdown source and Tiptap's JSON/HTML
5
+ * content format. Uses a lightweight HTML-based approach: we convert markdown
6
+ * to a simple HTML representation that Tiptap can consume, and parse
7
+ * Tiptap's HTML output back to markdown.
8
+ *
9
+ * This bridge preserves markdown semantics much better than going through
10
+ * Tiptap's native markdown extension, since we control the conversion
11
+ * using squisq's own parser.
12
+ */
13
+ // Hoisted regex patterns for inline markdown ↔ HTML conversion
14
+ const RE_BOLD_STAR = /\*\*(.+?)\*\*/g;
15
+ const RE_BOLD_UNDER = /__(.+?)__/g;
16
+ const RE_ITALIC_STAR = /\*(.+?)\*/g;
17
+ const RE_ITALIC_UNDER = /_(.+?)_/g;
18
+ const RE_STRIKETHROUGH = /~~(.+?)~~/g;
19
+ const RE_INLINE_CODE = /`(.+?)`/g;
20
+ const RE_LINK = /\[(.+?)\]\((.+?)\)/g;
21
+ const RE_IMAGE = /!\[(.+?)\]\((.+?)\)/g;
22
+ const RE_STRONG_TAG = /<strong>(.*?)<\/strong>/g;
23
+ const RE_B_TAG = /<b>(.*?)<\/b>/g;
24
+ const RE_EM_TAG = /<em>(.*?)<\/em>/g;
25
+ const RE_I_TAG = /<i>(.*?)<\/i>/g;
26
+ const RE_S_TAG = /<s>(.*?)<\/s>/g;
27
+ const RE_DEL_TAG = /<del>(.*?)<\/del>/g;
28
+ const RE_CODE_TAG = /<code>(.*?)<\/code>/g;
29
+ const RE_A_TAG = /<a[^>]+href="([^"]*)"[^>]*>(.*?)<\/a>/g;
30
+ const RE_IMG_TAG = /<img[^>]+alt="([^"]*)"[^>]+src="([^"]*)"[^>]*>/g;
31
+ const RE_STRIP_TAGS = /<[^>]+>/g;
32
+ /**
33
+ * Convert raw markdown source to Tiptap-consumable HTML content.
34
+ * Uses a simple markdown-to-HTML conversion that maps cleanly to
35
+ * Tiptap's ProseMirror schema.
36
+ */
37
+ export function markdownToTiptap(markdown) {
38
+ if (!markdown.trim())
39
+ return '<p></p>';
40
+ // Simple conversion of markdown constructs to HTML that Tiptap understands.
41
+ // This is intentionally straightforward — Tiptap's parser handles the HTML.
42
+ const html = markdown;
43
+ // Process blocks line by line for accurate conversion
44
+ const lines = html.split('\n');
45
+ const outputBlocks = [];
46
+ let inCodeBlock = false;
47
+ let codeBlockLang = '';
48
+ let codeBlockLines = [];
49
+ let inList = false;
50
+ let listItems = [];
51
+ let listType = 'ul';
52
+ const flushList = () => {
53
+ if (inList && listItems.length > 0) {
54
+ const tag = listType === 'ol' ? 'ol' : 'ul';
55
+ const attr = listType === 'task' ? ' data-type="taskList"' : '';
56
+ outputBlocks.push(`<${tag}${attr}>${listItems.join('')}</${tag}>`);
57
+ listItems = [];
58
+ inList = false;
59
+ }
60
+ };
61
+ for (let i = 0; i < lines.length; i++) {
62
+ const line = lines[i];
63
+ // Code fence handling
64
+ if (line.startsWith('```')) {
65
+ if (!inCodeBlock) {
66
+ flushList();
67
+ inCodeBlock = true;
68
+ codeBlockLang = line.slice(3).trim();
69
+ codeBlockLines = [];
70
+ continue;
71
+ }
72
+ else {
73
+ const langAttr = codeBlockLang ? ` class="language-${escapeHtml(codeBlockLang)}"` : '';
74
+ outputBlocks.push(`<pre><code${langAttr}>${escapeHtml(codeBlockLines.join('\n'))}</code></pre>`);
75
+ inCodeBlock = false;
76
+ codeBlockLang = '';
77
+ codeBlockLines = [];
78
+ continue;
79
+ }
80
+ }
81
+ if (inCodeBlock) {
82
+ codeBlockLines.push(line);
83
+ continue;
84
+ }
85
+ // Blank line flushes list
86
+ if (line.trim() === '') {
87
+ flushList();
88
+ continue;
89
+ }
90
+ // Headings
91
+ const headingMatch = line.match(/^(#{1,6})\s+(.+)$/);
92
+ if (headingMatch) {
93
+ flushList();
94
+ const level = headingMatch[1].length;
95
+ let text = headingMatch[2];
96
+ let attrs = '';
97
+ // Extract {[template key=value …]} annotation
98
+ const annotMatch = text.match(/\s*\{\[([^\]]+)\]\}\s*$/);
99
+ if (annotMatch) {
100
+ text = text.slice(0, annotMatch.index).trimEnd();
101
+ const tokens = annotMatch[1].trim().split(/\s+/);
102
+ attrs = ` data-template="${escapeHtml(tokens[0])}"`;
103
+ const params = tokens.slice(1).filter((t) => t.includes('='));
104
+ if (params.length > 0) {
105
+ attrs += ` data-template-params="${escapeHtml(params.join(' '))}"`;
106
+ }
107
+ }
108
+ outputBlocks.push(`<h${level}${attrs}>${inlineToHtml(text)}</h${level}>`);
109
+ continue;
110
+ }
111
+ // Thematic break
112
+ if (/^(---|\*\*\*|___)(\s*)$/.test(line.trim())) {
113
+ flushList();
114
+ outputBlocks.push('<hr>');
115
+ continue;
116
+ }
117
+ // Blockquote
118
+ if (line.startsWith('> ')) {
119
+ flushList();
120
+ outputBlocks.push(`<blockquote><p>${inlineToHtml(line.slice(2))}</p></blockquote>`);
121
+ continue;
122
+ }
123
+ // Task list item
124
+ const taskMatch = line.match(/^[-*+]\s+\[([xX ])\]\s+(.+)$/);
125
+ if (taskMatch) {
126
+ if (!inList || listType !== 'task') {
127
+ flushList();
128
+ inList = true;
129
+ listType = 'task';
130
+ }
131
+ const checked = taskMatch[1].toLowerCase() === 'x' ? ' data-checked="true"' : '';
132
+ listItems.push(`<li data-type="taskItem"${checked}><label><input type="checkbox"${checked ? ' checked' : ''}>${inlineToHtml(taskMatch[2])}</label></li>`);
133
+ continue;
134
+ }
135
+ // Unordered list item
136
+ const ulMatch = line.match(/^[-*+]\s+(.+)$/);
137
+ if (ulMatch) {
138
+ if (!inList || listType !== 'ul') {
139
+ flushList();
140
+ inList = true;
141
+ listType = 'ul';
142
+ }
143
+ listItems.push(`<li><p>${inlineToHtml(ulMatch[1])}</p></li>`);
144
+ continue;
145
+ }
146
+ // Ordered list item
147
+ const olMatch = line.match(/^\d+\.\s+(.+)$/);
148
+ if (olMatch) {
149
+ if (!inList || listType !== 'ol') {
150
+ flushList();
151
+ inList = true;
152
+ listType = 'ol';
153
+ }
154
+ listItems.push(`<li><p>${inlineToHtml(olMatch[1])}</p></li>`);
155
+ continue;
156
+ }
157
+ // Regular paragraph
158
+ flushList();
159
+ outputBlocks.push(`<p>${inlineToHtml(line)}</p>`);
160
+ }
161
+ // Close any remaining open blocks
162
+ if (inCodeBlock) {
163
+ const langAttr = codeBlockLang ? ` class="language-${escapeHtml(codeBlockLang)}"` : '';
164
+ outputBlocks.push(`<pre><code${langAttr}>${escapeHtml(codeBlockLines.join('\n'))}</code></pre>`);
165
+ }
166
+ flushList();
167
+ return outputBlocks.join('') || '<p></p>';
168
+ }
169
+ /**
170
+ * Convert Tiptap HTML output back to markdown source.
171
+ * Extracts semantic structure from HTML and produces clean markdown.
172
+ */
173
+ export function tiptapToMarkdown(html) {
174
+ if (!html || html === '<p></p>')
175
+ return '';
176
+ const lines = [];
177
+ // Simple regex-based HTML to markdown conversion
178
+ // This works because Tiptap produces clean, predictable HTML
179
+ let remaining = html;
180
+ while (remaining.length > 0) {
181
+ // Headings
182
+ const headingMatch = remaining.match(/^<h([1-6])([^>]*)>(.*?)<\/h\1>/s);
183
+ if (headingMatch) {
184
+ const level = parseInt(headingMatch[1], 10);
185
+ const attrs = headingMatch[2];
186
+ let text = htmlToInline(headingMatch[3]);
187
+ // Re-inject template annotation from data attributes
188
+ const tmplMatch = attrs.match(/data-template="([^"]+)"/);
189
+ if (tmplMatch) {
190
+ let annotation = tmplMatch[1];
191
+ const paramsMatch = attrs.match(/data-template-params="([^"]+)"/);
192
+ if (paramsMatch) {
193
+ annotation += ' ' + unescapeHtml(paramsMatch[1]);
194
+ }
195
+ text += ` {[${annotation}]}`;
196
+ }
197
+ lines.push('#'.repeat(level) + ' ' + text);
198
+ lines.push('');
199
+ remaining = remaining.slice(headingMatch[0].length);
200
+ continue;
201
+ }
202
+ // Code blocks
203
+ const codeMatch = remaining.match(/^<pre><code(?:\s+class="language-([^"]*)")?>(.*?)<\/code><\/pre>/s);
204
+ if (codeMatch) {
205
+ const lang = codeMatch[1] || '';
206
+ const code = unescapeHtml(codeMatch[2]);
207
+ lines.push('```' + lang);
208
+ lines.push(code);
209
+ lines.push('```');
210
+ lines.push('');
211
+ remaining = remaining.slice(codeMatch[0].length);
212
+ continue;
213
+ }
214
+ // Blockquote
215
+ const bqMatch = remaining.match(/^<blockquote>(.*?)<\/blockquote>/s);
216
+ if (bqMatch) {
217
+ const inner = htmlToInline(bqMatch[1].replace(/<\/?p>/g, ''));
218
+ lines.push('> ' + inner);
219
+ lines.push('');
220
+ remaining = remaining.slice(bqMatch[0].length);
221
+ continue;
222
+ }
223
+ // Horizontal rule
224
+ if (remaining.startsWith('<hr>') ||
225
+ remaining.startsWith('<hr/>') ||
226
+ remaining.startsWith('<hr />')) {
227
+ const hrMatch = remaining.match(/^<hr\s*\/?>/);
228
+ lines.push('---');
229
+ lines.push('');
230
+ remaining = remaining.slice(hrMatch[0].length);
231
+ continue;
232
+ }
233
+ // Task list
234
+ const taskListMatch = remaining.match(/^<ul[^>]*data-type="taskList"[^>]*>(.*?)<\/ul>/s);
235
+ if (taskListMatch) {
236
+ const items = taskListMatch[1].matchAll(/<li[^>]*data-type="taskItem"[^>]*(data-checked="true")?[^>]*>.*?<\/li>/gs);
237
+ for (const item of items) {
238
+ const checked = item[0].includes('data-checked="true"') || item[0].includes('checked');
239
+ const textMatch = item[0].match(/<label>.*?<\/label>|<p>(.*?)<\/p>/s);
240
+ const text = textMatch ? htmlToInline(textMatch[0].replace(/<[^>]+>/g, '')) : '';
241
+ lines.push(`- [${checked ? 'x' : ' '}] ${text}`);
242
+ }
243
+ lines.push('');
244
+ remaining = remaining.slice(taskListMatch[0].length);
245
+ continue;
246
+ }
247
+ // Unordered list
248
+ const ulMatch = remaining.match(/^<ul>(.*?)<\/ul>/s);
249
+ if (ulMatch) {
250
+ const items = ulMatch[1].matchAll(/<li>(.*?)<\/li>/gs);
251
+ for (const item of items) {
252
+ lines.push('- ' + htmlToInline(item[1].replace(/<\/?p>/g, '')));
253
+ }
254
+ lines.push('');
255
+ remaining = remaining.slice(ulMatch[0].length);
256
+ continue;
257
+ }
258
+ // Ordered list
259
+ const olMatch = remaining.match(/^<ol[^>]*>(.*?)<\/ol>/s);
260
+ if (olMatch) {
261
+ const items = [...olMatch[1].matchAll(/<li>(.*?)<\/li>/gs)];
262
+ items.forEach((item, idx) => {
263
+ lines.push(`${idx + 1}. ` + htmlToInline(item[1].replace(/<\/?p>/g, '')));
264
+ });
265
+ lines.push('');
266
+ remaining = remaining.slice(olMatch[0].length);
267
+ continue;
268
+ }
269
+ // Paragraph
270
+ const pMatch = remaining.match(/^<p>(.*?)<\/p>/s);
271
+ if (pMatch) {
272
+ const text = htmlToInline(pMatch[1]);
273
+ if (text.trim()) {
274
+ lines.push(text);
275
+ lines.push('');
276
+ }
277
+ remaining = remaining.slice(pMatch[0].length);
278
+ continue;
279
+ }
280
+ // Skip unknown tags or whitespace
281
+ const skipMatch = remaining.match(/^(<[^>]+>|\s+)/);
282
+ if (skipMatch) {
283
+ remaining = remaining.slice(skipMatch[0].length);
284
+ continue;
285
+ }
286
+ // Plain text (shouldn't happen in well-formed Tiptap output)
287
+ const textMatch = remaining.match(/^([^<]+)/);
288
+ if (textMatch) {
289
+ lines.push(unescapeHtml(textMatch[1]));
290
+ remaining = remaining.slice(textMatch[0].length);
291
+ continue;
292
+ }
293
+ // Safety: skip one character to avoid infinite loop
294
+ remaining = remaining.slice(1);
295
+ }
296
+ // Clean up trailing blank lines
297
+ return (lines
298
+ .join('\n')
299
+ .replace(/\n{3,}/g, '\n\n')
300
+ .trim() + '\n');
301
+ }
302
+ // ─── Helpers ─────────────────────────────────────────────
303
+ function escapeHtml(text) {
304
+ return text
305
+ .replace(/&/g, '&amp;')
306
+ .replace(/</g, '&lt;')
307
+ .replace(/>/g, '&gt;')
308
+ .replace(/"/g, '&quot;');
309
+ }
310
+ function unescapeHtml(text) {
311
+ return text
312
+ .replace(/&lt;/g, '<')
313
+ .replace(/&gt;/g, '>')
314
+ .replace(/&quot;/g, '"')
315
+ .replace(/&amp;/g, '&');
316
+ }
317
+ /** Convert inline markdown to HTML for Tiptap consumption */
318
+ function inlineToHtml(text) {
319
+ let result = escapeHtml(text);
320
+ // Bold: **text** or __text__
321
+ result = result.replace(RE_BOLD_STAR, '<strong>$1</strong>');
322
+ result = result.replace(RE_BOLD_UNDER, '<strong>$1</strong>');
323
+ // Italic: *text* or _text_
324
+ result = result.replace(RE_ITALIC_STAR, '<em>$1</em>');
325
+ result = result.replace(RE_ITALIC_UNDER, '<em>$1</em>');
326
+ // Strikethrough: ~~text~~
327
+ result = result.replace(RE_STRIKETHROUGH, '<s>$1</s>');
328
+ // Inline code: `text`
329
+ result = result.replace(RE_INLINE_CODE, '<code>$1</code>');
330
+ // Links: [text](url)
331
+ result = result.replace(RE_LINK, '<a href="$2">$1</a>');
332
+ // Images: ![alt](src)
333
+ result = result.replace(RE_IMAGE, '<img alt="$1" src="$2">');
334
+ return result;
335
+ }
336
+ /** Convert inline HTML back to markdown */
337
+ function htmlToInline(html) {
338
+ let result = html;
339
+ // Strong
340
+ result = result.replace(RE_STRONG_TAG, '**$1**');
341
+ result = result.replace(RE_B_TAG, '**$1**');
342
+ // Em
343
+ result = result.replace(RE_EM_TAG, '*$1*');
344
+ result = result.replace(RE_I_TAG, '*$1*');
345
+ // Strikethrough
346
+ result = result.replace(RE_S_TAG, '~~$1~~');
347
+ result = result.replace(RE_DEL_TAG, '~~$1~~');
348
+ // Code
349
+ result = result.replace(RE_CODE_TAG, '`$1`');
350
+ // Links
351
+ result = result.replace(RE_A_TAG, '[$2]($1)');
352
+ // Images
353
+ result = result.replace(RE_IMG_TAG, '![$1]($2)');
354
+ // Strip remaining tags
355
+ result = result.replace(RE_STRIP_TAGS, '');
356
+ return unescapeHtml(result);
357
+ }
358
+ //# sourceMappingURL=tiptapBridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiptapBridge.js","sourceRoot":"","sources":["../src/tiptapBridge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bendyline/squisq-editor-react",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "React editor shell with raw/WYSIWYG/preview modes for Squisq documents",
5
5
  "license": "MIT",
6
6
  "author": "Bendyline",
@@ -38,16 +38,15 @@
38
38
  },
39
39
  "scripts": {
40
40
  "build": "tsup",
41
- "typecheck": "tsc --noEmit",
42
- "prepublishOnly": "npm run build"
41
+ "typecheck": "tsc --noEmit"
43
42
  },
44
43
  "peerDependencies": {
45
44
  "react": "^18.0.0 || ^19.0.0",
46
45
  "react-dom": "^18.0.0 || ^19.0.0"
47
46
  },
48
47
  "dependencies": {
49
- "@bendyline/squisq": "1.0.0",
50
- "@bendyline/squisq-react": "1.0.0",
48
+ "@bendyline/squisq": "1.0.1",
49
+ "@bendyline/squisq-react": "1.0.1",
51
50
  "@monaco-editor/react": "^4.6.0",
52
51
  "@tiptap/extension-placeholder": "^2.11.0",
53
52
  "@tiptap/extension-table": "^2.11.0",