@lobehub/editor 1.5.2 → 1.5.3

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.
@@ -0,0 +1,231 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ // @ts-ignore - debug package types
9
+ import createDebug from 'debug';
10
+
11
+ /**
12
+ * Base namespace for all LobeHub Editor debug messages
13
+ */
14
+ var BASE_NAMESPACE = 'lobe-editor';
15
+
16
+ /**
17
+ * Debug utility factory for LobeHub Editor
18
+ * Creates namespaced debug functions following the pattern: lobe-editor:category
19
+ */
20
+ export var DebugLogger = /*#__PURE__*/function () {
21
+ function DebugLogger() {
22
+ _classCallCheck(this, DebugLogger);
23
+ _defineProperty(this, "debuggers", new Map());
24
+ }
25
+ _createClass(DebugLogger, [{
26
+ key: "getDebugger",
27
+ value:
28
+ /**
29
+ * Get or create a debug function for a specific namespace
30
+ * @param category - The debug category (e.g., 'kernel', 'plugin', 'upload')
31
+ * @param subcategory - Optional subcategory for more specific debugging
32
+ * @returns Debug function
33
+ */
34
+ function getDebugger(category, subcategory) {
35
+ var namespace = subcategory ? "".concat(BASE_NAMESPACE, ":").concat(category, ":").concat(subcategory) : "".concat(BASE_NAMESPACE, ":").concat(category);
36
+ if (!this.debuggers.has(namespace)) {
37
+ this.debuggers.set(namespace, createDebug(namespace));
38
+ }
39
+ return this.debuggers.get(namespace);
40
+ }
41
+
42
+ /**
43
+ * Create a scoped debug logger for a specific component/service
44
+ * @param category - Main category
45
+ * @param subcategory - Optional subcategory
46
+ * @returns Object with debug methods
47
+ */
48
+ }, {
49
+ key: "createLogger",
50
+ value: function createLogger(category, subcategory) {
51
+ var debug = this.getDebugger(category, subcategory);
52
+ var warnDebugger = this.getDebugger(category, subcategory ? "".concat(subcategory, ":warn") : 'warn');
53
+ var errorDebugger = this.getDebugger(category, subcategory ? "".concat(subcategory, ":error") : 'error');
54
+ var info = this.getDebugger(category, subcategory ? "".concat(subcategory, ":info") : 'info');
55
+
56
+ // Create wrapper functions that use native console methods for proper browser dev tool support
57
+ var warn = function warn() {
58
+ if (warnDebugger.enabled) {
59
+ var _console;
60
+ var prefix = warnDebugger.namespace;
61
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
62
+ args[_key] = arguments[_key];
63
+ }
64
+ (_console = console).warn.apply(_console, ["".concat(prefix)].concat(args));
65
+ }
66
+ };
67
+ var error = function error() {
68
+ if (errorDebugger.enabled) {
69
+ var _console2;
70
+ var prefix = errorDebugger.namespace;
71
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
72
+ args[_key2] = arguments[_key2];
73
+ }
74
+ (_console2 = console).error.apply(_console2, ["".concat(prefix)].concat(args));
75
+ }
76
+ };
77
+ return {
78
+ /**
79
+ * General debug logging
80
+ */
81
+ debug: debug,
82
+ /**
83
+ * Error level logging - uses console.error for proper browser dev tool support
84
+ */
85
+ error: error,
86
+ /**
87
+ * Info level logging
88
+ */
89
+ info: info,
90
+ /**
91
+ * Log function - alias for debug for compatibility
92
+ */
93
+ log: debug,
94
+ /**
95
+ * Warning level logging - uses console.warn for proper browser dev tool support
96
+ */
97
+ warn: warn
98
+ };
99
+ }
100
+
101
+ /**
102
+ * Enable debug for specific namespaces
103
+ * @param namespaces - Comma-separated list of namespaces to enable
104
+ */
105
+ }, {
106
+ key: "enable",
107
+ value: function enable(namespaces) {
108
+ createDebug.enable(namespaces);
109
+ }
110
+
111
+ /**
112
+ * Disable all debug output
113
+ */
114
+ }, {
115
+ key: "disable",
116
+ value: function disable() {
117
+ createDebug.disable();
118
+ }
119
+
120
+ /**
121
+ * Check if a namespace is enabled
122
+ * @param namespace - The namespace to check
123
+ * @returns Whether the namespace is enabled
124
+ */
125
+ }, {
126
+ key: "enabled",
127
+ value: function enabled(namespace) {
128
+ return createDebug.enabled(namespace);
129
+ }
130
+ }]);
131
+ return DebugLogger;
132
+ }();
133
+
134
+ /**
135
+ * Global debug logger instance
136
+ */
137
+ export var debugLogger = new DebugLogger();
138
+
139
+ /**
140
+ * Convenience function to create a debug logger for a specific category
141
+ * @param category - Main category (e.g., 'kernel', 'plugin', 'upload')
142
+ * @param subcategory - Optional subcategory
143
+ * @returns Logger object with debug methods
144
+ */
145
+ export function createDebugLogger(category, subcategory) {
146
+ return debugLogger.createLogger(category, subcategory);
147
+ }
148
+
149
+ /**
150
+ * Pre-configured debug loggers for common categories
151
+ */
152
+ export var debugLoggers = {
153
+ demo: createDebugLogger('demo'),
154
+ file: createDebugLogger('file'),
155
+ image: createDebugLogger('image'),
156
+ kernel: createDebugLogger('kernel'),
157
+ markdown: createDebugLogger('markdown'),
158
+ math: createDebugLogger('math'),
159
+ mention: createDebugLogger('mention'),
160
+ plugin: createDebugLogger('plugin'),
161
+ react: createDebugLogger('react'),
162
+ service: createDebugLogger('service'),
163
+ slash: createDebugLogger('slash'),
164
+ upload: createDebugLogger('upload')
165
+ };
166
+
167
+ /**
168
+ * Development mode utilities
169
+ */
170
+ export var isDev = process.env.NODE_ENV === 'development';
171
+
172
+ /**
173
+ * Conditional console logging - only logs in development mode
174
+ * Use this for demo files and development-only logging
175
+ */
176
+ export var devConsole = {
177
+ error: function error() {
178
+ if (isDev) {
179
+ var _console3;
180
+ (_console3 = console).error.apply(_console3, arguments);
181
+ }
182
+ },
183
+ info: function info() {
184
+ if (isDev) {
185
+ var _console4;
186
+ (_console4 = console).info.apply(_console4, arguments);
187
+ }
188
+ },
189
+ log: function log() {
190
+ if (isDev) {
191
+ var _console5;
192
+ (_console5 = console).log.apply(_console5, arguments);
193
+ }
194
+ },
195
+ warn: function warn() {
196
+ if (isDev) {
197
+ var _console6;
198
+ (_console6 = console).warn.apply(_console6, arguments);
199
+ }
200
+ }
201
+ };
202
+
203
+ /**
204
+ * Production-safe error logging
205
+ * Always logs errors and warnings regardless of environment using native console methods
206
+ * for proper browser dev tool support. Debug/info uses debug package.
207
+ */
208
+ export var prodSafeLogger = {
209
+ /**
210
+ * Debug info - only shown when debug is enabled
211
+ */
212
+ debug: debugLoggers.kernel.debug,
213
+ /**
214
+ * Log critical errors that should always be visible (uses console.error)
215
+ */
216
+ error: function error() {
217
+ var _console7;
218
+ (_console7 = console).error.apply(_console7, arguments);
219
+ },
220
+ /**
221
+ * Info logging - only shown when debug is enabled
222
+ */
223
+ info: debugLoggers.kernel.info,
224
+ /**
225
+ * Log warnings that should always be visible (uses console.warn)
226
+ */
227
+ warn: function warn() {
228
+ var _console8;
229
+ (_console8 = console).warn.apply(_console8, arguments);
230
+ }
231
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/editor",
3
- "version": "1.5.2",
3
+ "version": "1.5.3",
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",
@@ -43,6 +43,7 @@
43
43
  "@shikijs/engine-javascript": "^3.9.2",
44
44
  "ahooks": "^3.9.3",
45
45
  "antd-style": "^3.7.1",
46
+ "debug": "^4.4.1",
46
47
  "eventemitter3": "^5.0.1",
47
48
  "framer-motion": "^12.23.12",
48
49
  "fuse.js": "^7.1.0",