From ecb90fc724337e2c0820be8b3e8009aa205495d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Wed, 17 Apr 2024 12:50:47 +0200 Subject: [PATCH] Escape HTML manually in property-type partial MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The behavior of `delimit` changed, so Hugo doesn't recognize "safe" HTML passed to it anymore, so it escapes nested HTML links. To fix that we escape the schema data manually and consider the output of the partial as "safe". Signed-off-by: Kévin Commaille --- layouts/partials/openapi/render-object-table.html | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/layouts/partials/openapi/render-object-table.html b/layouts/partials/openapi/render-object-table.html index 030978b1..6faa21d9 100644 --- a/layouts/partials/openapi/render-object-table.html +++ b/layouts/partials/openapi/render-object-table.html @@ -46,7 +46,7 @@ {{ $property_name }} - {{ partial "partials/property-type" $property }} + {{ partial "partials/property-type" $property | safeHTML }} {{ partial "partials/property-description" (dict "property" $property "required" $required) }} @@ -67,7 +67,7 @@ {{ $property := . }} - {{ partial "partials/property-type" $property }} + {{ partial "partials/property-type" $property | safeHTML }} {{ partial "partials/property-description" (dict "property" $property) }} @@ -128,14 +128,14 @@ {{ end }} {{ else }} {{ range .type }} - {{ $types = $types | append . }} + {{ $types = $types | append (htmlEscape .) }} {{ end }} {{ end }} {{ $type = delimit $types "|" }} {{ else }} {{/* A simple type like string or boolean */}} - {{ $type = .type }} + {{ $type = (htmlEscape .type) }} {{ end }} {{ return $type }} @@ -165,9 +165,9 @@ If the property has a `title`, use that rather than `type`. This means we can write things like `EventFilter` rather than `object`. */}} - {{ $type = .title }} + {{ $type = .title | htmlEscape }} {{ if .anchor }} - {{ $type = printf "%s" (htmlEscape .anchor) (htmlEscape $type) | safeHTML }} + {{ $type = printf "%s" (htmlEscape .anchor) $type }} {{ end }} {{ else if reflect.IsMap .additionalProperties }} {{/*