@bendyline/squisq-editor-react 1.2.2 → 1.3.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 (95) hide show
  1. package/dist/EditorContext.d.ts +65 -1
  2. package/dist/EditorContext.d.ts.map +1 -1
  3. package/dist/EditorContext.js +31 -4
  4. package/dist/EditorContext.js.map +1 -1
  5. package/dist/EditorShell.d.ts +101 -2
  6. package/dist/EditorShell.d.ts.map +1 -1
  7. package/dist/EditorShell.js +20 -8
  8. package/dist/EditorShell.js.map +1 -1
  9. package/dist/ImageNodeView.d.ts.map +1 -1
  10. package/dist/ImageNodeView.js +12 -2
  11. package/dist/ImageNodeView.js.map +1 -1
  12. package/dist/MediaBin.d.ts.map +1 -1
  13. package/dist/MediaBin.js +16 -1
  14. package/dist/MediaBin.js.map +1 -1
  15. package/dist/MentionExtension.d.ts +22 -0
  16. package/dist/MentionExtension.d.ts.map +1 -0
  17. package/dist/MentionExtension.js +242 -0
  18. package/dist/MentionExtension.js.map +1 -0
  19. package/dist/RawEditor.d.ts +8 -1
  20. package/dist/RawEditor.d.ts.map +1 -1
  21. package/dist/RawEditor.js +167 -30
  22. package/dist/RawEditor.js.map +1 -1
  23. package/dist/TemplateAnnotation.d.ts.map +1 -1
  24. package/dist/TemplateAnnotation.js +4 -2
  25. package/dist/TemplateAnnotation.js.map +1 -1
  26. package/dist/Toolbar.d.ts +7 -1
  27. package/dist/Toolbar.d.ts.map +1 -1
  28. package/dist/Toolbar.js +57 -18
  29. package/dist/Toolbar.js.map +1 -1
  30. package/dist/Tooltip.d.ts +10 -0
  31. package/dist/Tooltip.d.ts.map +1 -0
  32. package/dist/Tooltip.js +104 -0
  33. package/dist/Tooltip.js.map +1 -0
  34. package/dist/ViewSwitcher.d.ts +1 -1
  35. package/dist/ViewSwitcher.d.ts.map +1 -1
  36. package/dist/ViewSwitcher.js +10 -4
  37. package/dist/ViewSwitcher.js.map +1 -1
  38. package/dist/WysiwygEditor.d.ts +13 -2
  39. package/dist/WysiwygEditor.d.ts.map +1 -1
  40. package/dist/WysiwygEditor.js +239 -4
  41. package/dist/WysiwygEditor.js.map +1 -1
  42. package/dist/__tests__/detectMarkdown.test.d.ts +2 -0
  43. package/dist/__tests__/detectMarkdown.test.d.ts.map +1 -0
  44. package/dist/__tests__/detectMarkdown.test.js +69 -0
  45. package/dist/__tests__/detectMarkdown.test.js.map +1 -0
  46. package/dist/__tests__/fileKind.test.d.ts +2 -0
  47. package/dist/__tests__/fileKind.test.d.ts.map +1 -0
  48. package/dist/__tests__/fileKind.test.js +81 -0
  49. package/dist/__tests__/fileKind.test.js.map +1 -0
  50. package/dist/__tests__/tiptapBridge.test.js +36 -0
  51. package/dist/__tests__/tiptapBridge.test.js.map +1 -1
  52. package/dist/detectMarkdown.d.ts +20 -0
  53. package/dist/detectMarkdown.d.ts.map +1 -0
  54. package/dist/detectMarkdown.js +61 -0
  55. package/dist/detectMarkdown.js.map +1 -0
  56. package/dist/fileKind.d.ts +30 -0
  57. package/dist/fileKind.d.ts.map +1 -0
  58. package/dist/fileKind.js +123 -0
  59. package/dist/fileKind.js.map +1 -0
  60. package/dist/hooks/useFileDrop.d.ts.map +1 -1
  61. package/dist/hooks/useFileDrop.js +9 -7
  62. package/dist/hooks/useFileDrop.js.map +1 -1
  63. package/dist/index.d.ts +4 -1
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +4 -0
  66. package/dist/index.js.map +1 -1
  67. package/dist/mediaDragMime.d.ts +17 -0
  68. package/dist/mediaDragMime.d.ts.map +1 -0
  69. package/dist/mediaDragMime.js +22 -0
  70. package/dist/mediaDragMime.js.map +1 -0
  71. package/dist/tiptapBridge.d.ts.map +1 -1
  72. package/dist/tiptapBridge.js +58 -2
  73. package/dist/tiptapBridge.js.map +1 -1
  74. package/package.json +9 -7
  75. package/src/EditorContext.tsx +106 -3
  76. package/src/EditorShell.tsx +195 -15
  77. package/src/ImageNodeView.tsx +15 -2
  78. package/src/MediaBin.tsx +23 -1
  79. package/src/MentionExtension.tsx +258 -0
  80. package/src/RawEditor.tsx +193 -37
  81. package/src/TemplateAnnotation.ts +4 -2
  82. package/src/Toolbar.tsx +111 -48
  83. package/src/Tooltip.tsx +124 -0
  84. package/src/ViewSwitcher.tsx +15 -5
  85. package/src/WysiwygEditor.tsx +270 -5
  86. package/src/__tests__/detectMarkdown.test.ts +88 -0
  87. package/src/__tests__/fileKind.test.ts +96 -0
  88. package/src/__tests__/tiptapBridge.test.ts +44 -0
  89. package/src/detectMarkdown.ts +62 -0
  90. package/src/fileKind.ts +134 -0
  91. package/src/hooks/useFileDrop.ts +10 -6
  92. package/src/index.ts +11 -0
  93. package/src/mediaDragMime.ts +32 -0
  94. package/src/styles/editor.css +214 -8
  95. package/src/tiptapBridge.ts +66 -2
