update for gojs

This commit is contained in:
Star 2025-12-01 00:11:37 +08:00
parent f8bba5fefa
commit 9708e2db6e
2 changed files with 17 additions and 5 deletions

2
go.mod
View File

@ -3,7 +3,7 @@ module apigo.cc/gojs/log
go 1.24.0 go 1.24.0
require ( require (
apigo.cc/gojs v0.0.28 apigo.cc/gojs v0.0.30
github.com/ssgo/log v1.7.9 github.com/ssgo/log v1.7.9
github.com/ssgo/u v1.7.23 github.com/ssgo/u v1.7.23
) )

20
log.go
View File

@ -21,22 +21,22 @@ func init() {
obj := map[string]any{ obj := map[string]any{
"info": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value { "info": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value {
args := gojs.MakeArgs(&argsIn, vm).Check(1) args := gojs.MakeArgs(&argsIn, vm).Check(1)
args.Logger.Info(getExceptionString(argsIn, vm), args.Map2Array(1)...) args.Logger.Info(getExceptionString(argsIn, vm), getObjects(args)...)
return nil return nil
}, },
"warn": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value { "warn": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value {
args := gojs.MakeArgs(&argsIn, vm).Check(1) args := gojs.MakeArgs(&argsIn, vm).Check(1)
args.Logger.Warning(getExceptionString(argsIn, vm), args.Map2Array(1)...) args.Logger.Warning(getExceptionString(argsIn, vm), getObjects(args)...)
return nil return nil
}, },
"error": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value { "error": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value {
args := gojs.MakeArgs(&argsIn, vm).Check(1) args := gojs.MakeArgs(&argsIn, vm).Check(1)
args.Logger.Error(getExceptionString(argsIn, vm), args.Map2Array(1)...) args.Logger.Error(getExceptionString(argsIn, vm), getObjects(args)...)
return nil return nil
}, },
"debug": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value { "debug": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value {
args := gojs.MakeArgs(&argsIn, vm).Check(1) args := gojs.MakeArgs(&argsIn, vm).Check(1)
args.Logger.Debug(getExceptionString(argsIn, vm), args.Map2Array(1)...) args.Logger.Debug(getExceptionString(argsIn, vm), getObjects(args)...)
return nil return nil
}, },
"getExceptionString": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value { "getExceptionString": func(argsIn goja.FunctionCall, vm *goja.Runtime) goja.Value {
@ -60,6 +60,18 @@ func init() {
}) })
} }
func getObjects(args *gojs.Arr) []any {
arrMap := args.Map(1)
arr := make([]any, len(arrMap)*2)
i := 0
for k, v := range arrMap {
arr[i] = k
arr[i+1] = u.String(gojs.FixObject(v))
i += 2
}
return arr
}
func getExceptionString(args goja.FunctionCall, vm *goja.Runtime) string { func getExceptionString(args goja.FunctionCall, vm *goja.Runtime) string {
if len(args.Arguments) == 0 { if len(args.Arguments) == 0 {
return "" return ""