aboutsummaryrefslogtreecommitdiff
path: root/themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html
diff options
context:
space:
mode:
authorAlexander Neonxp Kiryukhin <i@neonxp.ru>2024-11-03 20:08:36 +0300
committerAlexander Neonxp Kiryukhin <i@neonxp.ru>2024-11-03 20:08:36 +0300
commit59c7d4567380d1a9c80e96eb958fdbdd512ce006 (patch)
tree65410cfc10dbc7d060ec23be110662d9b7f6b0e9 /themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html
новая жизнь блога
Diffstat (limited to 'themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html')
-rw-r--r--themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html46
1 files changed, 46 insertions, 0 deletions
diff --git a/themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html b/themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html
new file mode 100644
index 0000000..761801f
--- /dev/null
+++ b/themes/hugo-theme-stack/layouts/partials/comments/provider/beaudar.html
@@ -0,0 +1,46 @@
+<script
+ src="https://beaudar.lipk.org/client.js"
+ repo="{{ .Site.Params.comments.beaudar.repo }}"
+ issue-term="{{ .Site.Params.comments.beaudar.issueTerm }}"
+ {{ with .Site.Params.comments.beaudar.label }}
+ label="{{ . }}"
+ {{ end }}
+ theme="{{ .Site.Params.comments.beaudar.theme }}"
+ crossorigin="anonymous"
+ async
+></script>
+
+<style>
+ .beaudar {
+ max-width: unset;
+ }
+</style>
+
+<script>
+ let beaudarLoaded = false;
+
+ function setBeaudarTheme(theme) {
+ let beaudar = document.querySelector(".beaudar iframe");
+ if (beaudar) {
+ beaudar.contentWindow.postMessage(
+ {
+ type: "set-theme",
+ theme: `github-${theme}`,
+ },
+ "https://beaudar.lipk.org"
+ );
+ }
+ }
+
+ addEventListener("message", (event) => {
+ if (event.origin !== "https://beaudar.lipk.org") return;
+ /// Called when Beaudar is ready
+ beaudarLoaded = true;
+ setBeaudarTheme(document.documentElement.dataset.scheme);
+ });
+
+ window.addEventListener("onColorSchemeChange", (e) => {
+ if (!beaudarLoaded) return;
+ setBeaudarTheme(e.detail);
+ });
+</script>