@lobehub/editor 4.14.0 → 4.15.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/es/react.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { F as IEditor$1, S as ReactPlainTextProps, U as _default, a as ReactSlashOptionProps, g as ReactMentionPluginProps, i as MenuRenderProps, x as ReactEditorContentProps } from "./index-DJq7pYS0.js";
2
- import * as _$react_jsx_runtime0 from "react/jsx-runtime";
1
+ import { F as IEditor$1, S as ReactPlainTextProps, U as _default, a as ReactSlashOptionProps, g as ReactMentionPluginProps, i as MenuRenderProps, x as ReactEditorContentProps } from "./index-DHGp94p0.js";
2
+ import { BlockProps, FlexboxProps, MenuInfo, MenuItemType, MenuProps, SelectProps, TooltipProps } from "@lobehub/ui";
3
3
  import * as _$react from "react";
4
4
  import { CSSProperties, ComponentProps, FC, ReactNode, Ref } from "react";
5
- import { BlockProps, FlexboxProps, MenuInfo, MenuItemType, MenuProps, SelectProps, TooltipProps } from "@lobehub/ui";
5
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
6
6
  import { DropdownButtonProps } from "antd/lib/dropdown/index.js";
7
7
 
8
8
  //#region src/react/ChatInput/type.d.ts
package/es/react.js CHANGED
@@ -1,19 +1,19 @@
1
- import { A as $createCodeMirrorNode, B as Editor$2, Bt as $isRootTextContentEmpty, S as formatUrl, T as $isSelectionInCodeInline, Ut as init_utils, a as $createMathBlockNode, d as $isLinkHighlightNode, h as $isLinkNode, j as $isCodeMirrorNode, mt as noop, o as $createMathInlineNode, x as TOGGLE_LINK_COMMAND } from "./style-DjwW7ClE.js";
2
- import { C as INSERT_CODEINLINE_COMMAND, E as ReactEditorContent, O as ReactMarkdownPlugin, Q as ReactEditor, S as validateUrl, T as ReactPlainText, _ as INSERT_CHECK_LIST_COMMAND, a as ReactMentionPlugin, c as INSERT_LINK_HIGHLIGHT_COMMAND, n as ReactSlashOption, p as UPDATE_CODEBLOCK_LANG, t as ReactSlashPlugin, x as sanitizeUrl, y as extractUrlFromText } from "./ReactSlashPlugin-DDlIT9Qd.js";
1
+ import { A as $createCodeMirrorNode, B as Editor$2, Ft as init_utils, Mt as $isRootTextContentEmpty, S as formatUrl, T as $isSelectionInCodeInline, a as $createMathBlockNode, d as $isLinkHighlightNode, h as $isLinkNode, j as $isCodeMirrorNode, mt as noop, o as $createMathInlineNode, x as TOGGLE_LINK_COMMAND } from "./style-DADgHVA1.js";
2
+ import { C as INSERT_CODEINLINE_COMMAND, E as ReactEditorContent, O as ReactMarkdownPlugin, Q as ReactEditor, S as validateUrl, T as ReactPlainText, _ as INSERT_CHECK_LIST_COMMAND, a as ReactMentionPlugin, c as INSERT_LINK_HIGHLIGHT_COMMAND, n as ReactSlashOption, p as UPDATE_CODEBLOCK_LANG, t as ReactSlashPlugin, x as sanitizeUrl, y as extractUrlFromText } from "./ReactSlashPlugin-BiVy_Iwf.js";
3
+ import { ActionIcon, Block, Button, Dropdown, Flexbox, Icon, MaterialFileTypeIcon, Menu, Popover, Select, Text, TooltipGroup, useMotionComponent } from "@lobehub/ui";
4
+ import { ChevronDownIcon, CircleChevronLeftIcon, CircleChevronRightIcon, CircleChevronUpIcon } from "lucide-react";
5
+ import { createContext, createElement, isValidElement, memo, use, useCallback, useEffect, useMemo, useRef, useState } from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import { createStaticStyles, cssVar, cx, useThemeMode } from "antd-style";
8
+ import { Divider, Dropdown as Dropdown$1, Space } from "antd";
3
9
  import { $createNodeSelection, $createParagraphNode, $getSelection, $isParagraphNode, $isRangeSelection, $isRootOrShadowRoot, $setSelection, CAN_REDO_COMMAND, CAN_UNDO_COMMAND, COMMAND_PRIORITY_LOW, FORMAT_TEXT_COMMAND, REDO_COMMAND, SELECTION_CHANGE_COMMAND, UNDO_COMMAND } from "lexical";
