Documentation
¶
Index ¶
- func Dir(dir string, opts Options) ([]string, error)
- func File(path string, opts Options) (bool, error)
- func FileWithChanges(path string, opts Options, changes *[]KeyChange) (bool, error)
- func IsJSON(path string) bool
- func IsYAML(path string) bool
- func ReportValidationErrors(validationResult *ValidationResult, filePath string) string
- func ValidateAndReportCompositions(root *yaml.Node, filePath string) string
- type DefaultsOptions
- type DefaultsResult
- type FlattenOptions
- type FlattenResult
- type KeyChange
- type Options
- type PaginationOptions
- type PaginationResult
- type RuleEntry
- type TransformationPipeline
- type TransformationResults
- type ValidationError
- type ValidationResult
- type VendorExtensionOptions
- type VendorExtensionResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FileWithChanges ¶
FileWithChanges is like File, but collects key changes for dry-run summary.
func IsYAML ¶ added in v0.2.0
Exported extension helpers for reuse in cmd/root.go IsYAML returns true if the file has a .yaml or .yml extension.
func ReportValidationErrors ¶ added in v0.7.1
func ReportValidationErrors(validationResult *ValidationResult, filePath string) string
ReportValidationErrors formats validation errors for display with improved visual formatting
func ValidateAndReportCompositions ¶ added in v0.7.1
ValidateAndReportCompositions validates compositions and returns formatted error report
Types ¶
type DefaultsOptions ¶ added in v0.4.0
type DefaultsOptions struct { Options DefaultValues config.DefaultValues }
DefaultsOptions extends the regular Options with default values settings
type DefaultsResult ¶ added in v0.4.0
type DefaultsResult struct { Changed bool ProcessedFiles []string AppliedDefaults map[string][]string // file -> list of applied defaults SkippedTargets map[string][]string // file -> list of skipped targets with reasons }
DefaultsResult represents the result of defaults processing
func ProcessDefaultsInDir ¶ added in v0.4.0
func ProcessDefaultsInDir(dir string, opts DefaultsOptions) (*DefaultsResult, error)
ProcessDefaultsInDir processes default values in all OpenAPI files in a directory
type FlattenOptions ¶ added in v0.2.0
FlattenOptions extends the regular Options with flattening-specific settings
type FlattenResult ¶ added in v0.2.0
type FlattenResult struct { Changed bool ProcessedFiles []string FlattenedRefs map[string][]string // file -> flattened reference paths RemovedComponents map[string][]string // file -> removed component names }
FlattenResult represents the result of flattening processing
func ProcessFlatteningInDir ¶ added in v0.2.0
func ProcessFlatteningInDir(dir string, opts FlattenOptions) (*FlattenResult, error)
ProcessFlatteningInDir processes response flattening in all OpenAPI files in a directory
type KeyChange ¶
type KeyChange struct { File string OldKey string NewKey string Line int // Add line number for YAML changes, 0 for JSON }
KeyChange represents a change in a key's mapping.
type PaginationOptions ¶ added in v0.2.0
type PaginationOptions struct { Options PaginationPriority []string EndpointRules []config.EndpointPaginationRule }
PaginationOptions extends the regular Options with pagination-specific settings
type PaginationResult ¶ added in v0.2.0
type PaginationResult struct { Changed bool ProcessedFiles []string RemovedParams map[string][]string // file -> removed param names RemovedResponses map[string][]string // file -> removed response codes ModifiedSchemas map[string][]string // file -> modified schema paths UnusedComponents []string // components that became unused }
PaginationResult represents the result of pagination processing
func ProcessPaginationInDir ¶ added in v0.2.0
func ProcessPaginationInDir(dir string, opts PaginationOptions) (*PaginationResult, error)
ProcessPaginationInDir processes pagination in all OpenAPI files in a directory
type RuleEntry ¶ added in v0.4.0
type RuleEntry struct { Name string Rule config.DefaultRule }
RuleEntry for sorting rules by priority
type TransformationPipeline ¶ added in v0.6.0
type TransformationPipeline struct { Config *config.Config VendorProviders []string DryRun bool Backup bool OutputFile string }
TransformationPipeline represents the complete transformation pipeline
func NewTransformationPipeline ¶ added in v0.6.0
func NewTransformationPipeline(cfg *config.Config, vendorProviders []string, dryRun bool, backup bool, outputFile string) *TransformationPipeline
NewTransformationPipeline creates a new transformation pipeline
func (*TransformationPipeline) ExecuteFullPipeline ¶ added in v0.6.0
func (tp *TransformationPipeline) ExecuteFullPipeline(inputPath string) (*TransformationResults, error)
ExecuteFullPipeline runs the complete transformation pipeline in the correct order
type TransformationResults ¶ added in v0.6.0
type TransformationResults struct { Changed []string PaginationResult *PaginationResult FlattenResult *FlattenResult VendorResult *VendorExtensionResult DefaultsResult *DefaultsResult AnyTransformations bool }
TransformationResults aggregates results from all transformation steps
type ValidationError ¶ added in v0.7.1
ValidationError represents validation errors in OpenAPI structures
func (ValidationError) Error ¶ added in v0.7.1
func (e ValidationError) Error() string
type ValidationResult ¶ added in v0.7.1
type ValidationResult struct { Valid bool Errors []ValidationError }
ValidationResult contains validation results
func ValidateCompositionStructures ¶ added in v0.7.1
func ValidateCompositionStructures(root *yaml.Node, filePath string) *ValidationResult
ValidateCompositionStructures validates oneOf/anyOf/allOf structures in OpenAPI documents
type VendorExtensionOptions ¶ added in v0.3.0
type VendorExtensionOptions struct { Options VendorExtensions config.VendorExtensions EnabledProviders []string // specific providers to apply, empty means all }
VendorExtensionOptions extends the regular Options with vendor extension settings
type VendorExtensionResult ¶ added in v0.3.0
type VendorExtensionResult struct { Changed bool ProcessedFiles []string AddedExtensions map[string][]string // file -> list of added extensions SkippedOperations map[string][]string // file -> list of skipped operations with reasons }
VendorExtensionResult represents the result of vendor extension processing
func ProcessVendorExtensionsInDir ¶ added in v0.3.0
func ProcessVendorExtensionsInDir(dir string, opts VendorExtensionOptions) (*VendorExtensionResult, error)
ProcessVendorExtensionsInDir processes vendor extensions in all OpenAPI files in a directory