package/dist/Toolbar.js CHANGED
@@ -6,11 +6,11 @@ import { getAvailableTemplates } from '@bendyline/squisq/doc';
6
6
  const TEMPLATE_NAMES = getAvailableTemplates();
7
7
  const VIEWS = [
8
8
  { id: 'wysiwyg', label: 'Editor', shortcut: '⌘1' },
9
- { id: 'raw', label: 'Raw', shortcut: '⌘2' },
9
+ { id: 'raw', label: 'Markdown', shortLabel: 'MD', shortcut: '⌘2' },
10
10
  { id: 'preview', label: 'Play', shortcut: '⌘3' },
11
11
  ];
12
12
  const BUTTONS = [
13
- // Format group
13
+ // Format group — B/I/S trio.
14
14
  {
15
15
  id: 'bold',
16
16
  label: 'B',
@@ -35,20 +35,23 @@ const BUTTONS = [
35
35
  group: 'format',
36
36
  iconStyle: { textDecoration: 'line-through' },
37
37
  },
38
- { id: 'code', label: '<>', icon: '`', title: 'Inline code', group: 'format' },
38
+ // Lists group sits between format and structure so bullets/numbers
39
+ // are adjacent to the inline formatters people reach for together.
40
+ { id: 'ul', label: '•', icon: '•', title: 'Bullet list', group: 'lists' },
41
+ { id: 'ol', label: '1.', icon: '1.', title: 'Numbered list', group: 'lists' },
39
42
  // Structure group
40
43
  { id: 'h1', label: 'H1', icon: 'H1', title: 'Heading 1', group: 'structure' },
41
44
  { id: 'h2', label: 'H2', icon: 'H2', title: 'Heading 2', group: 'structure' },
42
45
  { id: 'h3', label: 'H3', icon: 'H3', title: 'Heading 3', group: 'structure' },
43
- { id: 'quote', label: '❝', icon: '❝', title: 'Blockquote', group: 'structure' },
44
- // Insert group
45
- { id: 'ul', label: '•', icon: '•', title: 'Bullet list', group: 'insert' },
46
- { id: 'ol', label: '1.', icon: '1.', title: 'Numbered list', group: 'insert' },
46
+ // Insert group block-level inserts (quote, code blocks, rules)
47
+ { id: 'quote', label: '❝', icon: '❝', title: 'Blockquote', group: 'insert' },
47
48
  { id: 'codeblock', label: '{ }', icon: '{ }', title: 'Code block', group: 'insert' },
49
+ { id: 'code', label: '</>', icon: '</>', title: 'Inline code', group: 'insert' },
48
50
  { id: 'hr', label: '—', icon: '—', title: 'Horizontal rule', group: 'insert' },
49
- { id: 'link', label: '🔗', icon: '🔗', title: 'Insert link', group: 'insert' },
50
- { id: 'table', label: 'table', icon: '', title: 'Insert table', group: 'insert' },
51
- { id: 'image', label: '🖼', icon: '🖼', title: 'Insert image', group: 'insert' },
51
+ // Media group links, tables, images
52
+ { id: 'link', label: '🔗', icon: '🔗', title: 'Insert link', group: 'media' },
53
+ { id: 'table', label: 'table', icon: '', title: 'Insert table', group: 'media' },
54
+ { id: 'image', label: '🖼', icon: '🖼', title: 'Insert image', group: 'media' },
52
55
  ];
53
56
  // ─── Tiptap active-state map ────────────────────────────
54
57
  /** Returns true if the given button id is currently active in Tiptap */
@@ -87,8 +90,19 @@ function isTiptapActive(editor, id) {
87
90
  * - WYSIWYG: calls Tiptap chain commands (toggleBold, etc.)
88
91
  * - Raw: appends markdown syntax to the source
89
92
  */
90
- export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAfterActions, slotRight, }) {
91
- const { activeView, setActiveView, markdownSource, setMarkdownSource, tiptapEditor, monacoEditor, mediaProvider, } = useEditorContext();
93
+ export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAfterActions, slotRight, showPlayTab = true, }) {
94
+ const { activeView, setActiveView, markdownSource, setMarkdownSource, tiptapEditor, monacoEditor, mediaProvider, editorMode, } = useEditorContext();
95
+ const isCodeMode = editorMode === 'code';
96
+ // In code mode only the raw view is meaningful; the WYSIWYG and Preview
97
+ // surfaces aren't mounted, so hide their tabs.
98
+ const visibleViews = VIEWS.filter((v) => {
99
+ if (isCodeMode)
100
+ return v.id === 'raw';
101
+ if (v.id === 'preview' && !showPlayTab)
102
+ return false;
103
+ return true;
104
+ });
105
+ const showViewTabs = visibleViews.length > 1;
92
106
  // Hidden file input for image picker
93
107
  const imageInputRef = useRef(null);
94
108
  // ── Narrow-screen detection ──────────────────────────
@@ -144,6 +158,31 @@ export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAft
144
158
  document.addEventListener('mousedown', handleClick);
145
159
  return () => document.removeEventListener('mousedown', handleClick);
146
160
  }, [showOverflow]);
