-
Notifications
You must be signed in to change notification settings - Fork 324
Expand file tree
/
Copy pathrender-codeblock.html
More file actions
20 lines (20 loc) · 1.15 KB
/
render-codeblock.html
File metadata and controls
20 lines (20 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{{ $result := transform.HighlightCodeBlock . }}
{{- if or .Attributes.placeholders .Attributes.callout -}}
{{- $code := highlight .Inner .Type -}}
{{- if .Attributes.placeholders -}}
{{- $placeholderReplace := print "<div data-component='code-placeholder' class='code-placeholder-wrapper'><var title='Edit $0' class='code-placeholder' data-code-var='$0' data-code-var-value='$0' data-code-var-escaped=\"$0\">$0<span class='code-placeholder-edit-icon cf-icon Pencil'></span></var></div>" -}}
{{- $code = replaceRE .Attributes.placeholders $placeholderReplace $code -}}
{{- end -}}
{{- if .Attributes.callout -}}
{{- $color := index .Attributes "callout-color" | default "green" -}}
{{- $calloutReplace := print "<span class='code-callout " $color "'>$0</span>" -}}
{{- $code = replaceRE .Attributes.callout $calloutReplace $code -}}
{{- end -}}
{{- $code | safeHTML -}}
{{- else -}}
{{- $wrapped := string $result.Wrapped -}}
{{- if in $wrapped "tc-dynamic-values" -}}
{{- $wrapped = replace $wrapped "tc-dynamic-values" "tc-dynamic-values\" data-component=\"tc-dynamic-values" -}}
{{- end -}}
{{ $wrapped | safeHTML }}
{{- end -}}