Files
zeekay dba4cd6eb8 refactor: remove golem dependency, inline HID implementation
- Added hid.go with direct USB HID communication
- Added apdu.go for APDU packet wrapping
- Added logger.go with simple zap-based logging (NO GOLEM)
- Updated lux.go to use local LedgerAdmin/LedgerDevice
- Updated types.go to use local interfaces
- Fixed .gitignore to not ignore go.mod

Dependencies reduced from 121 to 17 (86% reduction)

NO GOLEM. NO BLOAT.
2025-12-24 16:16:08 -08:00

51 lines
1021 B
Go

// Copyright (C) 2019-2025, Lux Industries Inc. All rights reserved.
// Simple zap-based logger - NO GOLEM DEPENDENCY
// Licensed under the Apache License, Version 2.0
package ledger
import (
"os"
"strings"
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
)
var log *zap.SugaredLogger
func init() {
initLogger()
}
func initLogger() {
level := getLogLevel()
config := zap.NewDevelopmentConfig()
config.EncoderConfig.EncodeLevel = zapcore.CapitalColorLevelEncoder
switch level {
case "debug":
config.Level = zap.NewAtomicLevelAt(zap.DebugLevel)
case "info":
config.Level = zap.NewAtomicLevelAt(zap.InfoLevel)
case "warn":
config.Level = zap.NewAtomicLevelAt(zap.WarnLevel)
case "error":
config.Level = zap.NewAtomicLevelAt(zap.ErrorLevel)
default:
config.Level = zap.NewAtomicLevelAt(zap.InfoLevel)
}
logger, _ := config.Build()
log = logger.Sugar()
}
func getLogLevel() string {
level := os.Getenv("LEDGER_LOG_LEVEL")
if level == "" {
level = "info"
}
return strings.ToLower(level)
}