neuphlo-editor 2.4.2 → 2.5.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.
- package/dist/react/index.cjs +226 -162
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.css +50 -2
- package/dist/react/index.css.map +1 -1
- package/dist/react/index.d.cts +11 -2
- package/dist/react/index.d.ts +11 -2
- package/dist/react/index.js +81 -14
- package/dist/react/index.js.map +1 -1
- package/dist/styles.css +52 -2
- package/package.json +1 -1
package/dist/react/index.css
CHANGED
|
@@ -347,12 +347,60 @@
|
|
|
347
347
|
}
|
|
348
348
|
.nph-editor ul[data-type=taskList] li > label,
|
|
349
349
|
.ProseMirror.nph-editor ul[data-type=taskList] li > label {
|
|
350
|
-
|
|
350
|
+
flex: 0 0 auto;
|
|
351
|
+
display: inline-flex;
|
|
352
|
+
align-items: center;
|
|
353
|
+
height: 1.65em;
|
|
354
|
+
margin: 0;
|
|
351
355
|
user-select: none;
|
|
352
356
|
}
|
|
357
|
+
.nph-editor ul[data-type=taskList] li > div,
|
|
358
|
+
.ProseMirror.nph-editor ul[data-type=taskList] li > div {
|
|
359
|
+
flex: 1 1 auto;
|
|
360
|
+
min-width: 0;
|
|
361
|
+
}
|
|
362
|
+
.nph-editor ul[data-type=taskList] li > div > p,
|
|
363
|
+
.ProseMirror.nph-editor ul[data-type=taskList] li > div > p {
|
|
364
|
+
margin: 0;
|
|
365
|
+
}
|
|
353
366
|
.nph-editor ul[data-type=taskList] li input[type=checkbox],
|
|
354
367
|
.ProseMirror.nph-editor ul[data-type=taskList] li input[type=checkbox] {
|
|
355
|
-
margin: 0
|
|
368
|
+
margin: 0;
|
|
369
|
+
cursor: pointer;
|
|
370
|
+
}
|
|
371
|
+
.nph-editor ul[data-type=taskList] li[data-checked=true] > div,
|
|
372
|
+
.ProseMirror.nph-editor ul[data-type=taskList] li[data-checked=true] > div {
|
|
373
|
+
color: var(--muted-foreground, #6b7280);
|
|
374
|
+
text-decoration: line-through;
|
|
375
|
+
}
|
|
376
|
+
.nph-editor li.nph-task-item,
|
|
377
|
+
.ProseMirror.nph-editor li.nph-task-item {
|
|
378
|
+
display: flex;
|
|
379
|
+
align-items: flex-start;
|
|
380
|
+
gap: 0.5rem;
|
|
381
|
+
}
|
|
382
|
+
.nph-editor .nph-task-item__checkbox,
|
|
383
|
+
.ProseMirror.nph-editor .nph-task-item__checkbox {
|
|
384
|
+
flex: 0 0 auto;
|
|
385
|
+
display: inline-flex;
|
|
386
|
+
align-items: center;
|
|
387
|
+
height: 1.65em;
|
|
388
|
+
margin: 0;
|
|
389
|
+
user-select: none;
|
|
390
|
+
}
|
|
391
|
+
.nph-editor .nph-task-item__content,
|
|
392
|
+
.ProseMirror.nph-editor .nph-task-item__content {
|
|
393
|
+
flex: 1 1 auto;
|
|
394
|
+
min-width: 0;
|
|
395
|
+
}
|
|
396
|
+
.nph-editor .nph-task-item__content > p,
|
|
397
|
+
.ProseMirror.nph-editor .nph-task-item__content > p {
|
|
398
|
+
margin: 0;
|
|
399
|
+
}
|
|
400
|
+
.nph-editor .nph-task-item__content--checked,
|
|
401
|
+
.ProseMirror.nph-editor .nph-task-item__content--checked {
|
|
402
|
+
color: var(--muted-foreground, #6b7280);
|
|
403
|
+
text-decoration: line-through;
|
|
356
404
|
}
|
|
357
405
|
.nph-editor .ProseMirror-gapcursor,
|
|
358
406
|
.ProseMirror.nph-editor .ProseMirror-gapcursor {
|
package/dist/react/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/styles.css"],"sourcesContent":["/* Neuphlo Editor default styles (TipTap-friendly) */\n/* Note: Highlight.js theme is now optional. Import\n 'neuphlo-editor/highlight.css' or your preferred theme separately. */\n\n:root {\n --nph-z: 9999;\n}\n\n.nph-editor,\n.ProseMirror.nph-editor {\n min-height: 240px;\n line-height: 1.65;\n color: inherit;\n caret-color: currentColor;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n word-break: break-word;\n}\n\n/* Trim outer spacing */\n.nph-editor > *:first-child,\n.ProseMirror.nph-editor > *:first-child {\n margin-top: 0;\n}\n.nph-editor > *:last-child,\n.ProseMirror.nph-editor > *:last-child {\n margin-bottom: 0;\n}\n\n/* Paragraphs */\n.nph-editor p,\n.ProseMirror.nph-editor p {\n margin: 0.75em 0;\n}\n\n/* Headings */\n.nph-editor h1,\n.nph-editor h2,\n.nph-editor h3,\n.nph-editor h4,\n.nph-editor h5,\n.nph-editor h6,\n.ProseMirror.nph-editor h1,\n.ProseMirror.nph-editor h2,\n.ProseMirror.nph-editor h3,\n.ProseMirror.nph-editor h4,\n.ProseMirror.nph-editor h5,\n.ProseMirror.nph-editor h6 {\n line-height: 1.2;\n font-weight: 700;\n margin-top: 2.5rem;\n margin-bottom: 0.75rem;\n text-wrap: pretty;\n}\n.nph-editor h1,\n.nph-editor h2,\n.ProseMirror.nph-editor h1,\n.ProseMirror.nph-editor h2 {\n margin-top: 3rem;\n margin-bottom: 1rem;\n}\n.nph-editor h1,\n.ProseMirror.nph-editor h1 {\n font-size: 1.5rem;\n}\n.nph-editor h2,\n.ProseMirror.nph-editor h2 {\n font-size: 1.25rem;\n}\n.nph-editor h3,\n.ProseMirror.nph-editor h3 {\n font-size: 1.125rem;\n}\n.nph-editor h4,\n.nph-editor h5,\n.nph-editor h6,\n.ProseMirror.nph-editor h4,\n.ProseMirror.nph-editor h5,\n.ProseMirror.nph-editor h6 {\n font-size: 1rem;\n}\n\n/* Lists */\n.nph-editor ul,\n.nph-editor ol,\n.ProseMirror.nph-editor ul,\n.ProseMirror.nph-editor ol {\n padding-left: 1.25rem;\n margin: 1.25rem 1rem 1.25rem 0.4rem;\n}\n.nph-editor ul,\n.ProseMirror.nph-editor ul {\n list-style: disc outside;\n}\n.nph-editor ul ul,\n.ProseMirror.nph-editor ul ul {\n list-style: circle outside;\n}\n.nph-editor ul ul ul,\n.ProseMirror.nph-editor ul ul ul {\n list-style: square outside;\n}\n.nph-editor ol,\n.ProseMirror.nph-editor ol {\n list-style: decimal outside;\n}\n.nph-editor li p,\n.ProseMirror.nph-editor li p {\n margin-top: 0.25em;\n margin-bottom: 0.25em;\n}\n\n/* Blockquote */\n.nph-editor blockquote,\n.ProseMirror.nph-editor blockquote {\n border-left: 3px solid var(--border, rgba(0, 0, 0, 0.12));\n margin: 1.5rem 0;\n padding-left: 1rem;\n color: var(--muted-foreground, #6b7280);\n}\n\n/* Code (inline) */\n.nph-editor code,\n.ProseMirror.nph-editor code {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n border-radius: 0.375rem;\n color: inherit;\n font-size: 0.875em;\n padding: 0.15em 0.35em;\n font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n\n/* Code blocks */\n.nph-editor pre,\n.ProseMirror.nph-editor pre {\n background: var(--muted, #f4f4f5);\n border-radius: 0.5rem;\n color: var(--foreground, #111827);\n font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n margin: 1.5rem 0;\n padding: 0.75rem 1rem;\n overflow-x: auto;\n}\n.nph-editor pre code,\n.ProseMirror.nph-editor pre code {\n background: none;\n color: inherit;\n font-size: 0.85em;\n padding: 0;\n}\n/* Normalize highlight.js base element to integrate with our block styling */\n.nph-editor pre code.hljs,\n.ProseMirror.nph-editor pre code.hljs {\n display: block;\n background: none;\n padding: 0;\n}\n\n/* Horizontal rule */\n.nph-editor hr,\n.ProseMirror.nph-editor hr {\n border: none;\n border-top: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n margin: 2rem 0;\n}\n\n/* Links */\n.nph-editor a,\n.ProseMirror.nph-editor a {\n color: var(--primary, #2563eb);\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n\n/* Tables */\n.nph-editor table,\n.ProseMirror.nph-editor table {\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0;\n margin: 0;\n border-radius: 0.5rem;\n overflow: hidden;\n border: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n}\n.nph-editor th,\n.nph-editor td,\n.ProseMirror.nph-editor th,\n.ProseMirror.nph-editor td {\n border-right: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n border-bottom: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n padding: 0.5rem 0.75rem;\n vertical-align: top;\n min-width: 100px;\n}\n.nph-editor th:last-child,\n.nph-editor td:last-child,\n.ProseMirror.nph-editor th:last-child,\n.ProseMirror.nph-editor td:last-child {\n border-right: none;\n}\n.nph-editor tr:last-child th,\n.nph-editor tr:last-child td,\n.ProseMirror.nph-editor tr:last-child th,\n.ProseMirror.nph-editor tr:last-child td {\n border-bottom: none;\n}\n.nph-editor th,\n.ProseMirror.nph-editor th {\n background: var(--muted, #f4f4f5);\n font-weight: 600;\n}\n\n/* Table editing */\n.nph-editor .tableWrapper,\n.ProseMirror.nph-editor .tableWrapper {\n overflow-x: auto;\n margin: 1.25rem 0;\n}\n\n.nph-editor .selectedCell::after,\n.ProseMirror.nph-editor .selectedCell::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background: rgba(59, 130, 246, 0.1);\n pointer-events: none;\n z-index: 1;\n}\n\n.nph-editor td.selectedCell,\n.nph-editor th.selectedCell,\n.ProseMirror.nph-editor td.selectedCell,\n.ProseMirror.nph-editor th.selectedCell {\n position: relative;\n}\n\n.nph-editor .column-resize-handle,\n.ProseMirror.nph-editor .column-resize-handle {\n position: absolute;\n right: -2px;\n top: 0;\n bottom: 0;\n width: 4px;\n background-color: var(--primary, #3b82f6);\n pointer-events: none;\n z-index: 2;\n}\n\n.nph-editor.resize-cursor,\n.ProseMirror.nph-editor.resize-cursor {\n cursor: col-resize;\n}\n\n/* Table grip handles — hidden by default, shown via JS on table hover */\n.nph-table-grip {\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n border-radius: 0.375rem;\n background: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--muted-foreground, #6b7280);\n cursor: pointer;\n opacity: 0;\n transition: opacity 0.15s ease, background-color 0.15s ease;\n z-index: 50;\n padding: 0;\n pointer-events: none;\n}\n.nph-table-grip.nph-table-grip--visible {\n opacity: 0.6;\n pointer-events: auto;\n}\n.nph-table-grip.nph-table-grip--visible:hover {\n opacity: 1;\n background: var(--accent, rgba(127, 127, 127, 0.2));\n color: var(--foreground, #111827);\n}\n\n.nph-table-grip--delete {\n gap: 4px;\n font-size: 12px;\n color: var(--destructive, #ef4444);\n background: transparent;\n}\n.nph-table-grip--delete.nph-table-grip--visible {\n opacity: 0.4;\n}\n.nph-table-grip--delete.nph-table-grip--visible:hover {\n opacity: 1;\n color: var(--destructive, #ef4444);\n background: rgba(239, 68, 68, 0.08);\n}\n\n/* Table dropdown menu */\n.nph-table-dropdown {\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.12));\n padding: 0.25rem;\n min-width: 180px;\n z-index: 100;\n overflow: hidden;\n}\n.nph-table-dropdown__item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n width: 100%;\n padding: 0.375rem 0.625rem;\n border: none;\n border-radius: 0.375rem;\n background: none;\n color: inherit;\n font-size: 0.8125rem;\n cursor: pointer;\n text-align: left;\n}\n.nph-table-dropdown__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n.nph-table-dropdown__item--destructive {\n color: var(--destructive, #ef4444);\n}\n.nph-table-dropdown__item--destructive:hover {\n background-color: rgba(239, 68, 68, 0.08);\n}\n.nph-table-dropdown__separator {\n height: 1px;\n background: var(--border, rgba(0, 0, 0, 0.08));\n margin: 0.25rem 0.375rem;\n}\n\n.nph-table-grip--dragging {\n opacity: 1 !important;\n background: var(--primary, #2563eb) !important;\n color: white !important;\n}\n.nph-table-drop-indicator {\n background: var(--primary, #2563eb);\n border-radius: 1px;\n z-index: 9999;\n pointer-events: none;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-table-dropdown {\n background-color: var(--background, #1f2937);\n border-color: var(--border, rgba(255, 255, 255, 0.1));\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);\n }\n .nph-table-grip {\n background: var(--muted, rgba(255, 255, 255, 0.1));\n color: var(--muted-foreground, #9ca3af);\n }\n .nph-table-grip:hover {\n background: var(--accent, rgba(255, 255, 255, 0.18));\n color: var(--foreground, #f3f4f6);\n }\n}\n\n/* Task list (if enabled) */\n.nph-editor ul[data-type=\"taskList\"],\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] {\n list-style: none;\n padding-left: 0;\n}\n.nph-editor ul[data-type=\"taskList\"] li,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n}\n.nph-editor ul[data-type=\"taskList\"] li > label,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li > label {\n margin-right: 0.5rem;\n user-select: none;\n}\n.nph-editor ul[data-type=\"taskList\"] li input[type=\"checkbox\"],\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li input[type=\"checkbox\"] {\n margin: 0.25rem 0.5rem 0 0;\n}\n\n/* ProseMirror helpers */\n.nph-editor .ProseMirror-gapcursor,\n.ProseMirror.nph-editor .ProseMirror-gapcursor {\n display: none;\n}\n.nph-editor .ProseMirror-selectednode,\n.ProseMirror.nph-editor .ProseMirror-selectednode {\n outline: 2px solid var(--ring, rgba(59, 130, 246, 0.5));\n outline-offset: 2px;\n border-radius: 12px;\n}\n\n/* Placeholder (requires Placeholder extension) */\n.nph-editor p.is-editor-empty:first-child::before,\n.ProseMirror.nph-editor p.is-editor-empty:first-child::before {\n color: var(--muted-foreground, #6b7280);\n content: attr(data-placeholder);\n float: left;\n height: 0;\n pointer-events: none;\n}\n\n/* ------------------\n Bubble menu & dropdown\n ------------------ */\n.bubble-menu {\n /* Themed surface */\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n\n /* Layout */\n display: flex;\n align-items: center;\n gap: 0.25rem;\n padding: 0.25rem;\n font-size: 0.875rem; /* ~text-sm */\n\n /* Keep menu content visible for dropdowns */\n max-width: calc(100vw - 16px);\n overflow: visible; /* allow inner dropdown to escape the shell */\n\n /* On top of editor */\n position: relative;\n z-index: var(--nph-z) !important;\n}\n\n/* Bubble menu separator */\n.nph-bubble-separator {\n width: 1px;\n height: 18px;\n background: var(--border, rgba(0, 0, 0, 0.12));\n margin: 0 2px;\n flex-shrink: 0;\n}\n\n/* Ensure Tiptap/Tippy bubble root stacks high */\n[data-tippy-root],\n.tippy-box {\n z-index: var(--nph-z) !important;\n}\n\n/* Generic dropdown container and panel (used in TextMenu) */\n.nph-dropdown {\n position: relative;\n}\n.nph-dropdown__panel {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 0.25rem;\n min-width: 11rem;\n z-index: calc(var(--nph-z) + 1) !important; /* above the bubble itself */\n}\n\n/* Command menu (slash menu & the block-type panel) */\n.nph-command {\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n padding: 0.25rem;\n overflow: hidden;\n}\n\n.nph-command__list {\n list-style: none;\n margin: 0;\n padding: 0.125rem;\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n max-height: 320px;\n overflow: auto;\n /* Show only the thumb (pill), hide track */\n scrollbar-width: thin; /* Firefox */\n scrollbar-color: #e5e7eb transparent; /* thumb track */\n}\n\n/* WebKit: keep a small thumb, hide the track */\n.nph-command__list::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n background: transparent;\n}\n.nph-command__list::-webkit-scrollbar-track {\n background: transparent;\n}\n.nph-command__list::-webkit-scrollbar-thumb {\n background-color: #e5e7eb;\n border-radius: 9999px;\n}\n.nph-command__list:hover::-webkit-scrollbar-thumb {\n background-color: #d1d5db;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-command__list {\n scrollbar-color: #4b5563 transparent;\n }\n .nph-command__list::-webkit-scrollbar-thumb {\n background-color: #4b5563;\n }\n .nph-command__list:hover::-webkit-scrollbar-thumb {\n background-color: #6b7280;\n }\n}\n\n/* Slash menu group headers */\n.nph-command__group-header {\n font-size: 0.6875rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: var(--muted-foreground, #6b7280);\n padding: 0.5rem 0.5rem 0.25rem;\n margin-top: 0.25rem;\n}\n.nph-command__group-header:first-child {\n margin-top: 0;\n}\n\n.nph-command__item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n border-radius: 0.375rem;\n padding: 0.375rem 0.5rem;\n cursor: pointer;\n}\n\n/* Icon background square */\n.nph-command__item-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n min-width: 28px;\n border-radius: 0.375rem;\n flex-shrink: 0;\n background-color: var(--muted, rgba(127, 127, 127, 0.1));\n color: var(--foreground, #111827);\n}\n\n/* Title + description layout */\n.nph-command__item-content {\n display: flex;\n flex-direction: column;\n gap: 0;\n min-width: 0;\n}\n.nph-command__item-title {\n font-size: 0.8125rem;\n font-weight: 500;\n line-height: 1.3;\n}\n.nph-command__item-description {\n font-size: 0.6875rem;\n color: var(--muted-foreground, #6b7280);\n line-height: 1.3;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.nph-command__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n.nph-command__item.is-active,\n.nph-command__item[aria-selected=\"true\"] {\n background-color: var(--accent, rgba(0, 0, 0, 0.08));\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-command__item.is-active,\n .nph-command__item[aria-selected=\"true\"] {\n background-color: var(--accent, rgba(255, 255, 255, 0.14));\n }\n}\n\n/* Base buttons for headless UI */\n.nph-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n white-space: nowrap;\n border-radius: 0.375rem; /* rounded-md */\n font-size: 0.875rem; /* text-sm */\n font-weight: 500; /* font-medium */\n transition:\n background-color 0.2s ease,\n color 0.2s ease,\n box-shadow 0.2s ease;\n outline: none;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n background: transparent;\n color: inherit;\n border: none;\n}\n\n.nph-btn:focus-visible {\n outline: 2px solid var(--ring, rgba(59, 130, 246, 0.5));\n outline-offset: 2px; /* ring-offset */\n}\n\n.nph-btn:disabled {\n pointer-events: none;\n opacity: 0.5;\n}\n\n/* Ghost variant */\n.nph-btn-ghost {\n background: transparent;\n}\n.nph-btn-ghost:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n/* Size: sm */\n.nph-btn-sm {\n height: 2.25rem;\n padding: 0 0.75rem;\n}\n\n/* Size: xs (more compact than sm) */\n.nph-btn-xs {\n height: 1.75rem;\n padding: 0 0.5rem;\n font-size: 0.8125rem;\n}\n\n/* Icon variant: square buttons with equal width/height */\n.nph-btn-icon {\n width: 1.75rem;\n min-width: 1.75rem;\n padding-left: 0;\n padding-right: 0;\n}\n\n/* Keep generic styling for bubble menu buttons if custom classes not applied */\n.bubble-menu button {\n background: transparent;\n color: inherit;\n border: none;\n border-radius: 0.5rem;\n padding: 0.25rem 0.4rem;\n cursor: pointer;\n}\n\n.bubble-menu button:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n.bubble-menu button.is-active,\n.bubble-menu button[aria-pressed=\"true\"],\n.nph-btn.is-active,\n.nph-btn[aria-pressed=\"true\"] {\n /* Subtle, neutral active state */\n background-color: var(--accent, rgba(0, 0, 0, 0.08));\n color: inherit;\n}\n\n.bubble-menu button.is-active:hover,\n.bubble-menu button[aria-pressed=\"true\"]:hover,\n.nph-btn.is-active:hover,\n.nph-btn[aria-pressed=\"true\"]:hover {\n background-color: var(--accent-hover, rgba(0, 0, 0, 0.12));\n}\n\n/* Basic input style for small inline editors */\n.nph-input {\n width: 100%;\n border: 1px solid var(--border, rgba(127, 127, 127, 0.3));\n background: var(--background, transparent);\n color: inherit;\n border-radius: 0.375rem;\n}\n\n/* Link popover pill */\n.nph-link-popover {\n display: flex;\n align-items: center;\n gap: 6px;\n background: var(--background, #fff);\n color: inherit;\n border: 1px solid var(--border, rgba(127, 127, 127, 0.3));\n border-radius: 0.7rem; /* match bubble-menu corners */\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n padding: 6px 8px;\n}\n.nph-link-popover__input {\n appearance: none;\n border: none;\n background: transparent;\n color: inherit;\n outline: none;\n min-width: 200px;\n font-size: 14px;\n}\n.nph-link-popover__divider {\n width: 1px;\n height: 18px;\n background: var(--border, rgba(127, 127, 127, 0.3));\n margin: 0 2px;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-link-popover {\n background: var(--background, #111);\n border-color: var(--border, rgba(255, 255, 255, 0.16));\n box-shadow: var(--shadow, 0 8px 24px rgba(0, 0, 0, 0.4));\n }\n .nph-link-popover__divider {\n background: var(--border, rgba(255, 255, 255, 0.16));\n }\n}\n\n@media (prefers-color-scheme: dark) {\n .bubble-menu button.is-active,\n .bubble-menu button[aria-pressed=\"true\"] {\n background-color: var(--accent, rgba(255, 255, 255, 0.14));\n }\n .bubble-menu button.is-active:hover,\n .bubble-menu button[aria-pressed=\"true\"]:hover {\n background-color: var(--accent-hover, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Animations */\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Image & Video Block – move selection outline to the inner wrapper\n so it tightly wraps the actual content, not the full-width ProseMirror container */\n.nph-editor .node-imageBlock.ProseMirror-selectednode,\n.nph-editor .node-videoBlock.ProseMirror-selectednode {\n outline: none;\n}\n\n.nph-editor .node-imageBlock > [data-node-view-wrapper],\n.nph-editor .node-videoBlock > [data-node-view-wrapper] {\n line-height: 0;\n font-size: 0;\n}\n\n.nph-editor .node-imageBlock.ProseMirror-selectednode > [data-node-view-wrapper],\n.nph-editor .node-videoBlock.ProseMirror-selectednode > [data-node-view-wrapper] {\n outline: 2px solid var(--border, #e5e7eb);\n outline-offset: 2px;\n border-radius: 12px;\n}\n\n/* Image Block */\n.nph-image-block {\n display: block;\n vertical-align: bottom;\n border-radius: 12px;\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n border: 1px solid var(--border, #e5e7eb);\n width: 100%;\n height: auto;\n cursor: pointer;\n transition: box-shadow 0.2s ease;\n}\n\n.nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n/* Image Block Loading */\n.nph-image-block-loading {\n position: relative;\n border-radius: 12px;\n overflow: hidden;\n border: 1px solid var(--border, #e5e7eb);\n background-color: var(--muted, #f9fafb);\n}\n\n.nph-image-block-loading__overlay {\n position: absolute;\n inset: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: rgba(255, 255, 255, 0.9);\n}\n\n.nph-image-block-loading__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n}\n\n.nph-image-block-loading__spinner {\n animation: spin 1s linear infinite;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-block-loading__text {\n font-size: 12px;\n font-weight: 500;\n color: var(--muted-foreground, #6b7280);\n margin: 0;\n}\n\n.nph-image-block-loading__placeholder {\n height: 192px;\n width: 100%;\n background-color: var(--muted, #f3f4f6);\n border-radius: 8px;\n}\n\n/* Image Uploader */\n.nph-image-uploader {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 32px;\n border-radius: 12px;\n background-color: transparent !important;\n border: 2px dashed var(--border, #e5e7eb);\n cursor: pointer;\n transition: background-color 0.2s, border-color 0.2s;\n width: 100%;\n box-sizing: border-box;\n}\n\n.nph-image-uploader--dragging {\n background-color: var(--muted, rgba(0, 0, 0, 0.05));\n border-color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__icon {\n margin-bottom: 16px;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n.nph-image-uploader__text {\n font-size: 14px;\n font-weight: 500;\n text-align: center;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__button {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.nph-image-uploader__input {\n width: 0;\n height: 0;\n overflow: hidden;\n opacity: 0;\n position: absolute;\n}\n\n/* Image block error state */\n.nph-image-block-error {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: 32px;\n border-radius: 12px;\n border: 1.5px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n color: var(--muted-foreground, #6b7280);\n font-size: 13px;\n cursor: pointer;\n aspect-ratio: 16 / 9;\n}\n\n.dark .nph-image-block-error {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Browse-only variant — clean, clickable CTA */\n.nph-image-uploader--browse-only {\n padding: 0;\n border: 1.5px dashed var(--border, #e5e7eb);\n border-radius: 12px;\n background: var(--muted, rgba(0, 0, 0, 0.02));\n transition: all 0.2s ease;\n aspect-ratio: 16 / 9;\n}\n\n.nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #9ca3af);\n background: var(--muted, rgba(0, 0, 0, 0.04));\n}\n\n.nph-image-uploader__browse-cta {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n}\n\n.nph-image-uploader__browse-icon-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 48px;\n border-radius: 10px;\n background: var(--muted, rgba(0, 0, 0, 0.06));\n color: var(--muted-foreground, #6b7280);\n flex-shrink: 0;\n transition: all 0.2s ease;\n}\n\n.nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(0, 0, 0, 0.1));\n color: var(--foreground, #374151);\n}\n\n.nph-image-uploader__browse-text {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n}\n\n.nph-image-uploader__browse-title {\n display: block;\n font-size: 14px;\n font-weight: 600;\n color: var(--foreground, #111827);\n line-height: 1.4;\n}\n\n.nph-image-uploader__browse-subtitle {\n display: block;\n font-size: 12px;\n color: var(--muted-foreground, #6b7280);\n line-height: 1.4;\n}\n\n/* Dark mode - supports both media query and class-based approaches */\n@media (prefers-color-scheme: dark) {\n .nph-image-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n }\n\n .nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n }\n\n .nph-image-block-loading {\n border-color: var(--border, #374151);\n background-color: var(--muted, #1f2937);\n }\n\n .nph-image-block-loading__overlay {\n background-color: rgba(0, 0, 0, 0.8);\n }\n\n .nph-image-block-loading__spinner,\n .nph-image-block-loading__text {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-block-loading__placeholder {\n background-color: var(--muted, #374151);\n }\n\n .nph-image-uploader {\n border-color: var(--border, #374151);\n }\n\n .nph-image-uploader--dragging {\n background-color: var(--muted, rgba(255, 255, 255, 0.05));\n border-color: var(--border, #6b7280);\n }\n\n .nph-image-uploader__icon,\n .nph-image-uploader__text {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-uploader--browse-only {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n }\n\n .nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n }\n\n .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.08));\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.12));\n color: var(--foreground, #e5e7eb);\n }\n\n .nph-image-uploader__browse-title {\n color: var(--foreground, #f3f4f6);\n }\n}\n\n/* Class-based dark mode (for frameworks like Next.js with next-themes) */\n.dark .nph-image-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n}\n\n.dark .nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n}\n\n.dark .nph-image-block-loading {\n border-color: var(--border, #374151);\n background-color: var(--muted, #1f2937);\n}\n\n.dark .nph-image-block-loading__overlay {\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.dark .nph-image-block-loading__spinner,\n.dark .nph-image-block-loading__text {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-block-loading__placeholder {\n background-color: var(--muted, #374151);\n}\n\n.dark .nph-image-uploader {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-image-uploader--dragging {\n background-color: var(--muted, rgba(255, 255, 255, 0.05));\n border-color: var(--border, #6b7280);\n}\n\n.dark .nph-image-uploader__icon,\n.dark .nph-image-uploader__text {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-uploader--browse-only {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n}\n\n.dark .nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n}\n\n.dark .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.08));\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.12));\n color: var(--foreground, #e5e7eb);\n}\n\n.dark .nph-image-uploader__browse-title {\n color: var(--foreground, #f3f4f6);\n}\n\n/* Video Block */\n.nph-video-block {\n position: relative;\n width: 100%;\n padding-bottom: 56.25%; /* 16:9 aspect ratio */\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n border: 1px solid var(--border, #e5e7eb);\n cursor: pointer;\n background-color: #000;\n transition: box-shadow 0.2s ease;\n}\n\n.nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n.nph-video-block__iframe {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n border: none;\n}\n\n.nph-video-block__overlay {\n position: absolute;\n inset: 0;\n cursor: pointer;\n}\n\n/* Video block error state */\n.nph-video-block-error {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: 32px;\n border-radius: 12px;\n border: 1.5px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n color: var(--muted-foreground, #6b7280);\n font-size: 13px;\n cursor: pointer;\n aspect-ratio: 16 / 9;\n}\n\n.nph-video-block-error__url {\n font-size: 11px;\n opacity: 0.6;\n max-width: 300px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.dark .nph-video-block-error {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Video URL Input */\n.nph-video-input {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 32px;\n border-radius: 8px;\n border: 2px dashed var(--border, #e5e7eb);\n background-color: transparent;\n gap: 12px;\n}\n\n.nph-video-input__icon {\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-input__content {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n max-width: 480px;\n}\n\n.nph-video-input__field {\n flex: 1;\n padding: 10px 14px;\n font-size: 14px;\n line-height: 1.4;\n border: 1px solid var(--border, #e5e7eb);\n border-radius: 8px;\n outline: none;\n background: transparent;\n color: inherit;\n}\n\n.nph-video-input__field:focus {\n border-color: var(--ring, #3b82f6);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);\n}\n\n.nph-video-input__button {\n padding: 10px 20px;\n font-size: 14px;\n font-weight: 500;\n line-height: 1.4;\n border: 1px solid var(--border, #e5e7eb);\n border-radius: 8px;\n background: var(--primary, #111827);\n color: var(--primary-foreground, #fff);\n cursor: pointer;\n white-space: nowrap;\n}\n\n.nph-video-input__button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Video Placeholder */\n.nph-video-placeholder {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n aspect-ratio: 16 / 9;\n border-radius: 12px;\n border: 2px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n cursor: pointer;\n transition: border-color 0.2s ease, background 0.2s ease;\n gap: 12px;\n}\n\n.nph-video-placeholder:hover {\n border-color: var(--muted-foreground, #9ca3af);\n background: var(--muted, rgba(0, 0, 0, 0.04));\n}\n\n.nph-video-placeholder__icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 56px;\n height: 56px;\n border-radius: 12px;\n background: var(--muted, rgba(0, 0, 0, 0.06));\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-placeholder__text {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.nph-video-placeholder__title {\n display: block;\n font-size: 14px;\n font-weight: 600;\n color: var(--foreground, #111827);\n}\n\n.nph-video-placeholder__subtitle {\n display: block;\n font-size: 13px;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-placeholder__input {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n max-width: 420px;\n margin-top: 4px;\n}\n\n/* Video Block Dark Mode */\n@media (prefers-color-scheme: dark) {\n .nph-video-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n }\n\n .nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n }\n\n .nph-video-input {\n border-color: var(--border, #374151);\n }\n\n .nph-video-input__icon {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-video-input__field {\n border-color: var(--border, #374151);\n }\n}\n\n.dark .nph-video-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n}\n\n.dark .nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n}\n\n.dark .nph-video-input {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-video-input__icon {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-video-input__field {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-video-placeholder {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n}\n\n.dark .nph-video-placeholder:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n}\n\n.dark .nph-video-placeholder__icon {\n background: var(--muted, rgba(255, 255, 255, 0.06));\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-video-placeholder__title {\n color: var(--foreground, #f9fafb);\n}\n\n.dark .nph-video-placeholder__subtitle {\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Drag Handle */\n.nph-drag-handle {\n display: flex;\n align-items: center;\n gap: 1px;\n opacity: 0;\n transition: opacity 0.15s ease;\n cursor: grab;\n /* Push handle away from content — floating-ui places it flush left */\n margin-right: 12px;\n}\n.nph-drag-handle:hover,\n.nph-drag-handle.visible {\n opacity: 1;\n}\n\n.nph-drag-handle__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n border: none;\n border-radius: 4px;\n background: transparent;\n color: var(--muted-foreground, #9ca3af);\n cursor: pointer;\n padding: 0;\n transition: background-color 0.15s, color 0.15s;\n}\n.nph-drag-handle__btn:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--foreground, #111827);\n}\n\n.nph-drag-handle__grip {\n cursor: grab;\n}\n.nph-drag-handle__grip:active {\n cursor: grabbing;\n}\n\n/* Block action menu */\n.nph-block-action-menu {\n min-width: 180px;\n}\n\n/* Image Resize Handle */\n.nph-resize-wrapper {\n position: relative;\n display: block;\n width: 100%;\n}\n\n.nph-resize-handle {\n position: absolute;\n top: 50%;\n width: 6px;\n height: 48px;\n max-height: 50%;\n transform: translateY(-50%);\n background: var(--primary, #3b82f6);\n border-radius: 3px;\n opacity: 0;\n cursor: col-resize;\n transition: opacity 0.15s;\n z-index: 5;\n}\n\n.nph-resize-wrapper:hover .nph-resize-handle,\n.nph-resize-wrapper--active .nph-resize-handle {\n opacity: 1;\n}\n\n.nph-resize-handle--left {\n left: 4px;\n}\n.nph-resize-handle--right {\n right: 4px;\n}\n\n/* Table of Contents */\n.nph-toc {\n display: flex;\n flex-direction: column;\n gap: 1px;\n font-size: 0.8125rem;\n}\n\n.nph-toc__item {\n display: block;\n width: 100%;\n text-align: left;\n background: none;\n border: none;\n border-radius: 4px;\n padding: 4px 8px;\n color: var(--muted-foreground, #6b7280);\n cursor: pointer;\n font-size: inherit;\n line-height: 1.4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n transition: background-color 0.15s, color 0.15s;\n}\n.nph-toc__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--foreground, #111827);\n}\n.nph-toc__item--active {\n color: var(--foreground, #111827);\n font-weight: 500;\n background-color: var(--accent, rgba(0, 0, 0, 0.05));\n}\n\n/* Collaboration Carets */\n.nph-collab-caret {\n position: relative;\n border-left: 2px solid;\n margin-left: -1px;\n margin-right: -1px;\n pointer-events: none;\n word-break: normal;\n}\n\n.nph-collab-caret__label {\n position: absolute;\n top: -1.4em;\n left: -1px;\n font-size: 0.6875rem;\n font-weight: 600;\n line-height: 1;\n color: #fff;\n padding: 1px 4px 2px;\n border-radius: 3px 3px 3px 0;\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n.nph-collab-selection {\n pointer-events: none;\n}\n\n/* Mention styles */\n.nph-editor .mention,\n.ProseMirror.nph-editor .mention {\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n background-color: rgba(59, 130, 246, 0.1);\n color: rgb(59, 130, 246);\n padding: 0.125rem 0.375rem;\n border-radius: 9999px;\n font-size: 0.875rem;\n font-weight: 500;\n vertical-align: middle;\n text-decoration: none;\n cursor: pointer;\n transition: background-color 0.15s;\n}\n\n.nph-editor .mention:hover,\n.ProseMirror.nph-editor .mention:hover {\n background-color: rgba(59, 130, 246, 0.15);\n}\n\n/* Dark mode mention styles */\n.dark .nph-editor .mention,\n.dark .ProseMirror.nph-editor .mention {\n background-color: rgba(59, 130, 246, 0.2);\n color: rgb(96, 165, 250);\n}\n\n.dark .nph-editor .mention:hover,\n.dark .ProseMirror.nph-editor .mention:hover {\n background-color: rgba(59, 130, 246, 0.3);\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/styles.css"],"sourcesContent":["/* Neuphlo Editor default styles (TipTap-friendly) */\n/* Note: Highlight.js theme is now optional. Import\n 'neuphlo-editor/highlight.css' or your preferred theme separately. */\n\n:root {\n --nph-z: 9999;\n}\n\n.nph-editor,\n.ProseMirror.nph-editor {\n min-height: 240px;\n line-height: 1.65;\n color: inherit;\n caret-color: currentColor;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n word-break: break-word;\n}\n\n/* Trim outer spacing */\n.nph-editor > *:first-child,\n.ProseMirror.nph-editor > *:first-child {\n margin-top: 0;\n}\n.nph-editor > *:last-child,\n.ProseMirror.nph-editor > *:last-child {\n margin-bottom: 0;\n}\n\n/* Paragraphs */\n.nph-editor p,\n.ProseMirror.nph-editor p {\n margin: 0.75em 0;\n}\n\n/* Headings */\n.nph-editor h1,\n.nph-editor h2,\n.nph-editor h3,\n.nph-editor h4,\n.nph-editor h5,\n.nph-editor h6,\n.ProseMirror.nph-editor h1,\n.ProseMirror.nph-editor h2,\n.ProseMirror.nph-editor h3,\n.ProseMirror.nph-editor h4,\n.ProseMirror.nph-editor h5,\n.ProseMirror.nph-editor h6 {\n line-height: 1.2;\n font-weight: 700;\n margin-top: 2.5rem;\n margin-bottom: 0.75rem;\n text-wrap: pretty;\n}\n.nph-editor h1,\n.nph-editor h2,\n.ProseMirror.nph-editor h1,\n.ProseMirror.nph-editor h2 {\n margin-top: 3rem;\n margin-bottom: 1rem;\n}\n.nph-editor h1,\n.ProseMirror.nph-editor h1 {\n font-size: 1.5rem;\n}\n.nph-editor h2,\n.ProseMirror.nph-editor h2 {\n font-size: 1.25rem;\n}\n.nph-editor h3,\n.ProseMirror.nph-editor h3 {\n font-size: 1.125rem;\n}\n.nph-editor h4,\n.nph-editor h5,\n.nph-editor h6,\n.ProseMirror.nph-editor h4,\n.ProseMirror.nph-editor h5,\n.ProseMirror.nph-editor h6 {\n font-size: 1rem;\n}\n\n/* Lists */\n.nph-editor ul,\n.nph-editor ol,\n.ProseMirror.nph-editor ul,\n.ProseMirror.nph-editor ol {\n padding-left: 1.25rem;\n margin: 1.25rem 1rem 1.25rem 0.4rem;\n}\n.nph-editor ul,\n.ProseMirror.nph-editor ul {\n list-style: disc outside;\n}\n.nph-editor ul ul,\n.ProseMirror.nph-editor ul ul {\n list-style: circle outside;\n}\n.nph-editor ul ul ul,\n.ProseMirror.nph-editor ul ul ul {\n list-style: square outside;\n}\n.nph-editor ol,\n.ProseMirror.nph-editor ol {\n list-style: decimal outside;\n}\n.nph-editor li p,\n.ProseMirror.nph-editor li p {\n margin-top: 0.25em;\n margin-bottom: 0.25em;\n}\n\n/* Blockquote */\n.nph-editor blockquote,\n.ProseMirror.nph-editor blockquote {\n border-left: 3px solid var(--border, rgba(0, 0, 0, 0.12));\n margin: 1.5rem 0;\n padding-left: 1rem;\n color: var(--muted-foreground, #6b7280);\n}\n\n/* Code (inline) */\n.nph-editor code,\n.ProseMirror.nph-editor code {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n border-radius: 0.375rem;\n color: inherit;\n font-size: 0.875em;\n padding: 0.15em 0.35em;\n font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n}\n\n/* Code blocks */\n.nph-editor pre,\n.ProseMirror.nph-editor pre {\n background: var(--muted, #f4f4f5);\n border-radius: 0.5rem;\n color: var(--foreground, #111827);\n font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n margin: 1.5rem 0;\n padding: 0.75rem 1rem;\n overflow-x: auto;\n}\n.nph-editor pre code,\n.ProseMirror.nph-editor pre code {\n background: none;\n color: inherit;\n font-size: 0.85em;\n padding: 0;\n}\n/* Normalize highlight.js base element to integrate with our block styling */\n.nph-editor pre code.hljs,\n.ProseMirror.nph-editor pre code.hljs {\n display: block;\n background: none;\n padding: 0;\n}\n\n/* Horizontal rule */\n.nph-editor hr,\n.ProseMirror.nph-editor hr {\n border: none;\n border-top: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n margin: 2rem 0;\n}\n\n/* Links */\n.nph-editor a,\n.ProseMirror.nph-editor a {\n color: var(--primary, #2563eb);\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n\n/* Tables */\n.nph-editor table,\n.ProseMirror.nph-editor table {\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0;\n margin: 0;\n border-radius: 0.5rem;\n overflow: hidden;\n border: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n}\n.nph-editor th,\n.nph-editor td,\n.ProseMirror.nph-editor th,\n.ProseMirror.nph-editor td {\n border-right: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n border-bottom: 1px solid var(--border, rgba(0, 0, 0, 0.12));\n padding: 0.5rem 0.75rem;\n vertical-align: top;\n min-width: 100px;\n}\n.nph-editor th:last-child,\n.nph-editor td:last-child,\n.ProseMirror.nph-editor th:last-child,\n.ProseMirror.nph-editor td:last-child {\n border-right: none;\n}\n.nph-editor tr:last-child th,\n.nph-editor tr:last-child td,\n.ProseMirror.nph-editor tr:last-child th,\n.ProseMirror.nph-editor tr:last-child td {\n border-bottom: none;\n}\n.nph-editor th,\n.ProseMirror.nph-editor th {\n background: var(--muted, #f4f4f5);\n font-weight: 600;\n}\n\n/* Table editing */\n.nph-editor .tableWrapper,\n.ProseMirror.nph-editor .tableWrapper {\n overflow-x: auto;\n margin: 1.25rem 0;\n}\n\n.nph-editor .selectedCell::after,\n.ProseMirror.nph-editor .selectedCell::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background: rgba(59, 130, 246, 0.1);\n pointer-events: none;\n z-index: 1;\n}\n\n.nph-editor td.selectedCell,\n.nph-editor th.selectedCell,\n.ProseMirror.nph-editor td.selectedCell,\n.ProseMirror.nph-editor th.selectedCell {\n position: relative;\n}\n\n.nph-editor .column-resize-handle,\n.ProseMirror.nph-editor .column-resize-handle {\n position: absolute;\n right: -2px;\n top: 0;\n bottom: 0;\n width: 4px;\n background-color: var(--primary, #3b82f6);\n pointer-events: none;\n z-index: 2;\n}\n\n.nph-editor.resize-cursor,\n.ProseMirror.nph-editor.resize-cursor {\n cursor: col-resize;\n}\n\n/* Table grip handles — hidden by default, shown via JS on table hover */\n.nph-table-grip {\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n border-radius: 0.375rem;\n background: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--muted-foreground, #6b7280);\n cursor: pointer;\n opacity: 0;\n transition: opacity 0.15s ease, background-color 0.15s ease;\n z-index: 50;\n padding: 0;\n pointer-events: none;\n}\n.nph-table-grip.nph-table-grip--visible {\n opacity: 0.6;\n pointer-events: auto;\n}\n.nph-table-grip.nph-table-grip--visible:hover {\n opacity: 1;\n background: var(--accent, rgba(127, 127, 127, 0.2));\n color: var(--foreground, #111827);\n}\n\n.nph-table-grip--delete {\n gap: 4px;\n font-size: 12px;\n color: var(--destructive, #ef4444);\n background: transparent;\n}\n.nph-table-grip--delete.nph-table-grip--visible {\n opacity: 0.4;\n}\n.nph-table-grip--delete.nph-table-grip--visible:hover {\n opacity: 1;\n color: var(--destructive, #ef4444);\n background: rgba(239, 68, 68, 0.08);\n}\n\n/* Table dropdown menu */\n.nph-table-dropdown {\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.12));\n padding: 0.25rem;\n min-width: 180px;\n z-index: 100;\n overflow: hidden;\n}\n.nph-table-dropdown__item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n width: 100%;\n padding: 0.375rem 0.625rem;\n border: none;\n border-radius: 0.375rem;\n background: none;\n color: inherit;\n font-size: 0.8125rem;\n cursor: pointer;\n text-align: left;\n}\n.nph-table-dropdown__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n.nph-table-dropdown__item--destructive {\n color: var(--destructive, #ef4444);\n}\n.nph-table-dropdown__item--destructive:hover {\n background-color: rgba(239, 68, 68, 0.08);\n}\n.nph-table-dropdown__separator {\n height: 1px;\n background: var(--border, rgba(0, 0, 0, 0.08));\n margin: 0.25rem 0.375rem;\n}\n\n.nph-table-grip--dragging {\n opacity: 1 !important;\n background: var(--primary, #2563eb) !important;\n color: white !important;\n}\n.nph-table-drop-indicator {\n background: var(--primary, #2563eb);\n border-radius: 1px;\n z-index: 9999;\n pointer-events: none;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-table-dropdown {\n background-color: var(--background, #1f2937);\n border-color: var(--border, rgba(255, 255, 255, 0.1));\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);\n }\n .nph-table-grip {\n background: var(--muted, rgba(255, 255, 255, 0.1));\n color: var(--muted-foreground, #9ca3af);\n }\n .nph-table-grip:hover {\n background: var(--accent, rgba(255, 255, 255, 0.18));\n color: var(--foreground, #f3f4f6);\n }\n}\n\n/* Task list (if enabled) */\n.nph-editor ul[data-type=\"taskList\"],\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] {\n list-style: none;\n padding-left: 0;\n}\n.nph-editor ul[data-type=\"taskList\"] li,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n}\n.nph-editor ul[data-type=\"taskList\"] li > label,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li > label {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n height: 1.65em;\n margin: 0;\n user-select: none;\n}\n.nph-editor ul[data-type=\"taskList\"] li > div,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li > div {\n flex: 1 1 auto;\n min-width: 0;\n}\n.nph-editor ul[data-type=\"taskList\"] li > div > p,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li > div > p {\n margin: 0;\n}\n.nph-editor ul[data-type=\"taskList\"] li input[type=\"checkbox\"],\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li input[type=\"checkbox\"] {\n margin: 0;\n cursor: pointer;\n}\n.nph-editor ul[data-type=\"taskList\"] li[data-checked=\"true\"] > div,\n.ProseMirror.nph-editor ul[data-type=\"taskList\"] li[data-checked=\"true\"] > div {\n color: var(--muted-foreground, #6b7280);\n text-decoration: line-through;\n}\n\n/* Task item React NodeView variant */\n.nph-editor li.nph-task-item,\n.ProseMirror.nph-editor li.nph-task-item {\n display: flex;\n align-items: flex-start;\n gap: 0.5rem;\n}\n.nph-editor .nph-task-item__checkbox,\n.ProseMirror.nph-editor .nph-task-item__checkbox {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n height: 1.65em;\n margin: 0;\n user-select: none;\n}\n.nph-editor .nph-task-item__content,\n.ProseMirror.nph-editor .nph-task-item__content {\n flex: 1 1 auto;\n min-width: 0;\n}\n.nph-editor .nph-task-item__content > p,\n.ProseMirror.nph-editor .nph-task-item__content > p {\n margin: 0;\n}\n.nph-editor .nph-task-item__content--checked,\n.ProseMirror.nph-editor .nph-task-item__content--checked {\n color: var(--muted-foreground, #6b7280);\n text-decoration: line-through;\n}\n\n/* ProseMirror helpers */\n.nph-editor .ProseMirror-gapcursor,\n.ProseMirror.nph-editor .ProseMirror-gapcursor {\n display: none;\n}\n.nph-editor .ProseMirror-selectednode,\n.ProseMirror.nph-editor .ProseMirror-selectednode {\n outline: 2px solid var(--ring, rgba(59, 130, 246, 0.5));\n outline-offset: 2px;\n border-radius: 12px;\n}\n\n/* Placeholder (requires Placeholder extension) */\n.nph-editor p.is-editor-empty:first-child::before,\n.ProseMirror.nph-editor p.is-editor-empty:first-child::before {\n color: var(--muted-foreground, #6b7280);\n content: attr(data-placeholder);\n float: left;\n height: 0;\n pointer-events: none;\n}\n\n/* ------------------\n Bubble menu & dropdown\n ------------------ */\n.bubble-menu {\n /* Themed surface */\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n\n /* Layout */\n display: flex;\n align-items: center;\n gap: 0.25rem;\n padding: 0.25rem;\n font-size: 0.875rem; /* ~text-sm */\n\n /* Keep menu content visible for dropdowns */\n max-width: calc(100vw - 16px);\n overflow: visible; /* allow inner dropdown to escape the shell */\n\n /* On top of editor */\n position: relative;\n z-index: var(--nph-z) !important;\n}\n\n/* Bubble menu separator */\n.nph-bubble-separator {\n width: 1px;\n height: 18px;\n background: var(--border, rgba(0, 0, 0, 0.12));\n margin: 0 2px;\n flex-shrink: 0;\n}\n\n/* Ensure Tiptap/Tippy bubble root stacks high */\n[data-tippy-root],\n.tippy-box {\n z-index: var(--nph-z) !important;\n}\n\n/* Generic dropdown container and panel (used in TextMenu) */\n.nph-dropdown {\n position: relative;\n}\n.nph-dropdown__panel {\n position: absolute;\n top: 100%;\n left: 0;\n margin-top: 0.25rem;\n min-width: 11rem;\n z-index: calc(var(--nph-z) + 1) !important; /* above the bubble itself */\n}\n\n/* Command menu (slash menu & the block-type panel) */\n.nph-command {\n background-color: var(--background, #ffffff);\n color: var(--foreground, #111827);\n border: 1px solid var(--border, rgba(0, 0, 0, 0.08));\n border-radius: 0.7rem;\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n padding: 0.25rem;\n overflow: hidden;\n}\n\n.nph-command__list {\n list-style: none;\n margin: 0;\n padding: 0.125rem;\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n max-height: 320px;\n overflow: auto;\n /* Show only the thumb (pill), hide track */\n scrollbar-width: thin; /* Firefox */\n scrollbar-color: #e5e7eb transparent; /* thumb track */\n}\n\n/* WebKit: keep a small thumb, hide the track */\n.nph-command__list::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n background: transparent;\n}\n.nph-command__list::-webkit-scrollbar-track {\n background: transparent;\n}\n.nph-command__list::-webkit-scrollbar-thumb {\n background-color: #e5e7eb;\n border-radius: 9999px;\n}\n.nph-command__list:hover::-webkit-scrollbar-thumb {\n background-color: #d1d5db;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-command__list {\n scrollbar-color: #4b5563 transparent;\n }\n .nph-command__list::-webkit-scrollbar-thumb {\n background-color: #4b5563;\n }\n .nph-command__list:hover::-webkit-scrollbar-thumb {\n background-color: #6b7280;\n }\n}\n\n/* Slash menu group headers */\n.nph-command__group-header {\n font-size: 0.6875rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.05em;\n color: var(--muted-foreground, #6b7280);\n padding: 0.5rem 0.5rem 0.25rem;\n margin-top: 0.25rem;\n}\n.nph-command__group-header:first-child {\n margin-top: 0;\n}\n\n.nph-command__item {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n border-radius: 0.375rem;\n padding: 0.375rem 0.5rem;\n cursor: pointer;\n}\n\n/* Icon background square */\n.nph-command__item-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n min-width: 28px;\n border-radius: 0.375rem;\n flex-shrink: 0;\n background-color: var(--muted, rgba(127, 127, 127, 0.1));\n color: var(--foreground, #111827);\n}\n\n/* Title + description layout */\n.nph-command__item-content {\n display: flex;\n flex-direction: column;\n gap: 0;\n min-width: 0;\n}\n.nph-command__item-title {\n font-size: 0.8125rem;\n font-weight: 500;\n line-height: 1.3;\n}\n.nph-command__item-description {\n font-size: 0.6875rem;\n color: var(--muted-foreground, #6b7280);\n line-height: 1.3;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.nph-command__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n.nph-command__item.is-active,\n.nph-command__item[aria-selected=\"true\"] {\n background-color: var(--accent, rgba(0, 0, 0, 0.08));\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-command__item.is-active,\n .nph-command__item[aria-selected=\"true\"] {\n background-color: var(--accent, rgba(255, 255, 255, 0.14));\n }\n}\n\n/* Base buttons for headless UI */\n.nph-btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n white-space: nowrap;\n border-radius: 0.375rem; /* rounded-md */\n font-size: 0.875rem; /* text-sm */\n font-weight: 500; /* font-medium */\n transition:\n background-color 0.2s ease,\n color 0.2s ease,\n box-shadow 0.2s ease;\n outline: none;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n background: transparent;\n color: inherit;\n border: none;\n}\n\n.nph-btn:focus-visible {\n outline: 2px solid var(--ring, rgba(59, 130, 246, 0.5));\n outline-offset: 2px; /* ring-offset */\n}\n\n.nph-btn:disabled {\n pointer-events: none;\n opacity: 0.5;\n}\n\n/* Ghost variant */\n.nph-btn-ghost {\n background: transparent;\n}\n.nph-btn-ghost:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n/* Size: sm */\n.nph-btn-sm {\n height: 2.25rem;\n padding: 0 0.75rem;\n}\n\n/* Size: xs (more compact than sm) */\n.nph-btn-xs {\n height: 1.75rem;\n padding: 0 0.5rem;\n font-size: 0.8125rem;\n}\n\n/* Icon variant: square buttons with equal width/height */\n.nph-btn-icon {\n width: 1.75rem;\n min-width: 1.75rem;\n padding-left: 0;\n padding-right: 0;\n}\n\n/* Keep generic styling for bubble menu buttons if custom classes not applied */\n.bubble-menu button {\n background: transparent;\n color: inherit;\n border: none;\n border-radius: 0.5rem;\n padding: 0.25rem 0.4rem;\n cursor: pointer;\n}\n\n.bubble-menu button:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n}\n\n.bubble-menu button.is-active,\n.bubble-menu button[aria-pressed=\"true\"],\n.nph-btn.is-active,\n.nph-btn[aria-pressed=\"true\"] {\n /* Subtle, neutral active state */\n background-color: var(--accent, rgba(0, 0, 0, 0.08));\n color: inherit;\n}\n\n.bubble-menu button.is-active:hover,\n.bubble-menu button[aria-pressed=\"true\"]:hover,\n.nph-btn.is-active:hover,\n.nph-btn[aria-pressed=\"true\"]:hover {\n background-color: var(--accent-hover, rgba(0, 0, 0, 0.12));\n}\n\n/* Basic input style for small inline editors */\n.nph-input {\n width: 100%;\n border: 1px solid var(--border, rgba(127, 127, 127, 0.3));\n background: var(--background, transparent);\n color: inherit;\n border-radius: 0.375rem;\n}\n\n/* Link popover pill */\n.nph-link-popover {\n display: flex;\n align-items: center;\n gap: 6px;\n background: var(--background, #fff);\n color: inherit;\n border: 1px solid var(--border, rgba(127, 127, 127, 0.3));\n border-radius: 0.7rem; /* match bubble-menu corners */\n box-shadow: var(--shadow, 0 4px 16px rgba(0, 0, 0, 0.08));\n padding: 6px 8px;\n}\n.nph-link-popover__input {\n appearance: none;\n border: none;\n background: transparent;\n color: inherit;\n outline: none;\n min-width: 200px;\n font-size: 14px;\n}\n.nph-link-popover__divider {\n width: 1px;\n height: 18px;\n background: var(--border, rgba(127, 127, 127, 0.3));\n margin: 0 2px;\n}\n\n@media (prefers-color-scheme: dark) {\n .nph-link-popover {\n background: var(--background, #111);\n border-color: var(--border, rgba(255, 255, 255, 0.16));\n box-shadow: var(--shadow, 0 8px 24px rgba(0, 0, 0, 0.4));\n }\n .nph-link-popover__divider {\n background: var(--border, rgba(255, 255, 255, 0.16));\n }\n}\n\n@media (prefers-color-scheme: dark) {\n .bubble-menu button.is-active,\n .bubble-menu button[aria-pressed=\"true\"] {\n background-color: var(--accent, rgba(255, 255, 255, 0.14));\n }\n .bubble-menu button.is-active:hover,\n .bubble-menu button[aria-pressed=\"true\"]:hover {\n background-color: var(--accent-hover, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Animations */\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Image & Video Block – move selection outline to the inner wrapper\n so it tightly wraps the actual content, not the full-width ProseMirror container */\n.nph-editor .node-imageBlock.ProseMirror-selectednode,\n.nph-editor .node-videoBlock.ProseMirror-selectednode {\n outline: none;\n}\n\n.nph-editor .node-imageBlock > [data-node-view-wrapper],\n.nph-editor .node-videoBlock > [data-node-view-wrapper] {\n line-height: 0;\n font-size: 0;\n}\n\n.nph-editor .node-imageBlock.ProseMirror-selectednode > [data-node-view-wrapper],\n.nph-editor .node-videoBlock.ProseMirror-selectednode > [data-node-view-wrapper] {\n outline: 2px solid var(--border, #e5e7eb);\n outline-offset: 2px;\n border-radius: 12px;\n}\n\n/* Image Block */\n.nph-image-block {\n display: block;\n vertical-align: bottom;\n border-radius: 12px;\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n border: 1px solid var(--border, #e5e7eb);\n width: 100%;\n height: auto;\n cursor: pointer;\n transition: box-shadow 0.2s ease;\n}\n\n.nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n/* Image Block Loading */\n.nph-image-block-loading {\n position: relative;\n border-radius: 12px;\n overflow: hidden;\n border: 1px solid var(--border, #e5e7eb);\n background-color: var(--muted, #f9fafb);\n}\n\n.nph-image-block-loading__overlay {\n position: absolute;\n inset: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: rgba(255, 255, 255, 0.9);\n}\n\n.nph-image-block-loading__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n}\n\n.nph-image-block-loading__spinner {\n animation: spin 1s linear infinite;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-block-loading__text {\n font-size: 12px;\n font-weight: 500;\n color: var(--muted-foreground, #6b7280);\n margin: 0;\n}\n\n.nph-image-block-loading__placeholder {\n height: 192px;\n width: 100%;\n background-color: var(--muted, #f3f4f6);\n border-radius: 8px;\n}\n\n/* Image Uploader */\n.nph-image-uploader {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 48px 32px;\n border-radius: 12px;\n background-color: transparent !important;\n border: 2px dashed var(--border, #e5e7eb);\n cursor: pointer;\n transition: background-color 0.2s, border-color 0.2s;\n width: 100%;\n box-sizing: border-box;\n}\n\n.nph-image-uploader--dragging {\n background-color: var(--muted, rgba(0, 0, 0, 0.05));\n border-color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__icon {\n margin-bottom: 16px;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n.nph-image-uploader__text {\n font-size: 14px;\n font-weight: 500;\n text-align: center;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-image-uploader__button {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.nph-image-uploader__input {\n width: 0;\n height: 0;\n overflow: hidden;\n opacity: 0;\n position: absolute;\n}\n\n/* Image block error state */\n.nph-image-block-error {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: 32px;\n border-radius: 12px;\n border: 1.5px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n color: var(--muted-foreground, #6b7280);\n font-size: 13px;\n cursor: pointer;\n aspect-ratio: 16 / 9;\n}\n\n.dark .nph-image-block-error {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Browse-only variant — clean, clickable CTA */\n.nph-image-uploader--browse-only {\n padding: 0;\n border: 1.5px dashed var(--border, #e5e7eb);\n border-radius: 12px;\n background: var(--muted, rgba(0, 0, 0, 0.02));\n transition: all 0.2s ease;\n aspect-ratio: 16 / 9;\n}\n\n.nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #9ca3af);\n background: var(--muted, rgba(0, 0, 0, 0.04));\n}\n\n.nph-image-uploader__browse-cta {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n}\n\n.nph-image-uploader__browse-icon-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 48px;\n height: 48px;\n border-radius: 10px;\n background: var(--muted, rgba(0, 0, 0, 0.06));\n color: var(--muted-foreground, #6b7280);\n flex-shrink: 0;\n transition: all 0.2s ease;\n}\n\n.nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(0, 0, 0, 0.1));\n color: var(--foreground, #374151);\n}\n\n.nph-image-uploader__browse-text {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n}\n\n.nph-image-uploader__browse-title {\n display: block;\n font-size: 14px;\n font-weight: 600;\n color: var(--foreground, #111827);\n line-height: 1.4;\n}\n\n.nph-image-uploader__browse-subtitle {\n display: block;\n font-size: 12px;\n color: var(--muted-foreground, #6b7280);\n line-height: 1.4;\n}\n\n/* Dark mode - supports both media query and class-based approaches */\n@media (prefers-color-scheme: dark) {\n .nph-image-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n }\n\n .nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n }\n\n .nph-image-block-loading {\n border-color: var(--border, #374151);\n background-color: var(--muted, #1f2937);\n }\n\n .nph-image-block-loading__overlay {\n background-color: rgba(0, 0, 0, 0.8);\n }\n\n .nph-image-block-loading__spinner,\n .nph-image-block-loading__text {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-block-loading__placeholder {\n background-color: var(--muted, #374151);\n }\n\n .nph-image-uploader {\n border-color: var(--border, #374151);\n }\n\n .nph-image-uploader--dragging {\n background-color: var(--muted, rgba(255, 255, 255, 0.05));\n border-color: var(--border, #6b7280);\n }\n\n .nph-image-uploader__icon,\n .nph-image-uploader__text {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-uploader--browse-only {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n }\n\n .nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n }\n\n .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.08));\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.12));\n color: var(--foreground, #e5e7eb);\n }\n\n .nph-image-uploader__browse-title {\n color: var(--foreground, #f3f4f6);\n }\n}\n\n/* Class-based dark mode (for frameworks like Next.js with next-themes) */\n.dark .nph-image-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n}\n\n.dark .nph-image-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n}\n\n.dark .nph-image-block-loading {\n border-color: var(--border, #374151);\n background-color: var(--muted, #1f2937);\n}\n\n.dark .nph-image-block-loading__overlay {\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.dark .nph-image-block-loading__spinner,\n.dark .nph-image-block-loading__text {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-block-loading__placeholder {\n background-color: var(--muted, #374151);\n}\n\n.dark .nph-image-uploader {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-image-uploader--dragging {\n background-color: var(--muted, rgba(255, 255, 255, 0.05));\n border-color: var(--border, #6b7280);\n}\n\n.dark .nph-image-uploader__icon,\n.dark .nph-image-uploader__text {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-uploader--browse-only {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n}\n\n.dark .nph-image-uploader--browse-only:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n}\n\n.dark .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.08));\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-image-uploader--browse-only:hover .nph-image-uploader__browse-icon-wrapper {\n background: var(--muted, rgba(255, 255, 255, 0.12));\n color: var(--foreground, #e5e7eb);\n}\n\n.dark .nph-image-uploader__browse-title {\n color: var(--foreground, #f3f4f6);\n}\n\n/* Video Block */\n.nph-video-block {\n position: relative;\n width: 100%;\n padding-bottom: 56.25%; /* 16:9 aspect ratio */\n border-radius: 12px;\n overflow: hidden;\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n border: 1px solid var(--border, #e5e7eb);\n cursor: pointer;\n background-color: #000;\n transition: box-shadow 0.2s ease;\n}\n\n.nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n}\n\n.nph-video-block__iframe {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n border: none;\n}\n\n.nph-video-block__overlay {\n position: absolute;\n inset: 0;\n cursor: pointer;\n}\n\n/* Video block error state */\n.nph-video-block-error {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n padding: 32px;\n border-radius: 12px;\n border: 1.5px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n color: var(--muted-foreground, #6b7280);\n font-size: 13px;\n cursor: pointer;\n aspect-ratio: 16 / 9;\n}\n\n.nph-video-block-error__url {\n font-size: 11px;\n opacity: 0.6;\n max-width: 300px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.dark .nph-video-block-error {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Video URL Input */\n.nph-video-input {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 32px;\n border-radius: 8px;\n border: 2px dashed var(--border, #e5e7eb);\n background-color: transparent;\n gap: 12px;\n}\n\n.nph-video-input__icon {\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-input__content {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n max-width: 480px;\n}\n\n.nph-video-input__field {\n flex: 1;\n padding: 10px 14px;\n font-size: 14px;\n line-height: 1.4;\n border: 1px solid var(--border, #e5e7eb);\n border-radius: 8px;\n outline: none;\n background: transparent;\n color: inherit;\n}\n\n.nph-video-input__field:focus {\n border-color: var(--ring, #3b82f6);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);\n}\n\n.nph-video-input__button {\n padding: 10px 20px;\n font-size: 14px;\n font-weight: 500;\n line-height: 1.4;\n border: 1px solid var(--border, #e5e7eb);\n border-radius: 8px;\n background: var(--primary, #111827);\n color: var(--primary-foreground, #fff);\n cursor: pointer;\n white-space: nowrap;\n}\n\n.nph-video-input__button:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* Video Placeholder */\n.nph-video-placeholder {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n aspect-ratio: 16 / 9;\n border-radius: 12px;\n border: 2px dashed var(--border, #e5e7eb);\n background: var(--muted, rgba(0, 0, 0, 0.02));\n cursor: pointer;\n transition: border-color 0.2s ease, background 0.2s ease;\n gap: 12px;\n}\n\n.nph-video-placeholder:hover {\n border-color: var(--muted-foreground, #9ca3af);\n background: var(--muted, rgba(0, 0, 0, 0.04));\n}\n\n.nph-video-placeholder__icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 56px;\n height: 56px;\n border-radius: 12px;\n background: var(--muted, rgba(0, 0, 0, 0.06));\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-placeholder__text {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.nph-video-placeholder__title {\n display: block;\n font-size: 14px;\n font-weight: 600;\n color: var(--foreground, #111827);\n}\n\n.nph-video-placeholder__subtitle {\n display: block;\n font-size: 13px;\n color: var(--muted-foreground, #6b7280);\n}\n\n.nph-video-placeholder__input {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n max-width: 420px;\n margin-top: 4px;\n}\n\n/* Video Block Dark Mode */\n@media (prefers-color-scheme: dark) {\n .nph-video-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n }\n\n .nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n }\n\n .nph-video-input {\n border-color: var(--border, #374151);\n }\n\n .nph-video-input__icon {\n color: var(--muted-foreground, #9ca3af);\n }\n\n .nph-video-input__field {\n border-color: var(--border, #374151);\n }\n}\n\n.dark .nph-video-block {\n border-color: var(--border, #374151);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.3), 0 1px 2px -1px rgb(0 0 0 / 0.3);\n}\n\n.dark .nph-video-block:hover {\n box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.4);\n}\n\n.dark .nph-video-input {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-video-input__icon {\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-video-input__field {\n border-color: var(--border, #374151);\n}\n\n.dark .nph-video-placeholder {\n border-color: var(--border, #374151);\n background: var(--muted, rgba(255, 255, 255, 0.03));\n}\n\n.dark .nph-video-placeholder:hover {\n border-color: var(--muted-foreground, #6b7280);\n background: var(--muted, rgba(255, 255, 255, 0.05));\n}\n\n.dark .nph-video-placeholder__icon {\n background: var(--muted, rgba(255, 255, 255, 0.06));\n color: var(--muted-foreground, #9ca3af);\n}\n\n.dark .nph-video-placeholder__title {\n color: var(--foreground, #f9fafb);\n}\n\n.dark .nph-video-placeholder__subtitle {\n color: var(--muted-foreground, #9ca3af);\n}\n\n/* Drag Handle */\n.nph-drag-handle {\n display: flex;\n align-items: center;\n gap: 1px;\n opacity: 0;\n transition: opacity 0.15s ease;\n cursor: grab;\n /* Push handle away from content — floating-ui places it flush left */\n margin-right: 12px;\n}\n.nph-drag-handle:hover,\n.nph-drag-handle.visible {\n opacity: 1;\n}\n\n.nph-drag-handle__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n border: none;\n border-radius: 4px;\n background: transparent;\n color: var(--muted-foreground, #9ca3af);\n cursor: pointer;\n padding: 0;\n transition: background-color 0.15s, color 0.15s;\n}\n.nph-drag-handle__btn:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--foreground, #111827);\n}\n\n.nph-drag-handle__grip {\n cursor: grab;\n}\n.nph-drag-handle__grip:active {\n cursor: grabbing;\n}\n\n/* Block action menu */\n.nph-block-action-menu {\n min-width: 180px;\n}\n\n/* Image Resize Handle */\n.nph-resize-wrapper {\n position: relative;\n display: block;\n width: 100%;\n}\n\n.nph-resize-handle {\n position: absolute;\n top: 50%;\n width: 6px;\n height: 48px;\n max-height: 50%;\n transform: translateY(-50%);\n background: var(--primary, #3b82f6);\n border-radius: 3px;\n opacity: 0;\n cursor: col-resize;\n transition: opacity 0.15s;\n z-index: 5;\n}\n\n.nph-resize-wrapper:hover .nph-resize-handle,\n.nph-resize-wrapper--active .nph-resize-handle {\n opacity: 1;\n}\n\n.nph-resize-handle--left {\n left: 4px;\n}\n.nph-resize-handle--right {\n right: 4px;\n}\n\n/* Table of Contents */\n.nph-toc {\n display: flex;\n flex-direction: column;\n gap: 1px;\n font-size: 0.8125rem;\n}\n\n.nph-toc__item {\n display: block;\n width: 100%;\n text-align: left;\n background: none;\n border: none;\n border-radius: 4px;\n padding: 4px 8px;\n color: var(--muted-foreground, #6b7280);\n cursor: pointer;\n font-size: inherit;\n line-height: 1.4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n transition: background-color 0.15s, color 0.15s;\n}\n.nph-toc__item:hover {\n background-color: var(--muted, rgba(127, 127, 127, 0.12));\n color: var(--foreground, #111827);\n}\n.nph-toc__item--active {\n color: var(--foreground, #111827);\n font-weight: 500;\n background-color: var(--accent, rgba(0, 0, 0, 0.05));\n}\n\n/* Collaboration Carets */\n.nph-collab-caret {\n position: relative;\n border-left: 2px solid;\n margin-left: -1px;\n margin-right: -1px;\n pointer-events: none;\n word-break: normal;\n}\n\n.nph-collab-caret__label {\n position: absolute;\n top: -1.4em;\n left: -1px;\n font-size: 0.6875rem;\n font-weight: 600;\n line-height: 1;\n color: #fff;\n padding: 1px 4px 2px;\n border-radius: 3px 3px 3px 0;\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n.nph-collab-selection {\n pointer-events: none;\n}\n\n/* Mention styles */\n.nph-editor .mention,\n.ProseMirror.nph-editor .mention {\n display: inline-flex;\n align-items: center;\n gap: 0.25rem;\n background-color: rgba(59, 130, 246, 0.1);\n color: rgb(59, 130, 246);\n padding: 0.125rem 0.375rem;\n border-radius: 9999px;\n font-size: 0.875rem;\n font-weight: 500;\n vertical-align: middle;\n text-decoration: none;\n cursor: pointer;\n transition: background-color 0.15s;\n}\n\n.nph-editor .mention:hover,\n.ProseMirror.nph-editor .mention:hover {\n background-color: rgba(59, 130, 246, 0.15);\n}\n\n/* Dark mode mention styles */\n.dark .nph-editor .mention,\n.dark .ProseMirror.nph-editor .mention {\n background-color: rgba(59, 130, 246, 0.2);\n color: rgb(96, 165, 250);\n}\n\n.dark .nph-editor .mention:hover,\n.dark .ProseMirror.nph-editor .mention:hover {\n background-color: rgba(59, 130, 246, 0.3);\n}\n"],"mappings":"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","names":[]}
|
package/dist/react/index.d.cts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { Editor as Editor$1 } from '@tiptap/react';
|
|
3
3
|
import { b as EditorContentProps, d as MentionOptions } from '../mention-D11EVIgV.cjs';
|
|
4
|
-
import { ReactNode } from 'react';
|
|
4
|
+
import { ComponentType, ReactNode } from 'react';
|
|
5
5
|
import '@tiptap/core';
|
|
6
6
|
import '@tiptap/extension-mention';
|
|
7
7
|
|
|
8
|
+
type TaskItemCheckboxProps = {
|
|
9
|
+
checked: boolean;
|
|
10
|
+
onCheckedChange: (checked: boolean) => void;
|
|
11
|
+
className?: string;
|
|
12
|
+
};
|
|
13
|
+
type TaskItemCheckboxComponent = ComponentType<TaskItemCheckboxProps>;
|
|
14
|
+
|
|
8
15
|
type BubbleMenuExtraRenderer = (editor: Editor$1) => ReactNode;
|
|
9
16
|
type BubbleMenuExtra = BubbleMenuExtraRenderer | {
|
|
10
17
|
render: BubbleMenuExtraRenderer;
|
|
@@ -38,8 +45,10 @@ type NeuphloEditorProps = {
|
|
|
38
45
|
referenceOptions?: MentionOptions;
|
|
39
46
|
slashCommand?: boolean;
|
|
40
47
|
placeholder?: string;
|
|
48
|
+
taskItemView?: any;
|
|
49
|
+
checkboxComponent?: TaskItemCheckboxComponent;
|
|
41
50
|
};
|
|
42
|
-
declare function Editor({ content, className, editable, immediatelyRender, showTextMenu, showSlashMenu, showImageMenu, showDragHandle, extensions, bubbleMenuExtras, onUpdate, onCreate, uploadImage, browseAssets, collaboration, mentionOptions, referenceOptions, slashCommand, placeholder, }: NeuphloEditorProps): react_jsx_runtime.JSX.Element;
|
|
51
|
+
declare function Editor({ content, className, editable, immediatelyRender, showTextMenu, showSlashMenu, showImageMenu, showDragHandle, extensions, bubbleMenuExtras, onUpdate, onCreate, uploadImage, browseAssets, collaboration, mentionOptions, referenceOptions, slashCommand, placeholder, taskItemView, checkboxComponent, }: NeuphloEditorProps): react_jsx_runtime.JSX.Element;
|
|
43
52
|
|
|
44
53
|
type ExtraRenderer = (editor: Editor$1) => ReactNode;
|
|
45
54
|
type TextMenuProps = {
|
package/dist/react/index.d.ts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { Editor as Editor$1 } from '@tiptap/react';
|
|
3
3
|
import { b as EditorContentProps, d as MentionOptions } from '../mention-D11EVIgV.js';
|
|
4
|
-
import { ReactNode } from 'react';
|
|
4
|
+
import { ComponentType, ReactNode } from 'react';
|
|
5
5
|
import '@tiptap/core';
|
|
6
6
|
import '@tiptap/extension-mention';
|
|
7
7
|
|
|
8
|
+
type TaskItemCheckboxProps = {
|
|
9
|
+
checked: boolean;
|
|
10
|
+
onCheckedChange: (checked: boolean) => void;
|
|
11
|
+
className?: string;
|
|
12
|
+
};
|
|
13
|
+
type TaskItemCheckboxComponent = ComponentType<TaskItemCheckboxProps>;
|
|
14
|
+
|
|
8
15
|
type BubbleMenuExtraRenderer = (editor: Editor$1) => ReactNode;
|
|
9
16
|
type BubbleMenuExtra = BubbleMenuExtraRenderer | {
|
|
10
17
|
render: BubbleMenuExtraRenderer;
|
|
@@ -38,8 +45,10 @@ type NeuphloEditorProps = {
|
|
|
38
45
|
referenceOptions?: MentionOptions;
|
|
39
46
|
slashCommand?: boolean;
|
|
40
47
|
placeholder?: string;
|
|
48
|
+
taskItemView?: any;
|
|
49
|
+
checkboxComponent?: TaskItemCheckboxComponent;
|
|
41
50
|
};
|
|
42
|
-
declare function Editor({ content, className, editable, immediatelyRender, showTextMenu, showSlashMenu, showImageMenu, showDragHandle, extensions, bubbleMenuExtras, onUpdate, onCreate, uploadImage, browseAssets, collaboration, mentionOptions, referenceOptions, slashCommand, placeholder, }: NeuphloEditorProps): react_jsx_runtime.JSX.Element;
|
|
51
|
+
declare function Editor({ content, className, editable, immediatelyRender, showTextMenu, showSlashMenu, showImageMenu, showDragHandle, extensions, bubbleMenuExtras, onUpdate, onCreate, uploadImage, browseAssets, collaboration, mentionOptions, referenceOptions, slashCommand, placeholder, taskItemView, checkboxComponent, }: NeuphloEditorProps): react_jsx_runtime.JSX.Element;
|
|
43
52
|
|
|
44
53
|
type ExtraRenderer = (editor: Editor$1) => ReactNode;
|
|
45
54
|
type TextMenuProps = {
|
package/dist/react/index.js
CHANGED
|
@@ -25,6 +25,8 @@ import {
|
|
|
25
25
|
import Collaboration from "@tiptap/extension-collaboration";
|
|
26
26
|
import CollaborationCaret from "@tiptap/extension-collaboration-caret";
|
|
27
27
|
import Underline from "@tiptap/extension-underline";
|
|
28
|
+
import { TaskList, TaskItem as BaseTaskItem } from "@tiptap/extension-list";
|
|
29
|
+
import { ReactNodeViewRenderer as ReactNodeViewRenderer2 } from "@tiptap/react";
|
|
28
30
|
|
|
29
31
|
// src/headless/extensions/VideoBlock/VideoBlock.ts
|
|
30
32
|
import { mergeAttributes, Node } from "@tiptap/core";
|
|
@@ -101,6 +103,21 @@ var VideoBlock = Node.create({
|
|
|
101
103
|
});
|
|
102
104
|
|
|
103
105
|
// src/headless/extensions/extension-kit.ts
|
|
106
|
+
var TaskItem = BaseTaskItem.extend({
|
|
107
|
+
addOptions() {
|
|
108
|
+
return {
|
|
109
|
+
...this.parent?.(),
|
|
110
|
+
nodeView: null
|
|
111
|
+
};
|
|
112
|
+
},
|
|
113
|
+
addNodeView() {
|
|
114
|
+
const custom = this.options.nodeView;
|
|
115
|
+
if (custom) {
|
|
116
|
+
return ReactNodeViewRenderer2(custom);
|
|
117
|
+
}
|
|
118
|
+
return this.parent?.();
|
|
119
|
+
}
|
|
120
|
+
});
|
|
104
121
|
var ExtensionKit = (options) => {
|
|
105
122
|
const enableSlashCommand = options?.slashCommand !== false;
|
|
106
123
|
const extensions = [
|
|
@@ -108,6 +125,8 @@ var ExtensionKit = (options) => {
|
|
|
108
125
|
CodeBlock,
|
|
109
126
|
Link,
|
|
110
127
|
Underline,
|
|
128
|
+
TaskList,
|
|
129
|
+
TaskItem.configure({ nested: true, nodeView: options?.taskItemView }),
|
|
111
130
|
ImageBlock.configure({
|
|
112
131
|
uploadImage: options?.uploadImage,
|
|
113
132
|
browseAssets: options?.browseAssets,
|
|
@@ -556,6 +575,7 @@ function TextMenu({
|
|
|
556
575
|
BubbleMenu,
|
|
557
576
|
{
|
|
558
577
|
editor,
|
|
578
|
+
pluginKey: "textBubbleMenu",
|
|
559
579
|
shouldShow: ({ editor: e, state, from, to, view }) => {
|
|
560
580
|
if (e.isActive("imageBlock")) return false;
|
|
561
581
|
if (e.isActive("videoBlock")) return false;
|
|
@@ -1151,6 +1171,7 @@ function ImageMenu({
|
|
|
1151
1171
|
BubbleMenu3,
|
|
1152
1172
|
{
|
|
1153
1173
|
editor,
|
|
1174
|
+
pluginKey: "imageBubbleMenu",
|
|
1154
1175
|
shouldShow: ({ editor: e, state }) => {
|
|
1155
1176
|
if (!e.isActive("imageBlock")) return false;
|
|
1156
1177
|
const { selection } = state;
|
|
@@ -2741,9 +2762,47 @@ function TableMenu({ className: _className }) {
|
|
|
2741
2762
|
);
|
|
2742
2763
|
}
|
|
2743
2764
|
|
|
2765
|
+
// src/react/menus/TaskItem/TaskItemView.tsx
|
|
2766
|
+
import {
|
|
2767
|
+
NodeViewContent,
|
|
2768
|
+
NodeViewWrapper as NodeViewWrapper3
|
|
2769
|
+
} from "@tiptap/react";
|
|
2770
|
+
import { jsx as jsx16, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
2771
|
+
var createTaskItemView = (Checkbox) => {
|
|
2772
|
+
const TaskItemView = ({ node, updateAttributes }) => {
|
|
2773
|
+
const checked = !!node.attrs.checked;
|
|
2774
|
+
return /* @__PURE__ */ jsxs16(
|
|
2775
|
+
NodeViewWrapper3,
|
|
2776
|
+
{
|
|
2777
|
+
as: "li",
|
|
2778
|
+
"data-checked": checked,
|
|
2779
|
+
className: "nph-task-item",
|
|
2780
|
+
children: [
|
|
2781
|
+
/* @__PURE__ */ jsx16("label", { contentEditable: false, className: "nph-task-item__checkbox", children: /* @__PURE__ */ jsx16(
|
|
2782
|
+
Checkbox,
|
|
2783
|
+
{
|
|
2784
|
+
checked,
|
|
2785
|
+
onCheckedChange: (value) => updateAttributes({ checked: value === true })
|
|
2786
|
+
}
|
|
2787
|
+
) }),
|
|
2788
|
+
/* @__PURE__ */ jsx16(
|
|
2789
|
+
NodeViewContent,
|
|
2790
|
+
{
|
|
2791
|
+
as: "div",
|
|
2792
|
+
className: "nph-task-item__content" + (checked ? " nph-task-item__content--checked" : "")
|
|
2793
|
+
}
|
|
2794
|
+
)
|
|
2795
|
+
]
|
|
2796
|
+
}
|
|
2797
|
+
);
|
|
2798
|
+
};
|
|
2799
|
+
TaskItemView.displayName = "TaskItemView";
|
|
2800
|
+
return TaskItemView;
|
|
2801
|
+
};
|
|
2802
|
+
|
|
2744
2803
|
// src/react/Editor.tsx
|
|
2745
2804
|
import { useMemo as useMemo2, useState as useState11, useCallback as useCallback12, useRef as useRef11, useEffect as useEffect7 } from "react";
|
|
2746
|
-
import { jsx as
|
|
2805
|
+
import { jsx as jsx17, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
2747
2806
|
function Editor5({
|
|
2748
2807
|
content,
|
|
2749
2808
|
className,
|
|
@@ -2763,8 +2822,15 @@ function Editor5({
|
|
|
2763
2822
|
mentionOptions,
|
|
2764
2823
|
referenceOptions,
|
|
2765
2824
|
slashCommand,
|
|
2766
|
-
placeholder
|
|
2825
|
+
placeholder,
|
|
2826
|
+
taskItemView,
|
|
2827
|
+
checkboxComponent
|
|
2767
2828
|
}) {
|
|
2829
|
+
const resolvedTaskItemView = useMemo2(() => {
|
|
2830
|
+
if (taskItemView) return taskItemView;
|
|
2831
|
+
if (checkboxComponent) return createTaskItemView(checkboxComponent);
|
|
2832
|
+
return void 0;
|
|
2833
|
+
}, [taskItemView, checkboxComponent]);
|
|
2768
2834
|
const [actionMenuAnchor, setActionMenuAnchor] = useState11(null);
|
|
2769
2835
|
const [actionMenuEditor, setActionMenuEditor] = useState11(null);
|
|
2770
2836
|
const actionMenuRef = useRef11(null);
|
|
@@ -2819,8 +2885,8 @@ function Editor5({
|
|
|
2819
2885
|
const handleCloseActionMenu = useCallback12(() => {
|
|
2820
2886
|
setActionMenuAnchor(null);
|
|
2821
2887
|
}, []);
|
|
2822
|
-
return /* @__PURE__ */
|
|
2823
|
-
/* @__PURE__ */
|
|
2888
|
+
return /* @__PURE__ */ jsxs17("div", { className, children: [
|
|
2889
|
+
/* @__PURE__ */ jsx17(EditorRoot, { children: /* @__PURE__ */ jsxs17(
|
|
2824
2890
|
EditorContent,
|
|
2825
2891
|
{
|
|
2826
2892
|
onUpdate,
|
|
@@ -2835,6 +2901,7 @@ function Editor5({
|
|
|
2835
2901
|
collaboration,
|
|
2836
2902
|
imageBlockView: ImageBlockView,
|
|
2837
2903
|
videoBlockView: VideoBlockView,
|
|
2904
|
+
taskItemView: resolvedTaskItemView,
|
|
2838
2905
|
mention: mentionOptions,
|
|
2839
2906
|
reference: referenceOptions,
|
|
2840
2907
|
slashCommand,
|
|
@@ -2853,27 +2920,27 @@ function Editor5({
|
|
|
2853
2920
|
}
|
|
2854
2921
|
},
|
|
2855
2922
|
children: [
|
|
2856
|
-
showTextMenu ? /* @__PURE__ */
|
|
2923
|
+
showTextMenu ? /* @__PURE__ */ jsx17(
|
|
2857
2924
|
TextMenu,
|
|
2858
2925
|
{
|
|
2859
2926
|
leadingExtras: textExtras.start,
|
|
2860
2927
|
trailingExtras: textExtras.end
|
|
2861
2928
|
}
|
|
2862
2929
|
) : null,
|
|
2863
|
-
showImageMenu ? /* @__PURE__ */
|
|
2930
|
+
showImageMenu ? /* @__PURE__ */ jsx17(
|
|
2864
2931
|
ImageMenu,
|
|
2865
2932
|
{
|
|
2866
2933
|
leadingExtras: imageExtras.start,
|
|
2867
2934
|
trailingExtras: imageExtras.end
|
|
2868
2935
|
}
|
|
2869
2936
|
) : null,
|
|
2870
|
-
/* @__PURE__ */
|
|
2871
|
-
/* @__PURE__ */
|
|
2872
|
-
showSlashMenu ? /* @__PURE__ */
|
|
2937
|
+
/* @__PURE__ */ jsx17(LinkMenu, {}),
|
|
2938
|
+
/* @__PURE__ */ jsx17(TableMenu, {}),
|
|
2939
|
+
showSlashMenu ? /* @__PURE__ */ jsx17(SlashMenu, {}) : null
|
|
2873
2940
|
]
|
|
2874
2941
|
}
|
|
2875
2942
|
) }),
|
|
2876
|
-
actionMenuAnchor && actionMenuEditor && /* @__PURE__ */
|
|
2943
|
+
actionMenuAnchor && actionMenuEditor && /* @__PURE__ */ jsx17(
|
|
2877
2944
|
"div",
|
|
2878
2945
|
{
|
|
2879
2946
|
ref: actionMenuRef,
|
|
@@ -2883,7 +2950,7 @@ function Editor5({
|
|
|
2883
2950
|
top: actionMenuAnchor.getBoundingClientRect().bottom + 4,
|
|
2884
2951
|
left: actionMenuAnchor.getBoundingClientRect().left
|
|
2885
2952
|
},
|
|
2886
|
-
children: /* @__PURE__ */
|
|
2953
|
+
children: /* @__PURE__ */ jsx17(
|
|
2887
2954
|
BlockActionMenu,
|
|
2888
2955
|
{
|
|
2889
2956
|
editor: actionMenuEditor,
|
|
@@ -2898,7 +2965,7 @@ function Editor5({
|
|
|
2898
2965
|
// src/react/TableOfContents.tsx
|
|
2899
2966
|
import { useCurrentEditor as useCurrentEditor6, useEditorState as useEditorState6 } from "@tiptap/react";
|
|
2900
2967
|
import { useCallback as useCallback13, useEffect as useEffect8, useRef as useRef12, useState as useState12 } from "react";
|
|
2901
|
-
import { jsx as
|
|
2968
|
+
import { jsx as jsx18 } from "react/jsx-runtime";
|
|
2902
2969
|
function TableOfContents({
|
|
2903
2970
|
className,
|
|
2904
2971
|
itemClassName,
|
|
@@ -2972,13 +3039,13 @@ function TableOfContents({
|
|
|
2972
3039
|
[editor]
|
|
2973
3040
|
);
|
|
2974
3041
|
if (!editor || !headings || headings.length === 0) return null;
|
|
2975
|
-
return /* @__PURE__ */
|
|
3042
|
+
return /* @__PURE__ */ jsx18("nav", { className: className ?? "nph-toc", children: headings.map((heading) => {
|
|
2976
3043
|
const isActive = activeId === heading.id;
|
|
2977
3044
|
const itemClass = [
|
|
2978
3045
|
itemClassName ?? "nph-toc__item",
|
|
2979
3046
|
isActive ? activeClassName ?? "nph-toc__item--active" : ""
|
|
2980
3047
|
].filter(Boolean).join(" ");
|
|
2981
|
-
return /* @__PURE__ */
|
|
3048
|
+
return /* @__PURE__ */ jsx18(
|
|
2982
3049
|
"button",
|
|
2983
3050
|
{
|
|
2984
3051
|
type: "button",
|