consistent script processor environments

This commit is contained in:
Joel Wetzell
2026-03-08 13:32:34 -05:00
parent 6382cf6944
commit 09ddc40f1f
4 changed files with 28 additions and 14 deletions

View File

@@ -5,6 +5,7 @@ import (
"encoding/json"
"fmt"
"github.com/jwetzell/showbridge-go/internal/common"
"github.com/jwetzell/showbridge-go/internal/config"
"modernc.org/quickjs"
)
@@ -30,6 +31,16 @@ func (sj *ScriptJS) Process(ctx context.Context, payload any) (any, error) {
vm.SetProperty(vm.GlobalObject(), payloadAtom, payload)
sender := ctx.Value(common.SenderContextKey)
if sender != nil {
senderAtom, err := vm.NewAtom("sender")
if err != nil {
return nil, err
}
vm.SetProperty(vm.GlobalObject(), senderAtom, sender)
}
_, err = vm.Eval(sj.Program, quickjs.EvalGlobal)
if err != nil {