2025-08-15 03:09:58 +02:00
|
|
|
{{- /*
|
|
|
|
A shortcode to create a callout.
|
|
|
|
|
2025-08-22 00:31:16 +02:00
|
|
|
@param {string} type The type of the callout (default, info, warning, error, important).
|
2025-08-15 03:09:58 +02:00
|
|
|
@param {string} content The content of the callout.
|
2025-08-22 00:31:16 +02:00
|
|
|
@param {string} emoji The emoji of the callout.
|
|
|
|
@param {string} icon The icon of the callout (related to type or can be a custom icon).
|
2025-08-15 03:09:58 +02:00
|
|
|
|
|
|
|
@example {{< callout type="info" >}}Content{{< /callout >}}
|
|
|
|
*/ -}}
|
|
|
|
|
2024-12-14 23:44:10 +00:00
|
|
|
{{- $type := .Get "type" | default "default" -}}
|
|
|
|
{{- $emoji := .Get "emoji" -}}
|
|
|
|
{{- $icon := .Get "icon" -}}
|
2023-07-27 23:26:07 +01:00
|
|
|
|
2025-08-22 00:31:16 +02:00
|
|
|
{{- $styles := newScratch -}}
|
|
|
|
{{- $styles.Set "default" (dict
|
|
|
|
"icon" "light-bulb"
|
|
|
|
"style" "hx:border-green-200 hx:bg-green-100 hx:text-green-900 hx:dark:border-green-200/30 hx:dark:bg-green-900/30 hx:dark:text-green-200"
|
|
|
|
)
|
|
|
|
-}}
|
|
|
|
{{- $styles.Set "info" (dict
|
|
|
|
"icon" "information-circle"
|
|
|
|
"style" "hx:border-blue-200 hx:bg-blue-100 hx:text-blue-900 hx:dark:border-blue-200/30 hx:dark:bg-blue-900/30 hx:dark:text-blue-200"
|
|
|
|
)
|
|
|
|
-}}
|
|
|
|
{{- $styles.Set "warning" (dict
|
|
|
|
"icon" "exclamation"
|
|
|
|
"style" "hx:border-amber-200 hx:bg-amber-100 hx:text-amber-900 hx:dark:border-amber-200/30 hx:dark:bg-amber-900/30 hx:dark:text-amber-200"
|
|
|
|
)
|
|
|
|
-}}
|
|
|
|
{{- $styles.Set "error" (dict
|
|
|
|
"icon" "ban"
|
|
|
|
"style" "hx:border-red-200 hx:bg-red-100 hx:text-red-900 hx:dark:border-red-200/30 hx:dark:bg-red-900/30 hx:dark:text-red-200"
|
|
|
|
)
|
|
|
|
-}}
|
|
|
|
{{- $styles.Set "important" (dict
|
|
|
|
"icon" "exclamation-circle"
|
|
|
|
"style" "hx:border-purple-200 hx:bg-purple-100 hx:text-purple-900 hx:dark:border-purple-200/30 hx:dark:bg-purple-900/30 hx:dark:text-purple-200"
|
|
|
|
)
|
|
|
|
-}}
|
2023-07-27 23:26:07 +01:00
|
|
|
|
2025-08-22 00:31:16 +02:00
|
|
|
{{- $style := or ($styles.Get $type) ($styles.Get "default") -}}
|
2025-08-17 19:44:02 +02:00
|
|
|
|
2025-08-22 00:31:16 +02:00
|
|
|
{{- if and (not $emoji) (not $icon) -}}
|
|
|
|
{{- $icon = $style.icon -}}
|
|
|
|
{{- end -}}
|
|
|
|
|
|
|
|
{{- $content := .InnerDeindent | markdownify -}}
|
2023-07-27 23:26:07 +01:00
|
|
|
|
2025-08-22 00:31:16 +02:00
|
|
|
{{- partial "shortcodes/callout.html" (dict
|
|
|
|
"content" $content
|
|
|
|
"emoji" $emoji
|
|
|
|
"icon" $icon
|
|
|
|
"class" $style.style
|
|
|
|
)
|
|
|
|
-}}
|