80 lines
1.3 KiB
Go
80 lines
1.3 KiB
Go
package test
|
|
|
|
// Code generated by github.com/Khan/genqlient, DO NOT EDIT.
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/Khan/genqlient/graphql"
|
|
"github.com/me/mypkg"
|
|
)
|
|
|
|
type OmitEmptyQueryResponse struct {
|
|
User OmitEmptyQueryUser `json:"user"`
|
|
MaybeConvert time.Time `json:"maybeConvert"`
|
|
}
|
|
|
|
type OmitEmptyQueryUser struct {
|
|
Id mypkg.ID `json:"id"`
|
|
}
|
|
|
|
type Role string
|
|
|
|
const (
|
|
RoleStudent Role = "STUDENT"
|
|
RoleTeacher Role = "TEACHER"
|
|
)
|
|
|
|
type UserQueryInput struct {
|
|
Email string `json:"email"`
|
|
Name string `json:"name"`
|
|
Id mypkg.ID `json:"id"`
|
|
Role Role `json:"role"`
|
|
Names []string `json:"names"`
|
|
}
|
|
|
|
func OmitEmptyQuery(
|
|
client graphql.Client,
|
|
query UserQueryInput,
|
|
dt time.Time,
|
|
tz string,
|
|
) (*OmitEmptyQueryResponse, error) {
|
|
variables := map[string]interface{}{
|
|
"query": nil,
|
|
"dt": nil,
|
|
"tz": nil,
|
|
}
|
|
|
|
var zero_query UserQueryInput
|
|
if query != zero_query {
|
|
variables["query"] = query
|
|
}
|
|
|
|
var zero_dt time.Time
|
|
if dt != zero_dt {
|
|
variables["dt"] = dt
|
|
}
|
|
|
|
var zero_tz string
|
|
if tz != zero_tz {
|
|
variables["tz"] = tz
|
|
}
|
|
|
|
var retval OmitEmptyQueryResponse
|
|
err := client.MakeRequest(
|
|
nil,
|
|
"OmitEmptyQuery",
|
|
`
|
|
query OmitEmptyQuery ($query: UserQueryInput, $dt: DateTime, $tz: String) {
|
|
user(query: $query) {
|
|
id
|
|
}
|
|
maybeConvert(dt: $dt, tz: $tz)
|
|
}
|
|
`,
|
|
&retval,
|
|
variables,
|
|
)
|
|
return &retval, err
|
|
}
|