Compare commits
3 commits
8727d6ce90
...
8fcc303be2
Author | SHA1 | Date | |
---|---|---|---|
8fcc303be2 | |||
07c8a13e2c | |||
df3b911030 |
9 changed files with 433 additions and 212 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -2,3 +2,6 @@
|
||||||
.hugo_build.lock
|
.hugo_build.lock
|
||||||
**/_gen
|
**/_gen
|
||||||
public
|
public
|
||||||
|
|
||||||
|
# Vscode
|
||||||
|
.vscode
|
134
config.toml
134
config.toml
|
@ -16,77 +16,77 @@ layoutDir = "layouts"
|
||||||
publishDir = "public"
|
publishDir = "public"
|
||||||
|
|
||||||
[author]
|
[author]
|
||||||
name = "Melora Hugues"
|
name = "Melora Hugues"
|
||||||
|
|
||||||
[taxonomies]
|
[taxonomies]
|
||||||
category = "blog"
|
category = "blog"
|
||||||
tags = "tags"
|
tags = "tags"
|
||||||
series = "series"
|
series = "series"
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
dateform = "2 Jan 2006"
|
dateform = "2 Jan 2006"
|
||||||
dateformShort = "2 Jan"
|
dateformShort = "2 Jan"
|
||||||
dateformNum = "02-01-2006"
|
dateformNum = "02-01-2006"
|
||||||
dateformNumTime = "02-01-2006 15:04"
|
dateformNumTime = "02-01-2006 15:04"
|
||||||
|
|
||||||
disableReadOtherPosts = false
|
disableReadOtherPosts = false
|
||||||
enableSharingButtons = true
|
enableSharingButtons = true
|
||||||
enableGlobalLanguageMenu = true
|
enableGlobalLanguageMenu = true
|
||||||
|
|
||||||
description = "Personal website and tech blog for Melora Hugues"
|
description = "Personal website and tech blog for Melora Hugues"
|
||||||
keywords = "blog, tech, dev"
|
keywords = "blog, tech, dev"
|
||||||
images = [""]
|
images = [""]
|
||||||
|
|
||||||
# Enable to add comment support
|
# Enable to add comment support
|
||||||
# [params.commento]
|
# [params.commento]
|
||||||
# url = ""
|
# url = ""
|
||||||
|
|
||||||
# Integrate Plausible.io
|
# Integrate Plausible.io
|
||||||
plausibleDataDomain = 'faercol.me'
|
plausibleDataDomain = 'faercol.me'
|
||||||
plausibleScriptSource = 'https://plausible.faercol.me/js/script.js'
|
plausibleScriptSource = 'https://plausible.faercol.me/js/script.js'
|
||||||
|
|
||||||
[params.footer]
|
[params.footer]
|
||||||
trademark = true
|
trademark = true
|
||||||
rss = true
|
rss = true
|
||||||
copyright = false
|
copyright = false
|
||||||
author = true
|
author = true
|
||||||
|
|
||||||
[params.logo]
|
[params.logo]
|
||||||
logoText = "Hello there!"
|
logoText = "Hello there!"
|
||||||
logoHomeLink = "/"
|
logoHomeLink = "/"
|
||||||
|
|
||||||
[[params.social]]
|
[[params.social]]
|
||||||
name = "gitea"
|
name = "gitea"
|
||||||
url = "https://git.faercol.me"
|
url = "https://git.faercol.me"
|
||||||
|
|
||||||
[[params.social]]
|
[[params.social]]
|
||||||
name = "github"
|
name = "github"
|
||||||
url = "https://github.com/aHugues"
|
url = "https://github.com/aHugues"
|
||||||
|
|
||||||
[[params.social]]
|
[[params.social]]
|
||||||
name = "linkedin"
|
name = "linkedin"
|
||||||
url = "https://www.linkedin.com/in/huguesmel/"
|
url = "https://www.linkedin.com/in/huguesmel/"
|
||||||
|
|
||||||
[[params.social]]
|
[[params.social]]
|
||||||
name = "email"
|
name = "email"
|
||||||
url = "mailto:contact@faercol.me"
|
url = "mailto:contact@faercol.me"
|
||||||
|
|
||||||
[languages]
|
[languages]
|
||||||
[languages.en]
|
[languages.en]
|
||||||
contentDir = "content/en"
|
contentDir = "content/en"
|
||||||
[languages.en.params]
|
[languages.en.params]
|
||||||
homeSubtitle = "This is where I mostly talk about tech... and stuff"
|
homeSubtitle = "This is where I mostly talk about tech... and stuff"
|
||||||
[languages.en.params.logo]
|
[languages.en.params.logo]
|
||||||
logoText = "Hello there!"
|
logoText = "Hello there!"
|
||||||
logoHomeLink = "/en/"
|
logoHomeLink = "/en/"
|
||||||
|
|
||||||
[languages.fr]
|
[languages.fr]
|
||||||
contentDir = "content/fr"
|
contentDir = "content/fr"
|
||||||
[languages.fr.params]
|
[languages.fr.params]
|
||||||
homeSubtitle = "Là où je parle de tech... et d'autres trucs"
|
homeSubtitle = "Là où je parle de tech... et d'autres trucs"
|
||||||
[languages.fr.params.logo]
|
[languages.fr.params.logo]
|
||||||
logoText = "Hello there!"
|
logoText = "Hello there!"
|
||||||
logoHomeLink = "/fr/"
|
logoHomeLink = "/fr/"
|
||||||
|
|
||||||
[menu]
|
[menu]
|
||||||
# [[menu.main]]
|
# [[menu.main]]
|
||||||
|
@ -95,14 +95,20 @@ publishDir = "public"
|
||||||
# url = "/posts"
|
# url = "/posts"
|
||||||
# weight = 1
|
# weight = 1
|
||||||
|
|
||||||
[[menu.main]]
|
[[menu.main]]
|
||||||
identifier = "about_me"
|
identifier = "about_me"
|
||||||
name = "About me"
|
name = "About me"
|
||||||
url = "/about-me"
|
url = "/about-me"
|
||||||
weight = 10
|
weight = 10
|
||||||
|
|
||||||
[[menu.main]]
|
[[menu.main]]
|
||||||
identifier = "resume"
|
identifier = "resume"
|
||||||
name = "Resume"
|
name = "Resume"
|
||||||
url = "https://resume.faercol.me"
|
url = "https://resume.faercol.me"
|
||||||
weight = 40
|
weight = 40
|
||||||
|
|
||||||
|
[module]
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/hugomods/icons"
|
||||||
|
[[module.imports]]
|
||||||
|
path = "github.com/hugomods/icons/vendors/lucide"
|
||||||
|
|
8
go.mod
Normal file
8
go.mod
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
module git.faercol.me/faercol/hugo-relie
|
||||||
|
|
||||||
|
go 1.20
|
||||||
|
|
||||||
|
require (
|
||||||
|
github.com/hugomods/icons v0.6.0 // indirect
|
||||||
|
github.com/hugomods/icons/vendors/lucide v0.3.16 // indirect
|
||||||
|
)
|
4
go.sum
Normal file
4
go.sum
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
github.com/hugomods/icons v0.6.0 h1:G6RU93okhPPRDh/jqcew9gwkcYpSpg0rCBv4S6yUAFw=
|
||||||
|
github.com/hugomods/icons v0.6.0/go.mod h1:cIkSvK6W0q6N4U6n9KGz+QfRWQXAW0INd+1P31gPNGg=
|
||||||
|
github.com/hugomods/icons/vendors/lucide v0.3.16 h1:IQqgped/4DIe+FGe7u7W3pXcGCl9iztzUPi00rmt2UI=
|
||||||
|
github.com/hugomods/icons/vendors/lucide v0.3.16/go.mod h1:92fL24fAnTYWIAnq8i3UbWyeERFA/bupS2uhe8btB64=
|
149
layouts/shortcodes/callout.html
Normal file
149
layouts/shortcodes/callout.html
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
{{ $type := .Get "type"}}
|
||||||
|
{{ $iconName := "pencil" }}
|
||||||
|
{{ $calloutTitle := $type | humanize }}
|
||||||
|
{{ $calloutColorClass := "callout-blue"}}
|
||||||
|
|
||||||
|
{{ if (eq $type "info") }}
|
||||||
|
{{ $iconName = "info" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "note") }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "warning") }}
|
||||||
|
{{ $iconName = "alert-triangle" }}
|
||||||
|
{{ $calloutTitle = "Warning" }}
|
||||||
|
{{ $calloutColorClass = "callout-orange" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "summary") }}
|
||||||
|
{{ $iconName = "clipboard-list" }}
|
||||||
|
{{ $calloutTitle = "Summary" }}
|
||||||
|
{{ $calloutColorClass = "callout-cyan" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "todo") }}
|
||||||
|
{{ $iconName = "check-circle-2" }}
|
||||||
|
{{ $calloutTitle = "TODO" }}
|
||||||
|
{{ $calloutColorClass = "callout-blue" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "hint") }}
|
||||||
|
{{ $iconName = "flame" }}
|
||||||
|
{{ $calloutTitle = "Hint" }}
|
||||||
|
{{ $calloutColorClass = "callout-cyan" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "success") }}
|
||||||
|
{{ $iconName = "check" }}
|
||||||
|
{{ $calloutTitle = "Done" }}
|
||||||
|
{{ $calloutColorClass = "callout-green" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "help") }}
|
||||||
|
{{ $iconName = "help-circle" }}
|
||||||
|
{{ $calloutTitle = "Help" }}
|
||||||
|
{{ $calloutColorClass = "callout-yellow" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "help") }}
|
||||||
|
{{ $iconName = "help-circle" }}
|
||||||
|
{{ $calloutTitle = "Help" }}
|
||||||
|
{{ $calloutColorClass = "callout-yellow" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "fail") }}
|
||||||
|
{{ $iconName = "x" }}
|
||||||
|
{{ $calloutTitle = "Fail" }}
|
||||||
|
{{ $calloutColorClass = "callout-red" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "danger") }}
|
||||||
|
{{ $iconName = "zap" }}
|
||||||
|
{{ $calloutTitle = "Danger" }}
|
||||||
|
{{ $calloutColorClass = "callout-red" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "bug") }}
|
||||||
|
{{ $iconName = "bug" }}
|
||||||
|
{{ $calloutTitle = "Bug" }}
|
||||||
|
{{ $calloutColorClass = "callout-red" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "example") }}
|
||||||
|
{{ $iconName = "list" }}
|
||||||
|
{{ $calloutTitle = "Example" }}
|
||||||
|
{{ $calloutColorClass = "callout-purple" }}
|
||||||
|
{{ end }}
|
||||||
|
{{ if (eq $type "quote") }}
|
||||||
|
{{ $iconName = "quote" }}
|
||||||
|
{{ $calloutTitle = "Quote" }}
|
||||||
|
{{ $calloutColorClass = "callout-grey" }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ $context := dict
|
||||||
|
"vendor" "lucide"
|
||||||
|
"name" $iconName
|
||||||
|
"height" "1.5em"
|
||||||
|
"width" "1.5em"
|
||||||
|
}}
|
||||||
|
<style>
|
||||||
|
.callout-blue {
|
||||||
|
--callout-color: var(--callout-color-blue);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-cyan {
|
||||||
|
--callout-color: var(--callout-color-cyan);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-yellow {
|
||||||
|
--callout-color: var(--callout-color-yellow);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-orange {
|
||||||
|
--callout-color: var(--callout-color-orange);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-red {
|
||||||
|
--callout-color: var(--callout-color-red);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-grey {
|
||||||
|
--callout-color: var(--callout-color-grey);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-purple {
|
||||||
|
--callout-color: var(--callout-color-purple);
|
||||||
|
}
|
||||||
|
|
||||||
|
.callout-green {
|
||||||
|
--callout-color: var(--callout-color-green);
|
||||||
|
}
|
||||||
|
|
||||||
|
#callout {
|
||||||
|
--callout-color-blue: 138, 173, 244;
|
||||||
|
--callout-color-cyan: 125, 196, 228;
|
||||||
|
--callout-color-yellow: 238, 212, 159;
|
||||||
|
--callout-color-orange: 245, 169, 127;
|
||||||
|
--callout-color-red: 237, 135, 150;
|
||||||
|
--callout-color-grey: 158, 158, 158;
|
||||||
|
--callout-color-purple: 198, 160, 246;
|
||||||
|
--callout-color-green: 166, 218, 149;
|
||||||
|
|
||||||
|
background-color: rgba(var(--callout-color), 0.1);
|
||||||
|
border: 1px solid rgba(var(--callout-color), 0.6);
|
||||||
|
padding: 1.5em 1.25em;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#callout-title {
|
||||||
|
color: rgb(var(--callout-color));
|
||||||
|
margin-top: 0px;
|
||||||
|
|
||||||
|
svg {
|
||||||
|
margin-right: 5px;
|
||||||
|
vertical-align: -0.125rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
#callout {
|
||||||
|
padding: 1.5em 0.75em 1.5em 0.6em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<div id="callout" class="{{ $type }} {{ $calloutColorClass }}">
|
||||||
|
<h4 id="callout-title">{{ partial "icons/icon" $context }} {{ $calloutTitle }}</h4>
|
||||||
|
<div id="callout-inner">
|
||||||
|
{{ .Inner | markdownify }}
|
||||||
|
</div>
|
||||||
|
</div>
|
26
static/mermaid.css
Normal file
26
static/mermaid.css
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
.mermaid {
|
||||||
|
|
||||||
|
.nodeLabel {
|
||||||
|
color: #A9A9B3 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.edgePaths path {
|
||||||
|
stroke: #A9A9B3 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marker path {
|
||||||
|
stroke: #cad3f5;
|
||||||
|
fill: #A9A9B3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cluster rect {
|
||||||
|
fill: #1B1C1D !important;
|
||||||
|
stroke: #1F202E !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node rect {
|
||||||
|
fill: #131415 !important;
|
||||||
|
stroke: #1F202E !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,4 @@
|
||||||
|
<pre class="mermaid">
|
||||||
|
{{- .Inner | safeHTML }}
|
||||||
|
</pre>
|
||||||
|
{{ .Page.Store.Set "hasMermaid" true }}
|
|
@ -1,11 +1,14 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ .Site.Language }}">
|
<html lang="{{ .Site.Language }}">
|
||||||
<head>
|
|
||||||
{{ partial "head.html" . }}
|
|
||||||
</head>
|
|
||||||
|
|
||||||
{{ block "body" . }}
|
<head>
|
||||||
<body>
|
{{ partial "head.html" . }}
|
||||||
|
<link rel="stylesheet" href="/mermaid.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
{{ block "body" . }}
|
||||||
|
|
||||||
|
<body>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
@ -21,5 +24,6 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{ partial "javascript.html" . }}
|
{{ partial "javascript.html" . }}
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
|
@ -1,9 +1,11 @@
|
||||||
{{ define "main" }}
|
{{ define "main" }}
|
||||||
<main class="post">
|
<main class="post">
|
||||||
|
|
||||||
<div class="post-info">
|
<div class="post-info">
|
||||||
<p>
|
<p>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-clock">
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
class="feather feather-clock">
|
||||||
<circle cx="12" cy="12" r="10"></circle>
|
<circle cx="12" cy="12" r="10"></circle>
|
||||||
<polyline points="12 6 12 12 16 14"></polyline>
|
<polyline points="12 6 12 12 16 14"></polyline>
|
||||||
</svg>
|
</svg>
|
||||||
|
@ -55,6 +57,13 @@
|
||||||
|
|
||||||
<div class="post-content">
|
<div class="post-content">
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
|
{{ if .Page.Store.Get "hasMermaid" }}
|
||||||
|
<script type="module">
|
||||||
|
import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.esm.min.mjs';
|
||||||
|
mermaid.initialize({ startOnLoad: true });
|
||||||
|
</script>
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
|
|
||||||
|
@ -65,7 +74,9 @@
|
||||||
{{ partial "categories.html" . }}
|
{{ partial "categories.html" . }}
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file-text">
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
class="feather feather-file-text">
|
||||||
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path>
|
||||||
<polyline points="14 2 14 8 20 8"></polyline>
|
<polyline points="14 2 14 8 20 8"></polyline>
|
||||||
<line x1="16" y1="13" x2="8" y2="13"></line>
|
<line x1="16" y1="13" x2="8" y2="13"></line>
|
||||||
|
@ -76,7 +87,9 @@
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar">
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
class="feather feather-calendar">
|
||||||
<rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect>
|
<rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect>
|
||||||
<line x1="16" y1="2" x2="16" y2="6"></line>
|
<line x1="16" y1="2" x2="16" y2="6"></line>
|
||||||
<line x1="8" y1="2" x2="8" y2="6"></line>
|
<line x1="8" y1="2" x2="8" y2="6"></line>
|
||||||
|
@ -101,14 +114,18 @@
|
||||||
|
|
||||||
{{- if .GitInfo }}
|
{{- if .GitInfo }}
|
||||||
<p>
|
<p>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-git-commit">
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
|
||||||
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
|
||||||
|
class="feather feather-git-commit">
|
||||||
<circle cx="12" cy="12" r="4"></circle>
|
<circle cx="12" cy="12" r="4"></circle>
|
||||||
<line x1="1.05" y1="12" x2="7" y2="12"></line>
|
<line x1="1.05" y1="12" x2="7" y2="12"></line>
|
||||||
<line x1="17.01" y1="12" x2="22.96" y2="12"></line>
|
<line x1="17.01" y1="12" x2="22.96" y2="12"></line>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
||||||
<a href="{{ .Site.Params.gitUrl -}}{{ .GitInfo.Hash }}" target="_blank" rel="noopener">{{ .GitInfo.AbbreviatedHash }}</a>
|
<a href="{{ .Site.Params.gitUrl -}}{{ .GitInfo.Hash }}" target="_blank" rel="noopener">{{ .GitInfo.AbbreviatedHash
|
||||||
@ {{ if .Site.Params.dateformNum }}{{ dateFormat .Site.Params.dateformNum .GitInfo.AuthorDate.Local }}{{ else }}{{ dateFormat "2006-01-02" .GitInfo.AuthorDate.Local }}{{ end }}
|
}}</a>
|
||||||
|
@ {{ if .Site.Params.dateformNum }}{{ dateFormat .Site.Params.dateformNum .GitInfo.AuthorDate.Local }}{{ else }}{{
|
||||||
|
dateFormat "2006-01-02" .GitInfo.AuthorDate.Local }}{{ end }}
|
||||||
</p>
|
</p>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
</div>
|
</div>
|
||||||
|
@ -135,5 +152,5 @@
|
||||||
<div id="commento"></div>
|
<div id="commento"></div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
{{ end }}
|
{{ end }}
|
Loading…
Reference in a new issue