UNPKG

@lobehub/editor

Version:

A powerful and extensible rich text editor built on Meta's Lexical framework, providing a modern editing experience with React integration.

430 lines (429 loc) 12.4 kB
import createDebug from 'debug'; /** * Development mode check */ declare const isDev: boolean; /** * Debug utility factory for LobeHub Editor * Creates namespaced debug functions following the pattern: lobe-editor:category */ export declare class DebugLogger { private debuggers; /** * Get or create a debug function for a specific namespace * @param category - The debug category (e.g., 'kernel', 'plugin', 'upload') * @param subcategory - Optional subcategory for more specific debugging * @returns Debug function */ getDebugger(category: string, subcategory?: string): createDebug.Debugger; /** * Create a scoped debug logger for a specific component/service * @param category - Main category * @param subcategory - Optional subcategory * @returns Object with debug methods */ createLogger(category: string, subcategory?: string): { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; /** * Enable debug for specific namespaces * @param namespaces - Comma-separated list of namespaces to enable */ enable(namespaces: string): void; /** * Disable all debug output */ disable(): void; /** * Check if a namespace is enabled * @param namespace - The namespace to check * @returns Whether the namespace is enabled */ enabled(namespace: string): boolean; } /** * Global debug logger instance */ export declare const debugLogger: DebugLogger; /** * Convenience function to create a debug logger for a specific category * @param category - Main category (e.g., 'kernel', 'plugin', 'upload') * @param subcategory - Optional subcategory * @returns Logger object with debug methods */ export declare function createDebugLogger(category: string, subcategory?: string): { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; /** * Pre-configured debug loggers for common categories */ export declare const debugLoggers: { demo: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; file: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; image: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; kernel: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; markdown: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; math: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; mention: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; plugin: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; react: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; service: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; slash: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; upload: { /** * General debug logging */ debug: createDebug.Debugger; /** * Error level logging - uses console.error for proper browser dev tool support */ error: (...args: any[]) => void; /** * Info level logging */ info: createDebug.Debugger; /** * Log function - alias for debug for compatibility */ log: createDebug.Debugger; /** * Warning level logging - uses console.warn for proper browser dev tool support */ warn: (...args: any[]) => void; }; }; /** * Development mode utilities */ export { isDev }; /** * Conditional console logging - only logs in development mode * Use this for demo files and development-only logging */ export declare const devConsole: { error: (...args: any[]) => void; info: (...args: any[]) => void; log: (...args: any[]) => void; warn: (...args: any[]) => void; }; /** * Production-safe error logging * Always logs errors and warnings regardless of environment using native console methods * for proper browser dev tool support. Debug/info uses debug package. */ export declare const prodSafeLogger: { /** * Debug info - only shown when debug is enabled */ debug: createDebug.Debugger; /** * Log critical errors that should always be visible (uses console.error) */ error: (...args: any[]) => void; /** * Info logging - only shown when debug is enabled */ info: createDebug.Debugger; /** * Log warnings that should always be visible (uses console.warn) */ warn: (...args: any[]) => void; }; /** * Browser debug utilities for Next.js and other client-side frameworks */ export declare const browserDebug: { /** * Disable debug logging in browser environment */ disable: () => void; /** * Enable debug logging in browser environment * @param namespaces - Debug namespaces to enable (e.g., 'lobe-editor:*') */ enable: (namespaces?: string) => void; /** * Get current debug configuration */ getConfig: () => { enabled: string | boolean; source: string; }; /** * Show available debug categories */ showCategories: () => void; /** * Show current debug status and configuration */ showStatus: () => void; };