4
10
  import { $createQuoteNode, $isHeadingNode, $isQuoteNode } from "@lexical/rich-text";
5
11
  import { $findMatchingParent, $getNearestNodeOfType, mergeRegister } from "@lexical/utils";
6
- import { jsx, jsxs } from "react/jsx-runtime";
7
- import { createContext, createElement, isValidElement, memo, use, useCallback, useEffect, useMemo, useRef, useState } from "react";
8
12
  import { $isAtNodeEnd, $setBlocksType } from "@lexical/selection";
9
13
  import { $isListNode, INSERT_ORDERED_LIST_COMMAND, INSERT_UNORDERED_LIST_COMMAND, ListNode } from "@lexical/list";
10
14
  import { $createCodeNode, $isCodeNode } from "@lexical/code-core";
11
- import { ActionIcon, Block, Button, Dropdown, Flexbox, Icon, MaterialFileTypeIcon, Menu, Popover, Select, Text, TooltipGroup, useMotionComponent } from "@lobehub/ui";
12
- import { createStaticStyles, cssVar, cx, useThemeMode } from "antd-style";
13
- import { ChevronDownIcon, CircleChevronLeftIcon, CircleChevronRightIcon, CircleChevronUpIcon } from "lucide-react";
14
15
  import { createPortal } from "react-dom";
15
16
  import { bundledLanguagesInfo } from "shiki";
16
- import { Divider, Dropdown as Dropdown$1, Space } from "antd";
17
17
  import { Resizable } from "re-resizable";
18
18
  import useMergeState from "use-merge-value";
19
19
  import { debounce } from "es-toolkit";
package/es/renderer.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { Klass, LexicalNode, SerializedEditorState, SerializedLexicalNode } from "lexical";
2
- import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
1
  import { CSSProperties, JSX, ReactElement, ReactNode } from "react";
2
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
3
+ import { Klass, LexicalNode, SerializedEditorState, SerializedLexicalNode } from "lexical";
4
4
 
5
5
  //#region src/renderer/diff/style.d.ts
6
6
  type DiffAppearance = 'borderless' | 'default';
package/es/renderer.js CHANGED
@@ -1,15 +1,15 @@
1
- import { E as CodeNode, L as CursorNode, M as CodeMirrorNode, O as styles, _ as AutoLinkNode, b as LinkNode, c as MathBlockNode, f as LinkHighlightNode, i as MentionNode, l as MathInlineNode, t as styles$1 } from "./style-DjwW7ClE.js";
2
- import { S as DiffNode, _ as PlaceholderNode, a as styles$5, b as HorizontalRuleNode, c as ImageNode, d as BlockImageNode, f as styles$6, g as PlaceholderBlockNode, h as FileNode, n as styles$4, r as styles$2, t as styles$3 } from "./style-DejqW6OX.js";
1
+ import { E as CodeNode, L as CursorNode, M as CodeMirrorNode, O as styles, _ as AutoLinkNode, b as LinkNode, c as MathBlockNode, f as LinkHighlightNode, i as MentionNode, l as MathInlineNode, t as styles$1 } from "./style-DADgHVA1.js";
2
+ import { S as DiffNode, _ as PlaceholderNode, a as styles$5, b as HorizontalRuleNode, c as ImageNode, d as BlockImageNode, f as styles$6, g as PlaceholderBlockNode, h as FileNode, n as styles$4, r as styles$2, t as styles$3 } from "./style-DMdPzCo-.js";
3
+ import { Highlighter, Mermaid } from "@lobehub/ui";
4
+ import { createElement, useMemo } from "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { createStaticStyles, cx } from "antd-style";
3
7
  import { createHeadlessEditor } from "@lexical/headless";
4
8
  import { TableCellNode, TableNode, TableRowNode } from "@lexical/table";
