Documentation
¶
Index ¶
- func DeleteOApi[TInput any, TOutput any, TError any](o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], ...)
- func GetOApi[TInput any, TOutput any, TError any](o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], ...)
- func PostOApi[TInput any, TOutput any, TError any](o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], ...)
- func PutOApi[TInput any, TOutput any, TError any](o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], ...)
- type Config
- type DocConfig
- type HandlerFunc
- type OApiApp
- type OpenAPIOperation
- type OpenAPIOptions
- type OpenAPIParameter
- type OpenAPIRequestBody
- type OpenAPIResponse
- type PathInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteOApi ¶
func DeleteOApi[TInput any, TOutput any, TError any]( o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], options OpenAPIOptions, )
DeleteOApi defines a DELETE operation for the OpenAPI documentation
func GetOApi ¶
func GetOApi[TInput any, TOutput any, TError any]( o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], options OpenAPIOptions, )
GetOApi defines a GET operation for the OpenAPI documentation
func PostOApi ¶
func PostOApi[TInput any, TOutput any, TError any]( o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], options OpenAPIOptions, )
PostOApi defines a POST operation for the OpenAPI documentation
func PutOApi ¶
func PutOApi[TInput any, TOutput any, TError any]( o *OApiApp, path string, handler HandlerFunc[TInput, TOutput, TError], options OpenAPIOptions, )
PutOApi defines a PUT operation for the OpenAPI documentation
Types ¶
type Config ¶
type Config struct {
EnableValidation bool // Enable or disable input validation
EnableOpenAPIDocs bool // Enable or disable OpenAPI documentation generation
OpenAPIDocsPath string // Path to serve OpenAPI documentation (e.g., "/docs")
OpenAPIJSONPath string // Path to serve OpenAPI JSON spec (e.g., "/openapi.json")
}
type DocConfig ¶
type DocConfig struct {
Title string
Description string
Version string
DocsPath string // Path where docs will be served, default: "/docs"
JSONPath string // Path where OpenAPI JSON will be served, default: "/openapi.json"
}
DocConfig contains configuration for the documentation
func DefaultDocConfig ¶
func DefaultDocConfig() DocConfig
DefaultDocConfig returns default documentation configuration
type HandlerFunc ¶
type HandlerFunc[TInput any, TOutput any, TError any] func(c *fiber.Ctx, input TInput) (TOutput, TError)
HandlerFunc represents a handler function with typed input and output
type OApiApp ¶
OApiApp wraps fiber.App with OpenAPI capabilities
func (*OApiApp) GenerateOpenAPISpec ¶
GenerateOpenAPISpec generates a complete OpenAPI 3.0 specification
func (*OApiApp) GetOperations ¶
func (o *OApiApp) GetOperations() []OpenAPIOperation
GetOperations returns all registered operations (useful for testing and documentation generation)
type OpenAPIOperation ¶
type OpenAPIOperation struct {
Method string // HTTP method: "GET", "POST", etc.
Path string // Route path: "/greeting/{name}"
Options OpenAPIOptions // OpenAPI options and metadata
InputType reflect.Type // Type of the input struct for schema generation
OutputType reflect.Type // Type of the output struct for schema generation
ErrorType reflect.Type // Type of the error struct for schema generation
}
type OpenAPIOptions ¶
type OpenAPIOptions struct {
OperationID string `json:"operationId,omitempty"`
Summary string `json:"summary,omitempty"`
Description string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
Security []map[string][]string `json:"security,omitempty"`
Parameters []OpenAPIParameter `json:"parameters,omitempty"`
Responses map[string]OpenAPIResponse `json:"responses,omitempty"`
RequestBody *OpenAPIRequestBody `json:"requestBody,omitempty"`
}