github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/pkg/platform/api/buildplanner/response/createproject.go (about)

     1  package response
     2  
     3  import (
     4  	"github.com/ActiveState/cli/internal/errs"
     5  )
     6  
     7  type projectCreated struct {
     8  	Type   string  `json:"__typename"`
     9  	Commit *Commit `json:"commit"`
    10  	*Error
    11  	*NotFoundError
    12  	*ParseError
    13  	*ForbiddenError
    14  }
    15  
    16  type CreateProjectResult struct {
    17  	ProjectCreated *projectCreated `json:"createProject"`
    18  }
    19  
    20  type ProjectCreatedError struct {
    21  	Type    string
    22  	Message string
    23  }
    24  
    25  func (p *ProjectCreatedError) Error() string { return p.Message }
    26  
    27  func ProcessProjectCreatedError(pcErr *projectCreated, fallbackMessage string) error {
    28  	if pcErr.Error == nil {
    29  		return errs.New(fallbackMessage)
    30  	}
    31  
    32  	return &ProjectCreatedError{pcErr.Type, pcErr.Message}
    33  }