161
+ // Open-up vs open-down: the overflow menu is anchored to its trigger with
162
+ // `top: 100%` by default. When the toolbar lives near the bottom of a
163
+ // small container (e.g. a chat composer), a downward menu gets clipped.
164
+ // Measure on open and flip the anchor to `bottom: 100%` if the space
165
+ // above the trigger is larger than the space below.
166
+ const [overflowPlacement, setOverflowPlacement] = useState('down');
167
+ useEffect(() => {
168
+ if (!showOverflow || !overflowRef.current)
169
+ return;
170
+ const trigger = overflowRef.current.querySelector('.squisq-toolbar-overflow-trigger');
171
+ if (!trigger)
172
+ return;
173
+ const rect = trigger.getBoundingClientRect();
174
+ const spaceBelow = window.innerHeight - rect.bottom;
175
+ const spaceAbove = rect.top;
176
+ // Assume a typical menu height; exact measurement is unreliable on first
177
+ // open because the menu hasn't rendered yet when this runs.
178
+ const ESTIMATED_MENU_HEIGHT = 260;
179
+ if (spaceBelow < ESTIMATED_MENU_HEIGHT && spaceAbove > spaceBelow) {
180
+ setOverflowPlacement('up');
181
+ }
182
+ else {
183
+ setOverflowPlacement('down');
184
+ }
185
+ }, [showOverflow]);
147
186
  // Force re-render when Tiptap selection or formatting state changes
148
187
  const [, forceUpdate] = useReducer((c) => c + 1, 0);
149
188
  useEffect(() => {
@@ -404,7 +443,7 @@ export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAft
404
443
  handleRaw(id);
405
444
  }
406
445
  }, [activeView, tiptapEditor, handleTiptap, handleRaw]);
407
- const groups = ['format', 'structure', 'insert'];
446
+ const groups = ['format', 'lists', 'structure', 'insert', 'media'];
408
447
  const isWysiwyg = activeView === 'wysiwyg' && tiptapEditor;
409
448
  const isPreview = activeView === 'preview';
410
449
  // Detect whether cursor is inside a table (WYSIWYG mode only)
@@ -436,14 +475,14 @@ export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAft
436
475
  handleImageFile(file);
437
476
  // Reset so the same file can be re-selected
438
477
  e.target.value = '';
