blob: 765114de8b9738f9972f38ba601958bdda43f8c9 [file] [log] [blame]
// Program to generate TypeScript definition files for Golang structs that are
// serialized to JSON for the web UI.
package main
import (
"io"
"github.com/skia-dev/go2ts"
"go.skia.org/infra/go/sklog"
"go.skia.org/infra/go/util"
"go.skia.org/infra/machine/go/machine"
)
func main() {
generator := go2ts.New()
err := generator.Add(machine.Description{})
if err != nil {
sklog.Fatal(err)
}
err = generator.AddUnion(machine.AllModes)
if err != nil {
sklog.Fatal(err)
}
err = util.WithWriteFile("./modules/json/index.ts", func(w io.Writer) error {
return generator.Render(w)
})
if err != nil {
sklog.Fatal(err)
}
}