mirror of
https://github.com/kjanat/articulate-parser.git
synced 2026-01-16 15:02:09 +01:00
Renames the `OriginalUrl` field to `OriginalURL` across media models to adhere to Go's common initialisms convention. The `json` tag is unchanged to maintain API compatibility. Introduces constants for exporter formats (e.g., `FormatMarkdown`, `FormatDocx`) to eliminate the use of magic strings, enhancing type safety and making the code easier to maintain. Additionally, this commit includes several minor code quality improvements: - Wraps file-writing errors in exporters to provide more context. - Removes redundant package-level comments from test files. - Applies various minor linting fixes throughout the codebase.
26 lines
854 B
Go
26 lines
854 B
Go
package interfaces
|
|
|
|
import "context"
|
|
|
|
// Logger defines the interface for structured logging.
|
|
// Implementations should provide leveled, structured logging capabilities.
|
|
type Logger interface {
|
|
// Debug logs a debug-level message with optional key-value pairs.
|
|
Debug(msg string, keysAndValues ...any)
|
|
|
|
// Info logs an info-level message with optional key-value pairs.
|
|
Info(msg string, keysAndValues ...any)
|
|
|
|
// Warn logs a warning-level message with optional key-value pairs.
|
|
Warn(msg string, keysAndValues ...any)
|
|
|
|
// Error logs an error-level message with optional key-value pairs.
|
|
Error(msg string, keysAndValues ...any)
|
|
|
|
// With returns a new logger with the given key-value pairs added as context.
|
|
With(keysAndValues ...any) Logger
|
|
|
|
// WithContext returns a new logger with context information.
|
|
WithContext(ctx context.Context) Logger
|
|
}
|