package build import ( "bytes" "embed" "encoding/json" apitypes "github.com/filecoin-project/lotus/api/types" ) //go:embed openrpc var openrpcfs embed.FS func mustReadOpenRPCDocument(data []byte) apitypes.OpenRPCDocument { m := apitypes.OpenRPCDocument{} err := json.NewDecoder(bytes.NewBuffer(data)).Decode(&m) if err != nil { log.Fatal(err) } return m } func OpenRPCDiscoverJSON_Full() apitypes.OpenRPCDocument { data, err := openrpcfs.ReadFile("openrpc/full.json") if err != nil { panic(err) } return mustReadOpenRPCDocument(data) } func OpenRPCDiscoverJSON_Miner() apitypes.OpenRPCDocument { data, err := openrpcfs.ReadFile("openrpc/miner.json") if err != nil { panic(err) } return mustReadOpenRPCDocument(data) } func OpenRPCDiscoverJSON_Worker() apitypes.OpenRPCDocument { data, err := openrpcfs.ReadFile("openrpc/worker.json") if err != nil { panic(err) } return mustReadOpenRPCDocument(data) } func OpenRPCDiscoverJSON_Gateway() apitypes.OpenRPCDocument { data, err := openrpcfs.ReadFile("openrpc/gateway.json") if err != nil { panic(err) } return mustReadOpenRPCDocument(data) }