5
9
  import { $getRoot, $isElementNode, $isTextNode } from "lexical";
6
10
  import { HeadingNode, QuoteNode } from "@lexical/rich-text";
7
- import { jsx, jsxs } from "react/jsx-runtime";
8
- import { createElement, useMemo } from "react";
9
11
  import { ListItemNode, ListNode } from "@lexical/list";
10
12
  import katex from "katex";
11
- import { Highlighter, Mermaid } from "@lobehub/ui";
12
- import { createStaticStyles, cx } from "antd-style";
13
13
  import { bundledLanguagesInfo } from "shiki";
14
14
  import { createHighlighterCoreSync, isSpecialLang } from "@shikijs/core";
15
15
  import { createJavaScriptRegexEngine } from "@shikijs/engine-javascript";
@@ -1,3 +1,5 @@
1
+ import { d as __exportAll, n as createDebugLogger, s as init_debug, u as __esmMin } from "./debug-CIvbNHJu.js";
2
+ import { createStaticStyles, cx, keyframes } from "antd-style";
1
3
  import { createHeadlessEditor } from "@lexical/headless";
2
4
  import { createEmptyHistoryState } from "@lexical/history";
3
5
  import { $createTableSelection, $isTableCellNode, $isTableNode, $isTableSelection } from "@lexical/table";
@@ -5,43 +7,7 @@ import { get, merge, template, templateSettings } from "es-toolkit/compat";
5
7
  import EventEmitter from "eventemitter3";
6
8
  import { $applyNodeReplacement, $createNodeSelection, $createRangeSelection, $createTextNode, $getNodeByKey, $getRoot, $getSelection, $isDecoratorNode, $isElementNode, $isNodeSelection, $isParagraphNode, $isRangeSelection, $isTextNode, $normalizeSelection__EXPERIMENTAL, $setSelection, COMMAND_PRIORITY_CRITICAL, COMMAND_PRIORITY_HIGH, COMMAND_PRIORITY_LOW, DecoratorNode, ElementNode, HISTORY_MERGE_TAG, KEY_ARROW_LEFT_COMMAND, KEY_ARROW_RIGHT_COMMAND, KEY_BACKSPACE_COMMAND, KEY_DOWN_COMMAND, TextNode, createCommand, createEditor, isHTMLElement, isModifierMatch, resetRandomKey as resetRandomKey$1 } from "lexical";
7
9
  import { $isQuoteNode } from "@lexical/rich-text";
8
- import createDebug from "debug";
9
10
  import { $findMatchingParent, IS_APPLE, IS_APPLE as isApple, addClassNamesToElement, isHTMLAnchorElement, mergeRegister } from "@lexical/utils";
10
- import { createStaticStyles, cx, keyframes } from "antd-style";
11
- //#region \0rolldown/runtime.js
12
- var __create = Object.create;
13
- var __defProp = Object.defineProperty;
14
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
15
- var __getOwnPropNames = Object.getOwnPropertyNames;
16
- var __getProtoOf = Object.getPrototypeOf;
17
- var __hasOwnProp = Object.prototype.hasOwnProperty;
18
- var __esmMin = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
19
- var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
20
- var __exportAll = (all, no_symbols) => {
21
- let target = {};
22
- for (var name in all) __defProp(target, name, {
23
- get: all[name],
24
- enumerable: true
25
- });
26
- if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
27
- return target;
28
- };
29
- var __copyProps = (to, from, except, desc) => {
30
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
31
- key = keys[i];
32
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
33
- get: ((k) => from[k]).bind(null, key),
34
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
35
- });
36
- }
37
- return to;
38
- };
39
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
40
- value: mod,
41
- enumerable: true
42
- }) : target, mod));
43
- var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
44
- //#endregion
45
11
  //#region src/locale/index.ts
46
12
  var locale_default;
