|
@@ -5,29 +5,32 @@ import (
|
|
"github.com/99designs/gqlgen/api"
|
|
"github.com/99designs/gqlgen/api"
|
|
"github.com/99designs/gqlgen/codegen/config"
|
|
"github.com/99designs/gqlgen/codegen/config"
|
|
"github.com/spf13/pflag"
|
|
"github.com/spf13/pflag"
|
|
|
|
+ admin_api "gshopper.com/gshopify/admin-api"
|
|
"os"
|
|
"os"
|
|
- "strings"
|
|
|
|
)
|
|
)
|
|
|
|
|
|
var (
|
|
var (
|
|
- cfg = config.DefaultConfig()
|
|
|
|
- availableModules = []string{"customer", "product", "order", "shop"}
|
|
|
|
- fModule = pflag.StringP("module", "m", "", "module name")
|
|
|
|
|
|
+ cfg = config.DefaultConfig()
|
|
|
|
+ fModule = pflag.StringP("module", "m", "", "module name")
|
|
)
|
|
)
|
|
|
|
|
|
func init() {
|
|
func init() {
|
|
pflag.Parse()
|
|
pflag.Parse()
|
|
|
|
|
|
if fModule == nil || *fModule == "" {
|
|
if fModule == nil || *fModule == "" {
|
|
- _, _ = fmt.Fprintf(os.Stderr, "specify module name; available modules are: %v\n", availableModules)
|
|
|
|
|
|
+ _, _ = fmt.Fprintf(os.Stderr, "specify module name; available modules are: %v\n", admin_api.AllModules)
|
|
os.Exit(2)
|
|
os.Exit(2)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
func main() {
|
|
func main() {
|
|
- *fModule = strings.ToLower(strings.TrimSpace(*fModule))
|
|
|
|
|
|
+ module := admin_api.Module(*fModule)
|
|
|
|
+ if !module.IsValid() {
|
|
|
|
+ _, _ = fmt.Fprintf(os.Stderr, "incorrect module name has been specified; available modules are: %v\n", admin_api.AllModules)
|
|
|
|
+ os.Exit(2)
|
|
|
|
+ }
|
|
|
|
|
|
- moduleSchema := fmt.Sprintf("subgraph/%s.tpl", *fModule)
|
|
|
|
|
|
+ moduleSchema := fmt.Sprintf("subgraph/%s.tpl", module)
|
|
f, err := os.OpenFile(moduleSchema, os.O_RDONLY, 0644)
|
|
f, err := os.OpenFile(moduleSchema, os.O_RDONLY, 0644)
|
|
if err != nil {
|
|
if err != nil {
|
|
_, _ = fmt.Fprintf(os.Stderr, "unknown module; %v\n", err.Error())
|
|
_, _ = fmt.Fprintf(os.Stderr, "unknown module; %v\n", err.Error())
|
|
@@ -43,23 +46,23 @@ func main() {
|
|
|
|
|
|
// Federation
|
|
// Federation
|
|
cfg.Federation = config.PackageConfig{
|
|
cfg.Federation = config.PackageConfig{
|
|
- Filename: fmt.Sprintf("graph/%s/generated/federation.go", *fModule),
|
|
|
|
|
|
+ Filename: fmt.Sprintf("graph/%s/generated/federation.go", module),
|
|
Version: 2,
|
|
Version: 2,
|
|
}
|
|
}
|
|
|
|
|
|
// Exec
|
|
// Exec
|
|
cfg.Exec = config.ExecConfig{
|
|
cfg.Exec = config.ExecConfig{
|
|
- Filename: fmt.Sprintf("graph/%s/generated/generated.go", *fModule),
|
|
|
|
|
|
+ Filename: fmt.Sprintf("graph/%s/generated/generated.go", module),
|
|
}
|
|
}
|
|
|
|
|
|
// Model
|
|
// Model
|
|
cfg.Model = config.PackageConfig{
|
|
cfg.Model = config.PackageConfig{
|
|
- Filename: fmt.Sprintf("graph/%s/generated/models.go", *fModule),
|
|
|
|
|
|
+ Filename: fmt.Sprintf("graph/%s/generated/models.go", module),
|
|
}
|
|
}
|
|
|
|
|
|
cfg.Resolver = config.ResolverConfig{
|
|
cfg.Resolver = config.ResolverConfig{
|
|
Layout: config.LayoutFollowSchema,
|
|
Layout: config.LayoutFollowSchema,
|
|
- DirName: fmt.Sprintf("graph/%s", *fModule),
|
|
|
|
|
|
+ DirName: fmt.Sprintf("graph/%s", module),
|
|
}
|
|
}
|
|
|
|
|
|
// SchemaFilename
|
|
// SchemaFilename
|