439
- } }), slotLeft, _jsx("div", { className: "squisq-toolbar-view-tabs", role: "tablist", "aria-label": "Editor view", children: VIEWS.map((view) => (_jsx("button", { role: "tab", "data-view": view.id, "data-label": view.label, "aria-selected": activeView === view.id, className: `squisq-toolbar-view-tab${activeView === view.id ? ' squisq-toolbar-view-tab--active' : ''}`, onClick: () => setActiveView(view.id), title: `${view.label} (${view.shortcut})`, children: view.label }, view.id))) }), !isPreview && !isNarrow && (_jsxs("div", { className: "squisq-toolbar-actions", ref: actionsRef, children: [groups.map((group, gi) => (_jsxs("div", { className: "squisq-toolbar-group", children: [gi > 0 && _jsx("div", { className: "squisq-toolbar-separator" }), BUTTONS.filter((b) => b.group === group).map((btn) => {
478
+ } }), slotLeft, showViewTabs && (_jsx("div", { className: "squisq-toolbar-view-tabs", role: "tablist", "aria-label": "Editor view", children: visibleViews.map((view) => (_jsxs("button", { role: "tab", "data-view": view.id, "aria-selected": activeView === view.id, className: `squisq-toolbar-view-tab${activeView === view.id ? ' squisq-toolbar-view-tab--active' : ''}`, onClick: () => setActiveView(view.id), "data-tooltip": `${view.label} (${view.shortcut})`, children: [_jsx("span", { className: "squisq-toolbar-view-tab-label squisq-toolbar-view-tab-label--long", "data-label": view.label, children: view.label }), view.shortLabel && view.shortLabel !== view.label && (_jsx("span", { className: "squisq-toolbar-view-tab-label squisq-toolbar-view-tab-label--short", "data-label": view.shortLabel, children: view.shortLabel }))] }, view.id))) })), !isPreview && !isNarrow && !isCodeMode && (_jsxs("div", { className: "squisq-toolbar-actions", ref: actionsRef, children: [groups.map((group, gi) => (_jsxs("div", { className: "squisq-toolbar-group", children: [gi > 0 && _jsx("div", { className: "squisq-toolbar-separator" }), BUTTONS.filter((b) => b.group === group).map((btn) => {
440
479
  const active = isWysiwyg ? isTiptapActive(tiptapEditor, btn.id) : false;
441
480
  const disabled = btn.id === 'image' && !mediaProvider;
442
- return (_jsx("button", { className: `squisq-toolbar-button${active ? ' squisq-toolbar-button--active' : ''}`, title: disabled ? 'Insert image (requires media provider)' : btn.title, onClick: () => handleAction(btn.id), "aria-label": btn.title, "aria-pressed": active, disabled: disabled, style: btn.iconStyle, children: btn.id === 'table' ? (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "1", width: "12", height: "12", rx: "1" }), _jsx("line", { x1: "1", y1: "5", x2: "13", y2: "5" }), _jsx("line", { x1: "1", y1: "9", x2: "13", y2: "9" }), _jsx("line", { x1: "5", y1: "1", x2: "5", y2: "13" }), _jsx("line", { x1: "9", y1: "1", x2: "9", y2: "13" })] })) : (btn.icon) }, btn.id));
443
- })] }, group))), currentTemplate !== null && (_jsxs(_Fragment, { children: [_jsx("div", { className: "squisq-toolbar-separator" }), _jsx("div", { className: "squisq-toolbar-group squisq-template-picker", children: _jsxs("label", { className: "squisq-template-picker-label", title: "Block template for this heading", children: ["Template:", _jsxs("select", { className: "squisq-template-picker-select", value: currentTemplate, onChange: (e) => handleTemplatePick(e.target.value), children: [_jsx("option", { value: "", children: "\u2014 none \u2014" }), TEMPLATE_NAMES.map((name) => (_jsx("option", { value: name, children: name }, name)))] })] }) })] })), isInTable && (_jsxs(_Fragment, { children: [_jsx("div", { className: "squisq-toolbar-separator" }), _jsxs("div", { className: "squisq-toolbar-group squisq-table-controls", children: [_jsx("span", { className: "squisq-table-controls-label", children: "Table:" }), _jsx("button", { className: "squisq-toolbar-button", title: "Add column before", onClick: () => tiptapEditor.chain().focus().addColumnBefore().run(), "aria-label": "Add column before", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "7", y: "2", width: "8", height: "12", rx: "1" }), _jsx("line", { x1: "11", y1: "2", x2: "11", y2: "14" }), _jsx("line", { x1: "1", y1: "8", x2: "4.5", y2: "8" }), _jsx("line", { x1: "2.75", y1: "6.25", x2: "2.75", y2: "9.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", title: "Add column after", onClick: () => tiptapEditor.chain().focus().addColumnAfter().run(), "aria-label": "Add column after", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "2", width: "8", height: "12", rx: "1" }), _jsx("line", { x1: "5", y1: "2", x2: "5", y2: "14" }), _jsx("line", { x1: "11.5", y1: "8", x2: "15", y2: "8" }), _jsx("line", { x1: "13.25", y1: "6.25", x2: "13.25", y2: "9.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", title: "Delete column", onClick: () => tiptapEditor.chain().focus().deleteColumn().run(), "aria-label": "Delete column", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "4", y: "1", width: "8", height: "14", rx: "1" }), _jsx("line", { x1: "6", y1: "5.5", x2: "10", y2: "10.5" }), _jsx("line", { x1: "10", y1: "5.5", x2: "6", y2: "10.5" })] }) }), _jsx("button", { className: "squisq-toolbar-button", title: "Add row above", onClick: () => tiptapEditor.chain().focus().addRowBefore().run(), "aria-label": "Add row above", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "2", y: "6", width: "12", height: "9", rx: "1" }), _jsx("line", { x1: "2", y1: "10.5", x2: "14", y2: "10.5" }), _jsx("line", { x1: "8", y1: "1", x2: "8", y2: "4.5" }), _jsx("line", { x1: "6.25", y1: "2.75", x2: "9.75", y2: "2.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", title: "Add row below", onClick: () => tiptapEditor.chain().focus().addRowAfter().run(), "aria-label": "Add row below", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "2", y: "1", width: "12", height: "9", rx: "1" }), _jsx("line", { x1: "2", y1: "5.5", x2: "14", y2: "5.5" }), _jsx("line", { x1: "8", y1: "11.5", x2: "8", y2: "15" }), _jsx("line", { x1: "6.25", y1: "13.25", x2: "9.75", y2: "13.25" })] }) }), _jsx("button", { className: "squisq-toolbar-button", title: "Delete row", onClick: () => tiptapEditor.chain().focus().deleteRow().run(), "aria-label": "Delete row", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "4", width: "14", height: "8", rx: "1" }), _jsx("line", { x1: "5.5", y1: "6", x2: "10.5", y2: "10" }), _jsx("line", { x1: "10.5", y1: "6", x2: "5.5", y2: "10" })] }) }), _jsx("button", { className: "squisq-toolbar-button squisq-toolbar-button--danger", title: "Delete table", onClick: () => tiptapEditor.chain().focus().deleteTable().run(), "aria-label": "Delete table", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "1", width: "14", height: "14", rx: "1" }), _jsx("line", { x1: "1", y1: "5.5", x2: "15", y2: "5.5" }), _jsx("line", { x1: "5.5", y1: "1", x2: "5.5", y2: "15" }), _jsx("line", { x1: "4.5", y1: "4.5", x2: "11.5", y2: "11.5", strokeWidth: "2" }), _jsx("line", { x1: "11.5", y1: "4.5", x2: "4.5", y2: "11.5", strokeWidth: "2" })] }) })] })] }))] })), !isPreview && overflowIndex !== null && (_jsxs("div", { className: "squisq-toolbar-overflow", ref: overflowRef, children: [_jsx("button", { className: `squisq-toolbar-button squisq-toolbar-overflow-trigger${showOverflow ? ' squisq-toolbar-button--active' : ''}`, title: "More actions", onClick: () => setShowOverflow((v) => !v), "aria-label": "More actions", "aria-expanded": showOverflow, children: "\u00B7\u00B7\u00B7" }), showOverflow && (_jsxs("div", { className: "squisq-toolbar-overflow-menu", children: [BUTTONS.slice(overflowIndex).map((btn) => {
481
+ return (_jsx("button", { className: `squisq-toolbar-button${active ? ' squisq-toolbar-button--active' : ''}`, "data-tooltip": disabled ? 'Insert image (requires media provider)' : btn.title, onClick: () => handleAction(btn.id), "aria-label": btn.title, "aria-pressed": active, disabled: disabled, style: btn.iconStyle, children: btn.id === 'table' ? (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "1", width: "12", height: "12", rx: "1" }), _jsx("line", { x1: "1", y1: "5", x2: "13", y2: "5" }), _jsx("line", { x1: "1", y1: "9", x2: "13", y2: "9" }), _jsx("line", { x1: "5", y1: "1", x2: "5", y2: "13" }), _jsx("line", { x1: "9", y1: "1", x2: "9", y2: "13" })] })) : (btn.icon) }, btn.id));
482
+ })] }, group))), currentTemplate !== null && (_jsxs(_Fragment, { children: [_jsx("div", { className: "squisq-toolbar-separator" }), _jsx("div", { className: "squisq-toolbar-group squisq-template-picker", children: _jsxs("label", { className: "squisq-template-picker-label", "data-tooltip": "Block template for this heading", children: ["Template:", _jsxs("select", { className: "squisq-template-picker-select", value: currentTemplate, onChange: (e) => handleTemplatePick(e.target.value), children: [_jsx("option", { value: "", children: "\u2014 none \u2014" }), TEMPLATE_NAMES.map((name) => (_jsx("option", { value: name, children: name }, name)))] })] }) })] })), isInTable && (_jsxs(_Fragment, { children: [_jsx("div", { className: "squisq-toolbar-separator" }), _jsxs("div", { className: "squisq-toolbar-group squisq-table-controls", children: [_jsx("span", { className: "squisq-table-controls-label", children: "Table:" }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Add column before", onClick: () => tiptapEditor.chain().focus().addColumnBefore().run(), "aria-label": "Add column before", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "7", y: "2", width: "8", height: "12", rx: "1" }), _jsx("line", { x1: "11", y1: "2", x2: "11", y2: "14" }), _jsx("line", { x1: "1", y1: "8", x2: "4.5", y2: "8" }), _jsx("line", { x1: "2.75", y1: "6.25", x2: "2.75", y2: "9.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Add column after", onClick: () => tiptapEditor.chain().focus().addColumnAfter().run(), "aria-label": "Add column after", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "2", width: "8", height: "12", rx: "1" }), _jsx("line", { x1: "5", y1: "2", x2: "5", y2: "14" }), _jsx("line", { x1: "11.5", y1: "8", x2: "15", y2: "8" }), _jsx("line", { x1: "13.25", y1: "6.25", x2: "13.25", y2: "9.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Delete column", onClick: () => tiptapEditor.chain().focus().deleteColumn().run(), "aria-label": "Delete column", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "4", y: "1", width: "8", height: "14", rx: "1" }), _jsx("line", { x1: "6", y1: "5.5", x2: "10", y2: "10.5" }), _jsx("line", { x1: "10", y1: "5.5", x2: "6", y2: "10.5" })] }) }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Add row above", onClick: () => tiptapEditor.chain().focus().addRowBefore().run(), "aria-label": "Add row above", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "2", y: "6", width: "12", height: "9", rx: "1" }), _jsx("line", { x1: "2", y1: "10.5", x2: "14", y2: "10.5" }), _jsx("line", { x1: "8", y1: "1", x2: "8", y2: "4.5" }), _jsx("line", { x1: "6.25", y1: "2.75", x2: "9.75", y2: "2.75" })] }) }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Add row below", onClick: () => tiptapEditor.chain().focus().addRowAfter().run(), "aria-label": "Add row below", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "2", y: "1", width: "12", height: "9", rx: "1" }), _jsx("line", { x1: "2", y1: "5.5", x2: "14", y2: "5.5" }), _jsx("line", { x1: "8", y1: "11.5", x2: "8", y2: "15" }), _jsx("line", { x1: "6.25", y1: "13.25", x2: "9.75", y2: "13.25" })] }) }), _jsx("button", { className: "squisq-toolbar-button", "data-tooltip": "Delete row", onClick: () => tiptapEditor.chain().focus().deleteRow().run(), "aria-label": "Delete row", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "4", width: "14", height: "8", rx: "1" }), _jsx("line", { x1: "5.5", y1: "6", x2: "10.5", y2: "10" }), _jsx("line", { x1: "10.5", y1: "6", x2: "5.5", y2: "10" })] }) }), _jsx("button", { className: "squisq-toolbar-button squisq-toolbar-button--danger", "data-tooltip": "Delete table", onClick: () => tiptapEditor.chain().focus().deleteTable().run(), "aria-label": "Delete table", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "1", width: "14", height: "14", rx: "1" }), _jsx("line", { x1: "1", y1: "5.5", x2: "15", y2: "5.5" }), _jsx("line", { x1: "5.5", y1: "1", x2: "5.5", y2: "15" }), _jsx("line", { x1: "4.5", y1: "4.5", x2: "11.5", y2: "11.5", strokeWidth: "2" }), _jsx("line", { x1: "11.5", y1: "4.5", x2: "4.5", y2: "11.5", strokeWidth: "2" })] }) })] })] }))] })), !isPreview && !isCodeMode && overflowIndex !== null && (_jsxs("div", { className: "squisq-toolbar-overflow", ref: overflowRef, children: [_jsx("button", { className: `squisq-toolbar-button squisq-toolbar-overflow-trigger${showOverflow ? ' squisq-toolbar-button--active' : ''}`, "data-tooltip": "More actions", onClick: () => setShowOverflow((v) => !v), "aria-label": "More actions", "aria-expanded": showOverflow, children: "\u00B7\u00B7\u00B7" }), showOverflow && (_jsxs("div", { className: `squisq-toolbar-overflow-menu squisq-toolbar-overflow-menu--${overflowPlacement}`, children: [BUTTONS.slice(overflowIndex).map((btn) => {
444
483
  const active = isWysiwyg ? isTiptapActive(tiptapEditor, btn.id) : false;
445
484
  const disabled = btn.id === 'image' && !mediaProvider;
446
- return (_jsxs("button", { className: `squisq-toolbar-overflow-item${active ? ' squisq-toolbar-overflow-item--active' : ''}`, title: btn.title, onClick: () => {
485
+ return (_jsxs("button", { className: `squisq-toolbar-overflow-item${active ? ' squisq-toolbar-overflow-item--active' : ''}`, onClick: () => {
447
486
  handleAction(btn.id);
448
487
  setShowOverflow(false);
449
488
  }, disabled: disabled, children: [btn.id === 'table' ? (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", stroke: "currentColor", strokeWidth: "1.4", strokeLinecap: "round", children: [_jsx("rect", { x: "1", y: "1", width: "12", height: "12", rx: "1" }), _jsx("line", { x1: "1", y1: "5", x2: "13", y2: "5" }), _jsx("line", { x1: "1", y1: "9", x2: "13", y2: "9" }), _jsx("line", { x1: "5", y1: "1", x2: "5", y2: "13" }), _jsx("line", { x1: "9", y1: "1", x2: "9", y2: "13" })] })) : (_jsx("span", { className: "squisq-toolbar-overflow-icon", style: btn.iconStyle, children: btn.icon })), _jsx("span", { children: btn.title })] }, btn.id));
@@ -482,6 +521,6 @@ export function Toolbar({ className, showFiles, onToggleFiles, slotLeft, slotAft
482
521
  ].map((item) => (_jsx("button", { className: `squisq-toolbar-overflow-item${item.label.startsWith('Delete') ? ' squisq-toolbar-overflow-item--danger' : ''}`, onClick: () => {
483
522
  item.action();
484
523
  setShowOverflow(false);
485
- }, children: _jsx("span", { children: item.label }) }, item.label)))] }))] }))] })), slotAfterActions, _jsx("div", { style: { flex: 1 } }), onToggleFiles && (_jsx("button", { className: `squisq-toolbar-button squisq-toolbar-files-toggle${showFiles ? ' squisq-toolbar-button--active' : ''}`, onClick: onToggleFiles, title: showFiles ? 'Hide Files panel' : 'Show Files panel', "aria-pressed": showFiles, "aria-label": "Toggle Files panel", children: '\u{1F4CE}' })), slotRight] }));
524
+ }, children: _jsx("span", { children: item.label }) }, item.label)))] }))] }))] })), slotAfterActions, (isPreview || isNarrow || isCodeMode) && _jsx("div", { style: { flex: 1 } }), onToggleFiles && (_jsx("button", { className: `squisq-toolbar-button squisq-toolbar-files-toggle${showFiles ? ' squisq-toolbar-button--active' : ''}`, onClick: onToggleFiles, "data-tooltip": showFiles ? 'Hide Files panel' : 'Show Files panel', "aria-pressed": showFiles, "aria-label": "Toggle Files panel", children: '\u{1F4CE}' })), slotRight] }));
486
525
  }