47
13
  var init_locale = __esmMin((() => {
@@ -49,7 +15,6 @@ var init_locale = __esmMin((() => {
49
15
  block: { delete: "Delete block" },
50
16
  cancel: "Cancel",
51
17
  codemirror: {
52
- copyFailed: "Copy failed",
53
18
  copySuccess: "Code copied to clipboard",
54
19
  selectLanguage: "Select language",
55
20
  selectTheme: "Select theme",
@@ -314,240 +279,6 @@ var init_utils$1 = __esmMin((() => {
314
279
  };
315
280
  }));
316
281
  //#endregion
317
- //#region src/utils/debug.ts
318
- var debug_exports = /* @__PURE__ */ __exportAll({
319
- DebugLogger: () => DebugLogger,
320
- browserDebug: () => browserDebug,
321
- createDebugLogger: () => createDebugLogger,
322
- debugLogger: () => debugLogger,
323
- debugLoggers: () => debugLoggers,
324
- devConsole: () => devConsole,
325
- isDev: () => true,
326
- prodSafeLogger: () => prodSafeLogger
327
- });
328
- /**
329
- * Convenience function to create a debug logger for a specific category
330
- * @param category - Main category (e.g., 'kernel', 'plugin', 'upload')
331
- * @param subcategory - Optional subcategory
332
- * @returns Logger object with debug methods
333
- */
334
- function createDebugLogger(category, subcategory) {
335
- return debugLogger.createLogger(category, subcategory);
336
- }
337
- var BASE_NAMESPACE, DebugLogger, debugLogger, debugLoggers, devConsole, prodSafeLogger, browserDebug;
338
- var init_debug = __esmMin((() => {
339
- BASE_NAMESPACE = "lobe-editor";
340
- DebugLogger = class {
341
- constructor() {
342
- this.debuggers = /* @__PURE__ */ new Map();
343
- }
344
- /**
345
- * Get or create a debug function for a specific namespace
346
- * @param category - The debug category (e.g., 'kernel', 'plugin', 'upload')
347
- * @param subcategory - Optional subcategory for more specific debugging
348
- * @returns Debug function
349
- */
350
- getDebugger(category, subcategory) {
351
- const namespace = subcategory ? `${BASE_NAMESPACE}:${category}:${subcategory}` : `${BASE_NAMESPACE}:${category}`;
352
- if (!this.debuggers.has(namespace)) this.debuggers.set(namespace, createDebug(namespace));
353
- return this.debuggers.get(namespace);
354
- }
355
- /**
356
- * Create a scoped debug logger for a specific component/service
357
- * @param category - Main category
358
- * @param subcategory - Optional subcategory
359
- * @returns Object with debug methods
360
- */
361
- createLogger(category, subcategory) {
362
- const debug = this.getDebugger(category, subcategory);
363
- const warnDebugger = this.getDebugger(category, subcategory ? `${subcategory}:warn` : "warn");
364
- const errorDebugger = this.getDebugger(category, subcategory ? `${subcategory}:error` : "error");
365
- const info = this.getDebugger(category, subcategory ? `${subcategory}:info` : "info");
366
- const warn = (...args) => {
367
- if (warnDebugger.enabled) {
368
- const prefix = warnDebugger.namespace;
369
- console.warn(`${prefix}`, ...args);
370
- }
371
- };
372
- const error = (...args) => {
373
- if (errorDebugger.enabled) {
374
- const prefix = errorDebugger.namespace;
375
- console.error(`${prefix}`, ...args);
376
- }
377
- };
378
- return {
379
- /**
380
- * General debug logging
381
- */
382
- debug,
383
- /**
384
- * Error level logging - uses console.error for proper browser dev tool support
385
- */
386
- error,
387
- /**
388
- * Info level logging
389
- */
390
- info,
391
- /**
392
- * Log function - alias for debug for compatibility
393
- */
394
- log: debug,
395
- /**
396
- * Warning level logging - uses console.warn for proper browser dev tool support
397
- */
398
- warn
399
- };
400
- }
401
- /**
402
- * Enable debug for specific namespaces
403
- * @param namespaces - Comma-separated list of namespaces to enable
404
- */
405
- enable(namespaces) {
406
- createDebug.enable(namespaces);
407
- }
408
- /**
409
- * Disable all debug output
410
- */
411
- disable() {
412
- createDebug.disable();
413
- }
414
- /**
415
- * Check if a namespace is enabled
416
- * @param namespace - The namespace to check
417
- * @returns Whether the namespace is enabled
418
- */
419
- enabled(namespace) {
420
- return createDebug.enabled(namespace);
421
- }
422
- };
423
- debugLogger = new DebugLogger();
424
- debugLoggers = {
425
- demo: createDebugLogger("demo"),
426
- file: createDebugLogger("file"),
427
- image: createDebugLogger("image"),
428
- kernel: createDebugLogger("kernel"),
429
- markdown: createDebugLogger("markdown"),
430
- math: createDebugLogger("math"),
431
- mention: createDebugLogger("mention"),
432
- plugin: createDebugLogger("plugin"),
433
- react: createDebugLogger("react"),
434
- service: createDebugLogger("service"),
435
- slash: createDebugLogger("slash"),
436
- upload: createDebugLogger("upload")
437
- };
438
- devConsole = {
439
- error: (...args) => {
440
- console.error(...args);
441
- },
442
- info: (...args) => {
443
- console.info(...args);
444
- },
445
- log: (...args) => {
446
- console.log(...args);
447
- },
448
- warn: (...args) => {
449
- console.warn(...args);
450
- }
451
- };
452
- prodSafeLogger = {
453
- /**
454
- * Debug info - only shown when debug is enabled
455
- */
456
- debug: debugLoggers.kernel.debug,
457
- /**
458
- * Log critical errors that should always be visible (uses console.error)
459
- */
460
- error: (...args) => {
461
- console.error(...args);
462
- },
463
- /**
464
- * Info logging - only shown when debug is enabled
465
- */
466
- info: debugLoggers.kernel.info,
467
- /**
468
- * Log warnings that should always be visible (uses console.warn)
469
- */
470
- warn: (...args) => {
471
- console.warn(...args);
472
- }
473
- };
474
- browserDebug = {
475
- /**
476
- * Disable debug logging in browser environment
477
- */
478
- disable: () => {
479
- if (typeof window !== "undefined") {
480
- localStorage.removeItem("debug");
481
- createDebug.disable();
482
- console.info("Debug disabled.");
483
- }
484
- },
485
- /**
486
- * Enable debug logging in browser environment
487
- * @param namespaces - Debug namespaces to enable (e.g., 'lobe-editor:*')
488
- */
489
- enable: (namespaces = "lobe-editor:*") => {
490
- if (typeof window !== "undefined") {
491
- localStorage.debug = namespaces;
492
- createDebug.enable(namespaces);
493
- console.info(`Debug enabled: ${namespaces}`);
494
- console.info("Refresh the page to see debug logs from initialization.");
495
- }
496
- },
497
- /**
498
- * Get current debug configuration
499
- */
500
- getConfig: () => {
501
- if (typeof window !== "undefined") {
502
- const envDebug = typeof process !== "undefined" ? process.env.DEBUG : void 0;
503
- const currentDebug = localStorage.getItem("debug");
504
- if (envDebug) return {
505
- enabled: envDebug,
506
- source: "environment variable (auto-applied)"
507
- };
508
- else if (currentDebug) return {
509
- enabled: currentDebug,
510
- source: "development mode (auto-applied)"
511
- };
512
- else return {
513
- enabled: false,
514
- source: "disabled"
515
- };
516
- }
517
- return {
518
- enabled: (typeof process !== "undefined" ? process.env.DEBUG : void 0) || false,
519
- source: "server-side"
520
- };
521
- },
522
- /**
523
- * Show available debug categories
524
- */
525
- showCategories: () => {
526
- console.group("Available debug categories:");
527
- console.log("� lobe-editor:kernel - Core editor functionality");
528
- console.log("🔌 lobe-editor:plugin:* - All plugins");
529
- console.log("🔍 lobe-editor:service:* - All services");
530
- console.log("💬 lobe-editor:*:info - Info level messages");
531
- console.log("⚠️ lobe-editor:*:warn - Warning messages");
532
- console.log("❌ lobe-editor:*:error - Error messages");
533
- console.groupEnd();
534
- console.info("Usage: browserDebug.enable(\"lobe-editor:kernel,lobe-editor:plugin:*\")");
535
- },
536
- /**
537
- * Show current debug status and configuration
538
- */
539
- showStatus: () => {
540
- const config = browserDebug.getConfig();
541
- console.group("� LobeHub Editor Debug Status");
542
- console.log(`Status: ${config.enabled ? "✅ Enabled" : "❌ Disabled"}`);
543
- console.log(`Configuration: ${config.enabled || "none"}`);
544
- console.log(`Source: ${config.source}`);
545
- console.groupEnd();
546
- if (!config.enabled) console.info("💡 Zero-config setup: Set DEBUG=lobe-editor:* in your environment");
547
- }
548
- };
549
- }));
550
- //#endregion
551
282
  //#region src/types/hotkey.ts
552
283
  var KeyEnum, HotkeyEnum, HotkeyScopeEnum;
553
284
  var init_hotkey$1 = __esmMin((() => {
@@ -3155,4 +2886,4 @@ const styles = createStaticStyles(({ css, cssVar }) => ({ mention: css`
3155
2886
  }
3156
2887
  ` }));
3157
2888
  //#endregion
3158
- export { DOM_TEXT_TYPE as $, $createCodeMirrorNode as A, createDebugLogger as At, Editor as B, $isRootTextContentEmpty as Bt, $createCodeNode as C, CONTROL_OR_META as Ct, getCodeInlineNode as D, KeyEnum as Dt, CodeNode as E, HotkeyScopeEnum as Et, $isCursorNode as F, init_debug as Ft, kernel_exports as G, INodeHelper as Gt, DataSource as H, exportNodeToJSON as Ht, CardLikeElementNode as I, prodSafeLogger as It, $getNearestNodeFromDOMNode$1 as J, __exportAll as Jt, $closest as K, init_helper as Kt, CursorNode as L, $canShowPlaceholderCurry as Lt, CodeMirrorNode as M, debugLoggers as Mt, $createCursorNode as N, debug_exports as Nt, styles$1 as O, init_hotkey$1 as Ot, $isCardLikeElementNode as P, devConsole as Pt, DOM_ELEMENT_TYPE as Q, cursorNodeSerialized as R, $isCursorInQuote as Rt, formatUrl as S, init_registerHotkey as St, $isSelectionInCodeInline as T, HotkeyEnum as Tt, Kernel as U, init_utils$1 as Ut, resetRandomKey$1 as V, createBlockNode as Vt, init_kernel as W, sampleReader as Wt, DOM_DOCUMENT_FRAGMENT_TYPE as X, __toESM as Xt, $getNodeFromDOMNode as Y, __toCommonJS as Yt, DOM_DOCUMENT_TYPE as Z, AutoLinkNode as _, unregisterEditorKernel as _t, $createMathBlockNode as a, generateEditorId as at, LinkNode as b, HOVER_COMMAND as bt, MathBlockNode as c, getNodeKeyFromDOMNode as ct, $isLinkHighlightNode as d, isDOMNode as dt, EDITOR_THEME_KEY as et, LinkHighlightNode as f, isDocumentFragment as ft, $toggleLink as g, registerEditorKernel as gt, $isLinkNode as h, reconcileDecorator as ht, MentionNode as i, genServiceId as it, $isCodeMirrorNode as j, debugLogger as jt, themeStyles as k, browserDebug as kt, MathInlineNode as l, getParentElement as lt, $createLinkNode as m, noop as mt, $createMentionNode as n, compareNodeOrder as nt, $createMathInlineNode as o, getKernelFromEditor as ot, getLinkHighlightNode as p, moment as pt, $closestNodeType as q, __commonJSMin as qt, $isMentionNode as r, createEmptyEditorState as rt, $isMathNode as s, getKernelFromEditorConfig as st, styles as t, assert as tt, $createLinkHighlightNode as u, init_utils as ut, HOVER_LINK_COMMAND as v, KernelPlugin as vt, $isCodeInlineNode as w, init_sys as wt, TOGGLE_LINK_COMMAND as x, getHotkeyById as xt, HOVER_OUT_LINK_COMMAND as y, init_plugin as yt, registerCursorNode as z, $isCursorInTable as zt };
2889
+ export { DOM_TEXT_TYPE as $, $createCodeMirrorNode as A, $isCursorInQuote as At, Editor as B, $createCodeNode as C, CONTROL_OR_META as Ct, getCodeInlineNode as D, KeyEnum as Dt, CodeNode as E, HotkeyScopeEnum as Et, $isCursorNode as F, init_utils$1 as Ft, kernel_exports as G, DataSource as H, CardLikeElementNode as I, sampleReader as It, $getNearestNodeFromDOMNode$1 as J, $closest as K, CursorNode as L, INodeHelper as Lt, CodeMirrorNode as M, $isRootTextContentEmpty as Mt, $createCursorNode as N, createBlockNode as Nt, styles$1 as O, init_hotkey$1 as Ot, $isCardLikeElementNode as P, exportNodeToJSON as Pt, DOM_ELEMENT_TYPE as Q, cursorNodeSerialized as R, init_helper as Rt, formatUrl as S, init_registerHotkey as St, $isSelectionInCodeInline as T, HotkeyEnum as Tt, Kernel as U, resetRandomKey$1 as V, init_kernel as W, DOM_DOCUMENT_FRAGMENT_TYPE as X, $getNodeFromDOMNode as Y, DOM_DOCUMENT_TYPE as Z, AutoLinkNode as _, unregisterEditorKernel as _t, $createMathBlockNode as a, generateEditorId as at, LinkNode as b, HOVER_COMMAND as bt, MathBlockNode as c, getNodeKeyFromDOMNode as ct, $isLinkHighlightNode as d, isDOMNode as dt, EDITOR_THEME_KEY as et, LinkHighlightNode as f, isDocumentFragment as ft, $toggleLink as g, registerEditorKernel as gt, $isLinkNode as h, reconcileDecorator as ht, MentionNode as i, genServiceId as it, $isCodeMirrorNode as j, $isCursorInTable as jt, themeStyles as k, $canShowPlaceholderCurry as kt, MathInlineNode as l, getParentElement as lt, $createLinkNode as m, noop as mt, $createMentionNode as n, compareNodeOrder as nt, $createMathInlineNode as o, getKernelFromEditor as ot, getLinkHighlightNode as p, moment as pt, $closestNodeType as q, $isMentionNode as r, createEmptyEditorState as rt, $isMathNode as s, getKernelFromEditorConfig as st, styles as t, assert as tt, $createLinkHighlightNode as u, init_utils as ut, HOVER_LINK_COMMAND as v, KernelPlugin as vt, $isCodeInlineNode as w, init_sys as wt, TOGGLE_LINK_COMMAND as x, getHotkeyById as xt, HOVER_OUT_LINK_COMMAND as y, init_plugin as yt, registerCursorNode as z };
@@ -1,7 +1,7 @@
1
- import { I as CardLikeElementNode, ht as reconcileDecorator, ot as getKernelFromEditor, st as getKernelFromEditorConfig, ut as init_utils } from "./style-DjwW7ClE.js";
1
+ import { I as CardLikeElementNode, ht as reconcileDecorator, ot as getKernelFromEditor, st as getKernelFromEditorConfig, ut as init_utils } from "./style-DADgHVA1.js";
2
+ import { createStaticStyles, cx } from "antd-style";
2
3
  import { $applyNodeReplacement, DecoratorNode, ElementNode } from "lexical";
3
4
  import { addClassNamesToElement } from "@lexical/utils";
4
- import { createStaticStyles, cx } from "antd-style";
5
5
  //#region src/plugins/litexml/node/DiffNode.ts
6
6
  init_utils();
7
7
  /** DiffNode - contains two block children: original and modified */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/editor",
3
- "version": "4.14.0",
3
+ "version": "4.15.1",
4
4
  "description": "A powerful and extensible rich text editor built on Meta's Lexical framework, providing a modern editing experience with React integration.",
5
5
  "keywords": [
6
6
  "lobehub",
@@ -26,6 +26,10 @@
26
26
  "types": "./es/index.d.ts",
27
27
  "import": "./es/index.js"
28
28
  },
29
+ "./codemirror": {
30
+ "types": "./es/codemirror.d.ts",
31
+ "import": "./es/codemirror.js"
32
+ },
29
33
  "./headless": {
30
34
  "types": "./es/headless.d.ts",
31
35
  "import": "./es/headless.js"