Documentation
¶
Index ¶
- Constants
- Variables
- func ColorizeJSON(input string, w io.Writer) string
- func ConfigDir() (string, error)
- func Confirm(cmd *cli.Command, flagName, title, description string, defaultValue bool) (bool, error)
- func GetFormKeyMap() *huh.KeyMap
- func GetFormTheme(indent int) *huh.Theme
- func Hyperlink(url, text string) string
- func Rel(basepath, targpath string) string
- func SError(indent int, format string, args ...any) string
- func SHeader(format string, args ...any) string
- func SInfo(indent int, format string, args ...any) string
- func SProgress(indent int, format string, args ...any) string
- func SProperty(indent int, key, msg string) string
- func SSuccess(indent int, format string, args ...any) string
- func SWarn(indent int, format string, args ...any) string
- func Spacer()
- func ViewBuildPipeline(build *stainless.BuildObject, target stainless.Target, ...) string
- func ViewDiagnosticIcon(level stainless.BuildDiagnosticListResponseLevel) string
- func ViewDiagnosticsPrint(diagnostics []stainless.BuildDiagnosticListResponse) string
- func ViewHelpMenu() string
- func ViewStepSymbol(status, conclusion string) string
- type AuthConfig
- type BuildModel
- type BuildObject
- type BuildTarget
- func (bt *BuildTarget) IsCommitCompleted() bool
- func (bt *BuildTarget) IsCompleted() bool
- func (bt *BuildTarget) IsInProgress() bool
- func (bt *BuildTarget) StepInfo(step string) (status, url, conclusion string)
- func (bt *BuildTarget) StepUnion(step string) any
- func (bt *BuildTarget) Steps() []string
- func (bt *BuildTarget) Target() stainless.Target
- type BuildTargetInfo
- type Group
- func Error(format string, args ...any) Group
- func Header(format string, args ...any) Group
- func Info(format string, args ...any) Group
- func Progress(format string, args ...any) Group
- func Property(key, msg string) Group
- func Success(format string, args ...any) Group
- func Warn(format string, args ...any) Group
- func (g Group) Confirm(cmd *cli.Command, flagName, title, description string, defaultValue bool) (bool, Group, error)
- func (g Group) Error(format string, args ...any) Group
- func (g Group) Info(format string, args ...any) Group
- func (g Group) Progress(format string, args ...any) Group
- func (g Group) Property(key, msg string) Group
- func (g Group) Success(format string, args ...any) Group
- func (g Group) Warn(format string, args ...any) Group
- type TargetConfig
- type TargetInfo
- type WorkspaceConfig
Constants ¶
const Version = "0.1.0-alpha.41" // x-release-please-version
Variables ¶
var Command *cli.Command
var ErrUserCancelled = errors.New("user cancelled")
Functions ¶
func GetFormKeyMap ¶
GetFormKeyMap returns the standard huh keymap used across all forms
func GetFormTheme ¶
GetFormTheme returns the standard huh theme used across all forms
func Rel ¶
Rel returns a relative path similar to filepath.Rel but with custom behavior: - If target is empty, returns empty string - If relative path doesn't start with "../", it prefixes with "./"
func ViewBuildPipeline ¶
func ViewDiagnosticIcon ¶
func ViewDiagnosticIcon(level stainless.BuildDiagnosticListResponseLevel) string
func ViewDiagnosticsPrint ¶
func ViewDiagnosticsPrint(diagnostics []stainless.BuildDiagnosticListResponse) string
func ViewHelpMenu ¶
func ViewHelpMenu() string
ViewHelpMenu creates a styled help menu inspired by huh help component
func ViewStepSymbol ¶
Types ¶
type AuthConfig ¶
type AuthConfig struct {
AccessToken string `json:"access_token"`
RefreshToken string `json:"refresh_token,omitempty"`
TokenType string `json:"token_type"`
ConfigPath string `json:"-"`
}
AuthConfig stores the OAuth credentials
func NewAuthConfig ¶
func NewAuthConfig() (*AuthConfig, error)
NewAuthConfig creates a new AuthConfig with ConfigPath populated. Use this when creating a new config that you plan to save. For loading existing configs, use &AuthConfig{} and call Find() or Load().
func (*AuthConfig) Exists ¶
func (config *AuthConfig) Exists() bool
Exists checks if the auth config file exists
func (*AuthConfig) Find ¶
func (config *AuthConfig) Find() (bool, error)
Find searches for and loads the auth config from the standard location. Returns (true, nil) if config file exists and was successfully loaded. Returns (false, nil) if config file doesn't exist or is empty (not an error). Returns (false, error) if config file exists but failed to load due to an error.
func (*AuthConfig) Load ¶
func (config *AuthConfig) Load(configPath string) error
Load loads the auth config from a specific path. Returns nil if the file doesn't exist (not treated as an error). Returns nil if the file exists but is empty (not treated as an error). Returns error only if the file exists but fails to parse or read. Only sets ConfigPath if a valid config with AccessToken is successfully loaded.
func (*AuthConfig) Remove ¶
func (config *AuthConfig) Remove() error
Remove removes the auth config file
type BuildModel ¶
type BuildModel struct {
// contains filtered or unexported fields
}
BuildModel represents the bubbletea model for build monitoring
func NewBuildModel ¶
func NewBuildModel(cc *apiCommandContext, ctx context.Context, branch string, fn func() (*stainless.BuildObject, error)) BuildModel
func (BuildModel) Init ¶
func (m BuildModel) Init() tea.Cmd
func (BuildModel) Update ¶
func (m BuildModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)
func (BuildModel) View ¶
func (m BuildModel) View() string
type BuildObject ¶
type BuildObject struct {
*stainless.BuildObject
}
BuildObject wraps stainless.BuildObject to provide convenience methods
func NewBuildObject ¶
func NewBuildObject(build *stainless.BuildObject) *BuildObject
NewBuildObject creates a new BuildObject wrapper
func (*BuildObject) BuildTarget ¶
func (b *BuildObject) BuildTarget(target stainless.Target) *BuildTarget
BuildTarget returns the build target wrapper for a given target type, replacing getBuildTarget
func (*BuildObject) IsCompleted ¶
func (b *BuildObject) IsCompleted() bool
IsCompleted checks if the entire build is completed (all targets)
func (*BuildObject) Languages ¶
func (b *BuildObject) Languages() []stainless.Target
Languages returns all available build languages/targets for this build
type BuildTarget ¶
type BuildTarget struct {
*stainless.BuildTarget
// contains filtered or unexported fields
}
BuildTarget wraps stainless.BuildTarget to provide convenience methods
func NewBuildTarget ¶
func NewBuildTarget(buildTarget *stainless.BuildTarget, target stainless.Target) *BuildTarget
NewBuildTarget creates a new BuildTarget wrapper
func (*BuildTarget) IsCommitCompleted ¶
func (bt *BuildTarget) IsCommitCompleted() bool
IsCommitCompleted checks if the commit step is completed
func (*BuildTarget) IsCompleted ¶
func (bt *BuildTarget) IsCompleted() bool
IsCompleted checks if all steps in this build target are completed
func (*BuildTarget) IsInProgress ¶
func (bt *BuildTarget) IsInProgress() bool
IsInProgress checks if any step in this build target is in progress
func (*BuildTarget) StepInfo ¶
func (bt *BuildTarget) StepInfo(step string) (status, url, conclusion string)
StepInfo extracts status, url, and conclusion from a step union
func (*BuildTarget) StepUnion ¶
func (bt *BuildTarget) StepUnion(step string) any
StepUnion returns the step union for a given step name
func (*BuildTarget) Steps ¶
func (bt *BuildTarget) Steps() []string
Steps returns all available steps for this build target
func (*BuildTarget) Target ¶
func (bt *BuildTarget) Target() stainless.Target
Target returns the target type (node, python, etc.)
type BuildTargetInfo ¶
type BuildTargetInfo struct {
// contains filtered or unexported fields
}
BuildTargetInfo holds information about a build target
type Group ¶
type Group struct {
// contains filtered or unexported fields
}
Group represents a nested logging group
type TargetConfig ¶
type TargetConfig struct {
OutputPath string `json:"output_path"`
}
TargetConfig stores configuration for a specific SDK target
type TargetInfo ¶
TargetInfo represents a target with its display name and default selection
type WorkspaceConfig ¶
type WorkspaceConfig struct {
Project string `json:"project"`
OpenAPISpec string `json:"openapi_spec,omitempty"`
StainlessConfig string `json:"stainless_config,omitempty"`
Targets map[string]*TargetConfig `json:"targets,omitempty"`
ConfigPath string `json:"-"`
}
WorkspaceConfig stores workspace-level configuration
func NewWorkspaceConfig ¶
func NewWorkspaceConfig(projectName, openAPISpec, stainlessConfig string) (WorkspaceConfig, error)
func NewWorkspaceConfigWithTargets ¶
func NewWorkspaceConfigWithTargets(projectName, openAPISpec, stainlessConfig string, targets map[string]*TargetConfig) (WorkspaceConfig, error)
func (*WorkspaceConfig) Find ¶
func (config *WorkspaceConfig) Find() (bool, error)
Find searches for a stainless-workspace.json file starting from the current directory and moving up to parent directories until found or root is reached
func (*WorkspaceConfig) Load ¶
func (config *WorkspaceConfig) Load(configPath string) error
func (*WorkspaceConfig) Save ¶
func (config *WorkspaceConfig) Save() error