487
526
  //# sourceMappingURL=Toolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Toolbar.js","sourceRoot":"","sources":["../src/Toolbar.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * TooltipLayer
3
+ *
4
+ * A single portal-mounted tooltip that activates on hover over any element
5
+ * with a `data-tooltip` attribute. Shorter delay than native browser
6
+ * tooltips and fires regardless of window focus, making toolbar hints feel
7
+ * immediate. Mount once near the root of the editor shell.
8
+ */
9
+ export declare function TooltipLayer(): import("react").ReactPortal | null;
10
+ //# sourceMappingURL=Tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAaH,wBAAgB,YAAY,uCAuG3B"}
@@ -0,0 +1,104 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * TooltipLayer
4
+ *
5
+ * A single portal-mounted tooltip that activates on hover over any element
6
+ * with a `data-tooltip` attribute. Shorter delay than native browser
7
+ * tooltips and fires regardless of window focus, making toolbar hints feel
8
+ * immediate. Mount once near the root of the editor shell.
9
+ */
10
+ import { useEffect, useRef, useState } from 'react';
11
+ import { createPortal } from 'react-dom';
12
+ const SHOW_DELAY_MS = 180;
13
+ export function TooltipLayer() {
14
+ const [state, setState] = useState(null);
15
+ const timerRef = useRef(null);
16
+ const currentTargetRef = useRef(null);
17
+ // Visibility tracked in a ref so `handleOver` can decide whether to swap
18
+ // the label immediately vs. re-delay — reading it from state would force
19
+ // the effect to re-run (and re-register all listeners) on every change.
20
+ const visibleRef = useRef(false);
21
+ useEffect(() => {
22
+ const clearTimer = () => {
23
+ if (timerRef.current) {
24
+ clearTimeout(timerRef.current);
25
+ timerRef.current = null;
26
+ }
27
+ };
28
+ const hide = () => {
29
+ clearTimer();
30
+ currentTargetRef.current = null;
31
+ visibleRef.current = false;
32
+ setState(null);
33
+ };
34
+ const show = (el, label) => {
35
+ const rect = el.getBoundingClientRect();
36
+ visibleRef.current = true;
37
+ setState({
38
+ label,
39
+ top: rect.bottom + 6,
40
+ left: rect.left + rect.width / 2,
41
+ });
42
+ };
43
+ const handleOver = (e) => {
44
+ const el = e.target?.closest?.('[data-tooltip]');
45
+ if (!el)
46
+ return;
47
+ if (el === currentTargetRef.current)
48
+ return;
49
+ const label = el.getAttribute('data-tooltip');
50
+ if (!label)
51
+ return;
52
+ // Switching from one tooltip target to another: if a tooltip is
53
+ // already visible, swap the label immediately (no re-delay).
54
+ const wasVisible = visibleRef.current;
55
+ currentTargetRef.current = el;
56
+ clearTimer();
57
+ if (wasVisible) {
58
+ show(el, label);
59
+ }
60
+ else {
61
+ timerRef.current = setTimeout(() => {
62
+ if (currentTargetRef.current === el && document.body.contains(el)) {
63
+ show(el, label);
64
+ }
65
+ }, SHOW_DELAY_MS);
66
+ }
67
+ };
68
+ const handleOut = (e) => {
69
+ const target = currentTargetRef.current;
70
+ if (!target)
71
+ return;
72
+ const related = e.relatedTarget;
73
+ // Still hovering inside the same target (e.g. moved over a child)
74
+ if (related && target.contains(related))
75
+ return;
76
+ // Moving to another element with a tooltip — handleOver will swap in.
77
+ const relatedTooltip = related?.closest?.('[data-tooltip]');
78
+ if (relatedTooltip)
79
+ return;
80
+ hide();
81
+ };
82
+ const handleScroll = () => hide();
83
+ const handleBlur = () => hide();
84
+ document.addEventListener('mouseover', handleOver);
85
+ document.addEventListener('mouseout', handleOut);
86
+ document.addEventListener('scroll', handleScroll, true);
87
+ window.addEventListener('blur', handleBlur);
88
+ return () => {
89
+ clearTimer();
90
+ document.removeEventListener('mouseover', handleOver);
91
+ document.removeEventListener('mouseout', handleOut);
92
+ document.removeEventListener('scroll', handleScroll, true);
93
+ window.removeEventListener('blur', handleBlur);
94
+ };
95
+ }, []);
96
+ if (!state)
97
+ return null;
98
+ return createPortal(_jsx("div", { role: "tooltip", className: "squisq-tooltip", style: {
99
+ position: 'fixed',
100
+ top: state.top,
101
+ left: state.left,
102
+ }, children: state.label }), document.body);
103
+ }
104
+ //# sourceMappingURL=Tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":"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"}
@@ -10,5 +10,5 @@ export interface ViewSwitcherProps {
10
10
  /**
11
11
  * Tab-style view switcher for the three editor modes.
12
12
  */
13
- export declare function ViewSwitcher({ className }: ViewSwitcherProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function ViewSwitcher({ className }: ViewSwitcherProps): import("react/jsx-runtime").JSX.Element | null;
14
14
  //# sourceMappingURL=ViewSwitcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSwitcher.d.ts","sourceRoot":"","sources":["../src/ViewSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CAuB5D"}
1
+ {"version":3,"file":"ViewSwitcher.d.ts","sourceRoot":"","sources":["../src/ViewSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,iBAAiB,kDAiC5D"}
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /**
3
3
  * ViewSwitcher
4
4
  *
@@ -6,7 +6,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
6
6
  */
7
7
  import { useEditorContext } from './EditorContext';
8
8
  const VIEWS = [
9
- { id: 'raw', label: 'Raw', shortcut: '⌘1' },
9
+ { id: 'raw', label: 'Markdown', shortLabel: 'MD', shortcut: '⌘1' },
10
10
  { id: 'wysiwyg', label: 'Editor', shortcut: '⌘2' },
11
11
  { id: 'preview', label: 'Preview', shortcut: '⌘3' },
12
12
  ];
@@ -14,7 +14,13 @@ const VIEWS = [
14
14
  * Tab-style view switcher for the three editor modes.
15
15
  */
16
16
  export function ViewSwitcher({ className }) {
17
- const { activeView, setActiveView } = useEditorContext();
18
- return (_jsx("div", { className: `squisq-view-switcher ${className || ''}`, role: "tablist", "aria-label": "Editor view", children: VIEWS.map((view) => (_jsx("button", { role: "tab", "aria-selected": activeView === view.id, className: `squisq-view-tab ${activeView === view.id ? 'squisq-view-tab--active' : ''}`, onClick: () => setActiveView(view.id), title: `${view.label} (${view.shortcut})`, children: view.label }, view.id))) }));
17
+ const { activeView, setActiveView, editorMode } = useEditorContext();
18
+ // In code mode, only the raw view is meaningful. With just one entry in
19
+ // the tab list there's nothing to switch between, so suppress the whole
20
+ // switcher rather than render a single lonely tab.
21
+ const visibleViews = editorMode === 'code' ? VIEWS.filter((v) => v.id === 'raw') : VIEWS;
22
+ if (visibleViews.length <= 1)
23
+ return null;
24
+ return (_jsx("div", { className: `squisq-view-switcher ${className || ''}`, role: "tablist", "aria-label": "Editor view", children: visibleViews.map((view) => (_jsxs("button", { role: "tab", "aria-selected": activeView === view.id, className: `squisq-view-tab ${activeView === view.id ? 'squisq-view-tab--active' : ''}`, onClick: () => setActiveView(view.id), title: `${view.label} (${view.shortcut})`, children: [_jsx("span", { className: "squisq-view-tab-label squisq-view-tab-label--long", children: view.label }), view.shortLabel && view.shortLabel !== view.label && (_jsx("span", { className: "squisq-view-tab-label squisq-view-tab-label--short", children: view.shortLabel }))] }, view.id))) }));
19
25
  }
20
26
  //# sourceMappingURL=ViewSwitcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSwitcher.js","sourceRoot":"","sources":["../src/ViewSwitcher.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AAEpE,MAAM,KAAK,GAA0D;IACnE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC3C,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;IAClD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;CACpD,CAAC;AAOF;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,SAAS,EAAqB;IAC3D,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAEzD,OAAO,CACL,cACE,SAAS,EAAE,wBAAwB,SAAS,IAAI,EAAE,EAAE,EACpD,IAAI,EAAC,SAAS,gBACH,aAAa,YAEvB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,iBAEE,IAAI,EAAC,KAAK,mBACK,UAAU,KAAK,IAAI,CAAC,EAAE,EACrC,SAAS,EAAE,mBAAmB,UAAU,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,EACvF,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EACrC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,GAAG,YAExC,IAAI,CAAC,KAAK,IAPN,IAAI,CAAC,EAAE,CAQL,CACV,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ViewSwitcher.js","sourceRoot":"","sources":["../src/ViewSwitcher.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AAEpE,MAAM,KAAK,GAA+E;IACxF,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IAClE,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;IAClD,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;CACpD,CAAC;AAOF;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,SAAS,EAAqB;IAC3D,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACrE,wEAAwE;IACxE,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,YAAY,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzF,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,OAAO,CACL,cACE,SAAS,EAAE,wBAAwB,SAAS,IAAI,EAAE,EAAE,EACpD,IAAI,EAAC,SAAS,gBACH,aAAa,YAEvB,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAC1B,kBAEE,IAAI,EAAC,KAAK,mBACK,UAAU,KAAK,IAAI,CAAC,EAAE,EACrC,SAAS,EAAE,mBAAmB,UAAU,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,EACvF,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EACrC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,GAAG,aAEzC,eAAM,SAAS,EAAC,mDAAmD,YAAE,IAAI,CAAC,KAAK,GAAQ,EACtF,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK,IAAI,CACpD,eAAM,SAAS,EAAC,oDAAoD,YACjE,IAAI,CAAC,UAAU,GACX,CACR,KAZI,IAAI,CAAC,EAAE,CAaL,CACV,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -10,16 +10,27 @@
10
10
  * and code blocks.
11
11
  */
12
12
  export interface WysiwygEditorProps {
13
- /** Placeholder text when editor is empty */
13
+ /**
14
+ * Placeholder text when the editor is empty. If omitted, one of several
15
+ * rotating prompts is picked at random on mount. Pass a fixed string to
16
+ * override with a host-specific call to action.
17
+ */
14
18
  placeholder?: string;
15
19
  /** Additional class name for the container */
16
20
  className?: string;
21
+ /**
22
+ * If set, a plain Enter keypress fires this callback instead of inserting
23
+ * a newline, and Cmd/Ctrl+Enter inserts a soft break. Chat-composer UX.
24
+ */
25
+ submitOnEnter?: () => void;
26
+ /** Disable Tiptap editing — renders content but blocks input. */
27
+ readOnly?: boolean;
17
28
  }
18
29
  /**
19
30
  * Rich WYSIWYG markdown editor built on Tiptap (ProseMirror).
20
31
  * Binds to the shared EditorContext for source synchronization.
21
32
  */
22
- export declare function WysiwygEditor({ placeholder, className, }: WysiwygEditorProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function WysiwygEditor({ placeholder, className, submitOnEnter, readOnly, }: WysiwygEditorProps): import("react/jsx-runtime").JSX.Element;
23
34
  /**
24
35
  * Hook to access the Tiptap editor instance for toolbar commands.
25
36
  * The WysiwygEditor must be mounted as a sibling or descendant.
@@ -1 +1 @@
1
- {"version":3,"file":"WysiwygEditor.d.ts","sourceRoot":"","sources":["../src/WysiwygEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA6BH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAC5B,WAA2C,EAC3C,SAAS,GACV,EAAE,kBAAkB,2CA2EpB;AAED;;;GAGG;AAEH,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"WysiwygEditor.d.ts","sourceRoot":"","sources":["../src/WysiwygEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsDH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAC5B,WAAW,EACX,SAAS,EACT,aAAa,EACb,QAAgB,GACjB,EAAE,kBAAkB,2CA0LpB;AAsHD;;;GAGG;AAEH,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC"}