Documentation ¶
Index ¶
Constants ¶
View Source
const ( CurrencyNode = "Currency" CountryNode = "Country" )
View Source
const ( ProvinceNode = "Province" CityNode = "City" RegencyNode = "Regency" DistrictNode = "District" VillageNode = "Village" )
Variables ¶
View Source
var ( RegionArgs = graphql.FieldConfigArgument{ "id": &graphql.ArgumentConfig{ Type: scalar.UUID, }, "code": &graphql.ArgumentConfig{ Type: graphql.String, }, } ListRegionArgs = graphql.FieldConfigArgument{ "code": &graphql.ArgumentConfig{ Type: graphql.String, }, "limit": &graphql.ArgumentConfig{ Type: graphql.Int, DefaultValue: config.Limit, }, "offset": &graphql.ArgumentConfig{ Type: graphql.Int, DefaultValue: config.Offset, }, "province": &graphql.ArgumentConfig{ Type: RegionInput(ProvinceNode), }, "city": &graphql.ArgumentConfig{ Type: RegionInput(CityNode), }, "regency": &graphql.ArgumentConfig{ Type: RegionInput(RegencyNode), }, "district": &graphql.ArgumentConfig{ Type: RegionInput(DistrictNode), }, "country": &graphql.ArgumentConfig{ Type: CountryInput, }, } ProvinceType = graphql.NewObject(graphql.ObjectConfig{ Name: ProvinceNode, Description: "Province administrative division", Fields: regionFields, }) CityType = graphql.NewObject(graphql.ObjectConfig{ Name: CityNode, Description: "City administrative division", Fields: regionFields, }) RegencyType = graphql.NewObject(graphql.ObjectConfig{ Name: RegencyNode, Description: "Regency administrative division", Fields: regionFields, }) DistrictType = graphql.NewObject(graphql.ObjectConfig{ Name: DistrictNode, Description: "District administrative division", Fields: regionFields, }) VillageType = graphql.NewObject(graphql.ObjectConfig{ Name: VillageNode, Description: "Village administrative division", Fields: regionFields, }) CurrencyType = graphql.NewObject(graphql.ObjectConfig{ Name: "Currency", Description: "Currency information with ISO 4217", Fields: currencyField, }) CurrencyInput = graphql.NewInputObject(graphql.InputObjectConfig{ Name: fmt.Sprintf("Currency_%s", random.String(5, random.Alphabetic)), Description: "Currency input arguments", Fields: graphql.InputObjectConfigFieldMap{ "id": &graphql.InputObjectFieldConfig{ Type: scalar.UUID, }, "ISO4217Name": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO4217Alphabetic": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO4217Numeric": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO4217MinorUnit": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, }, }) CountryType = graphql.NewObject(graphql.ObjectConfig{ Name: "Country", Description: "Country information with ISO 3166", Fields: countryField, }) CountryInput = graphql.NewInputObject(graphql.InputObjectConfig{ Name: "Country", Description: "Country input arguments", Fields: graphql.InputObjectConfigFieldMap{ "id": &graphql.InputObjectFieldConfig{ Type: scalar.UUID, }, "name": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "dialCode": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO3166Alpha2": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO3166Alpha3": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "ISO3166Numeric": &graphql.InputObjectFieldConfig{ Type: graphql.String, }, "currency": &graphql.InputObjectFieldConfig{ Type: CurrencyInput, }, }, }) CountryArgs = graphql.FieldConfigArgument{ "id": &graphql.ArgumentConfig{ Type: scalar.UUID, }, "ISO3166Alpha2": &graphql.ArgumentConfig{ Type: graphql.String, }, "ISO3166Alpha3": &graphql.ArgumentConfig{ Type: graphql.String, }, "ISO3166Numeric": &graphql.ArgumentConfig{ Type: graphql.String, }, } ListCountryArgs = graphql.FieldConfigArgument{ "limit": &graphql.ArgumentConfig{ Type: graphql.Int, DefaultValue: config.Limit, }, "offset": &graphql.ArgumentConfig{ Type: graphql.Int, DefaultValue: config.Offset, }, "dialCode": &graphql.ArgumentConfig{ Type: graphql.String, }, "currencies": &graphql.ArgumentConfig{ Type: graphql.NewList(CurrencyInput), }, } )
View Source
var ( Incoming = map[string]string{ "country": CountryNode, "province": ProvinceNode, "city": CityNode, "regency": RegencyNode, "district": DistrictNode, "village": VillageNode, "currency": CountryNode, } Outgoing = map[string]string{ "currencies": CurrencyNode, } )
Functions ¶
func RegionInput ¶
func RegionInput(name string) *graphql.InputObject
func RegionType ¶
Types ¶
type Country ¶
type Country struct { ID string `json:"id"` Name string `json:"name"` ISO3166Alpha2 string `json:"ISO3166Alpha2"` ISO3166Alpha3 string `json:"ISO3166Alpha3"` ISO3166Numeric string `json:"ISO3166Numeric"` CallingCode string `json:"dialCode"` Currencies []*Currency `json:"currencies"` Flag Flag `json:"flag"` FlagStr string `json:"flags"` Regions CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
type Currency ¶
type Currency struct { ID string `json:"id"` ISO4217Name string `json:"ISO4217Name"` ISO4217Numeric string `json:"ISO4217Numeric"` ISO4217MinorUnit string `json:"ISO4217MinorUnit"` ISO4217Alphabetic string `json:"ISO4217Alphabetic"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
Click to show internal directories.
Click to hide internal directories.