aboutsummaryrefslogtreecommitdiff
path: root/internal/api/api.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/api/api.go')
-rw-r--r--internal/api/api.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/internal/api/api.go b/internal/api/api.go
index 831b1af2..2d4d80b5 100644
--- a/internal/api/api.go
+++ b/internal/api/api.go
@@ -54,7 +54,7 @@ func ServePackage(w http.ResponseWriter, r *http.Request, ds internal.DataSource
if params.Imports {
fs |= internal.WithImports
}
- if params.Doc != "" {
+ if params.Doc != "" || params.Examples {
fs |= internal.WithDocsSource
}
@@ -543,6 +543,10 @@ func paginate[T any](all []T, lp ListParams, defaultLimit int) (PaginatedRespons
// unitToPackage processes unit documentation into a Package struct.
func unitToPackage(unit *internal.Unit, params PackageParams) (*Package, error) {
+ if params.Examples && params.Doc == "" {
+ return nil, fmt.Errorf("%w: examples require doc format to be specified", derrors.InvalidArgument)
+ }
+
// Although unit.Documentation is a slice, it will
// have at most one item, the documentation matching
// the build context.
@@ -565,8 +569,7 @@ func unitToPackage(unit *internal.Unit, params PackageParams) (*Package, error)
}
if params.Doc != "" {
var err error
- const examples = true // TODO(jba): make examples configurable.
- docs, err = renderDocumentation(unit, d, params.Doc, examples)
+ docs, err = renderDocumentation(unit, d, params.Doc, params.Examples)
if err != nil {
return nil, err
}