@thangph2146/lexical-editor 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/editor-x/editor.cjs +33121 -0
- package/dist/editor-x/editor.cjs.map +1 -0
- package/dist/editor-x/editor.css +2854 -0
- package/dist/editor-x/editor.css.map +1 -0
- package/dist/editor-x/editor.d.cts +12 -0
- package/dist/editor-x/editor.d.ts +12 -0
- package/dist/editor-x/editor.js +33095 -0
- package/dist/editor-x/editor.js.map +1 -0
- package/dist/index.cjs +33210 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +2854 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.cts +15 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +33183 -0
- package/dist/index.js.map +1 -0
- package/package.json +84 -0
- package/src/components/lexical-editor.tsx +123 -0
- package/src/context/editor-container-context.tsx +29 -0
- package/src/context/priority-image-context.tsx +7 -0
- package/src/context/toolbar-context.tsx +60 -0
- package/src/context/uploads-context.tsx +53 -0
- package/src/editor-hooks/use-debounce.ts +80 -0
- package/src/editor-hooks/use-modal.tsx +64 -0
- package/src/editor-hooks/use-report.ts +57 -0
- package/src/editor-hooks/use-update-toolbar.ts +41 -0
- package/src/editor-ui/broken-image.tsx +18 -0
- package/src/editor-ui/caption-composer.tsx +45 -0
- package/src/editor-ui/code-button.tsx +75 -0
- package/src/editor-ui/color-picker.tsx +2010 -0
- package/src/editor-ui/content-editable.tsx +37 -0
- package/src/editor-ui/hooks/use-image-caption-controls.ts +118 -0
- package/src/editor-ui/hooks/use-image-node-interactions.ts +245 -0
- package/src/editor-ui/hooks/use-responsive-image-dimensions.ts +202 -0
- package/src/editor-ui/image-component.tsx +321 -0
- package/src/editor-ui/image-placeholder.tsx +57 -0
- package/src/editor-ui/image-resizer.tsx +499 -0
- package/src/editor-ui/image-sizing.ts +120 -0
- package/src/editor-ui/lazy-image.tsx +136 -0
- package/src/editor-x/editor.tsx +117 -0
- package/src/editor-x/nodes.ts +79 -0
- package/src/editor-x/plugins.tsx +380 -0
- package/src/hooks/use-click-outside.ts +27 -0
- package/src/hooks/use-element-size.ts +54 -0
- package/src/hooks/use-header-height.ts +95 -0
- package/src/hooks/use-isomorphic-layout-effect.ts +4 -0
- package/src/index.ts +4 -0
- package/src/lib/logger.ts +6 -0
- package/src/lib/utils.ts +19 -0
- package/src/nodes/autocomplete-node.tsx +94 -0
- package/src/nodes/embeds/tweet-node.tsx +224 -0
- package/src/nodes/embeds/youtube-node.tsx +519 -0
- package/src/nodes/emoji-node.tsx +83 -0
- package/src/nodes/image-node.tsx +328 -0
- package/src/nodes/keyword-node.tsx +58 -0
- package/src/nodes/layout-container-node.tsx +128 -0
- package/src/nodes/layout-item-node.tsx +118 -0
- package/src/nodes/list-with-color-node.tsx +160 -0
- package/src/nodes/mention-node.ts +122 -0
- package/src/plugins/actions/actions-plugin.tsx +3 -0
- package/src/plugins/actions/character-limit-plugin.tsx +27 -0
- package/src/plugins/actions/clear-editor-plugin.tsx +70 -0
- package/src/plugins/actions/counter-character-plugin.tsx +80 -0
- package/src/plugins/actions/edit-mode-toggle-plugin.tsx +49 -0
- package/src/plugins/actions/import-export-plugin.tsx +61 -0
- package/src/plugins/actions/markdown-toggle-plugin.tsx +78 -0
- package/src/plugins/actions/max-length-plugin.tsx +59 -0
- package/src/plugins/actions/share-content-plugin.tsx +72 -0
- package/src/plugins/actions/speech-to-text-plugin.tsx +159 -0
- package/src/plugins/actions/tree-view-plugin.tsx +63 -0
- package/src/plugins/align-plugin.tsx +86 -0
- package/src/plugins/auto-link-plugin.tsx +34 -0
- package/src/plugins/autocomplete-plugin.tsx +2574 -0
- package/src/plugins/code-action-menu-plugin.tsx +240 -0
- package/src/plugins/code-highlight-plugin.tsx +22 -0
- package/src/plugins/component-picker-menu-plugin.tsx +427 -0
- package/src/plugins/context-menu-plugin.tsx +311 -0
- package/src/plugins/drag-drop-paste-plugin.tsx +52 -0
- package/src/plugins/draggable-block-plugin.tsx +50 -0
- package/src/plugins/embeds/auto-embed-plugin.tsx +324 -0
- package/src/plugins/embeds/twitter-plugin.tsx +45 -0
- package/src/plugins/embeds/youtube-plugin.tsx +84 -0
- package/src/plugins/emoji-picker-plugin.tsx +206 -0
- package/src/plugins/emojis-plugin.tsx +84 -0
- package/src/plugins/floating-link-editor-plugin.tsx +791 -0
- package/src/plugins/floating-text-format-plugin.tsx +710 -0
- package/src/plugins/images-plugin.tsx +671 -0
- package/src/plugins/keywords-plugin.tsx +59 -0
- package/src/plugins/layout-plugin.tsx +658 -0
- package/src/plugins/link-plugin.tsx +18 -0
- package/src/plugins/list-color-plugin.tsx +178 -0
- package/src/plugins/list-max-indent-level-plugin.tsx +85 -0
- package/src/plugins/mentions-plugin.tsx +714 -0
- package/src/plugins/picker/alignment-picker-plugin.tsx +40 -0
- package/src/plugins/picker/bulleted-list-picker-plugin.tsx +14 -0
- package/src/plugins/picker/check-list-picker-plugin.tsx +14 -0
- package/src/plugins/picker/code-picker-plugin.tsx +30 -0
- package/src/plugins/picker/columns-layout-picker-plugin.tsx +16 -0
- package/src/plugins/picker/component-picker-option.tsx +47 -0
- package/src/plugins/picker/divider-picker-plugin.tsx +14 -0
- package/src/plugins/picker/embeds-picker-plugin.tsx +24 -0
- package/src/plugins/picker/heading-picker-plugin.tsx +32 -0
- package/src/plugins/picker/image-picker-plugin.tsx +16 -0
- package/src/plugins/picker/numbered-list-picker-plugin.tsx +14 -0
- package/src/plugins/picker/paragraph-picker-plugin.tsx +20 -0
- package/src/plugins/picker/quote-picker-plugin.tsx +21 -0
- package/src/plugins/picker/table-picker-plugin.tsx +56 -0
- package/src/plugins/tab-focus-plugin.tsx +66 -0
- package/src/plugins/table-column-resizer-plugin.tsx +309 -0
- package/src/plugins/table-plugin.tsx +299 -0
- package/src/plugins/toolbar/block-format/block-format-data.tsx +69 -0
- package/src/plugins/toolbar/block-format/format-bulleted-list.tsx +40 -0
- package/src/plugins/toolbar/block-format/format-check-list.tsx +40 -0
- package/src/plugins/toolbar/block-format/format-code-block.tsx +45 -0
- package/src/plugins/toolbar/block-format/format-heading.tsx +34 -0
- package/src/plugins/toolbar/block-format/format-list-with-marker.tsx +74 -0
- package/src/plugins/toolbar/block-format/format-numbered-list.tsx +40 -0
- package/src/plugins/toolbar/block-format/format-paragraph.tsx +31 -0
- package/src/plugins/toolbar/block-format/format-quote.tsx +32 -0
- package/src/plugins/toolbar/block-format-toolbar-plugin.tsx +117 -0
- package/src/plugins/toolbar/block-insert/insert-columns-layout.tsx +32 -0
- package/src/plugins/toolbar/block-insert/insert-embeds.tsx +31 -0
- package/src/plugins/toolbar/block-insert/insert-horizontal-rule.tsx +30 -0
- package/src/plugins/toolbar/block-insert/insert-image.tsx +32 -0
- package/src/plugins/toolbar/block-insert/insert-table.tsx +32 -0
- package/src/plugins/toolbar/block-insert-plugin.tsx +30 -0
- package/src/plugins/toolbar/clear-formatting-toolbar-plugin.tsx +92 -0
- package/src/plugins/toolbar/code-language-toolbar-plugin.tsx +121 -0
- package/src/plugins/toolbar/element-format-toolbar-plugin.tsx +251 -0
- package/src/plugins/toolbar/font-background-toolbar-plugin.tsx +179 -0
- package/src/plugins/toolbar/font-color-toolbar-plugin.tsx +101 -0
- package/src/plugins/toolbar/font-family-toolbar-plugin.tsx +91 -0
- package/src/plugins/toolbar/font-format-toolbar-plugin.tsx +85 -0
- package/src/plugins/toolbar/font-size-toolbar-plugin.tsx +177 -0
- package/src/plugins/toolbar/history-toolbar-plugin.tsx +87 -0
- package/src/plugins/toolbar/link-toolbar-plugin.tsx +90 -0
- package/src/plugins/toolbar/subsuper-toolbar-plugin.tsx +69 -0
- package/src/plugins/toolbar/toolbar-plugin.tsx +66 -0
- package/src/plugins/typing-pref-plugin.tsx +118 -0
- package/src/shared/can-use-dom.ts +4 -0
- package/src/shared/environment.ts +47 -0
- package/src/shared/invariant.ts +16 -0
- package/src/shared/use-layout-effect.ts +12 -0
- package/src/themes/_mixins.scss +107 -0
- package/src/themes/_variables.scss +33 -0
- package/src/themes/editor-theme.scss +622 -0
- package/src/themes/editor-theme.ts +118 -0
- package/src/themes/plugins.scss +1180 -0
- package/src/themes/ui-components.scss +936 -0
- package/src/transformers/markdown-emoji-transformer.ts +20 -0
- package/src/transformers/markdown-hr-transformer.ts +28 -0
- package/src/transformers/markdown-image-transformer.ts +31 -0
- package/src/transformers/markdown-list-transformer.ts +51 -0
- package/src/transformers/markdown-table-transformer.ts +200 -0
- package/src/transformers/markdown-tweet-transformer.ts +26 -0
- package/src/ui/button-group.tsx +10 -0
- package/src/ui/button.tsx +29 -0
- package/src/ui/collapsible.tsx +67 -0
- package/src/ui/command.tsx +48 -0
- package/src/ui/dialog.tsx +146 -0
- package/src/ui/flex.tsx +38 -0
- package/src/ui/input.tsx +20 -0
- package/src/ui/label.tsx +20 -0
- package/src/ui/popover.tsx +128 -0
- package/src/ui/scroll-area.tsx +17 -0
- package/src/ui/select.tsx +171 -0
- package/src/ui/separator.tsx +20 -0
- package/src/ui/slider.tsx +14 -0
- package/src/ui/slot.tsx +3 -0
- package/src/ui/tabs.tsx +87 -0
- package/src/ui/toggle-group.tsx +109 -0
- package/src/ui/toggle.tsx +28 -0
- package/src/ui/tooltip.tsx +28 -0
- package/src/ui/typography.tsx +44 -0
- package/src/utils/doc-serialization.ts +68 -0
- package/src/utils/emoji-list.ts +16604 -0
- package/src/utils/get-dom-range-rect.ts +20 -0
- package/src/utils/get-selected-node.ts +20 -0
- package/src/utils/is-mobile-width.ts +0 -0
- package/src/utils/set-floating-elem-position-for-link-editor.ts +39 -0
- package/src/utils/set-floating-elem-position.ts +44 -0
- package/src/utils/swipe.ts +119 -0
- package/src/utils/url.ts +32 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/themes/editor-theme.scss","../src/themes/_variables.scss","../src/themes/_mixins.scss","../src/themes/ui-components.scss","../src/themes/plugins.scss"],"sourcesContent":["/**\n * Editor Theme - Independent SCSS Structure\n * Built for Lexical + Next.js Monorepo\n */\n\n@use \"variables\" as *;\n@use \"mixins\" as *;\n@use \"ui-components\";\n@use \"plugins\";\n\n// 2. Scoped Editor Styles\n.editor-root-container {\n // Editor Container Border (matches input style)\n // border: 1px solid transparent; // Removed default border to avoid layout issues\n border-radius: $editor-border-radius;\n transition: all 0.2s ease-in-out;\n\n &.editor-root-container--shadow:focus-within {\n // Use box-shadow to simulate border and ring without layout shift\n // 1px border simulation + 2px ring\n box-shadow: 0 0 0 1px $editor-border-color, 0 0 0 3px var(--ring, rgba(59, 130, 246, 0.5));\n }\n}\n\n.lexical-editor-root {\n font-family: $editor-font-family !important;\n font-size: $editor-font-size-base; // Set base font size for consistency\n color: $editor-text-color !important;\n background-color: $editor-bg-color !important;\n position: relative !important;\n width: 100% !important;\n margin: 0 !important;\n padding: 0 !important;\n text-align: left !important; // Ensure consistent text alignment\n box-sizing: border-box !important;\n \n // Editor Container Border (matches input style)\n // border: 1px solid transparent;\n // border-radius: $editor-border-radius;\n // transition: all 0.2s ease-in-out;\n\n // &:focus-within {\n // border-color: $editor-border-color !important;\n // box-shadow: 0 0 0 2px var(--ring, rgba(59, 130, 246, 0.5));\n // }\n\n // 2.1 CSS Reset & Style Isolation\n // Reset common elements to prevent host app styles from leaking in.\n // Using specific selectors to maintain performance while ensuring isolation.\n *, *::before, *::after {\n box-sizing: border-box;\n }\n\n // Reset base typography and layout tags\n p, ul, ol, li, span, strong, em, b, i, blockquote, h1, h2, h3, h4, h5, h6 {\n margin: 0 !important;\n padding: 0 !important;\n border: 0 !important;\n font-size: 100%; // Removed !important to allow overrides\n // font: inherit !important; // Removed aggressive font reset to allow inline styles\n vertical-align: baseline !important;\n -webkit-font-smoothing: antialiased !important;\n -moz-osx-font-smoothing: grayscale !important;\n letter-spacing: normal !important; // Reset letter spacing\n word-spacing: normal !important; // Reset word spacing\n text-indent: 0 !important; // Reset text indentation\n text-transform: none !important; // Reset text transformation\n text-decoration: none !important; // Reset text decoration\n line-height: inherit; // Removed !important to allow overrides\n text-align: inherit; // Removed !important to allow overrides\n white-space: inherit !important;\n word-break: normal !important;\n word-wrap: normal !important;\n overflow-wrap: normal !important;\n margin-inline-start: 0 !important;\n margin-inline-end: 0 !important;\n padding-inline-start: 0 !important;\n padding-inline-end: 0 !important;\n margin-block-start: 0 !important;\n margin-block-end: 0 !important;\n -webkit-tap-highlight-color: transparent !important;\n }\n\n // Ensure consistent list behavior\n ul, ol {\n list-style-position: outside !important;\n list-style-type: none !important; // Default to none, will be overridden by .editor-ul/ol\n }\n\n li {\n margin: 0;\n padding: 0;\n }\n\n // Ensure span (Lexical text nodes) don't inherit unexpected layout properties\n span[data-lexical-text=\"true\"] {\n display: inline !important;\n white-space: pre-wrap !important;\n word-break: break-word !important;\n margin: 0 !important;\n padding: 0 !important;\n }\n\n // Core Typography\n .editor-paragraph {\n font-size: $editor-font-size-base !important;\n line-height: $editor-line-height-base !important;\n margin-top: 12px !important; // Increased spacing\n margin-bottom: 12px !important;\n \n &:first-child { margin-top: 0 !important; }\n }\n\n // Headings - Improved sizes and spacing\n .editor-h1 { font-size: 36px; line-height: 40px !important; font-weight: 700 !important; letter-spacing: -0.025em; margin-top: 32px !important; margin-bottom: 16px !important; }\n .editor-h2 { font-size: 30px; line-height: 36px !important; font-weight: 600 !important; letter-spacing: -0.025em; margin-top: 24px !important; margin-bottom: 12px !important; border-bottom: 1px solid $editor-border-color; padding-bottom: 5px; }\n .editor-h3 { font-size: 24px; line-height: 32px !important; font-weight: 600 !important; letter-spacing: -0.025em; margin-top: 24px !important; margin-bottom: 12px !important; }\n .editor-h4 { font-size: 20px; line-height: 28px !important; font-weight: 600 !important; margin-top: 20px !important; margin-bottom: 8px !important; }\n .editor-h5 { font-size: 18px; line-height: 28px !important; font-weight: 600 !important; margin-top: 20px !important; margin-bottom: 8px !important; }\n .editor-h6 { font-size: 16px; line-height: 24px !important; font-weight: 600 !important; margin-top: 20px !important; margin-bottom: 8px !important; }\n\n // Quote\n .editor-quote {\n margin: 24px 0 !important;\n padding-left: 16px !important;\n border-left: 4px solid $editor-quote-border-color !important;\n font-style: italic !important;\n color: #64748b !important; // slate-500\n }\n\n // Lists\n .editor-ol {\n list-style-type: decimal !important;\n padding-left: 24px !important;\n margin-top: 8px !important;\n margin-bottom: 8px !important;\n\n &[data-list-marker=\"alpha\"] {\n list-style-type: lower-alpha !important;\n }\n\n &[data-list-color] {\n li::marker { color: var(--list-marker-color, currentColor) !important; }\n }\n }\n\n .editor-ul:not(.editor-checklist) {\n padding-left: 24px !important;\n margin-top: 8px !important;\n margin-bottom: 8px !important;\n\n &:not([data-list-marker]) {\n list-style-type: disc !important;\n }\n\n &[data-list-marker=\"-\"] {\n list-style-type: none !important;\n > li::marker { content: \"- \" !important; }\n }\n &[data-list-marker=\"+\"] {\n list-style-type: none !important;\n > li::marker { content: \"+ \" !important; }\n }\n\n &[data-list-color] {\n li::marker { color: var(--list-marker-color, currentColor) !important; }\n }\n }\n\n .editor-listitem {\n margin-bottom: 4px !important;\n line-height: 1.6 !important;\n }\n\n .editor-checklist {\n list-style: none !important;\n padding: 0 !important;\n margin-top: 8px !important;\n margin-bottom: 8px !important;\n margin-left: 0 !important;\n margin-right: 0 !important;\n outline: none !important; // Prevent focus outline\n box-shadow: none !important; // Prevent focus ring\n\n .editor-listitem-checked,\n .editor-listitem-unchecked {\n display: flex; // Use Flexbox for natural alignment\n align-items: flex-start; // Align icon with the first line of text\n margin-left: 0;\n padding: 4px 0; // Vertical padding only\n list-style: none;\n outline: none;\n gap: 12px; // Space between icon and text\n\n // Checkbox Icon (using ::before as the visual container)\n &::before {\n content: \"\";\n width: 18px;\n height: 18px;\n flex-shrink: 0; // Prevent icon from shrinking\n margin-top: 3px; // Optical alignment with text cap-height (approx)\n cursor: pointer;\n display: block;\n border: 2px solid var(--list-marker-color, #{$editor-link-color}) !important;\n border-radius: 4px;\n box-sizing: border-box;\n transition: all 0.1s ease-in-out;\n background-position: center;\n background-repeat: no-repeat;\n background-size: 12px; // Size of the checkmark\n }\n }\n\n .editor-listitem-checked {\n text-decoration: line-through;\n color: #64748b;\n \n &::before {\n background-color: var(--list-marker-color, #{$editor-link-color}) !important;\n border-color: var(--list-marker-color, #{$editor-link-color}) !important;\n // SVG Checkmark\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 7.5L5.5 10L11 4.5'/%3E%3C/svg%3E\");\n }\n\n // Remove old ::after tick mark\n &::after {\n display: none;\n }\n }\n }\n\n // Remove the standalone .editor-listitem-checked/unchecked blocks if they exist elsewhere\n // But wait, are they used outside .editor-checklist?\n // Checklist items are only in checklists.\n\n\n .editor-nested-listitem {\n list-style: none;\n \n &::before, &::after { display: none; }\n }\n\n // List Depths\n $list-styles: (\n 1: decimal,\n 2: upper-roman,\n 3: lower-roman,\n 4: upper-alpha,\n 5: lower-alpha\n );\n\n @each $depth, $style in $list-styles {\n .editor-ol-depth-#{$depth} {\n list-style-type: $style !important;\n }\n .editor-ul-depth-#{$depth}:not(.editor-checklist) {\n &[data-list-marker=\"-\"] {\n list-style-type: none !important;\n li::marker { content: \"- \" !important; }\n }\n &[data-list-marker=\"+\"] {\n list-style-type: none !important;\n li::marker { content: \"+ \" !important; }\n }\n &:not([data-list-marker]) {\n list-style-type: disc !important;\n }\n }\n }\n\n // Code Block\n .editor-code {\n background-color: #fcfcfc;\n color: #1a1a1a;\n font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n display: block;\n padding: 16px 16px 16px 64px;\n line-height: 1.6;\n font-size: 14px;\n margin: 24px 0 !important;\n overflow-x: auto;\n border: 1px solid #e2e8f0;\n position: relative;\n border-radius: 8px;\n tab-size: 2;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05);\n\n &:before {\n content: attr(data-gutter);\n position: absolute;\n background-color: #f8fafc;\n border-right: 1px solid #e2e8f0;\n left: 0;\n top: 0;\n bottom: 0;\n padding: 16px 12px;\n color: #94a3b8;\n white-space: pre-wrap;\n text-align: right;\n min-width: 56px;\n font-variant-numeric: tabular-nums;\n user-select: none;\n font-size: 12px;\n }\n }\n\n // Hashtag\n .editor-hashtag {\n background-color: rgba($editor-primary-color, 0.1);\n color: $editor-primary-color;\n border-bottom: 1px solid $editor-primary-color;\n padding: 0 2px;\n }\n\n // Table Styles - Clean borders\n .editor-table {\n border-collapse: collapse;\n border-spacing: 0;\n width: 100%; // Fit to parent container\n // min-width: 100%; // Ensure it fills at least the container (redundant with width: 100%)\n table-layout: fixed; // Ensure accurate column resizing\n margin: 16px 0;\n // overflow-x: auto; // Removed: overflow should be handled by the container\n border-radius: $editor-border-radius;\n border: 1px solid $editor-border-color;\n \n .editor-table-cell,\n .editor-table-cell-header {\n min-width: 0 !important;\n border: 1px solid $editor-table-border-color;\n padding: 8px 6px; // Further reduced padding for better data density\n position: relative;\n text-align: left;\n vertical-align: top;\n }\n\n .editor-table-cell-header {\n background-color: $editor-table-header-bg;\n font-weight: 600;\n color: $editor-text-color;\n }\n\n .editor-table-cell-selected {\n background-color: rgba($editor-primary-color, 0.05);\n }\n \n .editor-table-cell-resizer {\n position: absolute;\n right: -4px;\n height: 100%;\n width: 8px;\n cursor: ew-resize;\n z-index: 10;\n top: 0;\n }\n \n .editor-table-cell-resize-ruler {\n display: block;\n position: absolute;\n width: 1px;\n height: 100%;\n background-color: $editor-primary-color;\n top: 0;\n }\n\n .editor-table-cell-action-button-container {\n display: block;\n right: 4px;\n top: 6px;\n position: absolute;\n z-index: 10;\n width: 20px;\n height: 20px;\n }\n\n .editor-table-cell-action-button {\n background-color: #eee;\n display: block;\n border: 0;\n border-radius: 20px;\n width: 20px;\n height: 20px;\n color: #222;\n cursor: pointer;\n\n &:hover {\n background-color: #ddd;\n }\n }\n \n .editor-table-cell-editing {\n box-shadow: 0 0 5px rgba(0,0,0,0.1);\n border-radius: 2px;\n }\n \n .editor-table-cell-primary-selected {\n border: 2px solid $editor-primary-color;\n display: block;\n height: calc(100% - 2px);\n width: calc(100% - 2px);\n position: absolute;\n left: -1px;\n top: -1px;\n z-index: 10;\n }\n \n .editor-table-cell-sorted-indicator {\n display: block;\n opacity: 0.5;\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 4px;\n background-color: $editor-muted-color;\n }\n \n .editor-table-row-striping {\n margin: 0;\n border-top: 1px solid $editor-border-color;\n padding: 0;\n \n &:nth-child(even) {\n background-color: $editor-muted-color;\n }\n }\n \n .editor-table-selected {\n outline: 2px solid $editor-primary-color;\n }\n \n .editor-table-selection {\n background-color: transparent;\n }\n }\n\n // Text Formatting\n .editor-link { color: $editor-link-color; text-decoration: none; &:hover { text-decoration: underline; cursor: pointer; } }\n .editor-text-bold { font-weight: 700 !important; }\n .editor-text-italic { font-style: italic !important; }\n .editor-text-underline { text-decoration: underline !important; }\n .editor-text-strikethrough { text-decoration: line-through !important; }\n .editor-text-underline-strikethrough { text-decoration: underline line-through !important; }\n .editor-text-subscript { vertical-align: sub !important; font-size: 0.8em !important; }\n .editor-text-superscript { vertical-align: super !important; font-size: 0.8em !important; }\n .editor-text-code { \n background-color: #f1f5f9; \n color: #0f172a;\n padding: 2px 6px; \n font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 14px; \n border-radius: 6px;\n border: 1px solid #e2e8f0;\n font-weight: 500;\n }\n\n // Text Alignment\n .editor-text-align-left {\n text-align: left !important;\n }\n \n .editor-text-align-center {\n text-align: center !important;\n }\n \n .editor-text-align-right {\n text-align: right !important;\n }\n \n .editor-text-align-justify {\n text-align: justify !important;\n }\n\n // Images\n .editor-image {\n display: inline-block;\n position: relative;\n cursor: default;\n user-select: none;\n \n img {\n max-width: 100%;\n height: auto;\n }\n }\n \n .editor-inline-image {\n display: inline-block;\n position: relative;\n z-index: 1;\n \n img {\n max-width: 100%;\n height: auto;\n }\n }\n\n .editor-image-focused {\n outline: 2px solid $editor-primary-color;\n outline-offset: 2px;\n }\n \n .editor-image-draggable {\n cursor: grab;\n \n &:active {\n cursor: grabbing;\n }\n }\n \n .editor-image-caption {\n display: block;\n min-width: 100px;\n overflow: hidden;\n padding: 0;\n margin-top: 8px;\n \n &.editable {\n border: 1px solid $editor-border-color;\n border-radius: $editor-border-radius;\n background-color: rgba(255, 255, 255, 0.9);\n }\n \n &.readonly {\n border: 0;\n background-color: transparent;\n }\n }\n \n .editor-lazy-image-wrapper {\n display: inline-block;\n \n &.full-width {\n width: 100%;\n }\n }\n\n // Broken Image\n .editor-broken-image-container {\n display: inline-block;\n width: 200px;\n height: 200px;\n \n img {\n opacity: 0.2;\n object-fit: contain;\n }\n }\n\n // Tweet\n .editor-tweet-container {\n display: block;\n width: 100%;\n max-width: 550px;\n }\n\n // Horizontal Rule\n .editor-hr {\n padding: 2px;\n border: none;\n margin: 1em 0;\n cursor: pointer;\n \n &:after {\n content: \"\";\n display: block;\n height: 2px;\n background-color: $editor-border-color;\n line-height: 2px;\n }\n \n &.selected {\n outline: 2px solid $editor-primary-color;\n user-select: none;\n }\n }\n\n // Embed Block\n .editor-embed-block {\n user-select: none;\n }\n \n .editor-embed-block-focused {\n outline: 2px solid $editor-primary-color;\n }\n \n // Autocomplete\n .editor-autocomplete {\n color: #9ca3af; // text-muted-foreground\n }\n\n\n}\n\n.editor-content-editable {\n position: relative !important;\n display: block !important;\n min-height: 288px !important; // min-h-72\n padding: 16px 32px !important; // py-4 px-8\n outline: none !important;\n \n &:focus {\n outline: none !important;\n }\n \n &--readonly {\n cursor: default !important;\n user-select: text !important;\n }\n}\n\n.editor-placeholder {\n color: var(--muted-foreground) !important;\n pointer-events: none !important;\n position: absolute !important;\n top: 0 !important;\n left: 0 !important;\n overflow: hidden !important;\n padding: 18px 32px !important; // py-[18px] px-8\n text-overflow: ellipsis !important;\n user-select: none !important;\n}\n","/**\n * Editor Theme Variables\n * Use these variables to customize the editor's appearance.\n * All variables use !default so they can be overridden by the consumer.\n */\n\n// Typography\n$editor-font-family: var(--font-inter), \"Inter\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif !default;\n$editor-font-size-base: 16px !default;\n$editor-line-height-base: 1.75 !default;\n\n// Colors - Compatible with Shadcn CSS Variables\n$editor-primary-color: var(--primary, #3b82f6) !default; // blue-500 fallback\n$editor-link-color: #3b82f6 !default; // Fixed link color (Blue 500) to ensure consistency across apps\n$editor-text-color: var(--foreground, #1f2937) !default; // gray-800 fallback\n$editor-bg-color: var(--background, transparent) !default;\n$editor-muted-color: var(--muted, #f3f4f6) !default; // gray-100 fallback\n$editor-border-color: var(--border, #d1d5db) !default; // gray-300 fallback\n$editor-quote-border-color: var(--input, #e5e7eb) !default; // gray-200 fallback\n$editor-accent-color: var(--accent, #f1f5f9) !default; // slate-100 fallback\n$editor-accent-foreground-color: var(--accent-foreground, #0f172a) !default; // slate-900 fallback\n\n// Layout\n$editor-border-radius: var(--radius, 8px) !default;\n$editor-spacing-unit: 8px !default;\n\n// Code\n$editor-code-bg: var(--muted, #f3f4f6) !default;\n$editor-code-color: var(--muted-foreground, #1f2937) !default;\n\n// Table\n$editor-table-border-color: var(--border, #d1d5db) !default;\n$editor-table-header-bg: var(--muted, #f9fafb) !default; // gray-50 fallback\n","/**\n * Editor Theme Mixins\n */\n\n@use \"variables\" as *;\n\n@mixin focus-ring {\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px $editor-bg-color;\n }\n}\n\n@mixin text-sm {\n font-size: 14px;\n line-height: 20px;\n}\n\n@mixin flex-center {\n display: flex;\n align-items: center;\n}\n\n@mixin flex-col {\n display: flex;\n flex-direction: column;\n}\n\n@mixin flex-center-justify {\n @include flex-center;\n justify-content: center;\n}\n\n@mixin shadow-sm {\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n}\n\n@mixin shadow-md {\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n}\n\n@mixin shadow-lg {\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n}\n\n@mixin shadow-xl {\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n}\n\n@mixin rounded-sm {\n border-radius: calc($editor-border-radius - 2px);\n}\n\n@mixin rounded-md {\n border-radius: $editor-border-radius;\n}\n\n@mixin rounded-lg {\n border-radius: calc($editor-border-radius + 4px);\n}\n\n// --- Unified Hover Styles ---\n@mixin editor-hover-base {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n border-color: $editor-accent-color;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);\n}\n\n@mixin editor-active-base {\n transform: translateY(0);\n box-shadow: none;\n}\n\n@mixin editor-button-interactive {\n &:hover:not(:disabled):not([data-state=\"on\"]) {\n @include editor-hover-base;\n }\n \n &:active:not(:disabled) {\n @include editor-active-base;\n }\n}\n\n// Interactive mixin for dropdown/menu items\n@mixin editor-dropdown-item-interactive {\n &:hover, &:focus, &--selected, &[aria-selected=\"true\"], &[data-selected=\"true\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n border-color: $editor-border-color; // Use border color for visibility\n }\n \n &:active {\n @include editor-active-base;\n }\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n@keyframes editor-fade-in {\n from { opacity: 0; transform: translateY(-10px); }\n to { opacity: 1; transform: translateY(0); }\n}\n","@use \"variables\" as *;\n@use \"mixins\" as *;\n\n/* --- TABS --- */\n.editor-tabs-trigger {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n white-space: nowrap;\n border-radius: calc(var(--radius) - 2px);\n padding: 0.375rem 0.75rem;\n font-size: 0.875rem;\n font-weight: 500;\n transition: all 0.2s;\n cursor: pointer;\n border: none;\n background: transparent;\n color: var(--muted-foreground);\n\n @include focus-ring;\n\n &:disabled {\n pointer-events: none;\n opacity: 0.5;\n }\n\n &[data-state=\"active\"] {\n background-color: var(--background);\n color: var(--foreground);\n @include shadow-sm;\n }\n}\n\n.editor-tabs-list {\n display: inline-flex;\n height: 2.5rem;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius);\n background-color: var(--muted);\n padding: 0.25rem;\n color: var(--muted-foreground);\n}\n\n.editor-tabs-content {\n margin-top: 0.5rem;\n @include focus-ring;\n}\n\n/* --- FLEX Component Utilities --- */\n.editor-flex {\n display: flex;\n \n // Align\n &--items-start { align-items: flex-start; }\n &--items-center { align-items: center; }\n &--items-end { align-items: flex-end; }\n &--items-baseline { align-items: baseline; }\n &--items-stretch { align-items: stretch; }\n \n // Justify\n &--justify-start { justify-content: flex-start; }\n &--justify-center { justify-content: center; }\n &--justify-end { justify-content: flex-end; }\n &--justify-between { justify-content: space-between; }\n &--justify-around { justify-content: space-around; }\n &--justify-evenly { justify-content: space-evenly; }\n \n // Direction\n &--flex-row { flex-direction: row; }\n &--flex-col { flex-direction: column; }\n &--flex-column { flex-direction: column; }\n &--flex-row-reverse { flex-direction: row-reverse; }\n &--flex-col-reverse { flex-direction: column-reverse; }\n &--flex-column-reverse { flex-direction: column-reverse; }\n \n // Wrap\n &--flex-nowrap { flex-wrap: nowrap; }\n &--flex-wrap { flex-wrap: wrap; }\n &--flex-wrap-reverse { flex-wrap: wrap-reverse; }\n}\n\n.editor-flex-1 {\n flex: 1 1 0%;\n}\n\n.editor-w-full {\n width: 100%;\n}\n\n.editor-w-14 {\n width: 3.5rem;\n}\n\n.editor-w-48 {\n width: 12rem;\n}\n\n.editor-w-\\[200px\\] {\n width: 200px;\n}\n\n.editor-h-full {\n height: 100%;\n}\n\n.editor-h-4 {\n height: 1rem;\n}\n\n.editor-overflow-hidden {\n overflow: hidden;\n}\n\n.editor-fixed {\n position: fixed;\n}\n\n.editor-absolute {\n position: absolute;\n}\n\n.editor-absolute-full {\n position: absolute;\n inset: 0;\n}\n\n.editor-relative {\n position: relative;\n}\n\n.editor-relative-full {\n position: relative;\n width: 100%;\n height: 100%;\n}\n\n.editor-inline-block {\n display: inline-block;\n}\n\n.editor-block {\n display: block;\n}\n\n.editor-inset-0 {\n inset: 0;\n}\n\n.editor-pointer-events-none {\n pointer-events: none;\n}\n\n.editor-select-none {\n user-select: none;\n}\n\n.editor-text-ellipsis {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.editor-z-10 {\n z-index: 10;\n}\n\n/* --- ROUNDED --- */\n.editor-rounded-sm { border-radius: calc(var(--radius) - 4px); }\n.editor-rounded-md { border-radius: calc(var(--radius) - 2px); }\n.editor-rounded-lg { border-radius: var(--radius); }\n.editor-rounded-full { border-radius: 9999px; }\n\n/* --- SHADOW --- */\n.editor-shadow-sm { @include shadow-sm; }\n.editor-shadow-md { @include shadow-md; }\n.editor-shadow-lg { @include shadow-lg; }\n\n/* --- BACKGROUNDS --- */\n.editor-bg-background { background-color: var(--background); }\n.editor-bg-primary { background-color: $editor-primary-color; }\n.editor-bg-muted { background-color: var(--muted); }\n.editor-bg-accent { background-color: $editor-accent-color; }\n.editor-bg-transparent { background-color: transparent; }\n.editor-bg-none { background: none; }\n\n/* --- MARGINS --- */\n.editor-mb-2 { margin-bottom: 0.5rem; }\n.editor-mb-3 { margin-bottom: 0.75rem; }\n.editor-mt-1 { margin-top: 0.25rem; }\n.editor-ml-auto { margin-left: auto; }\n.editor-ml-4 { margin-left: 1rem; }\n.editor-px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }\n.editor-px-8 { padding-left: 2rem; padding-right: 2rem; }\n.editor-py-18 { padding-top: 18px; padding-bottom: 18px; }\n\n/* --- SIZES --- */\n.editor-h-2 { height: 0.5rem; }\n.editor-w-2 { width: 0.5rem; }\n\n/* --- POSITIONING --- */\n.editor--top-2-5 { top: -0.625rem; }\n.editor--right-2-5 { right: -0.625rem; }\n.editor--bottom-2-5 { bottom: -0.625rem; }\n.editor--left-2-5 { left: -0.625rem; }\n.editor-top-1-2 { top: 50%; }\n.editor-left-1-2 { left: 50%; }\n.editor-translate-x-1-2 { transform: translateX(-50%); }\n.editor-translate-y-1-2 { transform: translateY(-50%); }\n\n/* --- CURSORS --- */\n.editor-cursor-ns-resize { cursor: ns-resize; }\n.editor-cursor-ew-resize { cursor: ew-resize; }\n.editor-cursor-nesw-resize { cursor: nesw-resize; }\n.editor-cursor-nwse-resize { cursor: nwse-resize; }\n\n/* --- TEXT UTILITIES --- */\n.editor-text-muted-xs {\n font-size: 0.75rem;\n color: var(--muted-foreground);\n}\n\n.editor-text-sm {\n font-size: 0.875rem;\n}\n\n.editor-font-medium {\n font-weight: 500;\n}\n\n/* --- UTILITIES --- */\n.editor-text-muted-foreground { color: var(--muted-foreground); }\n.editor-block { display: block; }\n.editor-inline { display: inline; }\n.editor-inline-block { display: inline-block; }\n.editor-min-h-5 { min-height: 1.25rem; }\n.editor-resize-none { resize: none; }\n.editor-border-0 { border-width: 0; }\n.editor-bg-transparent { background-color: transparent; }\n.editor-px-2\\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }\n.editor-py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }\n.editor-whitespace-pre-wrap { white-space: pre-wrap; }\n.editor-outline-none { outline: 2px solid transparent; outline-offset: 2px; }\n.editor-word-break-break-word { word-break: break-word; }\n.editor-box-border { box-sizing: border-box; }\n.editor-cursor-text { cursor: text; }\n.editor-caret-primary { caret-color: var(--primary); }\n.editor-user-select-text { user-select: text; }\n.editor-cursor-default { cursor: default; }\n.editor-select-text { user-select: text; }\n.editor-top-0 { top: 0; }\n.editor-left-0 { left: 0; }\n.editor-text-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.editor-opacity-30 { opacity: 0.3; }\n.editor-p-1 { padding: 0.25rem; }\n.editor-p-2 { padding: 0.5rem; }\n.editor-px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }\n.editor-px-0 { padding-left: 0; padding-right: 0; }\n.editor-rotate-90 { transform: rotate(90deg); }\n.editor-transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }\n.editor-shrink-0 { flex-shrink: 0; }\n.editor-flex-grow { flex-grow: 1; }\n.editor-flex-end { display: flex; justify-content: flex-end; align-items: center; }\n.editor-ml-auto { margin-left: auto; }\n.editor-ml-4 { margin-left: 1rem; }\n.editor-mr-1-5 { margin-right: 0.375rem; }\n.editor-mt-1 { margin-top: 0.25rem; }\n.editor-mt-2 { margin-top: 0.5rem; }\n.editor-mb-2 { margin-bottom: 0.5rem; }\n.editor-mb-3 { margin-bottom: 0.75rem; }\n.editor-gap-1 { gap: 0.25rem; }\n.editor-gap-2 { gap: 0.5rem; }\n.editor-items-center { align-items: center; }\n.editor-justify-center { justify-content: center; }\n.editor-flex-col { flex-direction: column; }\n.editor-flex-wrap { flex-wrap: wrap; }\n.editor-cursor-pointer { cursor: pointer; }\n.editor-border { border: 1px solid var(--border); }\n.editor-border-transparent { border-color: transparent; }\n.editor-uppercase { text-transform: uppercase; }\n.editor-transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }\n.editor-animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }\n.editor-whitespace-nowrap { white-space: nowrap; }\n.editor-text-foreground-50 { color: color-mix(in srgb, var(--foreground), transparent 50%); }\n\n@keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: .5; }\n}\n\n.editor-flex-center-justify-py-8 {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-top: 2rem;\n padding-bottom: 2rem;\n}\n\n.editor-object-cover { object-fit: cover; }\n\n.editor-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n/* --- ICONS --- */\n.editor-icon-xs { width: 0.75rem; height: 0.75rem; } // 12px\n.editor-icon-sm { width: 1rem; height: 1rem; } // 16px\n.editor-icon-md { width: 1.25rem; height: 1.25rem; } // 20px\n.editor-icon-lg { width: 1.5rem; height: 1.5rem; } // 24px\n.editor-icon-xl { width: 2rem; height: 2rem; } // 32px\n\n/* --- TYPOGRAPHY --- */\n.editor-typography-p {\n line-height: 1.75rem;\n &:not(:first-child) { margin-top: 1.5rem; }\n}\n\n.editor-typography-p-small {\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1;\n}\n\n.editor-typography-span-small-muted {\n font-size: 0.875rem;\n color: var(--muted-foreground);\n}\n\n/* --- TOGGLE GROUP --- */\n.editor-toggle-group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n gap: 0.25rem;\n}\n\n.editor-toggle-group-item {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius);\n font-size: 0.875rem;\n font-weight: 500;\n background-color: transparent;\n color: var(--foreground);\n transition: all 0.2s;\n cursor: pointer;\n border: 1px solid transparent;\n padding: 0.5rem;\n line-height: 1;\n\n &:hover {\n background-color: var(--muted);\n color: var(--muted-foreground);\n }\n\n &[data-state=\"on\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n }\n\n &--size-sm {\n padding: 0.25rem;\n font-size: 0.75rem;\n }\n\n &--size-lg {\n padding: 0.75rem;\n font-size: 1rem;\n }\n\n &--outline {\n border-color: var(--border);\n &:hover {\n background-color: $editor-accent-color;\n border-color: $editor-accent-color;\n }\n }\n\n &:disabled {\n pointer-events: none;\n opacity: 0.5;\n }\n}\n\n/* --- BUTTON --- */\n.editor-btn {\n @include flex-center-justify;\n white-space: nowrap;\n border-radius: var(--radius);\n font-weight: 500;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n @include text-sm;\n @include focus-ring;\n border: 1px solid var(--input); // Default border\n cursor: pointer;\n\n &:disabled {\n pointer-events: none;\n opacity: 0.5;\n }\n\n &[data-state=\"on\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n border-color: $editor-accent-color;\n }\n\n &--default {\n background-color: var(--primary);\n color: var(--primary-foreground);\n border-color: var(--primary);\n &:hover {\n background-color: color-mix(in srgb, var(--primary), black 10%);\n }\n }\n\n &--destructive {\n background-color: var(--destructive);\n color: var(--destructive-foreground);\n border-color: var(--destructive);\n &:hover {\n background-color: color-mix(in srgb, var(--destructive), black 10%);\n }\n }\n\n &--outline {\n border-color: var(--input);\n background-color: var(--background);\n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n }\n\n &--secondary {\n background-color: var(--secondary);\n color: var(--secondary-foreground);\n border-color: transparent;\n &:hover {\n background-color: color-mix(in srgb, var(--secondary), black 10%);\n }\n }\n\n &--ghost {\n background-color: transparent;\n border-color: transparent;\n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n }\n\n &--link {\n color: var(--primary);\n text-decoration-line: underline;\n text-underline-offset: 4px;\n background-color: transparent;\n &:hover {\n text-decoration-line: underline;\n }\n }\n\n /* Sizes */\n &--size-default {\n height: 2.25rem; /* h-9 */\n padding-left: 1rem;\n padding-right: 1rem;\n }\n &--size-sm {\n height: 2rem; /* h-8 */\n border-radius: calc(var(--radius) - 2px);\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n font-size: 0.75rem; /* xs */\n }\n &--size-md {\n height: 2.25rem; /* h-9 */\n width: 2.25rem; /* w-9 */\n padding: 0;\n }\n &--size-lg {\n height: 2.5rem; /* h-10 */\n border-radius: calc(var(--radius) + 2px);\n padding-left: 2rem;\n padding-right: 2rem;\n }\n &--size-icon {\n height: 2.25rem; /* h-9 */\n width: 2.25rem; /* w-9 */\n padding: 0;\n }\n}\n\n/* --- BUTTON GROUP --- */\n.editor-button-group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 0.25rem;\n}\n\n/* --- SEPARATOR --- */\n.editor-separator {\n background-color: var(--border);\n flex-shrink: 0;\n\n &--horizontal {\n height: 1px;\n width: 100%;\n }\n\n &--vertical {\n width: 1px;\n height: 100%;\n min-height: 1.5rem;\n }\n}\n\n/* --- INPUT --- */\n.editor-input {\n display: flex;\n height: 2.25rem; /* h-9 */\n width: 100%;\n border-radius: var(--radius);\n border: 1px solid var(--input);\n background-color: var(--background);\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n @include text-sm;\n \n &::file-selector-button {\n border: 0;\n background-color: transparent;\n font-size: 0.875rem;\n font-weight: 500;\n }\n \n &::placeholder {\n color: var(--muted-foreground);\n }\n \n &:focus {\n border-color: var(--primary);\n box-shadow: 0 0 0 2px var(--ring);\n outline: none;\n }\n \n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background);\n }\n \n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &:hover:not(:disabled):not([readonly]) {\n background-color: color-mix(in srgb, var(--background), black 3%);\n color: black !important;\n border-color: $editor-accent-color;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);\n }\n\n /* Hide spin buttons for input[type=number] */\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n \n &[type=number] {\n -moz-appearance: textfield;\n }\n}\n\n/* --- INPUT GROUP ITEM --- */\n.editor-input-group-item {\n &--first {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n &--middle {\n border-radius: 0;\n border-left-width: 0;\n }\n &--last {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-left-width: 0;\n }\n}\n\n/* --- LABEL --- */\n.editor-label {\n @include text-sm;\n font-weight: 500;\n line-height: 1;\n \n &--disabled {\n cursor: not-allowed;\n opacity: 0.7;\n }\n}\n\n/* --- DIALOG --- */\n@keyframes editor-dialog-zoom-in {\n from {\n opacity: 0;\n transform: translate(-50%, -48%) scale(0.95);\n }\n to {\n opacity: 1;\n transform: translate(-50%, -50%) scale(1);\n }\n}\n\n@keyframes editor-fade-in {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n@keyframes editor-popover-zoom-in {\n from {\n opacity: 0;\n transform: scale(0.95);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n\n.editor-dialog-overlay {\n position: fixed;\n inset: 0;\n z-index: 50;\n background-color: rgba(0, 0, 0, 0.4); /* Lighter backdrop for better feel */\n backdrop-filter: blur(4px);\n animation: editor-fade-in 0.2s ease-out;\n \n &[data-state=\"open\"] {\n animation: editor-fade-in 0.2s ease-out;\n }\n}\n\n.editor-dialog-content {\n position: fixed;\n left: 50%;\n top: 50%;\n z-index: 51;\n display: grid;\n width: 100%;\n max-width: 32rem; /* max-w-lg */\n transform: translate(-50%, -50%);\n gap: 1.5rem;\n border: 1px solid var(--border);\n background-color: var(--background);\n padding: 1.5rem;\n @include shadow-lg;\n border-radius: calc(var(--radius) + 4px); /* rounded-lg */\n animation: editor-dialog-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);\n\n &--lg {\n max-width: 50rem;\n }\n\n &__close {\n position: absolute;\n right: 1rem;\n top: 1rem;\n border-radius: var(--radius);\n opacity: 0.7;\n background: transparent;\n border: none;\n cursor: pointer;\n transition: opacity 0.2s;\n \n &:hover {\n opacity: 1;\n }\n \n @include focus-ring;\n }\n}\n\n.editor-dialog-header {\n display: flex;\n flex-direction: column;\n gap: 0.375rem; /* space-y-1.5 */\n text-align: center;\n \n @media (min-width: 640px) {\n text-align: left;\n }\n\n &__title {\n font-size: 1.125rem; /* text-lg */\n font-weight: 600;\n line-height: 1;\n margin: 0;\n }\n\n &__description {\n @include text-sm;\n color: var(--muted-foreground);\n margin: 0;\n }\n}\n\n.editor-dialog-footer {\n display: flex;\n flex-direction: column-reverse;\n gap: 0.5rem; /* sm:space-x-2 */\n \n @media (min-width: 640px) {\n flex-direction: row;\n justify-content: flex-end;\n }\n}\n\n/* --- POPOVER --- */\n.editor-popover-content {\n z-index: 50;\n width: 18rem; /* w-72 */\n border-radius: var(--radius);\n border: 1px solid var(--border);\n background-color: var(--popover);\n color: var(--popover-foreground);\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); /* shadow-md */\n padding: 1rem;\n outline: none;\n animation: editor-popover-zoom-in 0.1s ease-out;\n}\n\n/* --- SELECT (Native styling wrapper) --- */\n.editor-select {\n display: flex;\n height: 2.25rem; /* h-9 */\n width: 100%;\n align-items: center;\n justify-content: space-between;\n border-radius: var(--radius);\n border: 1px solid var(--input);\n background-color: var(--background);\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n @include text-sm;\n \n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background);\n }\n \n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n \n /* Sizes */\n &--size-default {\n height: 2.25rem; /* h-9 */\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n }\n \n &--size-sm {\n height: 2rem; /* h-8 */\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n font-size: 0.75rem; /* xs */\n }\n \n &--size-lg {\n height: 2.5rem; /* h-10 */\n padding-left: 1rem;\n padding-right: 1rem;\n }\n \n &--size-icon {\n height: 2.25rem; /* h-9 */\n width: 2.25rem; /* w-9 */\n padding: 0;\n justify-content: center;\n \n // Hide chevron if it's an icon button, or make it small overlay? \n // Usually icon select trigger implies the content IS the icon.\n .editor-select-icon {\n display: none; \n }\n }\n\n &--w-auto {\n width: auto;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n min-width: 7rem; // 112px - Ensures button isn't too narrow\n justify-content: space-between; // Ensure content is spaced if it's a select\n }\n\n &--gap-sm {\n gap: 0.5rem;\n }\n}\n\n.editor-select-item {\n position: relative;\n display: flex;\n width: 100%;\n cursor: pointer;\n user-select: none;\n align-items: center;\n gap: 0.5rem;\n border-radius: 0.125rem; /* rounded-sm */\n padding: 0.375rem 0.5rem 0.375rem 2rem; /* py-1.5 pl-8 pr-2 */\n font-size: 0.875rem; /* text-sm */\n outline: none;\n\n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n \n &[data-selected=\"true\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n \n &__check {\n position: absolute;\n left: 0.5rem; /* left-2 */\n display: flex;\n height: 0.875rem; /* h-3.5 */\n width: 0.875rem; /* w-3.5 */\n align-items: center;\n justify-content: center;\n }\n}\n\n.editor-select-label {\n padding: 0.375rem 0.5rem 0.375rem 2rem;\n font-size: 0.875rem;\n font-weight: 600;\n}\n\n.editor-block-format-label {\n max-width: 80px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* --- TOGGLE --- */\n.editor-toggle {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: calc(var(--radius) - 2px); // rounded-md\n font-size: 0.875rem; // text-sm\n font-weight: 500;\n transition-property: color, background-color, border-color;\n transition-duration: 150ms;\n background-color: transparent;\n border: 1px solid transparent;\n cursor: pointer;\n \n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background);\n }\n\n &:disabled {\n pointer-events: none;\n opacity: 0.5;\n }\n\n &[data-state=\"on\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n }\n\n &--outline {\n border-color: var(--input);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); // shadow-sm\n &:hover {\n background-color: color-mix(in srgb, $editor-accent-color, black 50%);\n color: $editor-accent-foreground-color;\n }\n }\n\n &--ghost {\n &:hover {\n background-color: color-mix(in srgb, $editor-accent-color, black 50%);\n color: $editor-accent-foreground-color;\n }\n }\n\n &--size-default {\n height: 2.25rem; // h-9\n padding-left: 0.75rem; // px-3\n padding-right: 0.75rem;\n }\n\n &--size-sm {\n height: 2rem; // h-8\n padding-left: 0.5rem; // px-2\n padding-right: 0.5rem;\n font-size: 0.75rem; // text-xs\n }\n \n &--size-lg {\n height: 2.5rem; // h-10\n padding-left: 0.75rem; // px-3\n padding-right: 0.75rem;\n }\n}\n","@use \"variables\" as *;\n@use \"mixins\" as *;\n\n// ==========================================\n// 1. KEYFRAMES\n// ==========================================\n\n// Keyframes are now in mixins.scss as shared animations\n\n// ==========================================\n// 2. COMMON UTILITIES & SHARED COMPONENTS\n// ==========================================\n\n.editor-icon-sm {\n width: 15px; // 15px\n height: 15px;\n}\n\n.editor-icon-xs {\n width: 14px; // 14px\n height: 14px;\n}\n\n.editor-loader {\n width: 24px;\n height: 24px;\n animation: spin 1s linear infinite;\n color: var(--muted-foreground);\n}\n\n.editor-checkbox {\n height: 16px; // h-4\n width: 16px; // w-4\n @include rounded-sm;\n border: 1px solid var(--input);\n cursor: pointer;\n \n &:checked {\n background-color: var(--primary);\n border-color: var(--primary);\n }\n}\n\n.editor-label--normal {\n font-weight: 400;\n cursor: pointer;\n}\n\n.editor-shrink-0 {\n flex-shrink: 0;\n}\n\n.editor-flex-grow {\n flex-grow: 1;\n}\n\n.editor-flex-1 {\n flex: 1 1 0%;\n}\n\n.editor-flex-end {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 4px;\n flex-wrap: nowrap;\n flex-shrink: 0;\n}\n\n.editor-flex-row-center {\n display: flex;\n align-items: center;\n gap: 8px; // gap-2\n \n &--pointer {\n cursor: pointer;\n }\n}\n\n.editor-flex-center-justify-py-8 {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-top: 32px;\n padding-bottom: 32px;\n}\n\n.editor-flex-col-gap-2 {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.editor-flex-col-gap-4 {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.editor-absolute-full {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n}\n\n.editor-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.editor-object-cover {\n object-fit: cover;\n}\n\n.editor-transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n.editor-rotate-90 {\n transform: rotate(90deg);\n}\n\n.editor-rounded-sm {\n border-radius: calc(var(--radius) - 2px);\n}\n\n.editor-font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n.editor-mb-2 {\n margin-bottom: 8px;\n}\n\n.editor-mb-3 {\n margin-bottom: 12px;\n}\n\n.editor-mt-1 {\n margin-top: 4px;\n}\n\n.editor-ml-auto {\n margin-left: auto;\n}\n\n.editor-ml-4 {\n margin-left: 16px;\n}\n\n.editor-w-14 {\n width: 56px;\n}\n\n.editor-w-full {\n width: 100%;\n}\n\n.editor-h-full {\n height: 100%;\n}\n\n// ==========================================\n// 3. TOOLBAR COMPONENTS\n// ==========================================\n\n.editor-toolbar {\n position: sticky;\n top: 0; // Will be overridden by inline style from ToolbarPlugin\n z-index: 20;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px; // gap-1\n border-bottom: 1px solid var(--border);\n border-top-left-radius: var(--radius);\n border-top-right-radius: var(--radius);\n background-color: white; // Ensure solid background\n padding: 4px; // p-1\n @include shadow-sm;\n width: 100%;\n overflow-x: visible;\n overflow-y: visible;\n white-space: normal;\n\n @supports (backdrop-filter: blur(4px)) {\n background-color: rgba(255, 255, 255, 0.8);\n backdrop-filter: blur(4px);\n }\n}\n\n.editor-toolbar-group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px; // gap-1\n padding: 4px; // p-1\n border-radius: var(--radius);\n}\n\n.editor-toolbar-item {\n height: 36px; // h-9\n width: 36px; // w-9\n padding: 0;\n border: 1px solid var(--border);\n border-radius: var(--radius);\n background-color: var(--background);\n transition: all 0.2s;\n\n @include editor-button-interactive;\n \n &[data-state=\"on\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n border-color: $editor-accent-color;\n }\n\n &--lg {\n height: 40px !important; // h-10\n width: 40px !important; // w-10\n }\n \n &--w-fit {\n width: fit-content;\n }\n \n &--w-auto {\n width: auto;\n padding-left: 8px;\n padding-right: 8px;\n }\n\n &--gap-sm {\n gap: 4px;\n }\n \n &--bg-background {\n background-color: var(--background);\n }\n \n &--text-center {\n text-align: center;\n }\n}\n\n.editor-toolbar-separator {\n height: 24px !important; // h-6 (standard separator height)\n margin-left: 4px;\n margin-right: 4px;\n}\n\n.editor-toolbar-select-trigger {\n height: 36px; // h-9\n width: auto;\n gap: 8px; // gap-2\n padding-left: 8px; // px-2\n padding-right: 8px;\n font-size: 12px; // text-xs\n font-weight: 500;\n border: 1px solid var(--border);\n border-radius: var(--radius);\n transition: all 0.2s;\n \n &:hover:not(:disabled) {\n @include editor-hover-base;\n }\n\n &:active:not(:disabled) {\n @include editor-active-base;\n }\n \n &:focus {\n box-shadow: 0 0 0 2px var(--ring);\n outline: none;\n }\n\n &--w-md {\n width: 160px;\n }\n}\n\n.editor-toolbar-select-icon {\n height: 16px; // h-4\n width: 16px; // w-4\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 8px; // mr-2\n}\n\n.editor-format-select-trigger {\n width: 72px !important;\n min-width: 72px !important;\n flex-shrink: 0;\n}\n\n// ==========================================\n// 4. FLOATING TOOLBARS & OVERLAYS\n// ==========================================\n\n@keyframes editor-floating-zoom-in {\n from {\n opacity: 0;\n transform: scale(0.95) translateY(4px);\n }\n to {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n}\n\n.editor-floating-toolbar {\n background-color: rgba(var(--background-rgb, 255, 255, 255), 0.85);\n backdrop-filter: blur(8px);\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n max-width: 560px;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px; // gap-1\n @include rounded-md;\n border: 1px solid var(--border);\n padding: 4px; // p-1\n opacity: 0;\n @include shadow-lg;\n transition: opacity 200ms ease, transform 200ms ease;\n will-change: transform;\n z-index: 50;\n\n &--visible {\n opacity: 1;\n animation: editor-floating-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);\n }\n}\n\n.editor-floating-text-format {\n background-color: var(--background);\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n align-items: center;\n gap: 4px; // gap-1\n @include rounded-md;\n border: 1px solid var(--border);\n padding: 4px; // p-1\n opacity: 0;\n @include shadow-lg;\n transition: opacity 200ms ease, transform 200ms ease;\n will-change: transform;\n z-index: 50;\n \n // Backdrop blur if supported\n @supports (backdrop-filter: blur(4px)) {\n background-color: rgba(var(--background-rgb, 255, 255, 255), 0.8);\n backdrop-filter: blur(8px);\n }\n\n // Dark mode adjustment\n .dark & {\n @supports (backdrop-filter: blur(4px)) {\n background-color: rgba(var(--background-rgb, 15, 15, 15), 0.8);\n }\n }\n \n // Hover effect for the whole bar\n &:hover {\n @include shadow-xl;\n }\n\n &--visible {\n opacity: 1;\n animation: editor-floating-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);\n }\n\n // Divider between groups\n .editor-separator--vertical {\n height: 20px;\n width: 1px;\n margin: 0 4px;\n background-color: var(--border);\n }\n\n // Custom styling for buttons in floating toolbar\n .editor-toggle-group-item, .editor-btn, .editor-toolbar-item {\n border: none;\n border-radius: calc(var(--radius, 8px) - 4px);\n height: 30px; // 30px\n width: 30px;\n padding: 0;\n background-color: transparent;\n transition: all 0.2s;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n\n &[data-state=\"on\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n font-weight: bold;\n }\n\n &--active {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color !important;\n }\n }\n\n // Group of buttons with border as requested\n .editor-floating-group, .editor-floating-group--lg {\n display: flex;\n align-items: center;\n gap: 2px;\n padding: 2px;\n border-radius: calc(var(--radius, 8px) - 2px);\n // Remove border from inner groups to make it cleaner\n border: none;\n background-color: transparent;\n }\n}\n\n// ==========================================\n// 5. PLUGIN SPECIFIC STYLES\n// ==========================================\n\n// --- List Color Plugin ---\n.editor-list-color-dialog {\n padding: 8px 0;\n animation: editor-fade-in 0.3s ease-out;\n}\n\n.editor-list-color-trigger {\n height: 44px;\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 12px;\n @include rounded-md;\n border: 1px solid var(--input);\n padding: 0 16px;\n background-color: var(--background);\n transition: all 0.2s;\n @include shadow-sm;\n\n @include editor-button-interactive;\n}\n\n// --- Color Picker ---\n.editor-color-picker-content {\n display: flex;\n flex-direction: column;\n gap: 16px; // gap-4\n padding: 16px; // p-4\n}\n\n.editor-color-picker-area {\n position: relative;\n height: 160px; // h-40\n width: 100%;\n cursor: crosshair;\n touch-action: none;\n @include rounded-sm;\n border: 1px solid var(--border);\n overflow: hidden;\n\n &[data-disabled=\"true\"] {\n pointer-events: none;\n opacity: 0.5;\n }\n}\n\n.editor-slider-root {\n position: relative;\n display: flex;\n width: 100%;\n touch-action: none;\n align-items: center;\n user-select: none;\n \n &[data-disabled] {\n opacity: 0.5;\n pointer-events: none;\n }\n}\n\n.editor-slider-track {\n position: relative;\n height: 12px; // h-3\n width: 100%;\n flex-grow: 1;\n overflow: hidden;\n border-radius: 9999px; // rounded-full\n}\n\n.editor-slider-thumb {\n display: block;\n height: 16px; // size-4\n width: 16px;\n border-radius: 9999px; // rounded-full\n border: 1px solid var(--border); // border-primary/50\n background-color: var(--background);\n @include shadow-sm;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px var(--ring);\n }\n}\n\n.editor-color-swatch {\n box-sizing: border-box;\n height: 32px; // size-8\n width: 32px;\n @include rounded-sm;\n border: 1px solid var(--border);\n @include shadow-sm;\n\n &--disabled {\n opacity: 0.5;\n }\n}\n\n.editor-color-presets {\n display: flex;\n align-items: center;\n gap: 8px; // gap-2\n width: 100%;\n}\n\n.editor-color-preset-item {\n height: 32px; // h-8\n padding-left: 8px; // px-2\n padding-right: 8px;\n flex: 1;\n \n &__preview {\n height: 12px; // size-3\n width: 12px;\n border-radius: 9999px;\n border: 1px solid var(--border);\n }\n \n &__label {\n font-family: monospace;\n font-size: 12px; // text-xs\n }\n}\n\n.editor-color-value-text {\n color: var(--muted-foreground);\n font-family: monospace;\n font-size: 12px;\n font-variant-numeric: tabular-nums;\n}\n\n// --- Table Plugin ---\n.editor-table-dialog {\n display: grid;\n gap: 20px;\n padding: 8px 0;\n animation: editor-fade-in 0.3s ease-out;\n\n &__group {\n @include flex-col;\n gap: 8px;\n }\n\n &__checkbox-group {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-top: 8px;\n }\n}\n\n// --- Image Plugin & Dialog Forms ---\n.editor-form-grid {\n display: grid;\n gap: 16px;\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n.editor-form-item {\n display: grid;\n gap: 8px;\n}\n\n.editor-image-grid {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 8px;\n margin-bottom: 12px;\n}\n\n.editor-image-btn {\n position: relative;\n aspect-ratio: 1 / 1;\n @include rounded-sm;\n overflow: hidden;\n border: 2px solid transparent;\n transition: all 0.2s;\n cursor: pointer;\n padding: 0;\n \n &--selected {\n border-color: var(--primary);\n box-shadow: 0 0 0 2px var(--primary), 0 0 0 4px var(--background);\n }\n \n &:hover:not(&--selected) {\n border-color: color-mix(in srgb, var(--primary), transparent 50%);\n }\n}\n\n.editor-folder-tree-trigger {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n padding: 6px 8px;\n @include rounded-sm;\n transition: background-color 0.2s;\n text-align: left;\n border: none;\n background: transparent;\n \n &:hover {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n}\n\n.editor-tree-content {\n margin-left: 16px;\n margin-top: 4px;\n}\n\n.editor-empty-state {\n text-align: center;\n padding-top: 32px;\n padding-bottom: 32px;\n}\n\n.editor-scroll-area {\n max-height: 350px;\n overflow-y: auto;\n padding: 8px;\n border: 1px solid var(--border);\n @include rounded-sm;\n}\n\n.editor-tabs-list {\n width: 100%;\n display: flex;\n}\n\n.editor-tabs-trigger {\n flex: 1;\n}\n\n// --- Image Resizer ---\n.editor-image-resizer {\n &-wrapper {\n // Wrapper for handles if needed, or just container logic\n // Currently handles are absolute, relative to image container\n }\n\n &-handle {\n position: absolute;\n width: 10px; // Slightly larger for better grab area\n height: 10px;\n background-color: $editor-primary-color; // Using editor primary color\n border: 1px solid $editor-bg-color; // White border for contrast\n z-index: 50; // Ensure on top of image\n transition: background-color 0.2s;\n\n &:hover {\n background-color: $editor-accent-color; // Highlight on hover\n }\n\n // Directions\n &--n {\n top: -5px;\n left: 50%;\n transform: translateX(-50%);\n cursor: ns-resize;\n }\n\n &--ne {\n top: -5px;\n right: -5px;\n cursor: nesw-resize;\n }\n\n &--e {\n top: 50%;\n right: -5px;\n transform: translateY(-50%);\n cursor: ew-resize;\n }\n\n &--se {\n bottom: -5px;\n right: -5px;\n cursor: nwse-resize;\n }\n\n &--s {\n bottom: -5px;\n left: 50%;\n transform: translateX(-50%);\n cursor: ns-resize;\n }\n\n &--sw {\n bottom: -5px;\n left: -5px;\n cursor: nesw-resize;\n }\n\n &--w {\n top: 50%;\n left: -5px;\n transform: translateY(-50%);\n cursor: ew-resize;\n }\n\n &--nw {\n top: -5px;\n left: -5px;\n cursor: nwse-resize;\n }\n }\n}\n\n// --- Layout Plugin ---\n.editor-layout-dialog-grid {\n display: grid;\n grid-template-columns: repeat(1, minmax(0, 1fr));\n gap: 0.75rem; // gap-3\n \n @media (min-width: 768px) {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n.editor-layout-dialog-group {\n display: flex;\n flex-direction: column;\n gap: 0.375rem; // Slightly increased\n}\n\n.editor-layout-color-trigger {\n height: 2.75rem; // h-11\n width: 100%;\n justify-content: flex-start;\n gap: 0.5rem; // gap-2\n padding-left: 0.5rem; // px-2\n padding-right: 0.5rem;\n font-size: 0.75rem; // text-xs\n transition: all 0.2s;\n\n &:hover:not(:disabled) {\n @include editor-button-interactive;\n }\n}\n\n.editor-layout-color-preview {\n width: 1rem; // size-4\n height: 1rem;\n flex-shrink: 0;\n @include rounded-sm;\n border: 1px solid var(--border);\n}\n\n// --- Mentions Plugin ---\n.editor-mentions-popover {\n position: fixed;\n z-index: 10;\n width: 200px;\n @include rounded-md;\n @include shadow-md;\n}\n\n.editor-mentions-item {\n display: flex;\n align-items: center;\n gap: 0.5rem; // gap-2\n \n @include editor-dropdown-item-interactive;\n \n &[data-selected=\"true\"] {\n background-color: $editor-accent-color;\n color: $editor-accent-foreground-color;\n }\n \n &--transparent {\n background-color: transparent !important;\n }\n}\n\n// --- Tree View Plugin ---\n.editor-tree-view-scroll-area {\n background-color: var(--foreground);\n color: var(--background);\n height: 24rem; // h-96\n overflow: hidden;\n border-radius: var(--radius); // rounded-lg\n padding: 0.5rem; // p-2\n}\n\n// --- Draggable Block Plugin ---\n.editor-draggable-line {\n background-color: var(--secondary-foreground);\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n height: 0.25rem; // h-1 (actually 4px usually, but h-1 is 0.25rem)\n opacity: 0;\n will-change: transform;\n}\n\n.editor-draggable-menu {\n position: absolute;\n top: 0;\n left: 0;\n cursor: grab;\n @include rounded-sm;\n padding: 0.125rem 0.25rem; // px-[1px] py-0.5 approx\n opacity: 0;\n will-change: transform;\n \n &:hover {\n background-color: #f3f4f6; // hover:bg-gray-100\n }\n \n &:active {\n cursor: grabbing;\n }\n}\n\n// --- Auto Embed Plugin ---\n.editor-auto-embed-menu {\n width: 200px;\n padding: 0;\n}\n\n.editor-auto-embed-wrapper {\n transform: translateY(-100%);\n}\n\n// --- Floating Link Editor ---\n.editor-floating-link-editor {\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 50;\n max-width: 400px;\n width: 100%;\n opacity: 0;\n background-color: var(--background);\n @include rounded-md;\n border: 1px solid var(--border);\n @include shadow-lg;\n transition: opacity 0.2s;\n will-change: transform;\n\n &__input-container {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n padding: 0.25rem;\n width: 100%;\n }\n\n &__view-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n padding: 0.25rem 0.25rem 0.25rem 0.75rem;\n width: 100%;\n }\n\n &__link {\n display: block;\n flex-grow: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n color: var(--primary);\n font-size: 0.875rem;\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n// ==========================================\n// 6. MENUS & PICKERS\n// ==========================================\n\n.editor-component-picker-menu {\n position: fixed;\n z-index: 100;\n width: 250px;\n @include rounded-md;\n border: 1px solid var(--border);\n background-color: var(--popover);\n color: var(--popover-foreground);\n @include shadow-lg;\n overflow: hidden;\n \n // Base visibility\n visibility: visible;\n opacity: 1;\n max-height: 300px;\n}\n\n.editor-command {\n display: flex;\n height: 100%;\n width: 100%;\n flex-direction: column;\n overflow: hidden;\n border-radius: inherit;\n}\n\n.editor-command-list {\n max-height: 300px;\n overflow-y: auto;\n overflow-x: hidden;\n padding: 0.25rem;\n}\n\n.editor-command-group {\n overflow: hidden;\n color: var(--foreground);\n \n & > [cmdk-group-heading] {\n padding: 0.5rem 0.5rem 0.2rem;\n font-size: 0.75rem;\n font-weight: 500;\n color: var(--muted-foreground);\n }\n}\n\n.editor-command-item {\n position: relative;\n display: flex;\n cursor: pointer;\n user-select: none;\n align-items: center;\n border-radius: 0.125rem; // rounded-sm\n padding: 0.375rem 0.5rem; // py-1.5 px-2\n border: 1px solid transparent; // Added for hover border\n font-size: 0.875rem; // text-sm\n outline: none;\n gap: 0.5rem;\n \n @include editor-dropdown-item-interactive;\n\n &[data-disabled=\"true\"] {\n pointer-events: none;\n opacity: 0.5;\n }\n \n svg {\n width: 1rem;\n height: 1rem;\n flex-shrink: 0;\n }\n}\n\n.editor-context-menu {\n background-color: var(--popover);\n color: var(--popover-foreground);\n z-index: 50 !important;\n overflow: hidden;\n @include rounded-md;\n border: 1px solid var(--border);\n @include shadow-md;\n outline: none;\n \n &:has(*) {\n z-index: 10 !important;\n }\n}\n\n.editor-context-menu-item {\n position: relative;\n width: 100%;\n display: flex;\n cursor: default;\n align-items: center;\n gap: 0.5rem; // gap-2\n border-radius: calc(var(--radius) - 2px); // rounded-sm\n padding: 0.375rem 0.5rem; // py-1.5 px-2\n border: 1px solid transparent; // Added for hover border\n font-size: 0.875rem; // text-sm\n outline: none;\n user-select: none;\n \n @include editor-dropdown-item-interactive;\n \n &[data-disabled=\"true\"] {\n pointer-events: none;\n opacity: 0.5;\n }\n}\n\n.editor-context-menu-separator {\n background-color: var(--border);\n margin-left: -0.25rem; // -mx-1\n margin-right: -0.25rem;\n height: 1px;\n}\n\n.editor-actions-bar {\n clear: both;\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: space-between;\n gap: 0.75rem; // gap-3\n overflow-x: auto;\n flex-wrap: nowrap;\n border-top: 1px solid var(--border);\n padding: 0.375rem 0.75rem; // py-1.5 px-3\n background-color: color-mix(in srgb, var(--background), transparent 50%);\n backdrop-filter: blur(8px);\n \n &::-webkit-scrollbar {\n display: none;\n }\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n // Ẩn nội dung tooltip mặc định trong actions bar nếu nó đang bị hiển thị sai\n .editor-tooltip-content {\n display: none !important;\n }\n \n // Chỉ hiển thị tooltip khi hover vào trigger\n .editor-tooltip-group:hover .editor-tooltip-content {\n display: block !important;\n position: absolute;\n bottom: 100%;\n left: 50%;\n transform: translateX(-50%);\n margin-bottom: 0.5rem;\n background: var(--popover);\n color: var(--popover-foreground);\n padding: 0.25rem 0.5rem;\n border-radius: 0.25rem;\n font-size: 0.75rem;\n white-space: nowrap;\n border: 1px solid var(--border);\n box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);\n z-index: 50;\n pointer-events: none;\n }\n}\n\n// ==========================================\n// 7. INPUTS & BUTTON VARIANTS\n// ==========================================\n\n.editor-input {\n &:hover:not(:disabled):not([readonly]) {\n @include editor-hover-base;\n background-color: color-mix(in srgb, var(--background), black 3%);\n }\n \n &:focus {\n border-color: var(--primary);\n box-shadow: 0 0 0 2px var(--ring);\n outline: none;\n }\n}\n\n.editor-input-lg {\n height: 2.75rem; // h-11\n width: 100%;\n}\n\n.editor-input-wrapper {\n display: flex;\n align-items: center;\n}\n\n.editor-input-group-item {\n height: 2rem; // h-8\n \n // Reset number input arrows\n &::-webkit-inner-spin-button,\n &::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n -moz-appearance: textfield;\n\n &--first {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n &--middle {\n border-radius: 0;\n border-left: 0;\n margin-inline-start: -1px;\n }\n &--last {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-left: 0;\n margin-inline-start: -1px;\n }\n}\n\n// Hover styles for all button types\n.editor-btn {\n @include editor-button-interactive;\n}\n\n.editor-btn--ghost,\n.editor-btn--outline {\n @include editor-button-interactive;\n}\n\n.editor-btn-icon-lg {\n height: 2.5rem !important; // h-10\n min-height: 2.5rem !important;\n width: 2.5rem !important; // w-10\n}\n\n.editor-btn-icon-md {\n height: 2.25rem; // h-9\n width: 2.25rem;\n}\n\n// Toggle group items hover\n.editor-toggle-group-item {\n @include editor-button-interactive;\n \n &[data-state=\"on\"]:hover {\n @include editor-hover-base;\n background-color: color-mix(in srgb, $editor-accent-color, black 10%);\n border-color: $editor-accent-color;\n }\n}\n\n// Toggle button hover\n.editor-toggle {\n @include editor-button-interactive;\n \n &[data-state=\"on\"]:hover {\n @include editor-hover-base;\n background-color: color-mix(in srgb, $editor-accent-color, black 10%);\n border-color: $editor-accent-color;\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { Editor } from './editor-x/editor.cjs';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import { SerializedEditorState } from 'lexical';
|
|
4
|
+
export { SerializedEditorState } from 'lexical';
|
|
5
|
+
|
|
6
|
+
interface LexicalEditorProps {
|
|
7
|
+
value?: unknown;
|
|
8
|
+
onChange?: (value: SerializedEditorState) => void;
|
|
9
|
+
readOnly?: boolean;
|
|
10
|
+
className?: string;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
}
|
|
13
|
+
declare function LexicalEditor({ value, onChange, readOnly, className, }: LexicalEditorProps): react_jsx_runtime.JSX.Element;
|
|
14
|
+
|
|
15
|
+
export { LexicalEditor, type LexicalEditorProps };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { Editor } from './editor-x/editor.js';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import { SerializedEditorState } from 'lexical';
|
|
4
|
+
export { SerializedEditorState } from 'lexical';
|
|
5
|
+
|
|
6
|
+
interface LexicalEditorProps {
|
|
7
|
+
value?: unknown;
|
|
8
|
+
onChange?: (value: SerializedEditorState) => void;
|
|
9
|
+
readOnly?: boolean;
|
|
10
|
+
className?: string;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
}
|
|
13
|
+
declare function LexicalEditor({ value, onChange, readOnly, className, }: LexicalEditorProps): react_jsx_runtime.JSX.Element;
|
|
14
|
+
|
|
15
|
+
export { LexicalEditor, type LexicalEditorProps };
|