Move utils into shared folder
This commit is contained in:
parent
500bf48295
commit
c25f27e82e
22 changed files with 111 additions and 137 deletions
35
shared/fswrapper.go
Normal file
35
shared/fswrapper.go
Normal file
|
@ -0,0 +1,35 @@
|
|||
package shared
|
||||
|
||||
import (
|
||||
"io/fs"
|
||||
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
// Fix for go:embed file systems including the full path of the embedded files
|
||||
// Adds a given string to the front of all requests
|
||||
type FSWrapper struct {
|
||||
wrapped fs.FS
|
||||
toAdd string
|
||||
log bool
|
||||
}
|
||||
|
||||
func NewFSWrapper(wraps fs.FS, appends string, logAccess bool) *FSWrapper {
|
||||
return &FSWrapper{
|
||||
wrapped: wraps,
|
||||
toAdd: appends,
|
||||
log: logAccess,
|
||||
}
|
||||
}
|
||||
|
||||
func (fs *FSWrapper) Open(name string) (fs.File, error) {
|
||||
res, err := fs.wrapped.Open(fs.toAdd + name)
|
||||
if fs.log {
|
||||
log.Debug().
|
||||
Str("prefix", fs.toAdd).
|
||||
Str("filename", name).
|
||||
Err(err).
|
||||
Msg("fswrapper: File access result")
|
||||
}
|
||||
return res, err
|
||||
}
|
15
shared/tagsFromString.go
Normal file
15
shared/tagsFromString.go
Normal file
|
@ -0,0 +1,15 @@
|
|||
package shared
|
||||
|
||||
import (
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"git.mstar.dev/mstar/goutils/sliceutils"
|
||||
)
|
||||
|
||||
var tagRegex = regexp.MustCompile(`#(\w+)`)
|
||||
|
||||
func TagsFromText(text string) []string {
|
||||
matches := tagRegex.FindAllString(text, -1)
|
||||
return sliceutils.Map(matches, func(t string) string { return strings.TrimPrefix(t, "#") })
|
||||
}
|
20
shared/tracing.go
Normal file
20
shared/tracing.go
Normal file
|
@ -0,0 +1,20 @@
|
|||
package shared
|
||||
|
||||
import (
|
||||
"github.com/rs/zerolog"
|
||||
)
|
||||
|
||||
func Trace(l *zerolog.Logger) *zerolog.Logger {
|
||||
if e := l.Trace(); e.Enabled() {
|
||||
e.Caller(2).
|
||||
Msg("Entered function")
|
||||
}
|
||||
return l
|
||||
}
|
||||
|
||||
func Untrace(l *zerolog.Logger) {
|
||||
if e := l.Trace(); e.Enabled() {
|
||||
e.Caller(2).
|
||||
Msg("Exited function")
|
||||
}
|
||||
}
|
21
shared/zerologPasskey.go
Normal file
21
shared/zerologPasskey.go
Normal file
|
@ -0,0 +1,21 @@
|
|||
package shared
|
||||
|
||||
import "github.com/rs/zerolog/log"
|
||||
|
||||
type ZerologWrapper struct{}
|
||||
|
||||
func (z *ZerologWrapper) Errorf(format string, args ...any) {
|
||||
log.Error().Msgf(format, args...)
|
||||
}
|
||||
|
||||
func (z *ZerologWrapper) Debugf(format string, args ...any) {
|
||||
log.Debug().Msgf(format, args...)
|
||||
}
|
||||
|
||||
func (z *ZerologWrapper) Infof(format string, args ...any) {
|
||||
log.Info().Msgf(format, args...)
|
||||
}
|
||||
|
||||
func (z *ZerologWrapper) Warnf(format string, args ...any) {
|
||||
log.Warn().Msgf(format, args...)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue